跳至主要內容
SubtitleMatrix

字幕合併保留主時間軸

文字樣式把兩軌合併成一份雙語檔案
或者貼上字幕文字
或者貼上第二個檔案的文字

選項

兩份字幕很少能一條一條完全對上,這個選項決定所有不一致的地方怎麼處理。只要一個檔案裡的某條字幕與另一個檔案裡的某條在時間上重疊,兩者就視為同一時刻並合併,重疊的長度決定結果在畫面上停留多久。其餘部分由這個選項決定。保留兩個檔案 會把每一條沒有對上的字幕都作為單獨一行加進來,兩個輸入裡一個字都不會少 —— 但第二個檔案原本的時間不會被保留,因為沒有對上的字幕仍然得放在第一個檔案的時間軸上的某處。保留第一個檔案的時間軸 則相反:第一個檔案的字幕保持原樣的開始與結束,不插入任何新內容,第二個檔案裡沒對上的字幕會被捨棄。執行後的報告總會說明捨棄了多少條。

兩條字幕被視為同一時刻之後,它們的文字必須共用畫面。排成兩行 是雙語字幕常見的播出方式,也是大多數播放器期待的形式:第一個檔案的行在上,第二個檔案的行在下,這條字幕變成雙行字幕。這要求該格式允許換行,所以所有只能把一條字幕存成一行的格式都被排除在這一頁之外,而不是在這裡悄悄壓平。接成一行 會把兩種語言放在同一行,用下方欄位裡輸入的字元分隔 —— 當讀者應該先看到譯文、原文作為補充時正合適,那是譯者的字幕,而不是雙語播出的字幕。

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

這一頁把兩份字幕合成一份,並且守住一條高於一切的承諾:第一份檔案裡的每一條字幕,出來的起止都跟進去時完全一樣。沒有任何一條移動一個影格,沒有東西被插進兩條字幕之間,第一份的時間軸順序就是產物的順序。把時間軸可信的那份放進第一個框,譯文放第二個框。

這條承諾值得單獨一頁,因為時間軸通常正是已經核准過的那一部分。一份檔案對過畫面、檢查過、簽核、鎖版;譯文幾週後才到,是另一個人按自己的耳朵排的。讓兩邊都動的合併,會讓鎖定的檔案不再鎖定——每一條字幕都得重新對畫面,對播出交付來說,那就是整件工作的成本。保留第一份的時間軸,代表你已經通過的那份檔案還是同一份檔案,只是每行下面多了一種語言。

代價在執行前說明、執行後計數:第二份裡與第一份完全不重疊的字幕,在一條不許移動的時間軸上沒有位置,因此被丟棄,丟了多少條會寫進報告。實務上每部片也就幾條——譯者給客戶的註記、為被剪掉的場景寫的括號非語音說明、比鏡頭晚了一秒的台詞。你換到的是「已核對的部分一個都沒動」這條保證。如果這筆交換對這件工作不划算,這一頁的第一個選項可以切成保留兩份檔案,預設就是那樣的那一頁另有連結。

這個家族的配對方式都一樣:一份檔案的字幕與另一份的字幕時間範圍重疊就配對,不論編號。兩份字幕數相同的檔案也不能逐行對上,因為原文與譯文的字幕數正好會不同——譯者會把一句長句拆成兩句短的,或把兩個問句併成一句。第二個選項決定兩段文字怎麼共用那一行:兩行,或一行加上你輸入的分隔符。兩個框都接受本站讀取的每一種格式——SRT、WebVTT、ASS、SSA、SBV、SAMI、TTML、JSON 與 CSV——而且可以不同,各自按內容判讀;MicroDVD 兩個框共用一個影格率,LRC 與純文字排除,因為兩者都表達不了字幕的結束時間。兩個框都能放多個檔案,一個框的第一份配另一個框的第一份,所以一整季可以一次跑完。兩份檔案都不上傳:它們在這個瀏覽器分頁裡讀入、合併、寫出。

範例

英文檔案裡沒有的那條中文字幕

輸入

First file:
1
00:00:01,000 --> 00:00:03,000
Good morning.

2
00:00:05,000 --> 00:00:07,000
How are you?


Second file:
1
00:00:01,000 --> 00:00:03,000
早上好。

2
00:00:05,000 --> 00:00:07,000
你好吗?

3
00:00:20,000 --> 00:00:22,000
这句在第一份里没有对应。

輸出

1
00:00:01,000 --> 00:00:03,000
Good morning.
早上好。

2
00:00:05,000 --> 00:00:07,000
How are you?
你好吗?

配對的兩條字幕以英文檔案的編號與英文檔案的時間出來,這就是這一頁的重點。第二十秒那條中文字幕在英文檔案裡對不上任何東西,會被丟棄,而不是放在它自己的時間;執行後的報告會說明遺失了幾條內容,所以這個決定不會悄悄發生。

把一句拆成兩句的譯者

輸入

First file:
1
00:00:01,000 --> 00:00:06,000
We should leave before the storm gets worse.


Second file:
1
00:00:01,000 --> 00:00:02,500
我们该走了。

2
00:00:03,000 --> 00:00:05,000
趁暴风雨还没更大。

輸出

1
00:00:01,000 --> 00:00:06,000
We should leave before the storm gets worse.
我们该走了。

一條英文字幕、兩條中文字幕——原文對譯文最常見的形狀。配對是一條對一條,所以只有前半配到,英文字幕仍保留它完整五秒的顯示時間,而不是譯文寫的 1.5 秒。後半對不上任何東西而被丟棄。兩件事都寫在報告裡:被推翻的時間,以及消失的那一條。

兩份完全不相干的檔案

輸入

First file:
1
00:00:01,000 --> 00:00:03,000
Good morning.

2
00:00:05,000 --> 00:00:07,000
How are you?


Second file:
1
00:01:00,000 --> 00:01:02,000
一分钟处的旁白。

2
00:02:00,000 --> 00:02:02,000
两分钟处的旁白。

輸出

1
00:00:01,000 --> 00:00:03,000
Good morning.

2
00:00:05,000 --> 00:00:07,000
How are you?

這是八秒短片前一分鐘的字幕表:兩條中文字幕都落在外面,都被丟棄,所以英文檔案逐位元組返回。這跟「沒有事可做」不是同一件事,頁面也不會假裝是——報告會說遺失了兩條內容。第二份檔案完全空白才是真的什麼都沒做,那種情況會被標成沒有變更。

常見問題

保留第一份時間軸合併時,第二份裡對不上的字幕會怎樣?

會被丟棄,數量寫進執行後拿到的報告。沒有第三種選項讓它保留自己的時間,因為保留自己的時間就代表第一份的時間軸得挪動讓位——而那正是這一頁要防止的事。一兩秒以內的偏移通常仍配得上,因為配對只要求兩個範圍重疊:一條 0.6 到 3.2 秒的中文字幕,與 1.0 到 3.0 秒的英文字幕重疊,就會以英文的時間出來。

交付前要怎麼看到保留第一份時間軸時被丟掉了什麼?

報告在結果下方,逐類列出遺失了什麼與各幾處,所以檢查是在下載之前讀它,不是下載之後。這一頁上典型的中英合併什麼都不會遺失——那是差距只有幾毫秒、沒有字幕對不上的情況——真的有遺失時,說明那一行就是唯一要讀的那行。如果數量比你預期多,這一頁的第一個選項可以切成保留兩份檔案,它什麼都不丟,改為讓配對到的字幕擴大到涵蓋兩邊。

什麼時候會想保留兩份檔案,而不是保留第一份的時間軸?

因為第二份自己的時間有時更好:一份仔細對過畫面的粉絲字幕,或紀錄片裡口譯的字幕正好落在說話的位置。那時你要的保證是「一個字都不丟」,代價是產物不再是任何一方精確的時間軸——配對到的字幕從較早的開始延伸到較晚的結束,可能把一條字幕拉長幾百毫秒、壓到下一條底下。兩個選項在這一頁只差一個下拉選單,差別在你要哪一種保證寫在報告裡。

保留第一份時間軸合併後,產物會保留第一份的字幕編號嗎?

只要產物裡每一條字幕都來自第一份,就會——在這一頁上,那代表第二份完全沒有對不上的字幕。一旦有一條被丟棄,其餘字幕仍然來自第一份,編號也還是它自己的,因為丟棄是讓檔案變窄,不是加東西進去。會重新編號的是保留兩份檔案的那一頁:不是來自第一份的字幕沒有編號可以留,所以整份檔案從 1 重編。

譯文超出我最後一條字幕的結尾,保留第一份時間軸時會有問題嗎?

那跟任何一條對不上的字幕是同一種情況,而且實務上最常見:以笑聲收尾的訪談、片尾字卡、譯者放在畫面切斷之後的一句話。那條字幕會被丟棄。如果這很重要,修法在上游——把最後一條英文字幕延長,讓兩個範圍重疊,這樣保證仍然成立,因為重疊就會配對,而第一份新的結束時間本來就是保留的那一個。

保留第一份時間軸合併時,兩份檔案一定要是同一種字幕格式嗎?

不用。每個框都按內容判讀,所以研討會來的 WebVTT 配譯者給的 SRT 也能運作,產物寫成第一份檔案的格式——這也是兩個框要標名字、不能互換的原因。要注意的是樣式:如果第一份是帶樣式的 ASS,合併檔就是 ASS,第二份的文字會帶著第一份的樣式加入,而不是它自己的,受影響的字幕數會列在報告裡。

相關工具