mirror of
https://github.com/zoriya/v10.git
synced 2026-08-16 02:45:09 +00:00
Minimal ISO-BMFF box walker (media/mp4/box.ts) plus decode-time origin extraction (timestamp-origin.ts) for the non-zero-PTS timestampOffset relocation spike. Relocating a source by tfdt.baseMediaDecodeTime (a DTS) over mdhd.timescale keeps the earliest DTS >= 0, so a Chromium negative-DTS append failure is impossible by construction. Two variants share the box walker and leaf field-readers: - Presumptive (readFirstMediaTimescale / readFirstBaseMediaDecodeTime): the first mdhd timescale + first tfdt baseMediaDecodeTime, no track_id, no iteration. For single-media-track sources. - Track-selected (findMediaTrack by hdlr handler / readBaseMediaDecodeTime by tfhd track_id): the track_id joins one track's timescale to the same track's baseMediaDecodeTime -- required when a source muxes CEA-608/708 captions into the same moov/moof (each track carries its own timescale and baseMediaDecodeTime). Split into separate exports so caption-free platforms tree-shake the matching machinery away (~37% smaller minified than the track-selected pair). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>