docs: Include mixers in concepts

This commit is contained in:
Stein Magnus Jodal 2014-08-19 23:28:35 +02:00
parent a244761abc
commit 1dfd14615a

View File

@ -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.