commit
f488a266ac
@ -4,6 +4,17 @@ Changelog
|
||||
|
||||
This changelog is used to track all major changes to Mopidy.
|
||||
|
||||
v1.0.3 (unreleased)
|
||||
===================
|
||||
|
||||
- HTTP: An other follow-up to the pre 3.0 fixing. Since the tests aren't run
|
||||
for 2.3 we didn't catch that our previous fix wasn't sufficient.
|
||||
(Fixes: :issue:`1153`)
|
||||
|
||||
- Audio: Follow-up fix for :issue:`1097` still exhibits issues for certain
|
||||
setups. We are giving this get an other go by setting the buffer size to
|
||||
maximum 100ms instead of a fixed number of buffers. (Fixes: :issue:`1147`)
|
||||
|
||||
|
||||
v1.0.2 (2015-04-27)
|
||||
===================
|
||||
|
||||
@ -54,6 +54,8 @@ extension. The cassettes have NFC tags used to select playlists from Spotify.
|
||||
|
||||
To get started with Mopidy, start by reading :ref:`installation`.
|
||||
|
||||
.. _getting-help:
|
||||
|
||||
**Getting help**
|
||||
|
||||
If you get stuck, you can get help at the `Mopidy discussion forum
|
||||
|
||||
@ -164,7 +164,8 @@ class _Outputs(gst.Bin):
|
||||
# All tee branches need a queue in front of them.
|
||||
# But keep the queue short so the volume change isn't to slow:
|
||||
queue = gst.element_factory_make('queue')
|
||||
queue.set_property('max-size-buffers', 15)
|
||||
queue.set_property('max-size-time', 100 * gst.MSECOND)
|
||||
|
||||
self.add(element)
|
||||
self.add(queue)
|
||||
queue.link(element)
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
from __future__ import absolute_import, unicode_literals
|
||||
|
||||
import functools
|
||||
import logging
|
||||
import os
|
||||
import socket
|
||||
@ -91,13 +92,14 @@ class WebSocketHandler(tornado.websocket.WebSocketHandler):
|
||||
if hasattr(tornado.ioloop.IOLoop, 'current'):
|
||||
loop = tornado.ioloop.IOLoop.current()
|
||||
else:
|
||||
loop = tornado.ioloop.IOLoop.instance() # Fallback for 2.3
|
||||
loop = tornado.ioloop.IOLoop.instance() # Fallback for pre 3.0
|
||||
|
||||
# This can be called from outside the Tornado ioloop, so we need to
|
||||
# safely cross the thread boundary by adding a callback to the loop.
|
||||
for client in cls.clients:
|
||||
# One callback per client to keep time we hold up the loop short
|
||||
loop.add_callback(_send_broadcast, client, msg)
|
||||
# NOTE: Pre 3.0 does not support *args or **kwargs...
|
||||
loop.add_callback(functools.partial(_send_broadcast, client, msg))
|
||||
|
||||
def initialize(self, core):
|
||||
self.jsonrpc = make_jsonrpc_wrapper(core)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user