Repository navigation
v2.2.2 — 长音频切片修复与取消支持
STTMiniTool v2.2.2
本版聚焦长音频切片转录的可靠性:修复了两个导致超长音频转录必然失败的 bug,并让「取消」真正即时生效。建议所有用户升级。
🎵 长音频切片修复(本版核心)
- 修复切片转录崩溃:超 2 小时音频切片转录完成前最后一步,写出 SRT 时对字典按四元组解包导致
too many values to unpack (expected 4)崩溃——此前任何长音频转录都会在最后一步失败 - 修复 ffmpeg 切片参数语义错误:
-ss放在-i前时输入时间戳被重置,-to <全局终点>被误读成重置后时间轴的终点——第 2 片起每片严重超长、重叠区去重失效。改用-t <片长>显式指定时长
✋ 取消真正即时
- 转录取消不再需要等待:CrispASR 子进程可被随时终止(独立 watch 线程杀进程),此前只能在切片边界退出,单片转录中无法中断
- 取消事件每次运行后自动复位——修复了残留置位状态会让切片转录第 2 片被误杀的回归(代码审查抓出)
📤 上传修复
- 修复 multipart 解析把文件内容尾部
\r\n一并剥掉的问题——音频数据不再静默截断
🧨 错误处理改进
- 转录失败时回结构化的 500 JSON 错误(此前连接直接中断,前端只能显示网络错误)
- 运行日志的 ERROR 记录现在附完整调用栈(缩进格式,按行检索不混入独立事件)
- 切片转录全静音时给出明确诊断(多少片无内容、可能原因),不再笼统报「未检测到人声」
🧹 清理
- 删除已被共享断句模块取代的旧实现(约 150 行)及其残留导入
打包内容:STTMiniTool.exe(onefile,WebView2 界面)+ CrispASR 核心二进制。模型文件不随包附带,首次使用时按需下载。