← 教學與知識

SRT、VTT、ASS 字幕格式差在哪?該用哪一種

最後更新:2026-08-24

下載字幕檔的時候常會看到 .srt、.vtt、.ass 三種副檔名。它們裝的都是「幾秒到幾秒要顯示什麼字」,但能表達的東西差很多, 能用的地方也不一樣。這篇把差異講清楚,並說明什麼情況該選哪一種。

三種格式的定位

格式 全名 樣式能力 典型用途
SRT SubRip Subtitle 幾乎沒有(僅少數播放器支援粗體、斜體等基本標籤) 最通用的交換格式,桌面播放器與多數平台都吃
VTT WebVTT 可搭配 CSS 設定位置、對齊與外觀 網頁播放器,HTML5 <track> 唯一原生支援的格式
ASS / SSA Advanced SubStation Alpha 完整:字型、顏色、描邊、陰影、逐格定位、動畫特效 動畫字幕組、卡拉 OK 特效、需要精準排版的場合

檔案長什麼樣

SRT

結構最單純:序號、時間碼、一到多行文字,用空行分隔每一段。 時間碼是 時:分:秒,毫秒,注意毫秒用逗號分隔。

1
00:00:01,200 --> 00:00:04,500
你是認真的嗎?

2
00:00:04,800 --> 00:00:08,100
我現在不是在開玩笑。

VTT

結構與 SRT 很接近,但有三個必須注意的差別:檔案開頭一定要有 WEBVTT 這一行、時間碼的毫秒改用句點、 序號可有可無。時間碼未滿一小時可以省略小時位。

WEBVTT

00:01.200 --> 00:04.500
你是認真的嗎?

00:04.800 --> 00:08.100 line:90% align:center
我現在不是在開玩笑。

第二段時間碼後面的 line:90% align:center 是 cue setting, 用來控制字幕出現的位置——這是 SRT 做不到的部分。

ASS

ASS 是三者中唯一有「樣式表」概念的格式。檔案分成幾個區段: [Script Info] 放解析度等全域設定,[V4+ Styles] 定義具名樣式(字型、大小、顏色、描邊粗細、邊界), [Events] 才是實際的字幕行,每行指定要套用哪個樣式。

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, OutlineColour, Bold, Outline, Alignment, MarginV
Style: Default,Noto Sans TC,48,&H00FFFFFF,&H00000000,0,2,2,30

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.20,0:00:04.50,Default,,0,0,0,,你是認真的嗎?

注意 ASS 的時間碼是 0:00:01.20——小時不補零、 而且末尾是百分之一秒(兩位),不是毫秒。 顏色寫成 &H00BBGGRR,是 BGR 順序加上透明度, 跟網頁的 #RRGGBB 相反,手改的時候很容易弄錯。

怎麼選

  • 只是要在自己的播放器上看:選 SRT。 VLC、mpv、PotPlayer、Infuse 這些都吃,把字幕檔跟影片檔放同一個資料夾、 取一樣的檔名就會自動載入。
  • 要放到網頁上:選 VTT。 HTML5 的 <track> 元素只認得 WebVTT, 丟 SRT 進去瀏覽器不會顯示。
  • 上傳到 YouTube 之類的平台:SRT 或 VTT 都可以。 平台通常會自己轉換,樣式資訊多半會被丟掉,所以用 ASS 沒有意義。
  • 需要指定字型、描邊、特定位置:只能用 ASS。 典型情境是同一畫面有兩組字幕(例如上方放告示牌翻譯、下方放對白), 或需要跟畫面元素對齊。

轉檔會掉東西

ASS 轉 SRT 一定會丟失所有樣式與定位,只留下純文字與時間碼,這是格式能力的 差距造成的,沒有工具能避免。反過來 SRT 轉 ASS 不會憑空生出樣式, 只會套上預設值。SRT 與 VTT 之間互轉則幾乎無損,因為兩者的資料模型很接近。

編碼問題

中文字幕最常見的問題不是格式而是編碼。SRT 沒有在檔案裡宣告編碼的欄位, 播放器只能用猜的。如果字幕開起來是亂碼,通常是檔案存成 Big5 或 GBK 而播放器當成 UTF-8 讀(或反過來)。

實務上的解法是統一存成 UTF-8。部分舊播放器需要 UTF-8 BOM 才能正確判斷,所以有些工具輸出 SRT 時會刻意加上 BOM。 VTT 規格則明確要求 UTF-8,沒有這個模糊地帶。

用字幕醬產生字幕檔

如果你手上的影片根本還沒有字幕檔,字幕醬 可以直接從影片的語音辨識出內容並翻成繁體中文,編輯後可直接下載 VTT、ASS、FCPXML 與 SRT;ASS 還能帶自訂樣式,不必再手動轉檔。

延伸閱讀:字幕時間軸跑掉怎麼校正、 怎麼把字幕壓進影片。

字幕醬首頁 · 教學與知識 · 費率 · 服務條款 · 隱私權政策 · 退款政策 · 聯絡我們