WhisperWebUI 的學習路徑
Github Repo
- 原始專案:jhj0517/Whisper-WebUI。建議先閱讀 README,了解支援的 Whisper 模型、語言與部署模式。
- 推薦先 Fork 一份至自己的帳號,方便後續自訂修改。
- 若僅想體驗,可使用作者提供的發行版 Release 下載現成建置包;如需針對工作流程調整,則建議從原始碼啟動。
1. 功能介紹
- 語音轉文字:支援 OpenAI Whisper 各種模型(tiny~large-v3),自動辨識語言並生成時間軸字幕。
- 語言翻譯:可選擇直接翻譯為英文或其他語言,亦可保留原文並生成雙語字幕。
- 段落編輯與審稿:WebUI 提供即時文字編輯、搜尋、合併/拆分區塊與時間調整。
- 多格式匯出:支援輸出
.srt、.vtt、.txt、.csv等字幕格式,亦可直接產出帶字幕的影片或音訊。 - 批次處理與排程:可一次處理多個檔案,搭配自訂 Queue 進行長時間任務排程。
- 擴充功能:透過外掛整合語音分離 (Demucs)、說話者分離 (Diarization)、GPU 加速等高階功能。
2. Google Colab 執行環境
- 開啟官方 Colab Notebook,在頂端工具列選
File > Save a copy in Drive,保留一份可自由修改的副本。 - 選擇
Runtime > Change runtime type,將Hardware accelerator設為GPU,GPU type建議選T4或L4(Pro 用戶可視情況改為A100)。調整完成後按Save。 - 依序執行 Notebook 的每個區塊:
- 第一個 Setup 區塊會安裝必要套件並下載 WebUI 程式碼,約需 3~5 分鐘。若出現
flash-attn安裝失敗,可暫時忽略或改用 CPU 模式。 - 執行
!python launch.py --share前,確認上一個安裝區塊已完全結束,避免混雜日誌導致錯誤。
- 第一個 Setup 區塊會安裝必要套件並下載 WebUI 程式碼,約需 3~5 分鐘。若出現
- 於左側工具列點選「掛載磁碟」圖示,或在 Notebook 新增下列程式碼以掛載 Google Drive,避免檔案於工作階段結束時被清除:
將素材放在from google.colab import drive drive.mount("/content/drive")MyDrive/whisper_input等資料夾後,於 WebUI 中選擇對應路徑即可讀取。 - 上傳大型檔案時,可透過左側 Files 面板的
Upload按鈕,或使用!gdown、!wget直接在 Notebook 下載遠端檔案。建議壓縮為 zip 以縮短傳輸時間。 - 啟動 WebUI 後,輸出欄位會顯示一組
https://xxxxx.gradio.live的公開 URL,點擊即可進入界面。該連結僅在目前 Colab 執行階段保持運作時有效,工作階段結束或逾時後會立即失效。 - 轉錄完成後,透過 WebUI 的 Download 按鈕保存
.srt或.txt檔。若要寫回 Google Drive,可在 Notebook 內加入:!cp -r /content/Whisper-WebUI/outputs /content/drive/MyDrive/whisper_outputs - Colab 執行階段閒置約 30 分鐘會自動中斷,可在 Notebook 末端加入短程式(例如每隔幾分鐘列印訊息)或保持頁面活動,減少長任務被中斷的機率。
3. How to Start(本地環境)
- 環境需求:建議使用 Python 3.10 以上、Git、防火牆允許 7860 或 8501 等 WebUI 預設埠號。若有 GPU (CUDA 11.7+) 可加速推論。
- 下載專案
git clone https://github.com/jhj0517/Whisper-WebUI.git cd Whisper-WebUI - 建立虛擬環境並安裝依賴
python3 -m venv .venv source .venv/bin/activate pip install --upgrade pip pip install -r requirements.txt - 啟動 WebUI
python launch.py --share # 如需公開連結,可加 --share - 首次設定:在 UI 中選擇 Whisper 模型體積、翻譯語言與輸出格式。測試小型檔案確認流程正常後,再處理正式影片。
4. 學習路徑規劃
- 階段 1:快速體驗
- 在 Google Colab 上執行官方 Notebook。
- 熟悉 UI 操作:上傳檔案、設定模型、下載字幕。
- 階段 2:搭建本地環境
- 在自己的電腦部署,測試 CPU 與 GPU 效能差異。
- 學習調整
config.json等設定檔,控制輸出語言、格式與細節。
- 階段 3:深度客製
- 研究 WebUI 導入的外掛或額外模組(如語音增強、說話者分離)。
- 若需整合到既有流程,可呼叫底層 API 或改寫
modules/中的任務腳本。 - 與本專案
process_srt.py搭配,建立自動化翻譯與配音流程。
- 階段 4:維運與最佳化
- 建置批次處理腳本,定期更新 Whisper 模型與依賴。
- 監測 GPU/CPU 資源、磁碟空間,確保長時間任務穩定。
5. 影片生成中、英文字幕的詳細步驟
- 準備素材
- 影片檔:建議使用
mp4、mov或mkv。 - 若原始音訊品質較差,可先在外部工具進行降噪或音量平衡。
- 影片檔:建議使用
- 匯入至 WebUI
- 在 WebUI 的 Upload 區塊拖放影片/音訊檔,或貼上線上資源 URL。
- 選擇
Task Type為Transcribe,Language 依需求選擇Auto。
- 設定雙語輸出
- 勾選
Translate to English以自動生成英文字幕。 - 若要保留原文,可開啟
Both Original & Translated Subtitles選項。 - 調整
Segment Overlap、Word Timestamps等細節,避免字幕切割過碎。
- 勾選
- 執行轉錄
- 點擊
Run Whisper,觀察進度列與伺服器日誌。 - 大型影片建議選用
medium或large-v2模型以提升翻譯品質,但會增加等待時間。
- 點擊
- 檢視與修訂
- 完成後在 Transcript 頁面檢查時間軸與語句。
- 使用內建編輯器調整錯字、停頓標點,可匯出為
.srt再搭配外部工具(例如 Subtitle Edit)做批次校正。
- 匯出結果
- 原文字幕:下載
filename.srt - 英文字幕:下載
filename_en.srt - 需要內嵌字幕的影片,可使用 WebUI 的
Mux Video功能或將字幕與影片放入ffmpeg另行封裝。
- 原文字幕:下載
- 後續流程建議
- 將英文字幕導入本專案的
process_srt.py進一步翻譯或合成語音。 - 將雙語字幕放入
test/目錄作為測試用樣本,方便比對調整後的輸出差異。
- 將英文字幕導入本專案的
補充資源
- Whisper 官方論文與模型說明:https://openai.com/research/whisper
- Whisper 模型尺寸比較與速度分析:https://github.com/openai/whisper#available-models-and-languages
- 字幕後製與校正工具:Subtitle Edit、Aegisub、ffsubsync。
- 若需自動化腳本範例,可參考社群整理的 Workflow(例如 GitHub Discussions 或 Reddit r/LanguageTechnology)。