跳至主要內容
SubtitleMatrix

SBV 轉 VTT

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

這次轉換會改變什麼

這個方向不會遺失內容 —— 來源格式的每一項特性在目標格式裡都有地方可去。

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

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

這個方向不會遺失任何東西。SBV 能表達的每一項功能,VTT 都有對應寫法,所以產物就是同一批字幕換個外殼——時間軸、換行與文字全部保留。VTT 會在開頭補上 `WEBVTT` 標頭,時間碼寫成 `00:00:01.000 --> 00:00:03.500`,毫秒一個都不差;每段字幕上方可以有一行選用的識別碼,播放器不會顯示它。

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

範例

一份典型的 SBV 檔案轉成 VTT

輸入

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.

輸出

WEBVTT

00:00:01.000 --> 00:00:03.500
The quick brown fox.

00:00:04.000 --> 00:00:06.250
Jumps over the lazy dog.

00:00:07.000 --> 00:00:09.000
Two lines here.
And 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.

輸出

WEBVTT

00:00:02.000 --> 00:00:04.000
Carriage-return line endings.

00:00:06.000 --> 00:00:08.000
Indented timecode, no final newline.

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

常見問題

SBV 轉 VTT 後,時間碼的寫法有什麼不同?

SBV 的 `0:00:01.000,0:00:03.500` 會寫成 VTT 的 `00:00:01.000 --> 00:00:03.500`:兩個時刻之間改成箭頭,並補上小時的兩位前導零,毫秒不變。

SBV 轉 VTT 會遺失樣式或定位嗎?

不會,因為 SBV 本來就沒有樣式或定位可丟。時間、文字與換行全部保留,有損說明是空的。

SBV 轉 VTT 後,VTT 的識別行會填入什麼?

不會填任何東西。識別行是 VTT 的選用語法,SBV 沒有對應的識別碼,所以產物只留時間碼與正文。

SBV 轉 VTT 後,兩行的字幕會怎麼呈現?

仍在同一個 VTT 字幕段落裡,上下兩行,播放器會一起顯示。

SBV 轉 VTT 的產物可以直接放進網頁嗎?

可以。產物有 `WEBVTT` 標頭、時間碼是箭頭寫法,交給 HTML5 的 `<track>` 就能載入;編碼固定 UTF-8、Unix 換行、無 BOM。

SBV 轉 VTT 之後再轉回 SBV 會有損失嗎?

會。VTT 轉 SBV 會丟掉樣式與格式私有內容,例如 `NOTE`、`STYLE`、`REGION` 區塊與時間碼後的設定;去程無損,代價只出現在回程。

相關工具