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
{{ message }}
Repository navigation
Timeline export attenuates audio based on total delayed input count #23
MCP timeline export applies FFmpeg amix's default normalization to every audio input, including sequential clips delayed to their timeline positions. This lowers the gain of an audible clip according to unrelated clips that are silent at that time. A multi-shot export can consequently sound almost silent even when source audio has ordinary levels.
Reproduce by placing several clips with audio sequentially on a timeline at unity gain, then rendering through bdesign_editor_render. Compare RMS/peak levels for the first clip against its source; adding later clips changes its exported gain. The current filter in src/core/editor/render-project-timeline.ts uses amix without an explicit normalize option, so delayed silence participates in normalization.
Expected: exporting sequential audio preserves the timeline gain, independently of how many later clips exist. Overlapping sources should mix using their configured gains, with peak protection rather than attenuation based on total input count.
Proposed fix: disable amix normalization, add a non-boosting peak limiter with compensated lookahead, and add a deterministic audio-level regression test for delayed sequential inputs and overlapping full-scale tones. No model/provider-specific changes are required.
Activity
JaysonAlbert commentedon Oct 18, 2026
Implementation and FFmpeg regression tests are available in #24 .