mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-31 11:32:38 +00:00
oggdemux: do not ignore sparse streams' start time
But do not wait for them either, if we don't have a packet for them. https://bugzilla.gnome.org/show_bug.cgi?id=657062
This commit is contained in:
parent
9cbe7c1403
commit
4e9508e2ec
1 changed files with 8 additions and 3 deletions
|
@ -679,13 +679,18 @@ gst_ogg_demux_collect_start_time (GstOggDemux * ogg, GstOggChain * chain)
|
|||
for (i = 0; i < chain->streams->len; i++) {
|
||||
GstOggPad *pad = g_array_index (chain->streams, GstOggPad *, i);
|
||||
|
||||
if (pad->map.is_sparse)
|
||||
if (pad->map.is_skeleton)
|
||||
continue;
|
||||
|
||||
/* can do this if the pad start time is not defined */
|
||||
GST_DEBUG_OBJECT (ogg, "Pad %08x (%s) start time is %" GST_TIME_FORMAT,
|
||||
pad->map.serialno, gst_ogg_stream_get_media_type (&pad->map),
|
||||
GST_TIME_ARGS (pad->start_time));
|
||||
if (pad->start_time == GST_CLOCK_TIME_NONE) {
|
||||
start_time = G_MAXUINT64;
|
||||
break;
|
||||
if (!pad->map.is_sparse) {
|
||||
start_time = G_MAXUINT64;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
start_time = MIN (start_time, pad->start_time);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue