diff --git a/README.rst b/README.rst index 10ad4d3c..46880c9d 100644 --- a/README.rst +++ b/README.rst @@ -50,6 +50,7 @@ To get started with Mopidy, check out `the installation docs `_. - `Documentation `_ +- `Discuss `_ - `Source code `_ - `Issue tracker `_ - `Development branch tarball `_ diff --git a/docs/api/concepts.rst b/docs/api/concepts.rst index 68718935..d127561b 100644 --- a/docs/api/concepts.rst +++ b/docs/api/concepts.rst @@ -6,14 +6,15 @@ Architecture and concepts The overall architecture of Mopidy is organized around multiple frontends and backends. The frontends use the core API. The core actor makes multiple backends -work as one. The backends connect to various music sources. Both the core actor -and the backends use the audio actor to play audio and control audio volume. +work as one. The backends connect to various music sources. The core actor use +the mixer actor to control volume, while the backends use the audio actor to +play audio. .. digraph:: overall_architecture "Multiple frontends" -> Core Core -> "Multiple backends" - Core -> Audio + Core -> Mixer "Multiple backends" -> Audio @@ -93,7 +94,15 @@ Audio ===== The audio actor is a thin wrapper around the parts of the GStreamer library we -use. In addition to playback, it's responsible for volume control through both -GStreamer's own volume mixers, and mixers we've created ourselves. If you -implement an advanced backend, you may need to implement your own playback -provider using the :ref:`audio-api`. +use. If you implement an advanced backend, you may need to implement your own +playback provider using the :ref:`audio-api`. + + +Mixer +===== + +The mixer actor is responsible for volume control and muting. The default +mixer use the audio actor to control volume in software. The alternative +implementations are typically independent of the audio actor, but instead use +some third party Python library or a serial interface to control other forms +of volume controls. diff --git a/docs/changelog.rst b/docs/changelog.rst index 8948fe6e..7eefd533 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -13,18 +13,42 @@ v0.20.0 (UNRELEASED) - Add cover URL to all scanned files with MusicBrainz album IDs. (Fixes: :issue:`697`, PR: :issue:`802`) +**MPD frontend** -v0.19.4 (UNRELEASED) +- In stored playlist names, replace "/", which are illegal, with "|" instead of + a whitespace. Pipes are more similar to forward slash. + + +v0.19.4 (2014-09-01) ==================== Bug fix release. +- Configuration: :option:`mopidy --config` now supports directories. + +- Logging: Fix that some loggers would be disabled if + :confval:`logging/config_file` was set. (Fixes: :issue:`740`) + +- Quit process with exit code 1 when stopping because of a backend, frontend, + or mixer initialization error. + +- Backend API: Update :meth:`mopidy.backend.LibraryProvider.browse` signature + and docs to match how the core use the backend's browse method. (Fixes: + :issue:`833`) + +- Local library API: Add :attr:`mopidy.local.Library.ROOT_DIRECTORY_URI` + constant for use by implementors of :meth:`mopidy.local.Library.browse`. + (Related to: :issue:`833`) + +- HTTP frontend: Guard against double close of WebSocket, which causes an + :exc:`AttributeError` on Tornado < 3.2. + - MPD frontend: Make the ``list`` command return albums when sending 3 arguments. This was incorrectly returning artists after the MPD command changes in 0.19.0. (Fixes: :issue:`817`) -- Logging: Fix that some loggers would be disabled if - :confval:`logging/config_file` was set. (Fixes: :issue:`740`) +- MPD frontend: Fix a race condition where two threads could try to free the + same data simultaneously. (Fixes: :issue:`781`) v0.19.3 (2014-08-03) diff --git a/docs/command.rst b/docs/command.rst index 79ca3ed0..881fb513 100644 --- a/docs/command.rst +++ b/docs/command.rst @@ -50,11 +50,12 @@ Options Save debug log to the file specified in the :confval:`logging/debug_file` config value, typically ``./mopidy.log``. -.. cmdoption:: --config +.. cmdoption:: --config - Specify config file to use. To use multiple config files, separate them - with a colon. The later files override the earlier ones if there's a - conflict. + Specify config files and directories to use. To use multiple config files + or directories, separate them with a colon. The later files override the + earlier ones if there's a conflict. When specifying a directory, all files + ending in .conf in the directory are used. .. cmdoption:: --option