LRC 轉 MicroDVD
或者貼上字幕文字
選項
時間以哪個影格率計算。在格式頁面上,這是 MicroDVD 需要的值,因為它把時間存成影格編號。在影格率頁面上,它是檔案當初對應的速率 —— 字幕是照這個版本製作的 —— 而頁面的第二個欄位填你要搭配的影片速率。常見的有 23.976、24、25、29.97、30、50、59.94 和 60。填錯會讓整條時間軸位移;在影格率頁面上,位移是按比例發生,而不是固定的量。
當來源檔案沒有結束時間時使用(純文字、LRC)。輸出裡的時間軸是在這裡產生的,不是轉換來的,所以填多少就是多少。
這次轉換會改變什麼
有 2 項會被捨棄或需要你決定
- 時間
字幕的結束時間——來源檔案不記錄這些時間,因此輸出中的結束時間是產生出來的,而非轉換而來
- 影格率
此格式以影格編號儲存時間——時間取決於你提供的影格率
這份清單來自這兩種格式的能力矩陣,而不是你載入的這份具體檔案。如果具體檔案用到了格式允許、但矩陣沒有建模的特性,可能會遺失更多。
LRC 轉 MicroDVD 會把歌詞的時間換成影格編號:每一行寫成 `{開始影格}{結束影格}`,第一行 `{1}{1}25` 宣告採用的影格率。LRC 的 `[mm:ss.xx]` 先換成毫秒,再依影格率換算成影格。
影格率預設 25,可以在頁面上改。25 fps 下第 4 秒是第 100 個影格;影格率選錯時開頭幾乎看不出來,但影片越長偏移越大,所以要用成片真正的影格率。
結束時間仍由下一行的開始推得,最後一行用頁面設定的時長補足,有損說明因此同時列出 timing 與影格率兩項。`[ti:]`、`[ar:]`、`[al:]`、`[offset:]` 在 MicroDVD 裡都沒有欄位;同一時間戳的多行用 `|` 併成一行,兩半仍屬於同一條字幕。轉換在本機完成,批次可取消。
範例
一份典型的 LRC 檔轉成 MicroDVD
輸入
[ti:Sample Song]
[ar:Some Artist]
[length:00:41.00]
[offset:+250]
[00:12.00]First line of the song.
[00:15.30]Second line.
[00:15.30]Second line, translated.
[00:18.00]
[00:21.50]Final line.輸出
{1}{1}25
{300}{383}First line of the song.
{383}{450}Second line.|Second line, translated.
{450}{538}
{538}{588}Final line.
這個方向丟掉的是結束時間與影格率聲明;影格編號與文字逐行對應。
同一轉換遇到一份格式凌亂的檔案
輸入
[ar:Some Artist]
[0:05.5]Leading zero omitted, one decimal.
[00:07]Second with no centiseconds.
[00:03.00]Out of order.
[00:07.00][00:09.00]Repeated chorus line.
[00:12.00]輸出
{1}{1}25
{75}{138}Out of order.
{138}{175}Leading zero omitted, one decimal.
{175}{225}Second with no centiseconds.|Repeated chorus line.
{225}{300}Repeated chorus line.
{300}{350}
真實檔案常見的狀況:BOM、混合換行、缺前導零的時間戳、重複的副歌行。解析器不會中斷,讀不出的部分會進有損說明。
常見問題
LRC 轉 MicroDVD 時,`[mm:ss.xx]` 是怎麼變成影格編號的?
先把時間換成毫秒,再乘上影格率並取整;預設 25 fps 下,12 秒對應第 300 個影格,檔案第一行 `{1}{1}25` 就是這個影格率的宣告。
LRC 轉 MicroDVD 該把影格率設成多少?
設成這批字幕所配影片的影格率。MicroDVD 用影格對儲存時間,23.976、25 與 29.97 算出來的編號都不一樣;填錯時開頭幾乎對得上,越到後面偏得越多。
LRC 轉 MicroDVD 的產物長什麼樣子?
每一行以兩個大括號裡的影格編號開頭,後面接文字,沒有字幕編號;第一行的 `{1}{1}25` 只宣告影格率,不是一條字幕。
LRC 轉 MicroDVD 後,兩行歌詞會用什麼符號連接?
用直線 `|` 併成一行,例如 `Second line.|Second line, translated.`;播放器會把它顯示成兩行,兩半仍屬於同一條字幕。
LRC 轉 MicroDVD 時,歌詞順序會被改動嗎?
只會依開始時間升序重排。原本就照時間排列的檔案一個字都不會動;顛倒的檔案會被放回正確順序,因為影格編號必須遞增。
MicroDVD 轉回 LRC 時會丟掉哪些東西?
會丟掉時間軸、影格率與時間精度:影格編號要先除以影格率才能變回時間,LRC 又只寫到百分秒,而且不儲存結束時間。
LRC 轉 MicroDVD 的產物用什麼編碼?
UTF-8、Unix 換行、沒有 BOM。不論原 LRC 用的是 UTF-16 或 Windows 單一位元編碼,讀進來時會先解碼,寫出去一律是同一種 UTF-8 MicroDVD。