From ccd91c0b72a83fa6d80f9173d43a0a58e49af120 Mon Sep 17 00:00:00 2001 From: Thomas Adamcik Date: Wed, 21 Jan 2015 23:28:57 +0100 Subject: [PATCH] core: Pass audio in to playback --- mopidy/commands.py | 7 ++++--- mopidy/core/actor.py | 4 ++-- mopidy/core/playback.py | 4 +++- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/mopidy/commands.py b/mopidy/commands.py index fecabe98..b414b29e 100644 --- a/mopidy/commands.py +++ b/mopidy/commands.py @@ -234,6 +234,7 @@ class Command(object): raise NotImplementedError +# TODO: move out of this file class RootCommand(Command): def __init__(self): super(RootCommand, self).__init__() @@ -279,7 +280,7 @@ class RootCommand(Command): mixer = self.start_mixer(config, mixer_class) audio = self.start_audio(config, mixer) backends = self.start_backends(config, backend_classes, audio) - core = self.start_core(mixer, backends) + core = self.start_core(audio, mixer, backends) self.start_frontends(config, frontend_classes, core) loop.run() except (exceptions.BackendError, @@ -360,9 +361,9 @@ class RootCommand(Command): return backends - def start_core(self, mixer, backends): + def start_core(self, audio, mixer, backends): logger.info('Starting Mopidy core') - return Core.start(mixer=mixer, backends=backends).proxy() + return Core.start(audio=audio, mixer=mixer, backends=backends).proxy() def start_frontends(self, config, frontend_classes, core): logger.info( diff --git a/mopidy/core/actor.py b/mopidy/core/actor.py index 75c06f69..f00fe036 100644 --- a/mopidy/core/actor.py +++ b/mopidy/core/actor.py @@ -40,7 +40,7 @@ class Core( """The tracklist controller. An instance of :class:`mopidy.core.TracklistController`.""" - def __init__(self, mixer=None, backends=None): + def __init__(self, audio=None, mixer=None, backends=None): super(Core, self).__init__() self.backends = Backends(backends) @@ -50,7 +50,7 @@ class Core( self.history = HistoryController() self.playback = PlaybackController( - mixer=mixer, backends=self.backends, core=self) + audio=audio, mixer=mixer, backends=self.backends, core=self) self.playlists = PlaylistsController( backends=self.backends, core=self) diff --git a/mopidy/core/playback.py b/mopidy/core/playback.py index 9fbbe579..1d2e5580 100644 --- a/mopidy/core/playback.py +++ b/mopidy/core/playback.py @@ -14,11 +14,13 @@ logger = logging.getLogger(__name__) class PlaybackController(object): pykka_traversable = True - def __init__(self, mixer, backends, core): + def __init__(self, audio, mixer, backends, core): + # TODO: these should be internal self.mixer = mixer self.backends = backends self.core = core + self._audio = audio self._state = PlaybackState.STOPPED self._volume = None self._mute = False