fix(ai-avatar): B-roll时间戳根因——逗号分句+优先后端时间戳 #1874
Reference in New Issue
Block a user
Delete Branch "fix/ai-avatar-broll-comma-split"
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?
根因
用户文案「卖花的叫花无缺,卖姜的叫姜子牙,卖菜的蔡文姬,那我修脚阔头的呢,应该叫什么呢」全是逗号分隔,原来的分句正则
[。!?!?;;\n]不切逗号,整段被识别为1句。后端静音检测基于 TTS 音频真实停顿切分,能切出 4-5 句;前端校验
sentenceTimings.length === rawParts.length(后端4句 vs 本地1句)条数不等 → 整个后端精确时间戳被丢弃,走降级路径。而对口型预览阶段
output_duration=0(最终视频还没FFmpeg渲染),降级估算所有时间都是 0.0~0.0s。修复
,,_split_script_into_sentences:正则同步加上逗号,前后端分句规则对齐测试
根因(用户截图文案:'卖花的叫花无缺,卖姜的叫姜子牙,卖菜的蔡文姬,那我修脚阔头的呢,应该叫什么呢'): 1. 分句正则没包含中文逗号「,」,整段被识别为1句;后端静音检测按TTS音频停顿 切出多句,前端校验 sentenceTimings.length===rawParts.length 条数不等 → 整个后端精确时间戳被丢弃走降级 2. 降级路径 outputDuration=0(对口型预览阶段最终视频未渲染)→ 所有句子时间估算为0 修复: - 前端 sentences.ts: a. 分句正则加上中英文逗号「,,」 b. sentenceTimings 校验放宽:只要是有效数组就直接用后端句子列表, 不再强制条数相等(后端按音频停顿的切法才是真实边界) - 后端 _split_script_into_sentences:正则同步加逗号,前后端一致 - 补单测验证逗号分隔文案分句🚀 预览环境已部署
🗑️ 预览环境已清理
PR #1874 已关闭或合并,对应的预览环境已被清理。