[P0][Bug] MuseTalk生成视频短于音频时出现循环倒放问题 #2073

Open
opened 2026-09-28 00:24:30 +08:00 by xiaoxia · 0 comments
Owner

问题描述

当前MuseTalk数字人视频生成存在一个渲染bug:当口型同步生成的视频时长小于配音音频时长时,视频片段会出现循环倒放(先正放再倒放再正放)的诡异现象,导致成片效果不自然。

复现条件

  • 输入配音音频时长 > MuseTalk生成的视频片段时长
  • 常见于长文案/慢速配音场景

期望修复

当视频短于音频时,应使用以下方式填充,不允许循环倒放:

  1. 方案(推荐):冻结最后一帧(Freeze Frame)——视频播完后停在最后一帧,用静态帧补齐剩余音频时长,音频正常播完
  2. 备选:在最后一帧基础上做轻微Ken Burns缩放,避免完全静止的僵硬感

技术方案

在apps/worker/video_processing/或MuseTalk回调后的FFmpeg拼接阶段:

  • 计算视频时长与音频时长差值
  • 若视频<音频,用FFmpeg tpad或-loop 1生成最后一帧静态视频补齐
  • 不允许使用reverse/loop造成的倒放循环效果

验收标准

  • 配音音频100秒 + MuseTalk视频80秒 → 成片100秒,最后20秒为最后一帧静态画面,音频完整
  • 正放/倒放循环现象完全消失
  • 不影响视频≥音频的正常场景

关联

  • PRD: viral-video-feature-PRD-v1.4
  • 优先级: P0,影响所有数字人口播场景
## 问题描述 当前MuseTalk数字人视频生成存在一个渲染bug:当口型同步生成的视频时长小于配音音频时长时,视频片段会出现循环倒放(先正放再倒放再正放)的诡异现象,导致成片效果不自然。 ## 复现条件 - 输入配音音频时长 > MuseTalk生成的视频片段时长 - 常见于长文案/慢速配音场景 ## 期望修复 当视频短于音频时,应使用以下方式填充,不允许循环倒放: 1. **方案(推荐):冻结最后一帧(Freeze Frame)**——视频播完后停在最后一帧,用静态帧补齐剩余音频时长,音频正常播完 2. 备选:在最后一帧基础上做轻微Ken Burns缩放,避免完全静止的僵硬感 ## 技术方案 在apps/worker/video_processing/或MuseTalk回调后的FFmpeg拼接阶段: - 计算视频时长与音频时长差值 - 若视频<音频,用FFmpeg tpad或-loop 1生成最后一帧静态视频补齐 - 不允许使用reverse/loop造成的倒放循环效果 ## 验收标准 - [ ] 配音音频100秒 + MuseTalk视频80秒 → 成片100秒,最后20秒为最后一帧静态画面,音频完整 - [ ] 正放/倒放循环现象完全消失 - [ ] 不影响视频≥音频的正常场景 ## 关联 - PRD: viral-video-feature-PRD-v1.4 - 优先级: P0,影响所有数字人口播场景
xiaoxia added the bugbackendP0 labels 2026-09-28 00:24:30 +08:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: xiaoxia/xiaoxia-saas#2073