From fcbd667add1d6ff1f3b2d58a334163b90453894c Mon Sep 17 00:00:00 2001 From: Matthew Jackson <1085847+MattJackson@users.noreply.github.com> Date: Wed, 1 Jul 2026 19:02:04 -0700 Subject: [PATCH] changelog: describe the shipped re-base DTS fix + faithful-passthrough note --- CHANGELOG.md | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d2b4847..d9a9723 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,16 +7,18 @@ - **DVD DTS audio no longer muxes with non-monotonic timestamps.** A DVD Program Stream packs several DTS core frames into one PES packet; the parser stamped every access unit with that single PES timestamp and no per-frame - duration, so consecutive frames collided on one PTS. A strict decode/remux - (ffmpeg) rejected the result — `non monotonically increasing dts to muxer` — - and reported the track as corrupt, sometimes with spurious `[dca] Failed to - decode block` errors. The DTS parser now derives each core frame's duration - from its header (`(NBLKS+1)*32` samples ÷ the `SFREQ` sample rate) and stamps - a monotonically-advancing PTS, so frames sharing a PES advance frame-by-frame. - The UHD DTS-HD MA path (one access unit per PES with its own timestamp) is - unchanged — a later PES whose timestamp is already ahead still wins, so the - 1.2.0 per-PES attribution is preserved. This completes the DVD DTS fix begun - in 1.2.0 (which corrected the silent-track routing, exposing this timing bug). + duration, so consecutive frames collided on one PTS and a strict decode/remux + (ffmpeg) rejected the track — `non monotonically increasing dts to muxer`. + The DTS parser now derives each core frame's duration from its header + (`(NBLKS+1)*32` samples ÷ the `SFREQ` sample rate) and re-bases to each PES's + own container timestamp, advancing by a frame duration only *within* a single + PES — so the track stays monotonic and does not drift past its real length on + a feature-long title. The UHD DTS-HD MA path (one access unit per PES) is + unaffected: each unit keeps its own PES timestamp, preserving the 1.2.0 per-PES + attribution. Completes the DVD DTS fix begun in 1.2.0 (which corrected the + silent-track routing, exposing this timing bug). Note: genuinely corrupt + source DTS frames — valid framing, bad audio blocks — are passed through + faithfully; freemkv never fabricates or drops audio it can't prove is bad. ## [1.2.0] — 2026-07-01