Hi,

For fully indexed MOV video tracks with composition time offsets,
decode-order sample durations can be wrong for sparse B-frame streams.
This patch builds packet durations from adjacent presentation timestamps
and uses them when finalizing packets.

The existing STTS-derived duration remains the fallback for incomplete
indexes, invalid or duplicate timestamps, the final sample, and
fragmented inputs whose index changes after parsing.

A self-contained FATE test covers a sparse VFR MPEG-4 stream with
B-frames and verifies packet PTS, DTS, and duration values.

Tested with the self-contained FATE suite, fate-source, and:

- fate-mov-vfr-bframes-duration
- fate-mov-1elist-1ctts
- fate-mov-3elist-1ctts
- fate-mov-elist-starts-ctts-2ndsample
- fate-mov-1elist-ends-last-bframe
- fate-mov-2elist-elist1-ends-bframe
- fate-seek-test-iibbibb-neg-ctts-mp4
- fate-mov-mp4-multiple-stsd-muxing

Thanks,
panboxiaosa

Attachment: 0001-avformat-mov-derive-packet-durations-from-presentati.patch
Description: Binary data

_______________________________________________
ffmpeg-devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to