Drama Audio Soundstage(声音工程与智能配乐工序) は何をしますか?
工序定位:短剧声音设计与商业配乐工序。 拒绝通用废话:不解释什么是音轨,只沉淀音频门控清洗参数、语种漂移拦截阈值与侧链避让混音曲线。
1. 运行契约与输入输出
- 输入:
- 第3工序输出的带原生音频的视频分镜:
segments/{seg_id}.mp4 - 独立高质量电影配乐BGM:
assets/bgm/*.wav
- 第3工序输出的带原生音频的视频分镜:
- 输出:
- 滤除床音后的纯净分镜:
cleaned_segments/{seg_id}.mp4 - 挂载90s悬疑商战配乐与人声侧链智能避让的成片:
[集名]_final_ducked.mp4 - ASR语种与台词准确性质检单
- 滤除床音后的纯净分镜:
2. 硬核SOP:谱减法音频门控清洗 (Audio Gate)
现象:H3生成的音频往往自带持续的“嗡嗡”低频电流声、假风噪或刺耳环境床音,破坏视听沉浸感。 目标:彻底滤除持续床音,100%保全人物对白与短促动作拟音(拔刀声、拍桌声、脚步声)。
2.1 门控核心参数与物理意义
调用 scripts/audio_gate.py 时执行黄金参数组:
--bed-q 15:时域滑动窗分位数(设为第15百分位),精确识别持续底噪--alpha-bed 6.0:持续床音扣除强度--alpha-fx 1.0:瞬态拟音/对白保护因子,越小对白越完整--fx-snr 4.0:信噪比判定阈值--quiet-gain 0.03:纯静音帧衰减系数
命令:
python scripts/audio_gate.py --in segments/seg01.mp4 --out cleaned_segments/seg01.mp4
3. 硬核SOP:ASR普通话语种漂移自动化拦截
现象:角色发音漂移为伪英语、含糊乱码或非中文杂音,严重影响交付。
3.1 拦截与判据
落盘后通过轻量Whisper执行极速语种校验:
- 提取音轨前5秒进行Language ID判定
- 通过判据:
language == "zh"且置信度prob >= 0.85 - 拦截处置:若判定为
en或其他语种,自动抛出LanguageDriftError并将分镜标记为失败,触发换seed重跑
4. 硬核SOP:影视级侧链动态避让混音 (Sidechain Ducking)
禁令(反例):严禁无脑将BGM铺在视频底下固定音量!对白会被背景音乐淹没,毫无商业片层次感。
4.1 FFmpeg原生 sidechaincompress 黄金曲线
使用人物对白作为侧链控制信号,实时动态压制BGM:
- BGM基础底音:
bgm_volume = 0.35 - 阈值 (Threshold):
ducking_threshold = 0.06(只要人声开口,立即触发下潜) - 下潜深度 (Ratio):
ducking_ratio = 5.0(台词说话时,BGM瞬时下潜约 -14dB,给人声留出完全清晰的频段) - 起音时间 (Attack):
ducking_attack_ms = 80ms(人声首字开口瞬间平滑下潜,无生硬爆音) - 释放时间 (Release):
ducking_release_ms = 400ms(台词闭嘴后,BGM在0.4秒内丝滑回升,烘托紧张情绪)
命令:
python scripts/cinematic_audio_mixer.py --input concat_raw.mp4 --output final_ducked.mp4 --bgm assets/bgm/suspense.wav