fix: 预览模式配音修复 + 预览视频不创建成片库记录 (#1294) #1306
Reference in New Issue
Block a user
Delete Branch "fix/issue-1294-preview-voiceover-asr-init"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
问题
预览模式下存在两个问题:
根因分析
问题1:配音不工作
render_adapter.py:508在预览模式下无条件跳过 ASR 初始化:但配音触发条件(
unified_render_service.py:682)需要self.asr_service is not None,导致 TTS 永远不执行。问题2:预览视频出现在成片库
_upload_and_record函数不区分预览和正式生成,所有视频都调用create_video_record_and_dedup创建 GeneratedVideo 记录(即成片库记录)。修复方案
修复1:预览模式下有 voice_id 时初始化 ASR
文件:
apps/worker/video_processing/render_adapter.py修改前:
修改后:
修复2:预览视频不创建成片库记录
文件:
apps/worker/worker_app/tasks/generation.py修改:
_upload_and_record函数新增is_preview参数is_preview=True时,跳过create_video_record_and_dedup,返回video_count=0generate_video调用_upload_and_record时传入is_preview=task_info.get("is_preview", False)变更文件
apps/worker/video_processing/render_adapter.py- ASR 初始化逻辑apps/worker/worker_app/tasks/generation.py- 成片库记录创建逻辑关联 Issue
Closes #1294
测试清单
【阻塞级判定】
📊 审查概览
🔴 阻塞级问题(必须修复)
无
💡 改进建议(不阻塞合并)
无
✅ 良好实践
(is_preview and not has_voice_id)逻辑严密,正确覆盖了生产模式和非预览模式的场景。plan_config的初始化代码上提,消除了后续代码中的重复赋值,符合 DRY(Don't Repeat Yourself)原则。has_voice_id并添加清晰的注释,使得复杂的布尔逻辑更易于理解和维护。🤖 由 AI 代码审查机器人自动生成 | 2026-08-08 09:12:47 | 模型:
🚀 预览环境已部署
CI全绿,自动审批通过。
CI全绿,自动审批通过。
🗑️ 预览环境已清理
PR #1306 已关闭或合并,对应的预览环境已被清理。
fix: 预览模式下有 voice_id 时初始化 ASR 以支持配音 (#1294)to fix: 预览模式配音修复 + 预览视频不创建成片库记录 (#1294)