From: Antonio Ospite Date: Tue, 5 Mar 2013 15:29:49 +0000 (+0100) Subject: Stricter state trsnsition checks X-Git-Url: https://git.ao2.it/experiments/gstreamer.git/commitdiff_plain/3208aec357132a0005909f245f6694295c4c9428 Stricter state trsnsition checks --- diff --git a/gst-trick-mode-looping-1.py b/gst-trick-mode-looping-1.py index e0e496c..fe00556 100755 --- a/gst-trick-mode-looping-1.py +++ b/gst-trick-mode-looping-1.py @@ -46,7 +46,7 @@ class Player: print 'on_state_changed' old_state, new_state, pending = msg.parse_state_changed() print "%s -> %s" % (old_state, new_state) - if new_state == gst.STATE_PAUSED: + if old_state == gst.STATE_READY and new_state == gst.STATE_PAUSED: self.set_rate(self._rate) def set_rate(self, rate): diff --git a/gst-trick-mode-looping-2.py b/gst-trick-mode-looping-2.py index 6bbd6e6..920677d 100755 --- a/gst-trick-mode-looping-2.py +++ b/gst-trick-mode-looping-2.py @@ -54,7 +54,7 @@ class Player: print 'on_state_changed' old_state, new_state, pending = msg.parse_state_changed() print "%s -> %s" % (old_state, new_state) - if new_state == gst.STATE_PAUSED: + if old_state == gst.STATE_READY and new_state == gst.STATE_PAUSED: self.set_rate(self._rate) def set_rate(self, rate): diff --git a/gst-trick-mode.py b/gst-trick-mode.py index d741b59..a4e063f 100755 --- a/gst-trick-mode.py +++ b/gst-trick-mode.py @@ -35,7 +35,7 @@ class Player: print 'on_state_changed' old_state, new_state, pending = msg.parse_state_changed() print "%s -> %s" % (old_state, new_state) - if new_state == gst.STATE_PAUSED: + if old_state == gst.STATE_READY and new_state == gst.STATE_PAUSED: self.set_rate(self._rate) def set_rate(self, rate):