跳至主要內容
SubtitleMatrix

MicroDVD 轉 SBV

格式轉換MicroDVD(SUB)
或者貼上字幕文字

選項

時間以哪個影格率計算。在格式頁面上,這是 MicroDVD 需要的值,因為它把時間存成影格編號。在影格率頁面上,它是檔案當初對應的速率 —— 字幕是照這個版本製作的 —— 而頁面的第二個欄位填你要搭配的影片速率。常見的有 23.976、24、25、29.97、30、50、59.94 和 60。填錯會讓整條時間軸位移;在影格率頁面上,位移是按比例發生,而不是固定的量。

這次轉換會改變什麼

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

  • 影格率

    來源檔案以影格編號儲存時間——每個時間戳記都取決於你提供的影格率

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

這一頁把 MicroDVD 寫成 SBV:第一行是 `0:00:04.000,0:00:06.000` 這樣的起止時間,下一行起是正文,兩條字幕之間空一行。沒有編號,也沒有表頭。

時間碼是精確的:影格編號按影格率換算成毫秒,SBV 寫三位小數,所以換算結果原樣落進去,不會像 ASS 或 SSA 那樣降到百分秒。影格率的來源仍是頁面欄位、檔案宣告、預設 25——頁面欄位優先,檔案裡的 23.976 宣告只在你把欄位留空時生效。

這一頁丟的只有影格率:SBV 裡沒有影格編號,也沒有記錄影格率的欄位。樣式與定位本來就不在 MicroDVD 裡,不會在這裡憑空出現。`|` 直接寫成下一行,兩行仍在同一條字幕裡;產物依開始時間升序,UTF-8、LF、無 BOM。

範例

一份典型的 MicroDVD 檔轉成 SBV

輸入

{1}{1}25
{100}{150}The quick brown fox jumps over the lazy dog.
{200}{260}Faster than|the last one.

輸出

0:00:04.000,0:00:06.000
The quick brown fox jumps over the lazy dog.

0:00:08.000,0:00:10.400
Faster than
the last one.

這個方向丟掉的是影格率;其餘逐行對應。

同一轉換遇到一份格式凌亂的檔案

輸入

{1}{1}23.976
{0100}{0150}Leading zeros in the frame numbers.
[INFORMATION]
{300}{340}An unrecognized line above was kept in place.
{400}{450}Trailing spaces are kept.   

輸出

0:00:04.000,0:00:06.000
Leading zeros in the frame numbers.

0:00:12.000,0:00:13.600
An unrecognized line above was kept in place.

0:00:16.000,0:00:18.000
Trailing spaces are kept.   

真實檔案常見的狀況:混合換行、BOM、散落的空白、帶前導零的影格編號、認不出的行。可以對照上面那份乾淨範例,看解析器能容忍到什麼程度。

常見問題

MicroDVD 轉 SBV 的產物長什麼樣子?

每條字幕兩段:一段是 `0:00:04.000,0:00:06.000`,緊跟著正文,兩條之間空一行。沒有編號,也沒有檔案標頭。

MicroDVD 轉 SBV 會丟掉毫秒嗎?

不會。SBV 寫三位小數,影格編號換算出來的毫秒原樣寫出,這一頁的損失清單裡只有影格率。

MicroDVD 的 `|` 在 SBV 裡怎麼表示?

寫成換行,兩行仍屬同一條字幕,時間碼只出現一次。

MicroDVD 轉 SBV 時影格率填 23.976 與 25 有什麼差別?

整條時間軸按比例移動。同一個 `{100}` 在 25 下是 4.000 秒,在 23.976 下約 4.171 秒;開頭幾秒差距很小,長片結尾會拉到看得見的秒數。

SBV 再轉回 MicroDVD 會丟掉什麼?

丟掉影格率。SBV 只有時鐘時間,寫回 MicroDVD 時要重新指定影格率並取整到影格。

MicroDVD 轉 SBV 的產物是什麼編碼?

UTF-8、LF 換行、無 BOM。來源若是 UTF-16 或 Windows 單一位元編碼,會先解碼再轉換,結果面板會說明這次解碼。

相關工具