WorldSonus 港科大联合上海交大开源的流式视频配音框架
WorldSonus是什么
WorldSonus 是港科大联合 Noiz AI、MetaX、上海交大开源的流式视频配音框架,视频流边生成, 用 100ms 一块实时输出 48kHz 立体声音频。WorldSonus 采用因果 AR 扩散架构与 5 秒 Ring-KV 缓存,支持生成中途无缝更换音效提示词,左右声道跟随场景声源方位与镜头运动。五档测试集音质全面超越 AudioX、ThinkSound 等双向离线模型。

WorldSonus的主要功能
- 实时流式配音 :视频流边生成边输出音频,每 100ms 一块、单块计算仅 41.2ms,显存占用恒定、可无限时长的跟流。
- 中途交互改声 :生成过程中可随时改写文字音效指令,在最近块边界无缝切换,会话状态不丢失、无需重算历史帧。
- 空间立体声 :输出 48kHz 双声道,声源方位与镜头运动实时反映在左右声道上。
- 模块化即插即用 :独立于视觉骨干,只接收已实现的视频帧,可挂接任意世界模型或游戏引擎。
- 开放域通用 :除交互式场景外,在 VGGSound 等通用视频上音质仍超越离线双向模型。
WorldSonus的技术原理
- 分块因果流式生成(AR-Diffusion) :将音频编码进因果立体声 VAE 的连续潜空间,每 100ms 对应 3 个 latent 帧;decoder-only Transformer 每步只读上一音频块+当前视频块两个聚合 token,配合 W=50 块的 Ring-KV 循环缓存实现有界记忆,再用轻量 flow head 以 rectified-flow 目标去噪当前块。
- 双时间尺度视觉条件 :冻结 DINOv3 将每帧编码为 patch 网格并拼接帧差图捕捉运动,每帧聚成 1 个 token;3 个帧 token 再聚合为 1 个块级语义 token 送入 AR 骨干管长程连贯,3 个帧对齐 token 则绕过骨干直接喂给 flow head 管音画同步的细粒度渲染,长程规划与局部渲染解耦。
- ShiftNCE 训练期对齐蒸馏 :把冻结的 Synchformer 当训练期教师,用对比学习把同步能力蒸馏进 AR 隐状态:正样本为时间对齐窗口,负样本为同视频错开若干块的窗口,对高相似度偏移做假负样本过滤;推理时零开销,去掉后 DeSync 从 0.831 恶化到 1.067。
- 时变提示调度与原地提示控制 :提示词经 T5Gemma 2 压缩为 token 集并缓存于 cross-attention;中途换词只在最近块边界原地替换这份缓存,Ring-KV 与视听状态均不动。训练时特意混入中途切换、撤指令、加指令四种时变调度,模型由此学会无缝转场。

如何使用WorldSonus
- 环境准备 :准备 Python 3.10+、CUDA 显卡、FFmpeg/ffprobe,确保 GPU 驱动已安装。
- 拉取代码 : git clone https://github.com/NoizAI/WorldSonus.git 并进入项目目录。
- 安装依赖 :运行 bash scripts/setup.sh .venv (自动安装 CUDA 12.4 版 PyTorch),然后 source .venv/bin/activate 和 pip install -e '.[features]' 。
- 下载主模型权重 :运行 python scripts/download_model.py --output assets 拉取 WorldSonus 权重。
- 下载编码器 :运行 python scripts/download_encoders.py --output assets 获取 DINOv3 与 T5Gemma 2。
- 离线整段配音 :执行 python -m worldsonus.infer --video input.mp4 --prompt "音效描述文字" --output output.wav ,自动完成特征提取、生成与解码,输出 48kHz 立体声 WAV。
- 可选参数 :用 --start 5 --seconds 10 截取视频窗口,或省略 --prompt 做纯视频条件生成。
- 流式实时生成 :加上 --stream 参数即可分块增量生成音频。
- 边生成边播放 :加 --stream --pcm-stdout 将原始 PCM 通过管道直送 ffplay -f f32le -ar 48000 -ac 2 -i - -nodisp -autoexit 实现即时试听。
WorldSonus的核心优势
- 流式因果架构 :用 100ms 为一块、单块仅 41.2ms实时生成音频,显存恒定、可无限跟流。
- 中途改词 :生成过程中可随时无缝替换音效指令,状态不丢、延迟仍在实时线内。
- 空间立体声 :48kHz 双声道输出,声源方位与镜头运动实时对齐。
- 模块化易集成 :只接收已生成的视频帧,可挂接任意世界模型或游戏引擎。
- 音质反超离线模型 :在五档测试集上 FAD 等指标全面优于能看到完整视频的双向基线。
- 长程稳定 :5 秒 Ring-KV 缓存下连续生成 30 秒无漂移、无崩塌。
WorldSonus的项目地址
- 项目官网 :https://noizai.github.io/WorldSonus/
- GitHub仓库 :https://github.com/NoizAI/WorldSonus
- HuggingFace模型库 :https://huggingface.co/FF2416/WorldSonus
- arXiv技术论文 :https://arxiv.org/abs/2610.08760
WorldSonus的同类竞品对比
维度 | WorldSonus | ThinkSound
| 维度 | WorldSonus | ThinkSound |
|---|---|---|
| 架构 | 因果流式 AR-Diffusion | 双向 Diffusion + 多模态 LLM 思维链推理 |
| 视觉条件 | 仅过去+当前帧(严格因果) | 需完整视频片段 |
| 生成方式 | 100ms 分块流式输出 | 整段离线生成 |
| 实时性 | RTF 0.41(41.2ms/块) | 非实时 |
| 输出 | 48kHz 立体声 | 立体声 |
| 中途改词 | 支持,块边界无缝切换 | 不支持 |
| FAD(VGG10s) | 1.79 | 2.18 |
| FAD(Inter10s) | 2.62 | 6.27 |
| FAD(Inter30s) | 2.03 | 7.00 |
| DeSync(VGG5s) | 0.686 | 0.481(全场最优) |
| DeSync(Inter10s) | 0.820 | 0.738 |
| BiasSkill(Inter30s) | 15.90 | 0.63 |
| 用户偏好(总体) | 80.0%胜率 | 20.0% |
| 用户偏好(空间对齐) | 90.0% 胜率 | 10.0% |
| 长程稳定 | 30s 无漂移 | 无流式能力,不涉及 |
| 权重开源 | 是(CC BY-NC 4.0,4.12GB) | 是(Apache 2.0) |
| 商用许可 | ❌ 非商用 | ✅ 可商用 |
WorldSonus的应用场景
- 世界模型与游戏引擎实时配音 :为 GameGen-X、LingBot-World 2.0 等交互式世界模型及游戏引擎的画面流实时生成环境音,画面走到哪、声音跟到哪。
- 虚拟直播与数字人 :直播画面边生成边同步出声,主播可中途语音/文字指令即时改变音效,无需停播重录。
- 长视频流边生成边配乐 :电影预告片、AI 生成长视频等场景下,无需等整段渲染完成即可逐块产出 48kHz 立体声配乐,大幅缩短后期周期。
- VR/AR 与仿真训练环境 :在虚拟仿真、自动驾驶训练、军事推演等环境中,为动态视角的画面流生成相机对齐的空间音频,提升沉浸感与训练真实度。
- 智能体/机器人感知 :为具身智能体提供实时视听同步信号,使其在视觉输入的同时获得立体声环境反馈,辅助导航与交互决策。
相关工具
与本文相关的 AI 工具