mirror of
https://github.com/calesthio/OpenMontage.git
synced 2026-08-05 15:20:40 +08:00
audio_mixer hard-coded loudnorm I=-16 (Apple Podcasts) in both _mix and _full_mix. sound-design.md targets -14 for YouTube/TikTok/IG, and edit_decisions.metadata.loudnorm_target is the declarative form — but the mixer never read it, so the executed loudness silently defaulted to podcast levels regardless of the target platform. - Add loudnorm_target to input_schema (default -16, clamped to [-40, 0]). - Extract _loudnorm_filter() helper and use it in _mix and _full_mix so a director can forward edit_decisions.metadata.loudnorm_target (or a caller can pass it directly) to hit the right platform target. - Add tests pinning: default -16, -14 honored, out-of-range clamped, non-numeric fallback, and the schema default. Refs: docs/REVIEW-image-to-video-voice.md §8 #1 Co-Authored-By: Claude <noreply@anthropic.com>