TXT 轉 SRT
或者貼上字幕文字
選項
當來源檔案沒有結束時間時使用(純文字、LRC)。輸出裡的時間軸是在這裡產生的,不是轉換來的,所以填多少就是多少。
這次轉換會改變什麼
有 1 項會被捨棄或需要你決定
- 時間
時間軸本身——來源檔案不記錄任何時間,因此輸出的時間軸是產生出來的,而非轉換而來
這份清單來自這兩種格式的能力矩陣,而不是你載入的這份具體檔案。如果具體檔案用到了格式允許、但矩陣沒有建模的特性,可能會遺失更多。
這一頁把純文字檔轉成 SRT。TXT 裡沒有任何時間碼,一行文字就是一條字幕,所以時間軸由這一頁排出來;整個過程在本機完成,不上傳、不需要帳號。
兩個格式能存的東西不同:時間軸在 SRT 裡沒有落點。上方清單說的是兩個格式各自能表達什麼,不是讀了你的檔案才有答案——TXT 本來就沒有時間資訊,這一頁得先把時間軸排出來。
空白行是段落分隔,不會變成空字幕;有文字的行才佔一個時間槽,預設每行 2 秒,可以調整。單檔可以,整季也可以:佇列依序處理,結果打包成一個 ZIP。
範例
一份典型的 TXT 檔轉成 SRT
輸入
The quick brown fox jumps over the lazy dog.
Second paragraph, first line.
Second paragraph, second line.
輸出
1
00:00:00,000 --> 00:00:02,000
The quick brown fox jumps over the lazy dog.
2
00:00:02,000 --> 00:00:04,000
Second paragraph, first line.
3
00:00:04,000 --> 00:00:06,000
Second paragraph, second line.
這份產物丟掉了:時間軸。其餘內容逐行對得上。
同一轉換遇到結構鬆散的 TXT 輸入
輸入
Hello world.
Second block.
輸出
1
00:00:00,000 --> 00:00:02,000
Hello world.
2
00:00:02,000 --> 00:00:04,000
Second block.
真實檔案常有混合換行、多餘空白與空欄位,這份輸入就是那個樣子;可以對照上面那份乾淨範例,看看解析器容忍到哪裡。
常見問題
TXT 轉 SRT 時,時間碼是怎麼產生的?
TXT 沒有時間,所以時間軸由轉換器排出來:第一行從 0 開始,每行依你設定的毫秒數佔一個時間槽,下一行接在上一行結束處。上方有損說明會一直寫「時間軸是產生的」,即使你改了每行長度也一樣——那個數字決定每條字幕多長,不改變時間軸的來源。
TXT 轉 SRT 時,可以改每行顯示多久嗎?
可以。時間長度欄位收毫秒,套用到檔案裡的每一條字幕:1000 是一行一秒,3000 是一行三秒。數值就印在欄位旁邊,方便你核對拿到的時間軸。
TXT 轉 SRT 時,什麼算一條字幕的邊界?
一個換行。每個非空白的行變成一條 cue,順序照檔案出現的次序;空白行當段落分隔,不會自己變成一條。
TXT 轉 SRT 後,空白行會變成空字幕嗎?
不會。空白行從不變成 cue,所以時間軸上不會出現由排版造成的間隙。想要停頓,就拉長每行秒數,或事後把後面的 cue 往後移。
TXT 轉 SRT 可以用來替影片上字幕嗎?
它給的是起點,不是完成品:產生的 cue 從影片開頭開始,以固定步伐往前走。若你已有真正的開始時間,改用 CSV 或 LRC 轉入可以直接把時間放進去,省去逐條手動對時。