Konversi CSV ke SSA
Atau tempel teks subtitle
Apa yang berubah dalam konversi ini
1 hal dihapus atau memerlukan keputusan
- Presisi
presisi waktu — jam keluaran lebih kasar, sehingga setiap stempel waktu dibulatkan ke 10 ms terdekat
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.
Alat ini mengonversi CSV ke SSA langsung di peramban Anda. Seret file atau tempel teks, dan versi SSA siap diunduh; tidak ada unggahan dan tidak perlu akun.
CSV dan SSA menyimpan hal yang berbeda, dan selisihnya nyata: nilai yang lebih halus dari 10 ms dibulatkan, karena SSA menyimpan waktu dalam langkah 10 ms. File CSV menyimpan satu baris per cue dengan kolom awal, akhir, dan teks; sel yang memuat koma atau baris baru ditulis dalam tanda kutip. Daftar di atas dihitung dari kemampuan kedua format, bukan dari isi file Anda, sehingga hasilnya tidak berubah sebelum file dimuat.
Satu file maupun ratusan file bisa masuk ke antrean yang sama; hasilnya diunduh bersama sebagai satu ZIP setelah semuanya selesai.
Contoh
File CSV umum, dikonversi ke SSA
Masukan
start,end,text
00:00:01.000,00:00:03.500,The quick brown fox.
00:00:04.000,00:00:06.250,"Jumps over, the lazy dog."
00:00:07.000,00:00:09.000,"Two lines here.
And a second one."
Keluaran
[Script Info]
ScriptType: v4.00
[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,1,2,2,2,10,10,10,0,1
[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:03.50,Default,,0,0,0,,The quick brown fox.
Dialogue: 0,0:00:04.00,0:00:06.25,Default,,0,0,0,,Jumps over, the lazy dog.
Dialogue: 0,0:00:07.00,0:00:09.00,Default,,0,0,0,,Two lines here.\NAnd a second one.
Yang hilang pada keluaran ini: presisi. Sisanya cocok baris demi baris.
Konversi yang sama pada input berantakan
Masukan
id,start,end,note,text
1,00:00:01,000,00:00:04,000,cue one,"Hello there, friend."
2,00:00:05.000,00:00:07.000,cue two,Second line.
bad,notatime,00:00:09.000,cue three,Unreadable start.
4,00:00:10.000,00:00:09.000,cue four,End before start.
5,00:00:12.000,00:00:14.000,cue five,Unquoted comma in text, right here.
Keluaran
[Script Info]
ScriptType: v4.00
[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,1,2,2,2,10,10,10,0,1
[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:04.00,Default,,0,0,0,,Hello there, friend.
Dialogue: 0,0:00:05.00,0:00:07.00,Default,,0,0,0,,Second line.
Dialogue: 0,0:00:10.00,0:00:10.01,Default,,0,0,0,,End before start.
Dialogue: 0,0:00:12.00,0:00:14.00,Default,,0,0,0,,Unquoted comma in text, right here.
Inilah jenis kerusakan yang ada pada file nyata — byte-order mark, akhir baris Windows, kolom kosong, atau timestamp tanpa tanda kutip. Bandingkan dengan contoh rapi di atas untuk melihat apa yang dimaafkan parser.
Pertanyaan yang sering diajukan
Mengapa stempel waktu bergeser dari CSV ke SSA?
SSA menyimpan waktu sebagai `0:00:04.13` sedangkan CSV menyimpannya sebagai `00:00:04.126` — seperseratus detik versus seperseribu — jadi setiap timecode dibulatkan ke 10 ms terdekat: 00:00:04,126 menjadi 4,13 detik. Tidak ada yang diregangkan atau diurutkan ulang dan tidak ada cue yang bergeser lebih dari 5 ms, tetapi jika Anda menyelaraskan subtitle ini dengan file lain, di situlah konversi ini berhenti eksak.
Seperti apa keluarannya ketika CSV menjadi SSA?
Keluaran SSA disusun seperti SSA — tanpa nomor cue: setiap subtitle adalah baris `Dialogue:` di bagian `[Events]`, dengan kolom `Marked` di tempat SRT menyimpan nomor. Cue yang di CSV ditulis `00:00:04.126` menjadi cue yang di SSA ditulis `0:00:04.13`, dalam urutan yang sama, dan tidak ada teks yang berubah.
Bagaimana cue CSV dua baris keluar di SSA?
Dua baris CSV menjadi dua baris dengan `\N` di antaranya, cara SSA menulis pemisah baris keras. Pasangannya bertahan — keduanya tetap menjadi satu subtitle di keluaran SSA, dan pemutar menampilkannya bersama.
Apakah cue CSV mempertahankan urutannya di keluaran SSA?
Urutannya dipertahankan, tetapi dirapikan: cue diurutkan menurut waktu mulai, paling awal lebih dulu. Susunan itu yang diharapkan setiap format di sini dan yang dibaca pemutar. Kalau file CSV semula tidak berurutan, keluaran SSA mengembalikannya ke urutan yang benar — perubahan struktur, bukan isi.
Bisakah SSA dikonversi balik ke CSV?
Ya, dan arah itu punya daftarnya sendiri: mengonversi SSA ke CSV menghilangkan gaya, posisi, karaoke, dan konten khusus format. Daftar itu berbeda dari daftar di atas karena kedua format menyimpan hal yang berbeda.
Apakah keluaran SSA mempertahankan encoding file CSV?
Tidak — keluarannya UTF-8, dengan akhir baris Unix dan tanpa byte-order mark, apa pun yang dipakai file CSV. File yang datang dalam UTF-16 atau encoding satu-byte Windows didekode saat masuk (panel hasil memberi tahu bila itu terjadi); yang keluar selalu SSA UTF-8 yang sama.