oggdemux: sparse streams aren't timed by end time, and their duration isn't implicit
Fixes timestamps and durations on Kate subtitle streams. See http://www.xiph.org/ogg/doc/ogg-multiplex.html section 'start-time and end-time positioning' for some more details, and bug #600929.
This commit is contained in:
parent
25873a050f
commit
ed2e09133e
@ -591,6 +591,10 @@ gst_ogg_demux_chain_peer (GstOggPad * pad, ogg_packet * packet,
|
||||
pad->current_granule);
|
||||
out_duration = gst_util_uint64_scale (duration,
|
||||
GST_SECOND * pad->map.granulerate_d, pad->map.granulerate_n);
|
||||
} else if (pad->is_sparse) {
|
||||
out_timestamp = gst_ogg_stream_granule_to_time (&pad->map,
|
||||
pad->current_granule);
|
||||
out_duration = GST_CLOCK_TIME_NONE;
|
||||
} else {
|
||||
out_timestamp = gst_ogg_stream_granule_to_time (&pad->map,
|
||||
pad->current_granule - duration);
|
||||
|
Loading…
x
Reference in New Issue
Block a user