Konversi SRT ke TTML
Atau tempel teks subtitle
Apa yang berubah dalam konversi ini
Tidak ada yang hilang ke arah ini — setiap fitur format sumber punya tempat di format tujuan.
Daftar ini berasal dari matriks kemampuan untuk kedua format ini, bukan dari file tertentu yang Anda muat. File tertentu bisa kehilangan lebih banyak jika memakai fitur yang diizinkan format tetapi tidak dimodelkan matriks.
Di halaman ini file SRT diubah menjadi TTML, format subtitle berbasis XML yang dipakai penyiaran dan platform streaming. Setiap cue menjadi elemen <p> dengan atribut begin dan end di dalam <body>, dan seluruh dokumen dibuka oleh deklarasi XML. Nomor cue tidak diperlukan karena waktu sudah menjadi penanda utamanya.
Tidak ada yang hilang ke arah ini. Semua yang bisa dinyatakan SRT punya padanan di TTML: timeline, baris baru, dan tag miring atau tebal. Waktu ditulis 00:00:04.126 — sama persis sampai milidetik, hanya pemisah desimalnya yang berubah dari koma menjadi titik. Cue dua baris menjadi dua baris dengan <br/>.
Satu file atau satu musim, hasil dalam satu ZIP, dan seluruh proses berjalan di peramban tanpa mengunggah apa pun.
Contoh
File SRT biasa, dikonversi ke TTML
Masukan
1
00:00:01,000 --> 00:00:03,500
Hello there.
2
00:00:03,500 --> 00:00:06,000
<i>Whispering</i> now.
And a second line.
3
00:00:06,000 --> 00:00:09,250
<b>Bold</b> statement.
Keluaran
<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml" xmlns:tts="http://www.w3.org/ns/ttml#styling">
<body>
<p begin="00:00:01.000" end="00:00:03.500">Hello there.</p>
<p begin="00:00:03.500" end="00:00:06.000"><span tts:fontStyle="italic">Whispering</span> now.<br/>And a second line.</p>
<p begin="00:00:06.000" end="00:00:09.250"><span tts:fontWeight="bold">Bold</span> statement.</p> </body>
</tt>
Tidak ada yang hilang di sini: bandingkan kedua sisi baris demi baris.
Konversi yang sama pada input yang berantakan
Masukan
1
0:00:01,00 --> 0:00:03,500
<B>Bold</B> and <I>italic</I>.
2
00:00:03,500 --> 00:00:06,000
3
00:00:08,000 --> 00:00:09,000
Last one.
Keluaran
<?xml version="1.0" encoding="UTF-8"?>
<tt xmlns="http://www.w3.org/ns/ttml" xmlns:tts="http://www.w3.org/ns/ttml#styling">
<body>
<p begin="00:00:01.000" end="00:00:03.500"><span tts:fontWeight="bold">Bold</span> and <span tts:fontStyle="italic">italic</span>.</p>
<p begin="00:00:03.500" end="00:00:06.000"></p>
<p begin="00:00:08.000" end="00:00:09.000">Last one.</p> </body>
</tt>
Ini jenis kerusakan yang nyata pada file asli — akhir baris campuran, spasi berlebih, kolom kosong. Bandingkan dengan contoh rapi di atas untuk melihat apa yang dimaafkan parser.
Pertanyaan yang sering diajukan
Seperti apa bentuk keluaran saat SRT menjadi TTML?
Seperti TTML: tanpa nomor cue, setiap subtitle adalah elemen <p> dengan atribut begin dan end, bersarang dalam <body> dan biasanya <div>, dengan deklarasi XML di atas dokumen. Setiap cue SRT menjadi satu cue TTML, berurutan, dengan teks sama.
Apakah waktu SRT tetap persis di file TTML?
Ya, sampai milidetik. SRT menulis 00:00:04,126 dan TTML menulis 00:00:04.126; tidak ada yang dibulatkan atau digeser, dan cue yang tampil 2,9 detik tetap selama itu.
Bagaimana cue SRT dua baris ditulis di TTML?
Sebagai dua baris dengan <br/> di antaranya, cara TTML menulis baris baru keras. Pasangannya bertahan dalam satu subtitle.
Apakah urutan cue SRT dipertahankan di keluaran TTML?
Ya, dan cue diurutkan menurut waktu mulai. Cue yang tidak berurutan di file sumber dikembalikan ke urutan yang benar saat menjadi TTML.
Bisakah TTML hasil konversi SRT ini dibalik menjadi SRT?
Bisa, dan arah balik itu yang lossy: TTML ke SRT kehilangan styling, positioning, dan isi khas format. Ke arah ini tidak ada yang hilang, jadi biaya itu hanya muncul bila Anda kembali.
Apakah keluaran TTML mempertahankan encoding file SRT saya?
Tidak — hasilnya selalu UTF-8 dengan akhir baris Unix dan tanpa BOM. Encoding masukan didekode saat dibaca, dan panel hasil memberi tahu bila terjadi konversi encoding.