xsl
6f4f167efd
fix(engine): voice 句尾剪字真根因根治(三修:源尾垫静音冲刷 SoundTouch 未冲刷小节)+ onEnd 完成信号 + live 探针适配
- 真根因(live span 8.57s < 文件 8.80s 铁证):SoundTouch Stretch 源结束时不冲刷
内部最后一个小节(~1 sequence),句尾 0.1-0.25s 从未交付音频图——任何平台皆然,
ASR 因容错转写仍 sim=1(转写评审盲区的又一实证)。一修固定 300ms 排空窗只是
把这段不存在的交付空等成静音;二修 onEnd 保证「已交付必播完」但交付不了这段
- 三修:源尾垫 VOICE_TAIL_PAD_SEC(0.25s) 静音把真实句尾推出管线;完成 = onEnd
(平台无关,disconnect 已交付帧仍播);1.5s 兜底;顶掉复核移至新句数据访问前
(垫长拷贝的 getChannelData 先于杀旧句会打乱探针时序)
- live 探针适配:尾部垫使 SoundTouch 读未注册 buffer、gcd 抽读信号消失——
清扫器加「仍有连接中语音 SPN 则不关段」守卫,断开即移出追踪集合
- engine-voice.test:PAD+I1/I2/I2b/I3 五组 19 断言(含垫长存在性、onEnd 结算、
兜底不早于 1.5s);10 套件全绿
- live 复验(男声 p1):span 8.57→9.04s(≥文件 8.80s),ASR sim=1 verdict=OK
2026-09-07 23:18:11 +08:00
..
2026-09-02 19:35:38 +08:00
2026-09-06 16:08:18 +08:00
2026-08-29 13:00:34 +08:00
2026-08-29 13:00:34 +08:00
2026-09-06 16:08:18 +08:00
2026-09-07 18:03:39 +08:00
2026-08-29 13:00:34 +08:00
2026-09-02 19:35:38 +08:00
2026-09-07 23:18:11 +08:00