decklinkvideosink: Also stop scheduled playback when gst_element_lost_state() is...
authorSebastian Dröge <sebastian@centricular.com>
Wed, 2 Nov 2016 14:12:42 +0000 (16:12 +0200)
committerSebastian Dröge <sebastian@centricular.com>
Wed, 2 Nov 2016 14:12:42 +0000 (16:12 +0200)
commit33a93a66c82e2fb1c3a72b597643d44f2084b17f
tree577d09ad9b10463c9402750d60319cfe767a9d2f
parentac37bdb9ac5953e056a36b8d9b8e956ac0fe0272
decklinkvideosink: Also stop scheduled playback when gst_element_lost_state() is called

Unfortunately this does not go through the normal state change
machinery, so we don't get notified about this in change_state().
However we need to stop scheduled playback, so that once PLAYING is
reached again we can start scheduled playback with the correct time.

Without this, flushing seeks in PLAYING will not work correctly:
decklinkvideosink will wait before showing the new frames for the amount
of time the pipeline was in PLAYING before.
sys/decklink/gstdecklinkvideosink.cpp