diff --git a/mopidy/gstreamer.py b/mopidy/gstreamer.py index b8b30d14..5bdb7b39 100644 --- a/mopidy/gstreamer.py +++ b/mopidy/gstreamer.py @@ -62,6 +62,7 @@ class GStreamer(ThreadingActor): def on_stop(self): self._teardown_message_processor() + self._teardown_mixer() self._teardown_pipeline() def _setup_pipeline(self): @@ -133,6 +134,11 @@ class GStreamer(ThreadingActor): gst.interfaces.MIXER_TRACK_OUTPUT): return track + def _teardown_mixer(self): + if self._mixer is not None: + (mixer, track) = self._mixer + mixer.set_state(gst.STATE_NULL) + def _setup_message_processor(self): bus = self._pipeline.get_bus() bus.add_signal_watch()