Lompat ke konten utama
SubtitleMatrix

Konversi CSV ke SMI

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.

Halaman ini mengubah CSV menjadi SMI. File bisa diseret ke jendela ini atau teksnya ditempel; hasilnya adalah versi SMI. Semua proses berjalan di peramban, tanpa unggahan dan tanpa akun.

Arah CSV ke SMI lossless: semua yang bisa disimpan CSV juga bisa disimpan SMI, sehingga yang berubah hanya pembungkusnya. Timeline, pemisah baris, dan teks tiba tanpa perubahan, bahkan untuk file yang memanfaatkan seluruh kemampuan CSV. File CSV menyimpan satu baris per cue dengan kolom awal, akhir, dan teks; sel yang memuat koma atau baris baru ditulis dalam tanda kutip.

Anda bisa memasukkan satu file atau satu musim penuh; antrean bekerja berurutan, dan semua hasil turun bersama dalam satu ZIP.

Contoh

File CSV umum, dikonversi ke SMI

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

<SAMI>
<HEAD>
<STYLE TYPE="text/css">
<!--
P { text-align: center; font-family: Arial, sans-serif; }
-->
</STYLE>
</HEAD>
<BODY>
<SYNC Start=1000>
<P>The quick brown fox.
<SYNC Start=3500>
<P>&nbsp;
<SYNC Start=4000>
<P>Jumps over, the lazy dog.
<SYNC Start=6250>
<P>&nbsp;
<SYNC Start=7000>
<P>Two lines here.<br>And a second one.
<SYNC Start=9000>
<P>&nbsp;
</BODY>
</SAMI>

Tidak ada yang hilang di sini: bandingkan kedua sisi 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

<SAMI>
<HEAD>
<STYLE TYPE="text/css">
<!--
P { text-align: center; font-family: Arial, sans-serif; }
-->
</STYLE>
</HEAD>
<BODY>
<SYNC Start=1000>
<P>Hello there, friend.
<SYNC Start=4000>
<P>&nbsp;
<SYNC Start=5000>
<P>Second line.
<SYNC Start=7000>
<P>&nbsp;
<SYNC Start=10000>
<P>End before start.
<SYNC Start=10001>
<P>&nbsp;
<SYNC Start=12000>
<P>Unquoted comma in text, right here.
<SYNC Start=14000>
<P>&nbsp;
</BODY>
</SAMI>

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

Seperti apa keluarannya ketika CSV menjadi SMI?

Keluaran SMI disusun seperti SMI — tanpa nomor cue dan tanpa baris timecode: setiap cue adalah tag `<SYNC Start=…>` dengan teksnya di `<P>` di bawahnya, disusul blok `<P>&nbsp;` yang mengosongkan layar. Cue yang di CSV ditulis `00:00:04.126` menjadi cue yang di SMI ditulis `Start=4126`, dalam urutan yang sama, dan tidak ada teks yang berubah.

Apakah timing CSV akurat di file SMI?

Ya, hingga milidetik — serinci yang bisa dicapai kedua format. CSV menulis satu momen sebagai `00:00:04.126` dan SMI menulis momen yang sama sebagai `Start=4126`; tidak ada yang dibulatkan atau digeser di antara keduanya, dan cue yang tampil selama 2,9 detik tetap begitu.

Bagaimana cue CSV dua baris keluar di SMI?

Dua baris CSV menjadi dua baris dengan `<br>` di antaranya, cara SAMI menulis pemisah baris keras. Pasangannya bertahan — keduanya tetap menjadi satu subtitle di keluaran SMI, dan pemutar menampilkannya bersama.

Apakah cue CSV mempertahankan urutannya di keluaran SMI?

Ya, dan cue diurutkan berdasarkan waktu mulai saat proses — paling awal dulu, seperti yang diharapkan setiap format di sini dan cara pemutar membacanya. Jika file CSV Anda mencantumkan cue di luar urutan, keluaran SMI mengembalikannya ke urutan; itu perubahan pada struktur file, bukan isinya, dan disengaja.

Bisakah SMI dikonversi balik ke CSV?

Ya, dan justru arah SMI ke CSV itulah yang lossy: gaya, posisi, dan konten khusus format tidak punya tempat di CSV. Arah yang sekarang tidak kehilangan apa pun, jadi biaya itu hanya muncul jika Anda kembali.

Apakah keluaran SMI 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 SMI UTF-8 yang sama.

Alat terkait