SBV 轉 LRC
或者貼上字幕文字
這次轉換會改變什麼
有 2 項會被捨棄或需要你決定
- 時間
字幕的結束時間(輸出格式只記錄字幕何時開始)
- 精確度
時間精確度——輸出的時間刻度較粗,因此每個時間戳記都會四捨五入到最接近的 10 毫秒
這份清單來自這兩種格式的能力矩陣,而不是你載入的這份具體檔案。如果具體檔案用到了格式允許、但矩陣沒有建模的特性,可能會遺失更多。
這一頁把 SBV 轉成 LRC:拖曳檔案進來,或直接貼上文字,就會拿回給歌詞播放器讀的版本。轉換完全在瀏覽器裡執行,不會上傳。
這是這個目錄裡損失較多的一個方向,而且最好在轉換前就知道。LRC 只記一行什麼時候開始,歌詞播放器會讓一行留到下一行開始,所以每一段的結束時間都沒有落點;它也只寫到百分之一秒,`0:00:04.126` 會取整成 `[00:04.13]`,最多偏 5 毫秒。SBV 本來就沒有樣式可丟,所以其餘部分不受影響。
單一檔案可以,整季影集也可以:佇列會依序處理,結果一起打包成一個 ZIP 下載。
範例
一份典型的 SBV 檔案轉成 LRC
輸入
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.
輸出
[00:01.00]The quick brown fox.
[00:04.00]Jumps over the lazy dog.
[00:07.00]Two lines here.
[00:07.00]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.輸出
[00:02.00]Carriage-return line endings.
[00:06.00]Indented timecode, no final newline.
真實檔案常見的損壞就是這樣——混合換行、散落的空白、留空的欄位。拿它和上面那份乾淨樣本對照,就能看出解析器容忍到什麼程度。
常見問題
SBV 轉 LRC 後,每條字幕的結束時間去哪了?
被丟棄了。LRC 只記錄一行何時開始,播放器會讓這一行留到下一行出現,所以結束時刻在 LRC 裡是多餘的;開始時刻則原樣保留。
SBV 轉 LRC 時,毫秒時間為什麼會變?
LRC 只寫到百分之一秒,SBV 寫到毫秒,所以 `0:00:04.126` 會取整成 `[00:04.13]`,每段最多移動 5 毫秒。
SBV 轉 LRC 後,兩行的字幕會變成幾行?
兩行,而且共用同一個時間戳。這是 LRC 表達「這兩句屬於同一段」的方式:同一時刻起兩句歌詞,播放器會一起顯示。
SBV 轉 LRC 會遺失樣式嗎?
不會多丟什麼——SBV 本身不存樣式,LRC 也不存。這一頁的損失只有兩類:每一段的結束時間,以及時間碼從毫秒取整到百分秒。
SBV 轉 LRC 時,空白的字幕段落怎麼處理?
不會寫成空白歌詞行。SBV 裡沒有文字的段落不會產生 LRC 行,避免播放器裡多出一段來源不明的空白。
SBV 轉 LRC 後,cue 的順序會改變嗎?
LRC 會依開始時間排序,最早的在前;原始檔案若亂序,產物會替你排好。
SBV 轉 LRC 的產物使用什麼編碼?
固定 UTF-8、Unix 換行、無 BOM,與來源檔案原本的編碼無關。