diff options
author | MaZderMind <github@mazdermind.de> | 2015-05-22 13:06:51 +0200 |
---|---|---|
committer | MaZderMind <github@mazdermind.de> | 2015-05-22 13:06:51 +0200 |
commit | edcc25932bd94c65134b44c0c24b3984e49b7259 (patch) | |
tree | aa38f881a44b57366a46975b8637d634743f39ec /voctocore/lib/audiomix.py | |
parent | a1d1076b2243f6c1e9527afb0be359407fe2f4c4 (diff) |
better error-handling on all pipelines
Diffstat (limited to 'voctocore/lib/audiomix.py')
-rw-r--r-- | voctocore/lib/audiomix.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/voctocore/lib/audiomix.py b/voctocore/lib/audiomix.py index 857600f..c37d215 100644 --- a/voctocore/lib/audiomix.py +++ b/voctocore/lib/audiomix.py @@ -44,6 +44,11 @@ class AudioMix(object): self.log.debug('Creating Mixing-Pipeline:\n%s', pipeline) self.mixingPipeline = Gst.parse_launch(pipeline) + self.log.debug('Binding Error & End-of-Stream-Signal on Mixing-Pipeline') + self.mixingPipeline.bus.add_signal_watch() + self.mixingPipeline.bus.connect("message::eos", self.on_eos) + self.mixingPipeline.bus.connect("message::error", self.on_error) + self.log.debug('Initializing Mixer-State') self.updateMixerState() @@ -63,3 +68,11 @@ class AudioMix(object): def setAudioSource(self, source): self.selectedSource = source self.updateMixerState() + + def on_eos(self, bus, message): + self.log.debug('Received End-of-Stream-Signal on Mixing-Pipeline') + + def on_error(self, bus, message): + self.log.debug('Received Error-Signal on Mixing-Pipeline') + (error, debug) = message.parse_error() + self.log.debug('Error-Details: #%u: %s', error.code, debug) |