UniSwap: Streaming Audio-Visual Identity Swapping for Talking Videos
一个能同时替换说话人脸孔和声音、并支持流式生成的AI系统
UniSwap 能在一个模型内同时替换说话视频中人物的外貌和声音,同时保留原视频的动作、场景、说话内容以及口型与声音的时间对齐。以往方法用两个分别优化的模型分别处理换脸和变声,难以保证两者一致;UniSwap 把两者统一进一个音视频扩散Transformer,并支持低延迟的逐块流式生成。在短视频和一分钟长视频基准测试中,它比现有的级联方案取得了更好的音视频同步效果,同时在身份保持和长时生成稳定性上也具备竞争力。
METAL MEDIA 解读图
UniSwap三阶段训练与推理流程
证据状态已报告实测结果
- 数据合成swap-and-reconstruct流程用姿态轮廓替换人脸、用变声后的语音替换原声,再训练模型去重建原始视频
- 第一阶段:上下文预训练将源、参考、目标视频/音频的潜变量拼接成一个序列,通过全序列注意力学习外貌与声音的联合替换
- 第二阶段:流式适配Decoupled Streaming Conditioning Mask强制实施块级因果注意力,将模型转化为支持KV缓存的自回归生成器
- 第三阶段:高效self-forcing DMD学生模型使用自身生成的历史进行训练,教师/生成器/判别器通过LoRA切换共享同一骨干,将去噪步数压缩到每块3步
- 推理阶段:Feature-RoPE Decomposition将缓存位置重新映射到受限窗口内,并保留首个生成块作为固定身份锚点,从而稳定一分钟长视频的生成效果
他们做了什么
- 任务设定:给定参考图像和参考语音,替换说话视频中人物的外貌与声音音色,同时保持原视频的动作、背景、说话内容以及音视频时间对齐。
- 为解决跨身份配对训练数据稀缺的问题,作者设计了swap-and-reconstruct数据合成流程,从真实视频中去除视觉和声音身份信息,再用原始视频作为重建目标。
- 从双向(一次看完整段)骨干模型出发,依次通过三个阶段进行改造:上下文预训练、面向块因果KV缓存生成的条件流式适配、以及高效self-forcing DMD蒸馏,将每块的去噪步数从30步降到3步。
- Efficient Multi-LoRA Switching让教师、生成器、判别器三个角色共享同一个冻结骨干网络(通过切换适配器实现),将峰值显存占用从超过80GB(在80GB显卡上会内存溢出)降到65.34GB。
- Feature-RoPE Decomposition将缓存的位置坐标限制在训练时的范围内,使一分钟长视频生成过程中的身份保持更加稳定。

| Method | A–V Sync | Video Quality | Voice Quality | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Sync-C ↑ | Sync-D ↓ | ASE ↑ | IQA ↑ | DINO-S ↑ | SIG ↑ | BAK ↑ | OVRL ↑ | SECS ↑ | SSIM ↑ | ||
| Video | VACE 18 | 0.832±0.320 | 12.800±0.933 | 2.059±0.355 | 3.269±0.547 | 0.400±0.110 | – | – | – | – | – |
| Wan-Animate 4 | 2.874±1.653 | 11.338±1.713 | 2.098±0.340 | 3.514±0.520 | 0.580±0.140 | – | – | – | – | – | |
| SCAIL-2 39 | 3.289±1.592 | 11.269±1.623 | 2.409±0.352 | 4.067±0.399 | 0.630±0.150 | – | – | – | – | – | |
| MoCha 38 | 3.031±1.678 | 11.198±1.881 | 2.534±0.340 | 4.249±0.304 | 0.577±0.147 | – | – | – | – | – | |
| HunyuanCustom 14 | 0.894±0.401 | 12.991±0.864 | 2.319±0.414 | 3.816±0.489 | 0.624±0.142 | – | – | – | – | – | |
| Voice | OpenVoice 24 | – | – | – | – | – | 3.458±0.415 | 3.438±0.663 | 2.910±0.486 | 0.755±0.066 | 0.363±0.162 |
| Seed-VC 22 | – | – | – | – | – | 3.489±0.335 | 3.750±0.571 | 3.074±0.445 | 0.829±0.047 | 0.212±0.115 | |
| CosyVoice 7 | – | – | – | – | – | 3.461±0.249 | 3.738±0.456 | 3.041±0.366 | 0.802±0.051 | 0.137±0.106 | |
| Joint | UniSwap | 3.633±1.236 | 10.304±0.849 | 2.097±0.238 | 3.758±0.318 | 0.629±0.136 | 3.486±0.327 | 3.563±0.543 | 2.988±0.366 | 0.730±0.064 | 0.269±0.161 |

| Method | 0–20 s | 20–40 s | 40–60 s | ||||||
|---|---|---|---|---|---|---|---|---|---|
| ASE ↑ | IQA ↑ | DINO-S ↑ | ASE ↑ | IQA ↑ | DINO-S ↑ | ASE ↑ | IQA ↑ | DINO-S ↑ | |
| SCAIL-2 39 | 2.628±0.203 | 4.426±0.265 | 0.566±0.175 | 2.765±0.197 | 4.568±0.294 | 0.538±0.154 | 2.656±0.326 | 4.254±0.401 | 0.517±0.135 |
| Wan-Animate 4 | 2.241±0.397 | 3.766±0.635 | 0.554±0.119 | 2.271±0.413 | 3.741±0.701 | 0.533±0.115 | 2.238±0.364 | 3.628±0.714 | 0.528±0.114 |
| UniSwap | 2.224±0.226 | 3.966±0.331 | 0.596±0.122 | 2.236±0.189 | 4.001±0.276 | 0.590±0.126 | 2.259±0.191 | 4.032±0.254 | 0.596±0.118 |

| Method | Steps | Infer. Time (s) | Time/Step (s) | FPS ↑ |
|---|---|---|---|---|
| VACE 18 | 50 | 482.56 | 9.65 | 0.499 |
| Wan-Animate 4 | 20 | 176.34 | 8.82 | 1.367 |
| HunyuanCustom 14 | 50 | 703.34 | 14.07 | 0.343 |
| SCAIL-2 39 | 8 | 190.98 | 23.87 | 1.262 |
| MoCha 38 | 30 | 1800.94 | 60.03 | 0.134 |
| UniSwap | 3† | 1.76† | 0.59† | 13.6 |

| Setting | A–V Sync | Video Quality | Voice Quality | |||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Sync-C ↑ | Sync-D ↓ | ASE ↑ | IQA ↑ | DINO-S ↑ | SIG ↑ | BAK ↑ | OVRL ↑ | SECS ↑ | SSIM ↑ | |
| Stage 1 (In-context) | 5.272±1.510 | 9.107±0.941 | 2.253±0.289 | 3.922±0.325 | 0.635±0.132 | 3.476±0.422 | 3.619±0.665 | 3.029±0.498 | 0.782±0.059 | 0.213±0.151 |
| Stage 2 (Teacher forcing) | 4.620±1.187 | 9.581±0.752 | 2.233±0.304 | 3.893±0.332 | 0.623±0.134 | 3.349±0.578 | 3.059±0.736 | 2.687±0.549 | 0.681±0.071 | 0.480±0.156 |
| Stage 3 (Self-forcing DMD) | 3.633±1.236 | 10.304±0.849 | 2.097±0.238 | 3.758±0.318 | 0.629±0.136 | 3.486±0.327 | 3.563±0.543 | 2.988±0.366 | 0.730±0.064 | 0.269±0.161 |
| Stage 2 w/o condition PE offset | 1.738±1.737 | 11.843±1.606 | 2.152±0.352 | 3.472±0.600 | 0.463±0.166 | 3.238±0.728 | 3.280±0.924 | 2.767±0.702 | 0.624±0.086 | 0.103±0.142 |

| Setting | 0–20 s | 20–40 s | 40–60 s | ||||||
|---|---|---|---|---|---|---|---|---|---|
| ASE ↑ | IQA ↑ | DINO-S ↑ | ASE ↑ | IQA ↑ | DINO-S ↑ | ASE ↑ | IQA ↑ | DINO-S ↑ | |
| UniSwap (full) | 2.224±0.226 | 3.966±0.331 | 0.596±0.122 | 2.236±0.189 | 4.001±0.276 | 0.590±0.126 | 2.259±0.191 | 4.032±0.254 | 0.596±0.118 |
| w/o Window-Bounded RoPE | 2.115±0.226 | 3.763±0.228 | 0.599±0.120 | 2.083±0.227 | 3.500±0.153 | 0.546±0.093 | 2.083±0.213 | 3.390±0.141 | 0.517±0.071 |
| w/o Reference Re-anchoring | 2.106±0.197 | 3.741±0.314 | 0.595±0.114 | 2.111±0.225 | 3.399±0.207 | 0.522±0.094 | 2.140±0.227 | 3.208±0.246 | 0.491±0.084 |
| w/o Adaptive Sink Block | 2.083±0.173 | 3.734±0.313 | 0.589±0.115 | 2.007±0.143 | 3.336±0.164 | 0.530±0.087 | 2.099±0.203 | 3.174±0.182 | 0.499±0.070 |

| Method | Appearance ID ↑ | Voice ID ↑ | Lip Sync ↑ | Naturalness ↑ |
|---|---|---|---|---|
| Wan-Animate + Seed-VC | 3.85 | 4.04 | 3.42 | 3.77 |
| SCAIL-2 + Seed-VC | 4.03 | 4.05 | 3.67 | 3.85 |
| MoCha + Seed-VC | 3.91 | 4.08 | 3.54 | 3.89 |
| HunyuanCustom + Seed-VC | 3.64 | 3.98 | 3.28 | 3.61 |
| UniSwap | 4.16 | 3.87 | 4.11 | 3.96 |

研究结果
- 在短视频基准(100个片段)上,UniSwap在所评估的替换方案中取得最高的Sync-C(3.633)和最低的Sync-D(10.304),音视频同步效果最好。
- 其身份相似度(DINO-S)与最强基线相差仅0.001(0.629对0.630),但美学与图像质量分数低于MoCha和SCAIL-2,部分语音质量指标(BAK、OVRL、SECS、SSIM)也低于最佳变声基线。
- 在一分钟长视频基准的三个分段中,UniSwap的身份相似度(DINO-S)均为最高,但SCAIL-2在美学与图像质量分数上更高。
- 效率测试显示,UniSwap生成一个24帧的块耗时1.76秒(约合每秒13.6帧),比最快的基线Wan-Animate(1.367 FPS)快约10倍,比MoCha快约100倍。
- 在30名参与者的盲测用户研究中,UniSwap在外貌身份、口型同步和自然度三项上获得最高评分。

可应用场景
- 影视后期制作中需要同时替换演员外貌与声音身份的场景
- 多语言配音或内容本地化中需要生成的声音与原始口型相匹配的场景
- 用于试验低延迟、接近实时的互动式流媒体内容生产流程
- 面向无障碍需求的视频重新配音或人物身份修改试验
局限与待验证事项
- 目前生成速度约为每秒13.6帧,低于实验中使用的25帧/秒播放标准,因此只能支持流式生成而非真正的实时播放,仍需进一步的系统优化。
- 在短视频上,部分画质、美学和语音质量指标仍不及专门针对单一模态优化的基线模型,说明统一处理与专项优化之间存在取舍。
- 作者明确指出当前模型主要针对单说话人场景,多说话人场景、遮挡以及复杂互动情形尚未解决。
- 面部表情完全由音频条件自动驱动,目前不支持用户独立编辑或指定表情。
- 消融实验表明,去除稳定性相关组件(窗口受限RoPE、参考重新锚定或自适应锚点块)会导致画质与身份相似度随时间推移逐渐下降,证明这些组件对长时生成稳定性都是必要的。
为什么重要
以往换脸加变声的级联方案常出现口型与转换后声音对不上的问题,UniSwap是号称首个在单一流式模型内同时处理两者的框架,这对影视后期制作、多语言配音、以及低延迟互动内容生产都有实际参考价值。不过在部分画质与音质指标上它仍不及专门优化单一模态的模型,说明统一处理与专项优化之间仍存在取舍。
本文术语
- 扩散Transformer · 一种通过逐步去除噪声来生成视频/音频的Transformer结构生成模型
- KV缓存 · 把之前计算过的键值对存储下来重复使用,避免每一步都重新计算全部内容
- RoPE(旋转位置编码) · 用旋转变换来表示token的顺序或时间位置的一种位置编码方式
- DMD(分布匹配蒸馏) · 训练一个只需少量步数的学生模型去模仿多步教师模型输出分布的压缩技术
- LoRA · 冻结原始模型、只训练少量适配器参数来实现低成本微调的方法
论文原文摘要(英文)
Talking-video character replacement requires coordinated transfer of appearance and voice while preserving the source motion, scene, linguistic content, and audio-video timing. Existing methods use separately optimized models for the two modalities, making audio-visual consistency difficult to enforce. We present UniSwap, the first framework for streaming joint audio-visual identity replacement in talking videos. Given a source video, a reference image, and a reference voice clip, UniSwap transfers the reference appearance and vocal timbre within a single audio-visual diffusion transformer while preserving the source content and dynamics. To address the scarcity of aligned cross-identity training pairs, we introduce a swap-and-reconstruct pipeline that removes visual and vocal identity from real clips and uses the original clips as reconstruction targets. Starting from a bidirectional backbone, we progressively adapt the model through In-context Pretraining for joint replacement, Conditional Streaming Adaptation for block-causal KV-cached generation, and Efficient Self-forcing DMD for mitigating exposure bias and reducing sampling from 30 to 3 denoising steps per block. Efficient Multi-LoRA Switching enables the three DMD roles to share a single frozen backbone. Feature-RoPE Decomposition keeps cached positions within the training range, supporting stable long-form inference. Experiments demonstrate strong audio-visual synchronization, competitive identity preservation, efficient streaming, and stable long-form generation.
在 arXiv 阅读最新论文
- SWE-bench Science: Can Coding Agents Resolve Engineering Tasks in Science?让AI编程助手去修复真实科学软件,连最强的那个也有一半以上任务没做对
- FlashPrefill V2: Block-Sparse Prefill Attention for Long-Context LLM Serving把稀疏注意力从论文原型变成能真正上线服务的加速方案
- PolicyGuide: From Guarding One Action to Guiding the Whole Workflow for Policy-Compliant LLM Agents让客服AI坐席不只是拦住一个危险动作,而是把整个流程走对
- EXIMO: VLM Guided Exploration of VLA Policies不用人工遥控演示,让会说话的AI来教机械臂做新家务
- EnvHarness: Awakening Static Worlds for Agent Learning不重新搭建训练环境,而是给现有环境套一层可插拔组件,针对每个智能体的具体弱点重新塑形
- Bounded Sovereignty and the Control Tax: Pricing AI Oversight When the Deployer Does Not Own the Model租用AI而非拥有AI的机构,安全监管能力只剩一半
- Beyond Imitation: Filtering On-Policy Distillation by Reasoning ProgressAI模仿老师模型学习时,会误伤本来推理正确的步骤,新方法专门过滤掉这种误伤
- PersonalBench: Measuring the Authorship Gap in LLM Personalization让AI模仿某人的文风,结果发现它始终摆脱不了自己的腔调
METAL MEDIA 最新报道
图片来源: Yuxuan Zhang et al., arXiv:2608.11752, arxiv-nonexclusive