Fix set_state method in GStreamerOutput

This commit is contained in:
Thomas Adamcik 2010-08-14 15:21:01 +02:00
parent 210447debb
commit dc27434df9

View File

@ -159,10 +159,10 @@ class GStreamerProcess(BaseProcess):
:type state_name: string
:rtype: :class:`True` or :class:`False`
"""
# XXX Setting state to PLAYING often returns False even if it works
result = self.gst_pipeline.set_state(
getattr(gst, 'STATE_' + state_name))
if result == gst.STATE_CHANGE_SUCCESS:
state = getattr(gst, 'STATE_' + state_name)
self.gst_pipeline.set_state(state)
new_state = self.gst_pipeline.get_state()[1]
if new_state == state:
logger.debug('Setting GStreamer state to %s: OK', state_name)
return True
else: