回到頂部
深藍聲音實驗室裡,錄音帶的兩條波形以相同定位針對齊,呈現字幕轉換仍要保留時間軸

Whisper 繁體中文字幕:語言設定、OpenCC 轉換與校稿

Whisper 設定中文後仍出現簡體字,該改模型還是轉換字幕?整理 zh 語言參數、OpenCC 台灣用語模式與 SRT 時間軸檢查,保留原稿再交付。

內容查核: 來源查核:

Whisper 設定了中文,字幕仍出現簡體字,不代表這次轉錄一定失敗。 如果你替台灣課程、訪談或產品影片做字幕,先分清楚是「聲音聽錯」還是「字形不符」。前者要回聽或重跑辨識,後者可以先保留原始 SRT,再轉成繁體,避免為了幾個字形重做整場錄音。

我會把交付分成三步:確認中文轉錄設定、另存繁體字幕、對照聲音校稿。安裝與硬體問題可接著看 whisper.cpp 本機轉錄教學;這裡處理的是已經拿到字幕後,如何把它整理成可交付的繁中版本。

zh 是音訊語言,translate 也不是翻成繁中

OpenAI 的語言代碼表把 zh 對應到 Chinese,沒有另外列出 zh-TW 的繁體輸出選項。轉錄程式的參數說明也把 --language 定義成音訊中使用的語言,並非目標字幕的地區字形。

因此,對中文錄音指定 --language zh 是告訴模型要辨識中文;它無法當作「每個字都必須是繁體」的保證。若使用的桌面工具另有繁體設定,還要確認是模型提示、轉換字庫,還是另一層校稿功能。

另一個常見誤會是 --task translate。依 Whisper 官方說明,這項任務用來把語音翻成英文,不是把英文錄音翻成繁體中文;turbo 也不是用於語音翻譯任務的模型。要留中文原話,先確認正在做 transcribe。whisper.cpp 的參數名稱不同,不能把 Python Whisper 的長參數直接套過去。

OpenCC 三種繁體模式,怎麼選?

OpenCC 是字形與詞彙轉換工具。依官方設定表,s2t.json 轉成 OpenCC 標準繁體,s2tw.json 使用台灣正體字形,s2twp.json 再加入台灣常用詞彙;台灣詞彙模式的設定檔列有這條詞庫轉換流程。

這個差別會直接影響影片語氣。我用 OpenCC 1.4.2 的官方 Python CLI,在 Windows、Python 3.12,以自建的兩段 UTF-8 SRT 測試文字轉換,結果如下;這次沒有測試 Whisper 語音辨識準確率。

設定範例「打印机和鼠标连接数据库。」的輸出
s2t.json打印機和鼠標連接數據庫。
s2tw.json打印機和鼠標連接數據庫。
s2twp.json印表機和滑鼠連線資料庫。

台灣的產品教學常會希望看到「滑鼠」「資料庫」,可以先試 s2twp.json;逐字訪談、歷史材料或需保留原話用語的字幕,則要小心詞彙替換是否超出編輯範圍。字形轉換與改成台灣說法,是兩個不同決定。

另存 SRT,再核對時間軸

先準備已匯出的 UTF-8 SRT 和可使用的 Python 環境。官方提供 pip install opencc 的安裝方式;若要重現本文版本,可在自己的虛擬環境執行以下指令。它只安裝轉換工具,不會安裝或下載 Whisper 模型。

python -m pip install OpenCC==1.4.2
opencc -c s2tw.json -i interview.srt -o interview.zh-TW.srt

需要台灣詞彙時,把第二行的設定改成 s2twp.json。interview.srt 是輸入檔,interview.zh-TW.srt 是另一個輸出檔;不要把兩個檔名設成相同。若出現找不到 opencc 指令,先確認安裝成功、已啟用該 Python 環境,且其 Scripts 或 bin 目錄可被終端機找到。

接著把兩份字幕放回 Subtitle Edit或原剪輯軟體比較。本文兩段測試的段數、序號、開始與結束時間碼都保留,API v2 也未變動;這只驗證該範例的文字轉換,不代表所有 SRT、格式標籤或第三方工具都能直接套用。

實際交付前,確認每段仍在原本的播放時間出現,沒有漏段或多出空白段,再看較長的詞彙替換是否讓每行太擠。原檔若已經是混合繁簡、帶有複雜樣式標記,先另存小段試轉,檢查結果後才處理整份。OpenCC 套件和字庫下載完成後,這個本機 CLI 轉換步驟不需要把字幕上傳到聊天服務。

最後一遍校稿,還是要回到錄音。「两万元」變成「兩萬元」,只能證明字形轉好了,不能證明講者真的說兩萬元。人名、產品型號、日期、金額,以及「不是」「沒有」這類會翻轉意思的字,仍要回聽。碰到台語或中英夾雜,也不能靠繁簡轉換補回漏聽的句子。

我會先校完影響意思的地方,再處理標點和換行。需要桌面操作的讀者,可沿用 MacWhisper 工作流程產出原稿,再保留原音、原字幕及交付字幕三份檔案。之後若換模型或字庫,才知道錯字是辨識時產生,還是後處理改出來的。

要請另一個 AI 幫忙潤稿時,也別直接要求「改得通順」。先要求保留時間碼、句意與數字,並將不確定的人名標出來供回聽;是否能把錄音或字幕送到雲端,則應依素材的保密要求決定。

FAQ

Whisper 可以用 zh-TW 保證輸出繁體中文嗎?

OpenAI Whisper 的語言表使用 zh 代表中文,沒有獨立的 zh-TW 字形選項。桌面工具若提供繁體功能,需另外確認它採用的提示或後處理方式。

OpenCC 轉字幕時該選 s2tw 還是 s2twp?

只要台灣正體字形,可先用 s2tw;還要轉換成台灣常用詞彙,再試 s2twp。逐字訪談和人名應人工比對,避免替換超出交付規格。

字幕轉成繁體後,就不需要回聽嗎?

仍需要。OpenCC 不會判斷錄音原話,也不會修正漏句、講者、人名或金額。本文只驗證小型 SRT 的轉換與時間碼保留,正式字幕仍應對照原音校稿。

參考來源

№ · further reading

延伸閱讀