`_segmented_music` mixed the video's audio with the shaped music via `amix=inputs=2`, whose default `normalize=1` scales every input by 1/inputs (x0.5, -6 dB). Unlike `_mix` and `_full_mix`, this path has no `loudnorm` stage afterward to re-normalize, so the narration was permanently attenuated across the entire timeline — including the stretches where the music volume expression evaluates to 0. A one-second music segment quietly dropped the narration by ~6 dB for the whole video. Add `normalize=0` to the amix: the music is already scaled to `music_volume` by the `volume` expression, so speech passes at unity. Verified with ffmpeg — narration in a no-music region tracks the stereo/aac conversion baseline instead of sitting 6 dB below it. |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| audio_enhance.py | ||
| audio_mixer.py | ||
| dashscope_tts.py | ||
| doubao_tts.py | ||
| elevenlabs_tts.py | ||
| freesound_music.py | ||
| google_tts.py | ||
| music_gen.py | ||
| music_library.py | ||
| openai_tts.py | ||
| piper_tts.py | ||
| pixabay_music.py | ||
| suno_music.py | ||
| tts_selector.py | ||