逐字稿文字預覽
有人把Whisper做到了89ms中位延迟,还顺手把GPU峰值内存砍掉48%。 Whisper离线转写很强,但一做实时字幕,就会遇到假设飘移,重算变重,静音误触发。 Whisper Pipe最聪明的地方不是换模型,而是把实时转写拆成一条可控流水线。 它用双缓冲把已确认文本和未确认音频分开,活动音频窗口最多30秒,历史不会越背越重。 更关键的是词级时间戳,哪段文字提交了,就按最后一个词的结束时间,把旧音频精准裁掉。 提交也不是拍脑袋,简单句走快速通道,模糊句走三次确认,字幕少闪,延迟也压住。 结果很硬,P90延迟142ms,平均延迟下降81. 1%,WER只比离线Whisper高约2%。 资源更夸张,GPU峰值内存降低48%,平均利用率降低80. 9%,150分钟内存零增长。 现在用它,别走失效的源码安装,直接Pipe install WhisperPipe,然后用Pipe Stream启动。 所以Whisper Pipe最值得看的不是单个数字,而是它让实时转写像一个能长期工作的系统。 关注置身工坊,继续拆语音AI和开源项目。
本次執行流程與問題處理
下達指令
預期流程
- 下載與語音辨識
- 來源選擇與品質檢查
- 文字校正與句子單元
- 筆記與發布
- 公開網頁發布
1. 下載與語音辨識
工具:videonote-transcribe-url(主辨識管線:下載、Whisper 辨識與選稿)
處理:下載音訊、以 Whisper 辨識並選出最佳逐字稿
產出:yt_dlp_meta.json(影片元資料)、audio_16k_mono.wav(16kHz 單聲道音訊)、transcript.whisper.json(Whisper 辨識結果)、transcript.json(正式逐字稿)、transcript_selection_report.json(來源選擇報告)
耗時:17.0 秒
關係:依序執行
結果:完成
2. 全文快速校讀
工具:videonote_rapid_transcript_review.py
處理:先速讀完整逐字稿,再修正高可信突兀詞句並列出待確認項目
產出:rapid_transcript_review_report.json(產出檔案)
耗時:12.5 秒
關係:依序執行
結果:完成
3. 建立句子單元
工具:videonote-build-sentence-units
處理:將逐字稿切成帶時間軸的句子單元
產出:sentence_units.json(句子單元)
耗時:0.6 秒
關係:依序執行
結果:完成
4. 句子密度平衡
工具:videonote_balance_sentence_units.py
處理:平衡句子長度與密度
產出:sentence_units.json(句子單元)
耗時:0.6 秒
關係:依序執行
結果:完成
5. 時間軸稽核
工具:videonote_timeline_audit.py
處理:檢查時間軸與音訊對齊
產出:timeline_audit_report.json(時間軸稽核)
耗時:0.6 秒
關係:依序執行
結果:完成
6. 品質檢查
工具:videonote_controlled_quality.py(檢查時間軸與品質)
處理:檢查語言、時間軸與可讀性品質
產出:controlled_quality_report.json(品質報告)、language_sanity_report.json(語言檢查)
耗時:0.7 秒
關係:依序執行
結果:完成
7. 播放時間軸回填
工具:videonote_rebase_display_timeline.py
處理:將網頁播放時間軸回填為校正字幕時間
產出:display_timeline_rebase_report.json(時間軸回填報告)
耗時:0.7 秒
關係:依序執行
結果:完成
8. 逐字稿交叉檢查
工具:videonote_cross_check_transcript.py
處理:交叉檢查逐字稿與來源字幕
產出:transcript_crosscheck_report.json(交叉檢查)
耗時:0.7 秒
關係:依序執行
結果:完成
9. 來源句整理
工具:videonote_prepare_source_entries.py
處理:整理來源句子供時間軸與頁面使用
產出:sentence_units.json(句子單元)
耗時:0.7 秒
關係:依序執行
結果:完成
10. 生成筆記摘要
工具:videonote-generate-note(生成筆記摘要)
處理:生成筆記摘要與重點
產出:note.md(筆記 Markdown)、note.html(筆記 HTML)
耗時:67.7 秒
關係:依序執行
結果:完成
11. 建立筆記頁面
工具:videonote-render-html(產生筆記 HTML)
處理:產生可閱讀的筆記 HTML 頁面
產出:note.html(筆記 HTML)
耗時:0.8 秒
關係:依序執行
結果:完成
12. 發布公開頁面
工具:videonote-publish(發布公開頁面)
處理:發布到公開網站與每日列表
產出:公開筆記網址、result.json(管線結果)
耗時:0.9 秒
關係:依序執行
結果:完成
手動來源字幕
- 尚未產生
自動來源字幕
Whisper 字幕
Qwen 字幕
- 尚未產生
Parakeet 字幕
- 尚未產生
MOSS 字幕
- 尚未產生
聲學時間證據(PyAnnote / WhisperX)
- 尚未產生
校正前後逐字稿
目前待解決問題與初步改善方向
- ⚠️ 全文快速校讀:已套用暫定修正,請確認
segment=0 已先套用暫定修正:有人把Whisper做到了89ms中位延迟,还顺手把GPU峰值内存砍掉48%。Whisper离线转写很强,但一做实时字幕,就会遇到假设飘移,重算变重,静音误触发。Whisper pipe最聪明的地方不是换模型,而是把实时转写拆成一条可控流水线。 → 有人把Whisper做到了89ms中位延迟,还顺手把GPU峰值内存砍掉48%。Whisper离线转写很强,但一做实时字幕,就会遇到假设飘移,重算变重,静音误触发。Whisper Pipe最聪明的地方不是换模型,而是把实时转写拆成一条可控流水线。;segment=2 已先套用暫定修正:更关键的是词集时间戳,哪段文字提交了,就按最后一个词的结束时间,把旧音频精准裁掉。 → 更关键的是词级时间戳,哪段文字提交了,就按最后一个词的结束时间,把旧音频精准裁掉。;segment=4 已先套用暫定修正:结果很硬,P90延迟142ms,平均延迟下降81.1%,WE2只比离线Whisper高约2%。 → 结果很硬,P90延迟142ms,平均延迟下降81.1%,WER只比离线Whisper高约2%。;segment=6 已先套用暫定修正:现在用它,别走失效的圆码安装,直接Pipe install Whisper Pipe,然后用Pipe Stream启动。 → 现在用它,别走失效的源码安装,直接Pipe install WhisperPipe,然后用Pipe Stream启动。
- Qwen3-ASR 未完成,需確認 qwen_asr_lab 環境與音訊後重試精進模式。