mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 04:01:08 +00:00
qtdemux: fix reverse playback EOS conditions
In reverse playback, we don't want to rely on the position of the current keyframe to decide a stream is EOS: the last GOP we push will start with a keyframe, which position is likely to be outside of the segment. Instead, let the normal seek_to_previous_keyframe mechanism do its job, it works just fine.
This commit is contained in:
parent
104f459258
commit
4830bbe6ca
1 changed files with 2 additions and 4 deletions
|
@ -6337,10 +6337,8 @@ gst_qtdemux_loop_state_movie (GstQTDemux * qtdemux)
|
|||
|
||||
/* check for segment end */
|
||||
if (G_UNLIKELY (qtdemux->segment.stop != -1
|
||||
&& ((qtdemux->segment.rate >= 0 && qtdemux->segment.stop <= min_time)
|
||||
|| (qtdemux->segment.rate < 0
|
||||
&& qtdemux->segment.start > min_time))
|
||||
&& target_stream->on_keyframe)) {
|
||||
&& qtdemux->segment.rate >= 0
|
||||
&& qtdemux->segment.stop <= min_time && target_stream->on_keyframe)) {
|
||||
GST_DEBUG_OBJECT (qtdemux, "we reached the end of our segment.");
|
||||
target_stream->time_position = GST_CLOCK_TIME_NONE;
|
||||
goto eos_stream;
|
||||
|
|
Loading…
Reference in a new issue