v1.4.10
Automated release: version and notes generated from pull requests merged since 1.4.9.
loudness.pyholds its--tpceiling in the file it writes, not just in loudnorm's float output: the written file is measured and, when a lossy encoder overshot (ffmpeg's AAC at 192k turned one transient of a 12-minute film from -2.4 to +3.7 dBFS, so--tp -1delivered +1.2 dBTP andcheck.py's fix hint looped back), it re-encodes at 256k then 320k when--audio-bitratewas not pinned, then with the ceiling lowered by the overshoot.resultcarriestp_ceiling_used,audio_bitrate_used,encodesand anotewhen the loudness moved more than 1 LU.- SIGINT/SIGTERM stop the running ffmpeg (or sibling script), remove its partial output and exit with a failure document (
kind: interrupted, exit 130/143). Before, SIGTERM killed only the Python parent and ffmpeg carried on as an orphan finishing a file nobody verified; SIGINT was a traceback with the partial left on disk. - A path with an apostrophe (
Ryo's Mac/cues.srt,lu't.cube) reachessubtitles=,ass=,lut3d=andfontsdir=intact:escape_filter_pathnow writes the three backslashes the two-level filter parser needs for'(one was consumed as a quote, so ffmpeg openedRyos Mac/cues.srt). - fix: loudness holds --tp in the written file; SIGINT/SIGTERM stop ffmpeg cleanly; apostrophes in filter paths (#184)
What's Changed
- fix: loudness holds --tp in the written file; SIGINT/SIGTERM stop ffmpeg cleanly; apostrophes in filter paths by @claude[bot] in #184
Full Changelog: v1.4.9...v1.4.10