标签:#音视频生成 | #流匹配 | #流式处理 | #实时处理 | #音视频
评分:8.0/10 | 创新 1.5/2 | 技术严谨 1.2/1.5 | 实验充分 1.2/1.5 | 清晰度 0.8/1 | 影响力 0.8/1.5 | 开源 1.2/1.5 | 可复现 0.3/0.5 | 工程/实践 1/1.5
👥 作者与机构
- Artem Kravtsov:机构信息未在 arXiv HTML 中可靠披露
- Dmitrii Ziganshin:Avaturn Live
- Vsevolod Poletaev:Core contributors: co-wrote the paper
- Gleb Balitskiy:机构信息未在 arXiv HTML 中可靠披露
- Anastasia Tikhonova:机构信息未在 arXiv HTML 中可靠披露
- Egor Burkov:机构信息未在 arXiv HTML 中可靠披露
- Vadim Lebedev:机构信息未在 arXiv HTML 中可靠披露
📌 核心摘要
交互式虚拟形象需以双人语音为输入连续输出头部与表情视频,难点在于外部语音智能体输出不定长分片而生成器需定长音频窗,且无声倾听时仍须连续生成并处理打断。先音频编码负责提供短窗可用条件,以双路525ms语音分片为输入做自蒸馏对齐全上下文教师特征,其输出的双路音频特征直接作为运动生成的条件输入进入动作预测,再运动生成负责动作建模,以双路音频特征、75帧历史动作与静态参考为输入由153M参数条件流匹配Transformer自回归预测,其输出的五帧42维头部旋转与表情动作块直接进入渲染调度作为驱动,最后渲染与流媒体负责连续呈现,以动作块、缓存外观与不定长语音分片为输入组装定长呈现窗与未来窗并按媒体时间戳连续发布音视频。与已有实时双人系统相比,关键差异是将远近历史动作、双路音频与静态参考分离条件化并做分区制导,同时从调度规则解析出响应与打断延迟的上下界。在525ms短窗特征保真评测下,自蒸馏学生编码器的相对L1错误率为12%,低于原始HuBERT短窗直接编码的相对L1错误率50%。结论仅适用于短延迟双人倾听与固定窗调度,长延迟、可变延迟非线性响应及极端遮挡大角度外推尚未验证。单次五帧请求在L40S上TTFF为42 ms、处理耗时71 ms,满足25 fps连续播放。
🔗 开源与复现资源
代码相关资源:https://github.com/avaturn-live/avtr-1 — 链接可访问(HTTP 200)
模型相关资源:https://huggingface.co/avaturn-live/avtr-1 — 链接可访问(HTTP 200)
演示资源:https://avaturn.live — 链接可访问(HTTP 200)
可达状态仅表示本次链接检查结果,不代表许可证、本文权重或运行复现已验证。
🧭 深度解读
输入是什么,目标是什么,这篇解读要保留什么?
本文解读的对象是 AVTR-1,一个面向实时交互化身的开源栈。输入是双人对话音频与一张源人像,目标是连续输出与语音同步的化身视频,并在用户说话时能倾听、在用户打断时能停下。需要保留的关键信息包括模型如何表示动作、如何处理双通道音频、如何把不定长语音变成固定窗口、延迟由哪些调度项组成,以及如何验证倾听是否真的依赖说话人语音。输出是可复述的方法链条与可核对的实验条件,不做超出原文的性能断言。
资源状态方面,代码、模型与演示链接本次均可用,状态码均为 200,因此可以写当前已公开,但具体许可证按组件区分,解读不展开法律文本。后续按学习依赖展开,先讲任务与路线,再讲全景与组件,然后是训练、流式推理、延迟、评估与复现。
从说话头到双人交互,路线差异在哪里?
说话头生成解决的是单人问题,给定一段语音与一张人像,生成口型对齐、身份保持的视频。它的输入只有被生成者的语音,不需要处理另 1 人的语音,也不需要在无人说话时持续生成。双人系统解决的是对话问题,需要同时接收自发语音与他方语音,既要在说话时动嘴,也要在倾听时给出点头、注视或表情变化。AVTR-1 属于后者,它把外观渲染与动作生成分离,动作模型只预测紧凑的头部旋转与表情变形,再交给基于 LivePortrait 的渲染器画出图像。
这种分离让训练目标更小,也让同一模型能在说话与倾听两种状态间切换。另一条相关路线是语音智能体,包括流水线式语音识别加大语言模型加语音合成,以及端到端语音到语音模型。AVTR-1 不自己做语义理解与回复语音,而是消费外部语音智能体的输出,专注于把语音变成同步且可打断的视频。因此评价它时要分开两层,一层是动作质量,另一层是服务调度带来的延迟。
为什么快推理还不够,交互卡在哪里?
论文指出的矛盾是模型推理快不等于对话体验好。语音智能体吐出的是大小不定、到达时刻不定的语音片段,而运动模型要求固定大小的音频窗口。视频通话还要求恒定帧率输出,即使化身没有说话也要持续生成倾听帧,否则画面会冻结。此外还有两个用户可感知的延迟,一是回应延迟,从用户说完到化身声音出现,二是打断延迟,从用户插话到化身停止说话。
传输、语音识别、轮次检测与语音合成都会贡献延迟,而化身系统作为视频附加层会额外增加调度与渲染延迟。如果只优化单块推理时间,不处理窗口对齐、连续调度与打断丢弃,系统仍然无法上线。AVTR-1 要解决的正是从离散分块生成到连续同步播放的衔接问题,并把这部分延迟解析成可验证的界。
整个栈如何从双人音频走到同步音视频?
沿一个样本走一遍有助于建立全景。假设左右 2 人正在对话,目标是生成其中 1 人的化身。系统取目标人的语音作为自发语音,另 1 人的语音作为他方语音,两路分别编码成特征。运动模型读取过去 75 帧动作历史、两路音频历史与静态参考条件,自回归地 1 次生成 5 帧 42 维动作。渲染器把这 5 帧动作与源人像的外观特征结合, warp 并解码出人脸,再贴回完整画面并与背景融合。
流传输器在外层不停循环,每 200 毫秒发起 1 次渲染请求,把每帧配上对应 40 毫秒的化身语音,按媒体时间戳送给传输组件播放。当语音智能体没有语音时,调度器用静音填充未来窗,保证循环不阻塞,从而持续生成倾听动作。当用户打断时,调度器丢弃尚未送入窗口的语音片段,并把已承诺的当前窗口播完,实现有界的停止延迟。
渲染器 × 流传输器: 渲染器负责单次请求:编码音频窗口、生成 5 帧动作并渲染成图像;流传输器负责整个会话:把语音智能体的不定长语音变成固定窗口、按节拍连续调用渲染器并同步音频视频。两者搭配是因为模型只懂固定块,而视频通话要求恒定帧率与可打断,组合后才形成连续可交互的音视频流。
动作表示与变换器如何分工处理双音频?
每帧动作是 42 维向量,包含头部旋转的轴角向量与眉眼口区域的表情变形。原文做法是先把表情变形转到头部坐标系,再做数据集全局 z 分数归一化,然后拼接旋转与选出的 39 个表情坐标。尺度、平移、标准关键点与剩余表情坐标不作为训练目标,推理时直接取自源图像并固定。这种选择把身份与尺度相关的量留给渲染侧,让生成侧只学可动的姿态与表情。模型本体是 153M 参数的条件流匹配变换器,解码器 18 层、宽度 512、自注意力只看当前 5 帧,过去动作与音频走条件分支。
这种设计让每块计算量不随已生成长度增长。条件分支把过去 75 帧分成近 5 帧与远 70 帧两路,另有自发音频、他方音频与静态参考共 5 路,分别做交叉注意力或多层感知机,再按条件可用向量加权相加。分开处理的原因是避免音频与动作在同一注意力分布里竞争。音频门还用伪语音活动标签监督,抑制训练数据中说话人分离不干净带来的串扰。输出侧把 512 维表示投影到头、眉、眼、口 4 个区域子空间,分别做无分类器引导,再映射回各自坐标并拼接成速度预测。
自发语音 × 他方语音: 自发语音指生成目标本人的语音通道,负责驱动说话时的口型与头部运动;他方语音指对话另 1 人的语音通道,负责驱动倾听时的反应。两者分开编码再分别做交叉注意力,是为了让说话与倾听不共用同一注意力分布,从而在同一模型里同时学会说话运动与反应式倾听。
\[\mathbf{m}_{t}=(1-t)\,\boldsymbol{\epsilon}+t\,\mathbf{m}.\]该式说明训练时如何加噪,符号 m 是目标动作,epsilon 是高斯噪声,t 是 0 到 1 的时间步,mt 是两者线性插值。模型要预测从噪声指向目标的速度。
\[\mathcal{L}_{\mathrm{CFM}}=\mathbb{E}_{t,\mathbf{m},\boldsymbol{\epsilon}}\sum_{r=1}^{4}\operatorname{MSE}\left(\mathbf{v}_{\theta}^{(r)}(\mathbf{m}_{t},t),\,\mathbf{m}^{(r)}-\boldsymbol{\epsilon}^{(r)}\right).\]该式是分区域的流匹配损失,4 个区域分别算均方误差再求和,使坐标多的区域不压倒坐标少的区域。余弦距离项再约束方向,平滑正则约束跨块连续性。
流匹配 × 自回归分块: 流匹配负责把高斯噪声沿直线路径推向目标动作,学习预测速度场;自回归分块负责每次只生成 5 帧,并把已生成历史作为下一块的条件。搭配理由是流匹配擅长连续运动建模,而分块自回归把长时生成变成固定代价的循环,组合后得到可流式推进的运动生成器。
数据、噪声与课程如何匹配自回归推理?
训练数据是内部收集的 926 小时无脚本双人对话,经过人工筛选、场景切分、双人脸检测、左右分区姿态校验、视听说话人分离、音频特征与动作标注,再过滤掉运动突变窗口。每个保留片段有左右两路音轨与动作标注,训练时随机选 1 人为目标,其语音为自发语音,另 1 人为他方语音。训练按自回归方式组织,每 25 帧目标切成 5 个连续块,历史保持 75 帧。
课程从全用真实历史开始,每个轮次把更早的一块换成模型一步估计,并用学到的时间步嵌入区分真实与估计,以缩小训练与推理的暴露偏差。噪声采用跨块连续的渐进噪声,并在批内对头眉眼口分别做不混溶重排,使噪声更接近对应目标。优化使用 Adan,分 3 组设置权重衰减,学习率经 5000 步热身到 3×10−4,再经 200000 步余弦衰减到 10−5,在单卡 GH200 上约 35 小时完成,发布权重为指数滑动平均。
\[\mathcal{L}_{\mathrm{total}}=\mathcal{L}_{\mathrm{CFM}}+\mathcal{L}_{\mathrm{cos}}+\mathcal{L}_{\mathrm{reg}}+\lambda_{\mathrm{VAD}}\mathcal{L}_{\mathrm{VAD}},\]该式是总目标,流匹配、余弦、平滑正则与语音活动门监督按系数相加,其中门监督权重为 0.01,平滑项中表情系数为 0.1,旋转与 3 维关键点系数为 100。
\[\mathcal{L}_{\text{distill}}=\frac{1}{Nd}\sum_{i=1}^{N}\left\lVert\mathbf{h}_{i}^{\text{chunk}}-\mathbf{h}_{i}^{\text{full}}\right\rVert_{2}^{2}.\]该式是流式音频编码器的自蒸馏目标,学生用 525 毫秒短窗预测教师在全长音频上的特征,N 为 13 帧,d 为 1024 维。训练时卷积前端冻结,只更新投影与变换器,并用静音与加噪增强提高鲁棒性。原文报告该蒸馏把相对 L1 误差从约 50% 降到 12%,这是流式可用的关键。下表整理编码器窗口与蒸馏效果的对应关系,数字与单位均来自原文连续句,裸值不自行加单位。表前问题是短窗为何偏离全上下文特征,以及蒸馏带来多大改善,公平条件是同一 525 毫秒窗口与同一教师特征。
| 条件 | 窗口与指标 | 教师与学生 | 效果 |
|---|---|---|---|
| 输入分段 | 525 ms | 过去 120 ms 加当前 200 ms 加未来 205 ms | 对应 3、5 和 5 帧 |
| 未蒸馏偏离 | 30–60% | 短窗特征相对全上下文特征 | 相对 L1 距离 |
| 蒸馏后误差 | 从约 50% 到 12% | 学生相对教师 | 相对 L1 误差 |
表后解释是短窗因缺少过去与未来上下文而偏离,蒸馏在不改结构的情况下拟合教师特征,代价是仍需 205 毫秒未来音频与固定窗口假设,网络抖动导致缺片段时调度器会阻塞而非用静音替代。
流式编码与渲染请求如何保持固定节拍?
推理时音频编码器每次固定吃 525 毫秒,两路音频拼成批量 21 次编码,只保留当前 5 帧与未来 5 帧特征,过去 3 帧丢弃因为已缓存,再在外层拼接 75 帧历史给运动模型。未来 5 帧只用于当前块,不入缓存,下一步重算为当前帧,保证编码器输入恒定而运动模型仍有长历史。运动采样用相关噪声加截断阈值 1.2 抑制极端表情与转头,再用欧拉求解器做 4 次模型评估。无分类器引导以纯历史为基线,分别加上自发、他方与参考的区域残差,发布接口对每条件用统一权重。
渲染把 42 维动作反归一化,转轴角为旋转矩阵,与源参数组合成驱动关键点,经 stitching、warp、解码、贴回与抠图融合输出。每会话状态保留动作历史、双路音频特征、编码器所需过去音频与末帧噪声,约 0.64 MB,进程内放 GPU,HTTP 接口则序列化传递。训练超参数与资源如下表所示,用于复现时对齐优化器与步数,表中数字与单位来自原文连续句。
| 项目 | 取值与单位 | 说明 | 适用阶段 |
|---|---|---|---|
| 训练步数 | 200,000 steps | 余弦衰减总步数 | 运动模型 |
| 热身步数 | 5,000 warm-up steps | 线性升温 | 运动模型 |
| 峰值学习率 | 3×10−4 | 热身终点 | 运动模型 |
| 终点学习率 | 10−5 | 衰减终点 | 运动模型 |
| 训练耗时 | approximately 35 hours | 单卡 GH200 | 运动模型 |
表后说明是该配置对应发布权重的训练预算,代价是数据本身未公开,926 小时语料与分离管线无法重放,只能用公开权重与推理栈复现服务行为。
评测在什么数据与条件下比较谁?
主评测用 Seamless Interaction 测试集中即兴对话子集的 184 对说话人与倾听者,共 11.90 小时 30 帧视频,记为 SI-184。常规指标在语音活动检测选出的倾听静音帧上计算,R-DGG 则在更严的公共评分子集上计算,要求倾听静音、说话人至少活跃 1 次、边界去 0.2 秒、段长至少 4 秒且有 100 帧历史,最终 177 个视频贡献 1457 段共 3.46 小时 25 帧数据。比较对象包括 3 个双人系统与 4 个说话头生成器,双人系统同时接收配对音频,说话头只接收被生成者的音频。
视觉用 FID、FVD 与 ArcFace 余弦相似度,口型用 SyncNet 的 LSE-D 与 LSE-C,倾听用残差相关、配对弗雷歇距离、多样性与方差,分别从 EMOCA 与 LivePortrait 特征计算。R-DGG 用 126 维动作拼接、HuBERT 第九层语音特征,经主成分降维与参考投影,先拟合听者历史加说话人运动的基线,再看加入说话人语音后的误差下降,并用 100 次循环移位校正时序相关带来的虚高。不确定性用按人重采样的 20000 次自助法报告中位数与 2.5% 到 97.5% 区间。数据集配置如下原表所示,该表是唯一可直接选择的原表证据。
表前问题是评测子集如何定位,公平条件是固定供应商、交互类型、标签与划分。
| Configuration field | Value |
|---|---|
| vendor | V00 |
| interaction_type | ipc_conversation |
| label | improvised |
| split | test |
表后解释是该配置排除 grounded 手势表演视频,只保留双人即兴对话,使语音条件倾听的定义成立,未覆盖的是跨语种与强遮挡场景,原文未报告这些边界。
延迟的四个调度项如何组成可验证的界?
流传输器的回应延迟贡献分解为等待下一轮、左填充、当前窗推进与渲染提前量。每一轮产生 200 ms 画面,因此首片段最多等 200 ms;调度每次只填未来窗 200 ms 后缀,5 ms 前缀为不可替换常量,故填充在 5 到 205 ms 之间;片段再等一轮 200 ms 才被提升为当前窗并生成画面;渲染提前量设 100 ms 以覆盖首帧时间。
期望为四项之和,回应下限 305 ms、上限 705 ms,打断时未来窗直接填静音,填充落到 5 ms 常量,打断上限为 505 ms。原文强调只有提前量是自由参数,其余来自窗口与调度规则的选择。实测用两个商用语音智能体各 10 组配对交换验证,加和在 1 ms 日志精度内成立,OpenAI 首片段较大使填充保持在 5 ms 常量,Cartesia 小片段使填充升高并抬高均值。下表把界与节拍整理成可复述的预算,数字与单位来自原文连续句。
\[\mathbb{E}[T]=T_{\mathrm{lead}}+T_{\mathrm{present}}+\mathbb{E}[T_{\mathrm{wait}}]+\mathbb{E}[T_{\mathrm{pad}}],\]该式中 T 为回应或打断贡献,Tlead 为提前量,Tpresent 为 200 ms,Twait 与 Tpad 为部署相关的等待与填充,网络距离不进入该式,渲染只通过提前量进入该式。
| 延迟项 | 回应界 | 打断界 | 节拍与说明 | 部署相关性 |
|---|---|---|---|---|
| 等待下一轮 | [0, 200) ms | [0, 200) ms | 每 200 ms 一轮 | 与智能体节拍相关 |
| 窗口推进 | 200 ms | 200 ms | 未来窗变当前窗 | 固定 |
| 渲染提前 | 100 ms | 100 ms | 覆盖首帧时间 | 与硬件相关 |
| 总界 | floor 305 ms 且 below 705 ms | floor 305 ms 且 below 505 ms | 四项相加 | 仅部分相关 |
表后收益是界不依赖网络距离且渲染只通过提前量进入,代价是要求实时到达、不阻塞与可见起止标记,若语音智能体只输出连续音频而无起始标记,则回应界不适用,该边界条件决定了模型能否直接复用。
回应延迟贡献 × 打断延迟贡献: 回应延迟贡献指从收到回复起始标记到第一帧回复语音播出的流传输器耗时,打断延迟贡献指从收到打断信号到化身语音停止的耗时。两者都由等待、填充、窗口推进与渲染提前量组成,但打断时未来窗直接填静音而无语音填充,搭配分析才能区分正常回复与打断的不同调度路径。
端到端预算里化身层占多少,谁是主导?
端到端回应从用户语音结束到化身首帧语音播出,还包括麦克风、编解码、网络、抖动缓冲、语音智能体内部转写与大模型与合成,以及流传输器与语音智能体之间的两跳网络。原文引用公开语音到语音预算作为参考,语音智能体端到端 1090 毫秒,流传输器以 Cartesia 实测均值 454 毫秒居第二,其余共 213 毫秒,总计 1757 毫秒。语音智能体内部大模型首包 650 毫秒与转写端点 300 毫秒是主要来源,因此若目标是 1500 毫秒语音到语音,仅压缩化身层不够,还需压缩语音智能体。
该预算的客户端与智能体数字来自外部文献仅作示意,流传输器部分才是本文实测。下表把三部分总量并列,便于复述时区分本文贡献与引用部分。
| 部分 | 耗时 | 来源性质 | 含义 | 可压缩性 |
|---|---|---|---|---|
| 语音智能体 | 1090 ms | 引用的端到端 | 转写加模型加合成 | 主导,需外部优化 |
| 流传输器 | 454 ms | 本文实测均值 | 调度加渲染 | 可调提前量与窗口 |
| 其余传输 | 213 ms | 引用的分组总和 | 编解码加网络加缓冲 | 随部署变化 |
表后反例是即使化身层做到下限 305 毫秒,总预算仍可能超标,因为语音智能体已占近三分之二,未胜出项是本文未测量真实网络波动下的端到端分布,只给出同区域假设下的两跳各 5 毫秒。
常规倾听指标为何分不出是否用了配对语音?
常规动作指标比较生成与真实分布的接近程度,但说话头生成器在倾听段输入的是静音,仍能生成自然的静止或微动,因而在残差相关、配对距离、多样性与方差上与双人系统相当甚至更好。原文报告说话头占据表情相关与距离的靠前排名,双人方法只在姿态多样性与方差占优,换 LivePortrait 特征后模式依旧。这说明像不像不能证明是否响应了语音。
R-DGG 的验证设计正好补上这一缺口,真值倾听区间在零之上,错配身份的真值与其他人语音配对区间包含零,4 个说话头区间都包含零,3 个双人系统区间都在零之上,但三者区间重叠而不支持排序。时间偏移分析显示真值与双人系统的增益随对齐变化,而说话头与错配对保持平坦,进一步支持预测依赖而非静态质量差异。限制是 R-DGG 只测线性投影下 4 秒内延迟的预测增益,过长或非线性响应可能漏检,零附近不证明无响应,得分高也不等于听得好。
哪些结论有界,哪些缺项不能推定?
直接报告的是模型配置、延迟分解与区间、端到端预算中的实测部分,以及 R-DGG 的验证模式。有限解释的是 AVTR-1 在所比双人系统中视觉与多数倾听指标领先,但 R-DGG 区间重叠意味着不能断言双人系统间的排序。未验证的是因果影响,R-DGG 按 Granger 惯例只测预测依赖,共享事件可同时影响说话语音与倾听动作而不构成因果。
缺项包括训练语料未公开使训练不可重放、常规指标的全帧与 VAD 两种口径需对照阅读、不同 GPU 的单块耗时与实时因子需按部署重测,以及打断时语音智能体是否利用未播放部分的丢弃信息取决于外部实现。本文把冻结与更新交代清楚,音频编码器卷积冻结而变换器微调,运动模型全量训练后用滑动平均发布,但未报告的梯度路径不做推定。相关性不写成因果,单步速度不写成端到端延迟,总体趋势不推广到每段对话。
要复现与试用,先跑什么,再补什么验证?
值得尝试的场景是已有语音智能体、需要加一路同步化身视频且要求可打断的视频通话,尤其看重倾听不断帧而非冻结画面的部署。复现先做三件事,一是用公开权重与推理栈在本地跑通单块 5 帧请求,核对 200 毫秒输出对应的处理时长与首帧时间,二是接一个能暴露起止标记的语音智能体,复现等待、填充、推进与提前量的四项加和,三是在 SI-184 相同配置上复算常规指标与 R-DGG 的公共子集,注意 25 帧网格、4 秒历史与身份不交叠的交叉拟合。
还需补的验证包括目标硬件上的提前量分布、网络抖动下的阻塞暂停统计、长延迟与非线性倾听的覆盖测试,以及错配与说话头阴性对照是否依然包含零。只有这些都对齐,才能把延迟界与语音依赖的结论搬到新语料与新智能体上。
一句话收束:何时选它,何时不选?
当系统已有高质量语音对话,只缺一路实时同步且能倾听打断的画面时,AVTR-1 的紧凑动作模型加连续调度是可直接试用的选择;当语音智能体本身延迟已超预算,或需要长时非线性共情与跨语种鲁棒性证明时,应先压缩语音链路并补充对应评估,再决定是否引入视频层。
常规倾听指标负责刻画生成动作与记录动作在相关与分布上的接近程度,但不能区分是否使用了配对语音;R-DGG 负责在控制听者历史与说话者动作之后检验说话者语音的增量预测信息,分工上前者管动作合理性、后者管语音依赖性。组合原因是只有两者同时成立才能主张倾听动作既自然又受配对语音驱动,缺任一侧都会把无条件生成误判为有条件倾听,故结果解读必须联合使用。
常规倾听指标 × R-DGG: 常规倾听指标比较生成与真实倾听动作的分布或相关,负责衡量像不像;R-DGG 比较加入说话人语音后对当前倾听动作的预测误差下降,负责衡量是否依赖配对语音。搭配原因是 plausible 的动作可以不依赖语音也得高分,组合后才能区分跟随动作与响应语音两种行为。
📎 论文与评分元数据
排名:前25% | 文档类型:系统技术报告 | arXiv 原文
⚖️ 评分明细
评分属于系统判断,不是论文实验结果;八维数值与总分见页首,原始审计记录保留在后端。
评分规则:type-aware-v1
评分模型:muse-spark-1.3-contributor
评分请求协议:openai_responses