跳至主要內容
SubtitleMatrix

SBV 轉 ASS

格式轉換YouTube SBV
或者貼上字幕文字

這次轉換會改變什麼

有 1 項會被捨棄或需要你決定

  • 精確度

    時間精確度——輸出的時間刻度較粗,因此每個時間戳記都會四捨五入到最接近的 10 毫秒

這份清單來自這兩種格式的能力矩陣,而不是你載入的這份具體檔案。如果具體檔案用到了格式允許、但矩陣沒有建模的特性,可能會遺失更多。

這一頁把 SBV 轉成 ASS:拖曳檔案進來,或直接貼上文字,就會拿回 ASS 版本。轉換完全在瀏覽器裡執行,不會上傳,也不需要帳號。

這兩種格式存的東西不同,而且差別不是外觀問題:精度在 ASS 裡沒有落點。ASS 只記到百分之一秒,SBV 的 `0:00:04.126` 會取整成 `0:00:04.13`,每段最多移動 5 毫秒;時間軸不會被拉伸,順序也不會重排。上方清單是從兩種格式各自能表達什麼算出來的,不是從你的檔案判斷,所以在載入任何東西之前就是同一個答案。

單一檔案可以,整季影集也可以:佇列會依序處理,結果一起打包成一個 ZIP 下載。

範例

一份典型的 SBV 檔案轉成 ASS

輸入

0:00:01.000,0:00:03.500
The quick brown fox.

0:00:04.000,0:00:06.250
Jumps over the lazy dog.

0:00:07.000,0:00:09.000
Two lines here.
And a second one.

輸出

[Script Info]
ScriptType: v4.00+

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:03.50,Default,,0,0,0,,The quick brown fox.
Dialogue: 0,0:00:04.00,0:00:06.25,Default,,0,0,0,,Jumps over the lazy dog.
Dialogue: 0,0:00:07.00,0:00:09.00,Default,,0,0,0,,Two lines here.\NAnd a second one.

這份產物丟掉了精度;其餘部分逐行一致。

同一轉換遇到格式紊亂的輸入

輸入

0:00:02.000,0:00:04.000
Carriage-return line endings.

	0:00:06.000,0:00:08.000
Indented timecode, no final newline.

輸出

[Script Info]
ScriptType: v4.00+

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:02.00,0:00:04.00,Default,,0,0,0,,Carriage-return line endings.
Dialogue: 0,0:00:06.00,0:00:08.00,Default,,0,0,0,,Indented timecode, no final newline.

真實檔案常見的損壞就是這樣——混合換行、散落的空白、留空的欄位。拿它和上面那份乾淨樣本對照,就能看出解析器容忍到什麼程度。

常見問題

SBV 轉 ASS 時,毫秒時間碼為什麼會改變?

ASS 的時間只寫到百分秒(`0:00:04.13`),SBV 寫到毫秒,所以每個時間碼會取整到最近的 10 毫秒,`0:00:04.126` 變成 4.13 秒,單段最多移動 5 毫秒。

SBV 轉 ASS 只有精度會遺失嗎?

是。SBV 只存字幕段落——兩個時間加一段文字——沒有樣式、定位、檔頭或區塊,所以除了精度之外沒有別的東西可丟,有損說明裡只有一項。

SBV 的 0:00:04.126 轉成 ASS 後寫成什麼?

寫成 `0:00:04.13`:ASS 取整到最近的 10 毫秒,不拉伸也不重排。

SBV 轉 ASS 後,兩行的字幕要怎麼寫?

用 `\N` 連接成同一條 Dialogue 事件裡的兩行,這是 ASS 寫硬換行的方式,播放器會一起顯示。

SBV 轉 ASS 後,樣式表是從哪裡來的?

是轉換時補上的。ASS 需要樣式表才能播放,所以產物會寫一條 Default 樣式(Arial、字級 20、白字黑描邊),每條 Dialogue 都指向它;之後可以在字幕工具裡修改。

SBV 轉 ASS 的產物使用什麼編碼?

固定 UTF-8、Unix 換行、無 BOM。輸入若是 UTF-16 或 Windows 單一位元組編碼,讀入時會解碼並在結果面板說明。

相關工具