字幕產生 YouTube 章節
或者貼上字幕文字
選項
上一條字幕結束與下一條開始之間的靜音毫秒數。達到它就會開啟新章節;不到則兩條字幕視為同一章。預設的 10000 不是隨手的整數 —— 它是 YouTube 允許的最短章節長度,而且因為一章會持續到下一章開始,保持這個值就能讓除最後一章外的每一章至少十秒。調低會得到更多更短的章節;到 3000 時可能產出 YouTube 會忽略的標記。設為 0 則每條字幕各自成一章。停頓相對最後一條有文字的字幕量起,所以兩條有詞字幕之間的空白字幕既不會開啟新章,也不會打斷現有章節。
時間以哪個影格率計算。在格式頁面上,這是 MicroDVD 需要的值,因為它把時間存成影格編號。在影格率頁面上,它是檔案當初對應的速率 —— 字幕是照這個版本製作的 —— 而頁面的第二個欄位填你要搭配的影片速率。常見的有 23.976、24、25、29.97、30、50、59.94 和 60。填錯會讓整條時間軸位移;在影格率頁面上,位移是按比例發生,而不是固定的量。
這一頁讀取一份字幕檔案,交回一份章節清單:每個章節一行,一個開始時間加一個標題,長成影片說明欄期待的樣子。把檔案拖進來、執行,清單就出來等著貼上。什麼都不會被上傳,所以客戶的剪輯版本或還沒上線的一集,都留在你自己的機器上。
YouTube 的章節功能有三條規則,這一頁滿足了其中兩條半。第一個時間戳必須讀作 0:00,否則整份清單會被忽略——而檔案的頭一條字幕常常晚幾秒才開始,躲在片頭卡或一小段靜默後面,所以第一行不管檔案怎麼寫,都一律寫成 0:00。每個章節至少要有十秒,預設的 10000 毫秒停頓在構造上就照顧到了這件事:一個章節從自己的開始跑到下一個章節的開始,而下一個章節至少在本章最後一句話之後十秒才起頭。剩下的半條是數量。至少三個章節是檔案本身的性質,這一頁不會把一段話切成兩半來硬造一個——一份有兩個停頓的檔案給你三個章節,一則有六十個停頓的新聞快報就給你六十個。
章節由沉默劃定,不是由字幕條劃定。字幕檔案會把一句口說的話切成三、四條字幕,好讓每一條塞進自己的時間,所以一條字幕一個章節會給你一份幾百行的清單。這一頁改量前一條結束到下一條開始的間隙,當間隙達到停頓欄位裡的數字時,就開一個章節。比這更短的,被讀成同一個章節還在繼續——這就是為什麼後面某條字幕的字可能不在清單裡,卻完好無缺地待在你的檔案中:一章就是一行,而它的標題就是那個章節第一條字幕說的話。
時間用人口耳相傳的寫法——不滿一小時寫分與秒,過了小時就把小時寫出來,所以同一份清單可以同時有 20:00 和 1:02:03。兩種都讀得懂,而每一行都寫成長格式,會把 20 分鐘的標記變成 0:20:00——更長、更難掃視,也沒有多說任何東西。秒數是捨去而不是進位,所以一個時間永遠不會指向還沒到的那一刻。
沒有文字的字幕條會被跳過,不會留下自己的一行,但它佔用的時間仍然算作沉默:間隙是從上一條真的有字的字幕量起,不是從剛好夾在中間的空字幕量起,因為觀眾聽到的是沉默。這一頁不會做的兩件事:把字幕接成可讀的散文(那是另一頁),以及在行首加上說話者的名字(這裡讀的格式沒有一種有「誰在說話」這個欄位)。
範例
一份給出三個章節的檔案
輸入
1
00:00:02,000 --> 00:00:05,000
The room is dark
and the heating is off.
2
00:00:05,400 --> 00:00:07,000
Nobody has been here
since Tuesday.
3
00:00:22,000 --> 00:00:25,000
A cold night,
and no heating.
4
00:01:01,000 --> 00:01:04,000
Every night this week?
輸出
0:00 The room is dark and the heating is off.
0:22 A cold night, and no heating.
1:01 Every night this week?
四條字幕進去,三個章節出來。前兩條相隔 400 毫秒,所以第二條留在第一個章節裡,完全不出現在清單上——那些字還在檔案裡,只是它們不是章節標題。後面兩條各自隔著遠超十秒門檻的沉默,各自開了一個章節。第一行讀作 0:00,儘管第一條字幕是兩秒處才開始的,因為那是 YouTube 在那個位置唯一接受的值。
剛好十秒的停頓
輸入
1
00:00:03,000 --> 00:00:06,000
We can talk about it
in the morning.
2
00:00:16,000 --> 00:00:18,000
Every night this week?
輸出
0:00 We can talk about it in the morning.
0:16 Every night this week?
這裡的沉默剛好 10000 毫秒,就是欄位裡的數字,也就是新章節開始的那一刻。想核對這一頁的算術就看這個例子:把欄位調到 10000 以上,兩條字幕就會併成同一個章節,因為間隙再也達不到門檻。把它調低,對那些喘息空間更小的檔案也會發生同樣的事。
超過一小時的章節
輸入
1
00:00:05,000 --> 00:00:08,000
The room is dark.
2
00:20:00,000 --> 00:20:03,000
Nobody came.
3
01:02:03,000 --> 01:02:06,000
A cold night,
and no heating.
輸出
0:00 The room is dark.
20:00 Nobody came.
1:02:03 A cold night, and no heating.
同一份清單裡兩種寫法,這是刻意的。不滿一小時的章節寫成分與秒(20:00),超過小時的則帶著小時(1:02:03)——這是人親手寫章節清單的方式,兩種都讀得懂。每一行都寫成長格式,第二個章節就會變成 0:20:00——更長,也沒有比較好找。
常見問題
我的檔案會產生幾個章節?
它有幾個長停頓就有幾個,而那不是這一頁能替你決定的數字。只要兩條字幕之間的沉默達到停頓欄位,就會開一行章節,所以一段語速平穩的半小時訪談,很可能只給你三、四個章節;而一則每個項目之間都停一下的新聞快報,會給你幾十個。結果太粗,就把停頓調低再跑一次;出來是一整面牆,就調高。沒有任何設定能把一份只有兩個停頓的檔案變成十個章節。
我的字幕比較晚才開始,清單為什麼從 0:00 起?
因為第一時間戳不是 0:00 的章節清單,會被整份丟棄、而不是從第二行開始讀;而檔案的頭一條字幕,很常晚幾秒才開始——躲在片頭卡、商標或一小段環境音後面。第一個章節反正涵蓋影片的開頭,所以 0:00 是對它誠實的描述,也是唯一能讓清單生效的值。之後每一行都保留自己的真實時間,這個位移只落在第一行,別無其他。
把停頓調到十秒以下會怎樣?
你會得到更多章節,同時失去「每個章節都至少十秒」這項保證,那是 YouTube 自己的下限。這十秒來自停頓設定,不是另一條規則:欄位在 10000 時,一個章節不可能短於開啟下一個章節的那段間隙。設成 3000,同一份檔案可能產出四秒長的章節,而 YouTube 會忽略那麼短的章節標記。欄位最低可以到零,那時每一條字幕都自成一個章節——用來檢查檔案裡有什麼很方便,用來發布就不太合適。
其他的字跑到哪裡去了?
哪裡都沒去——它們還在你檔案裡,這一頁從來不寫入它。一個章節標題就是一行文字,這一頁用該章節的第一條字幕當標題,所以那條字幕之後說的任何話,都屬於章節內容,而不是它的標題。如果你要的是每一個字都變成可讀的散文,那是另一頁:純文字稿匯出會把字幕條接成段落,一個字都不漏。
為什麼有的行寫 20:00,有的寫 1:02:03?
因為章節清單本來就是這樣手寫的,而播放器兩種都讀得懂。不滿一小時的標記寫成分與秒;一旦標記超過一小時,就把小時寫出來,數字才仍然一眼看得懂。每一行都寫成長格式,前者會變成 0:20:00——更長、沒有更精確,當你在找某個段落時還更難掃。
我需要先有三個章節,這一頁才有用嗎?
有沒有三個章節,這一頁都有用,但它沒辦法從一份只有兩個停頓的檔案裡生出第三個。硬造一個,等於把一句話切成兩半、再把後半段稱作新的一段,那會在一個想法中間插進章節標記,給你一份和影片對不起來的清單。如果你的檔案真的只有兩個斷點,誠實的答案是它的結構只值兩個章節,解法是縮短停頓,或者換一份檔案。
清單可以直接貼進影片說明欄嗎?
可以。那正是它的用途:純文字、一章一行、時間在前標題在後,不編號、不加任何標點。把它貼在說明欄自己的行上,章節標記就會出現。唯一要保留的,是第一行原封不動——如果你刪掉 0:00,或把那個章節往後移,整份清單就不再被辨識,不管其餘部分多麼正確。