You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Fixed
Matroska TrackTimestampScale != 1 follows RFC 9559 again (FFmpegBuild 2.2.0): the 5.9.4 clamp is dropped, the warning stays. Upstream review of our proposed FFmpeg patch (FFmpeg PR 23852) corrected the #145 premise: RFC 9559 (11.1.3, 11.2, 5.1.3.5.3) puts Block/SimpleBlock relative timestamps and BlockDuration in Track Ticks, absolute time is (cluster + rel x TTS) x TimestampScale, and upstream matroskadec implements exactly that. The "hybrid axis" described in the 5.9.4 notes does not exist; the file that motivated it was authored on the segment axis and is invalid per RFC, and the clamp would have mistimed a conformant TTS != 1 file. Timestamp behavior is upstream's RFC behavior again; the demuxer still warns whenever a track carries TTS != 1 (TrackTimestampScale %f applied per RFC 9559; many readers ignore this element and files may be authored against them.), which keeps the defect actually reported in #145, the silent mistiming, surfaced. Issue145MatroskaTrackTimestampScaleTests now locks the RFC semantics: a conformant Track Ticks file demuxes at its authored times (the clamp broke exactly this case), and a segment-axis-authored file documents the RFC-scaled rendering as invalid-file behavior. (#173)