Skip to content

v2.0.1

Choose a tag to compare

@kanbereina kanbereina released this 28 Jun 11:50
f913879

2.0.1

修复 2.0.0 引入的 VAD 长音频回归,并打磨 VAD 扫描体验。

修复

  • VAD 长音频 GPU 卡死:2.0.0 的 VAD 跟随转录设备上了 CUDA,但 silero VAD 是 LSTM,隐状态在时间步上串行依赖(窗口 N 必须等 N-1 的 hidden state),架构上无法沿时间轴并行 / 批处理,放 GPU 反被同步 + kernel launch 开销拖垮、比 CPU 慢几个数量级。改为固定 CPU(实测 ~119x 实时,4 小时音频约 2 分钟扫完;silero 官方亦建议跑 CPU)。
  • 日志错序 + 看似卡死:VAD 的加载与全程扫描原在转录生成器内部惰性执行,转录进度条已显示 0% 才轮到 VAD 跑。拆成 plan_audio()(探时长 + VAD 探间隙 + 规划,在转录进度条创建之前跑完)+ transcribe_segments()(拿预规划的段逐段转录)。

改进

  • VAD 扫描改用 0~100% 进度条(替代逐行 VAD 扫描 N%),与转录进度条顺序出现、互不冲突;修了进度计数 off-by-one(结尾 101% → 正好 100%)。
  • 断句逻辑优化。

说明

无对外 CLI / API 变更,按 SemVer 为 patch(2.0.0 → 2.0.1)。

验证

  • 全量测试 175 passed,ruff 干净,uv lock --check 通过。
  • VAD 端到端冒烟:CPU 路径 6s 扫完 720s 音频、进度条正好止于 100%、规划阶段先于转录阶段。

完整改动见 v2.0.0...v2.0.1