字幕清理與台灣字幕慣例

現在要生逐字稿很容易——但自動轉錄的逐字稿不能直接當字幕。 這篇整理從「逐字稿」到「能上片的字幕」中間,那條固定要跑的後處理管線。


一、台灣字幕的三條慣例

看一下台灣的電視節目、電影、YouTube 影片字幕,會發現幾個共通規則:

句尾不放句號

字幕本身就是一句一句出現的,句號是多餘的。

句中的標點用「空格」取代,不要直接刪

句號、逗號、頓號在字幕裡改用一個空格處理。

別直接刪標點

直接刪掉會讓前後兩句黏在一起變成一長串,反而更難讀。要換成空格,保留呼吸感。

「?」「!」保留

這兩個有語氣意義,是資訊而不是格式。

語助詞不上字幕

哦、嗯、啊、欸這些,除非有戲劇作用(例如刻意的停頓、情緒),否則不要出現在字幕上。逐字稿裡滿篇的「哦」,放到螢幕上是純粹的閱讀干擾。


二、自動刪語助詞的誤傷邊界

想用程式批次刪語助詞的話,這件事只能動一組安全字元

✅ 可以自動刪: (這幾個字幾乎不會是某個詞的一部分)

不能碰這些,看起來像語助詞,但常常是詞的一部分:

誤傷例子
絨、句中的「呢」
、酒
很多詞尾都有

這幾個交給詞彙表規則或人工處理,不要放進自動刪除清單。


三、自動轉錄的中文特性(實測心得)

以 macOS 26 內建的 SpeechTranscriber 跑一場兩小時的線上會議錄影為例:

  • 速度約 59 倍速(兩小時的影片約 2 分鐘跑完),本機執行、免費,中文(zh-TW)可用
  • 一段常常長達 10~17 秒 —— 直接燒上去就是一面文字牆

專有名詞的錯字是「系統性」的

這是最重要的一個發現:同一個詞每次都會錯成同一個樣子

例如佛學內容裡的「四聖諦 → 四聖地」、「苦集滅道 → 苦及滅道」、「釋迦牟尼 → 釋迦利摩尼」。

錯得一致,代表 建一份詞彙表做批次取代,是投報率最高的修正方式——比換一個幾 GB 的大模型划算太多。每個領域(宗教、醫學、遊戲、你的產品名)都值得養一份自己的詞彙表,一次建立長期複用。

順帶一提,也會出現少量港式異體字(裏麵、導緻、癥狀),同樣批次取代即可。

用逐詞時間軸切出正常長度的字幕

現在的轉錄工具多半會提供每個字/詞的時間點,不只是整段的起訖。有了逐詞時間,就可以照下面的規則重新切段:

  • 滿 22 個字必斷
  • 滿 10 個字時,遇到標點就斷

切出來大約是 3~10 秒一條,這才是正常的字幕長度。


四、順序鐵律:先剪片,再轉錄

SRT 的時間碼是「從檔案開頭起算的絕對時間」。

  • 純轉檔(整支影片換格式,不動長度):字幕不會錯位
  • 先轉錄、後剪接:字幕會整體偏移你剪掉的長度;如果用的是不重編碼的「極速剪接」,還會再加上關鍵影格貼齊造成的偏移

正確流程永遠是:先把影片剪好 → 對剪好的成品轉錄


五、完整管線

轉錄
  → 詞彙表批次取代(修同音錯字)
  → 清理語助詞與標點
  → 逐段人工掃過一次
  → 輸出

中間三步可以自動化,但最後那次人工掃過不能省


六、輸出:軟嵌字幕 vs 燒錄字幕

軟嵌(Soft Sub)燒錄(Hard Sub)
本質獨立的字幕軌字幕畫進畫面像素裡
處理時間秒級(不用重編碼)需要完整重編碼
觀眾可否關閉可以不行
相容性看播放器 / 平台支援任何裝置都看得到

軟嵌:mp4 / mov 容器要用 mov_text 格式;其他容器建議改輸出 mkv。

燒錄:用 ffmpeg 的 subtitles 濾鏡。

燒錄時的路徑地雷

subtitles= 濾鏡的檔案路徑跳脫規則很難搞(冒號、引號、中文都會出事)。最省事的解法不是想辦法正確跳脫,而是繞開它——把 SRT 先複製到一個純英數的暫存路徑,再餵給 ffmpeg。

平台選哪個

  • 上 YouTube:軟嵌或直接上傳 SRT。字幕檔對 SEO 有幫助,觀眾也能自己關掉
  • 上 Instagram、TikTok、Threads 這類手機短影音:燒錄。這些平台多半不吃外掛字幕軌,而且觀眾常常靜音看

相關