🔬 根因分析:LTX Foley 音频"后面出现大噪音"

问题现象

③ 仅环境音版(S2_a04_ambient_only):前半段有轻微环境音,后半段出现很大噪音。

音量数据:mean -21.2 dB,但 max 0.0 dB(削波),histogram_0db 有 10 个样本 → 后段有爆音。

根因 #1(核心):Video latent 没有冻结

问题:我的工作流用 LiconMSR + LTXVAddGuide 从单帧图片生成新视频,而不是冻结 H3 视频帧。 采样器同时去噪 video 和 audio latent → video 被重新生成(不是 H3 的画面),audio 质量不可控。

已验证模板的做法:video latent 由采样器正常去噪(因为它要生成视频),audio latent 用 SolidMask=0 冻结 TTS。

我的 Foley 场景应该做的:恰恰相反!VAEEncode H3 视频帧 → SolidMask(0) 冻结 video latent → 只让采样器去噪 audio latent。

根因 #2:空 audio latent 被完全随机初始化

LTXVEmptyLatentAudio 产生全零 audio latent。当 video latent 也没冻结时,采样器面对的是一个完全自由的 video+audio 空间——它会"发明"内容,包括噪音。

已验证工作流中,video 由 LiconMSR guide 条件化,audio 由 TTS 冻结或由 prompt 引导。两者都有约束。我的 Foley 工作流 audio 侧只有 prompt 文字引导(distilled CFG=1.0 下很弱),video 侧 LiconMSR 只给了一帧参考。

根因 #3:H3 视频 8 秒 → LTX 只处理 5.4 秒(129帧)

S2_a04 原始 H3 视频 192 帧(8秒),但 LTX 只取 129 帧(5.4秒)。后 67 帧(2.6秒)丢失。在丢失的帧附近,video latent 没有足够信息 → audio latent 生成噪音。

修复方案

正确的 Foley 工作流应该是:
# 1. 加载 H3 视频帧(全部帧,不只第一帧) VHS_LoadVideo(H3_video.mp4) → IMAGE batch # 2. VAEEncode H3 视频帧 → video latent VAEEncode(IMAGE batch, video_vae) → video_latent # 3. 冻结 video latent(SolidMask=0 → 不让采样器碰视频) SolidMask(value=0) SetLatentNoiseMask(video_latent, mask=0) # 4. 空 audio latent(让采样器自由生成环境音) LTXVEmptyLatentAudio(audio_vae, frames_number=N) # 5. 合并 LTXVConcatAVLatent(frozen_video_latent, empty_audio_latent) # 6. 采样(只去噪 audio,video 被 mask 冻结) SamplerCustomAdvanced(model+FoleyLoRA+NAG, frozen_av_latent) # 7. 分离 + 只解码 audio LTXVSeparateAVLatent → audio_latent → LTXVAudioVAEDecode

关键差异:
参数当前(错误)修复后
Video latent 来源LiconMSR 从单帧生成新视频VAEEncode H3 视频帧
Video latent 冻结❌ 没有冻结✅ SolidMask(0) 冻结
帧数129(截断)全部帧(8n+1)
采样器行为同时修改 video+audio只修改 audio
LiconMSR使用(不适合 foley)不用

为什么"后面出现噪音"

129 帧中,前 ~80 帧由 LiconMSR 单帧 conditioning 提供了一些视觉约束,audio 还能跟随。但后 ~50 帧越来越远离 conditioning 帧,video latent 开始发散,audio 跟着一起崩溃 → 噪音。

如果 video latent 被冻结,这个问题不会发生——audio 始终有稳定的 video context。