From a8e9f325d511d346f3d7fe703d21624510609671 Mon Sep 17 00:00:00 2001 From: Daniel Drake Date: Wed, 30 Jun 2010 15:43:47 +0000 Subject: Stop pipeline while stopping audio recording Avoids a segfault which is probably due to a gstreamer bug. http://dev.laptop.org/ticket/10183 --- diff --git a/glive.py b/glive.py index 40815a4..18f4cd4 100644 --- a/glive.py +++ b/glive.py @@ -315,8 +315,13 @@ class Glive: return False def stopRecordingAudio( self ): - self.audiobin.set_state(gst.STATE_NULL) + # We should be able to simply pause and remove the audiobin, but + # this seems to cause a gstreamer segfault. So we stop the whole + # pipeline while manipulating it. + # http://dev.laptop.org/ticket/10183 + self.pipeline.set_state(gst.STATE_NULL) self.pipeline.remove(self.audiobin) + self.pipeline.set_state(gst.STATE_PLAYING) gobject.idle_add( self.stoppedRecordingAudio ) -- cgit v0.9.1