字幕間隙偵測
或者貼上字幕文字
選項
允許在上一條字幕結束與下一條開始之間出現的黑畫面毫秒數。空白是從目前為止到達的最遠結束時間量起,而不是緊鄰的前一條,所以一條長字幕壓在幾條短字幕下面時,不會憑空算出一段畫面上從未出現過的間隙。這個數字的作用取決於你所在的頁面:補間隙頁面會合上比它寬的間隙(0 是常見值,表示兩端正好相接),而檢查頁會列出所有比它寬的區間並讓檔案保持不動。無論哪一種,小於或等於這個值的都保持原樣。
時間以哪個影格率計算。在格式頁面上,這是 MicroDVD 需要的值,因為它把時間存成影格編號。在影格率頁面上,它是檔案當初對應的速率 —— 字幕是照這個版本製作的 —— 而頁面的第二個欄位填你要搭配的影片速率。常見的有 23.976、24、25、29.97、30、50、59.94 和 60。填錯會讓整條時間軸位移;在影格率頁面上,位移是按比例發生,而不是固定的量。
間隙就是兩條字幕之間的空白畫面:從上一條字幕結束的那一刻,到下一條字幕開始的那一刻。這一頁列出所有長於你設定上限(毫秒)的間隙,並點名它夾在哪兩條字幕之間。檔案本身不會被動到——你拿回來的是一份報告,可以下載成 PDF 閱讀,或下載成 CSV 放進試算表排序。
間隙不必然是缺陷。場景切換、留白的一拍、換到另一位說話者——這些都會刻意讓畫面空著。這個數字要告訴你的,是空著的時間有沒有超過你的上限。兩秒讀起來像停頓;四十秒通常代表有一條字幕不見了,或某個時間碼被貼錯位置、把後面全部拖著走。上限由你決定,而它就是全部的判定:比較是嚴格大於你填的數字,所以上限是你願意接受的最長停頓,而最長停頓剛好等於上限的檔案,會乾淨地回來。
這一頁刻意不做兩件事。第一,間隙是對照「目前為止到達的最遠結束時間」來量,而不是對照緊鄰的前一條,所以一條橫跨整個場景的字幕不會被讀成九秒的洞。第二,完全不儲存結束時間的格式——LRC 與純文字——一概不接受:沒有東西可以量,而在一個裝不下答案的格式上回報乾淨結果,等於無罪開釋一份根本不該開庭的案子。讀檔過程中修好的任何東西,都會列在報告最上方,所以時間碼壞掉的字幕條不會被悄悄併進計數裡。
範例
長於上限的停頓
字幕
1
00:00:01,000 --> 00:00:02,000
Where were you?
2
00:00:06,000 --> 00:00:07,000
I was working late.
3
00:00:07,500 --> 00:00:08,500
Until when?
報告發現了什麼
Gaps between cues — 1 found
Severity Cues Start End Measured Limit
Warning 1, 2 00:00:02.000 00:00:06.000 4000 ms 2000 ms
這裡的上限設成 2000 毫秒,所以第 1 與第 2 條之間那四秒的空白畫面被報出,第 3 條前面那半秒沒有。兩段停頓都真的在檔案裡;只有其中一段長於使用者自己選的數字。
剛好等於上限的停頓
字幕
1
00:00:01,000 --> 00:00:02,000
Where were you?
2
00:00:04,000 --> 00:00:05,000
I was working late.
報告發現了什麼
Gaps between cues — Nothing found
Cues 2
Checks run 1
空白時間剛好 2000 毫秒,對上 2000 毫秒的上限。什麼都沒被報出,而報告仍然寫著檢查跑過了——上限是「仍然可以接受的最長停頓」,不是「會被標記的最短停頓」。
橫跨整個場景的字幕條
字幕
WEBVTT
00:00:00.000 --> 00:00:10.000
Hold on.
00:00:01.000 --> 00:00:02.000
Wait.
報告發現了什麼
Gaps between cues — Nothing found
Cues 2
Checks run 1
一條十秒的字幕裡夾著一條短字幕。對照目前為止到達的最遠結束時間,完全看不到洞;若改成把每一條和前一條相比,就會報出九秒的靜音——而觀眾從來沒有看到那九秒。
常見問題
這一頁把什麼算成字幕之間的間隙?
從上一條字幕結束到下一條開始的那段時間,以毫秒量測,而且只有長於你設定的上限時才會回報。互相接著的字幕間隙為零,永遠不會被列出。剛好等於上限的停頓也不會被列出——判定是「長於上限」,不是「大於或等於上限」。
間隙上限應該設多少?
看你要交付到哪裡。廣播工作通常把停頓壓在兩秒以內,畫面才不會像被遺棄;串流與網路影片容忍得更久。預設值是 1000 毫秒。你選的數字適用於整次執行,所以一批檔案用的是同一個數字,而報告會在每一筆間隙旁邊印出這個上限。
這個工具會把找到的間隙補起來嗎?
不會。它讀取檔案、產生報告,沒有任何一個時間碼被移動。補間隙是另一個工具,做法是把字幕拉長去覆蓋空白段落;把兩者分開,報告描述的才是檔案實際的樣子,而不是這一頁先改過的版本。
字幕重疊或嵌套時,間隙是怎麼算的?
對照檔案目前為止到達的最遠結束時間,而不是緊鄰的前一條。一條短字幕夾在長字幕裡時,最遠結束時間不會被改動,所以不會憑空生出間隙。只有當下一條在那個最遠結束時間之後才開始,才會量出差額——而那正是觀眾看到空白的同一段時間。
哪些字幕格式可以檢查間隙?
十種同時記錄開始與結束時間的格式:SRT、WebVTT、ASS、SSA、SBV、SMI、MicroDVD、TTML、JSON 與 CSV。LRC 與純文字被排除,因為它們每行只有一個時間。這兩種格式的檔案必須先轉換,才能量測間隙。
報告為什麼要提到讀檔時丟失的東西?
因為讀取器會修好它無法表示的情況:一條結束時間不在開始之後的字幕條,會被給一毫秒,檔案才留得住。那次修復列在報告開頭,而不是埋進發現清單裡,所以底下數出來的間隙,是在「量測所依據的時間並非全部來自檔案本身」這個前提下讀的。
可以一次把一整季的檔案丟進這一頁嗎?
可以。想拖幾個就拖幾個,它們會依序檢查,各自產生一份報告,最後一起以 zip 下載。佇列會逐檔顯示進度,執行到一半也能停止,不會留下一個還在跑的 Worker。