mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 19:51:11 +00:00
qtdemux: Ignore raw audio streams when adjusting seek
Because we treat raw audio chunks/samples as keyframes, they were interfering with seek time adjustment. Became apparent when the accompanying video stream was I-frame only, for example ProRes. Since raw audio streams can be seeked freely, it's fine to just ignore them here, giving priority to the real keyframes in the video stream. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5674>
This commit is contained in:
parent
07cb8432cc
commit
15e9b513da
1 changed files with 4 additions and 0 deletions
|
@ -1144,6 +1144,10 @@ gst_qtdemux_adjust_seek (GstQTDemux * qtdemux, gint64 desired_time,
|
||||||
if (CUR_STREAM (str)->sparse && !use_sparse)
|
if (CUR_STREAM (str)->sparse && !use_sparse)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
/* raw audio streams can be ignored as we can seek anywhere within them */
|
||||||
|
if (str->subtype == FOURCC_soun && str->need_clip)
|
||||||
|
continue;
|
||||||
|
|
||||||
seg_idx = gst_qtdemux_find_segment (qtdemux, str, desired_time);
|
seg_idx = gst_qtdemux_find_segment (qtdemux, str, desired_time);
|
||||||
GST_DEBUG_OBJECT (qtdemux, "align segment %d", seg_idx);
|
GST_DEBUG_OBJECT (qtdemux, "align segment %d", seg_idx);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue