diff options
author | Hyunjun Ko <zzoon.ko@samsung.com> | 2015-04-10 09:17:26 +0900 |
---|---|---|
committer | Thiago Santos <thiagoss@osg.samsung.com> | 2015-04-10 10:12:50 -0300 |
commit | 7fbd1b472fd016ed3293a360123b1dd55bee18e4 (patch) | |
tree | 34d0e67388ef007c4177a983182459e9d554aeda | |
parent | 39c09284e27461c5ca095055750b47f37a3971fe (diff) |
qtdemux: Update segment.start after key-unit seek
When doing key uint seek, qtdemux calls gst_qtdemux_adjust_seek
to get proper offset. And then this offset is set to
segment.position and segment.time in gst_qtdemux_perform_seek but
segment.start is not updated.
After that, application sends segment query,
qtdemux sets start and stop to query using gst_segment_to_stream_time. Due
to the wrong value in segment.start, the stop position is smaller than
it should.
https://bugzilla.gnome.org/show_bug.cgi?id=746822
-rw-r--r-- | gst/isomp4/qtdemux.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gst/isomp4/qtdemux.c b/gst/isomp4/qtdemux.c index 2279097b6..518f174ae 100644 --- a/gst/isomp4/qtdemux.c +++ b/gst/isomp4/qtdemux.c @@ -1432,6 +1432,7 @@ gst_qtdemux_perform_seek (GstQTDemux * qtdemux, GstSegment * segment, } segment->position = desired_offset; segment->time = desired_offset; + segment->start = desired_offset; /* we stop at the end */ if (segment->stop == -1) |