Konversi SUB/IDX VobSub ke SRT
Proses pertama mengunduh pembaca teks — sekitar 4 MB ditambah model bahasa, disajikan oleh situs ini dan di-cache peramban setelahnya. Tidak ada yang diunggah, dan hasilnya dibaca mesin: periksa ulang sebelum Anda mengandalkannya.
Opsi
Subtitle bitmap adalah gambar teks, jadi kata-katanya harus dibaca kembali darinya. Beri tahu pembaca bahasa apa yang dipakai subtitle — daftarnya mencakup semua bahasa tempat situs ini diterbitkan. Subtitle Rusia yang dibaca dengan model Inggris keluar sebagai derau, bukan sebagai bahasa Rusia. Hanya model yang Anda pilih yang diunduh (yang lain tidak pernah), jadi berpindah memerlukan satu unduhan per bahasa, lalu di-cache setelahnya.
VobSub membagi satu track subtitle ke dua file, dan keduanya dibutuhkan. File .sub memuat gambarnya: rangkaian paket program-stream MPEG, masing-masing membawa bitmap yang dikompresi dengan kode run-length dua bit. File .idx memuat semua sisanya: palet enam belas warna, ukuran frame, dan satu baris per subtitle berisi waktu mulai serta offset byte di dalam .sub tempat gambarnya dimulai. Tanpa .sub tidak ada cara mengetahui berapa banyak subtitle yang ada; tanpa .idx tidak ada gambar untuk dibaca. Halaman ini menerima pasangan itu dan menulis sebuah .srt.
Setiap paket ditemukan melalui offset byte tersebut, jadi indeks bukan sekadar kenyamanan — indeks adalah petanya. Di dalam paket, dua kata header memberi ukuran dan posisi sebuah rangkaian kontrol; rangkaian itu menetapkan area tampilan, memilih empat entri palet yang dirujuk piksel, dan menunjuk ke bitmap terkompresi. Dekoder lalu menelusuri kode run-length dua kali, sekali untuk baris genap dan sekali untuk baris ganjil, karena VobSub menyimpan dua field frame terinterlasi secara terpisah. Detail itulah sebabnya dekoder naif menghasilkan gambar yang kehilangan setiap baris lainnya.
Timestamp berasal dari .idx, satu-satunya tempat timestamp itu ada dalam bentuk yang bisa dipakai. Sebuah cue berakhir di tempat cue berikutnya dimulai; cue terakhir diberi dua detik, dan daftar kehilangan mencatatnya. Subtitle yang gambarnya tidak menghasilkan teks terbaca dilewati dan dihitung, bukan ditulis sebagai baris kosong.
Teksnya sendiri berasal dari OCR, yang berarti teks itu hasil pembacaan, bukan transkripsi. Di sinilah subtitle DVD paling sulit: subtitle itu dibuat dalam font bitmap kecil dengan tag italic untuk suara di luar layar, dan pengenal tidak tahu bahwa kata yang miringnya berbeda adalah kata yang sama. Periksa ulang file. Pilih bahasa subtitle — modelnya dipilih per halaman, diunduh sekali, dan di-cache peramban.
Tidak ada yang diunggah. Pasangan file di-parse dan dikenali di tab ini; satu-satunya permintaan jaringan adalah untuk file pengenal itu sendiri, yang disajikan situs ini.
Pertanyaan yang sering diajukan
Mengapa halaman VobSub ini membutuhkan dua file padahal alat lain di sini hanya butuh satu?
Karena VobSub memang menyimpan satu track dalam dua file sejak awal, bukan karena alat ini menginginkan dua masukan. File .sub memuat bitmap; file .idx memuat palet enam belas warna, ukuran frame, dan offset setiap gambar beserta waktu mulainya. Tidak satu pun file sendirian bisa menjawab “berapa banyak subtitle di sini dan apa isinya”. Bila Anda punya .sub tanpa .idx, pasangan itu terpecah di suatu tempat dan indeks harus dipulihkan dari cakram sumber sebelum OCR mungkin dilakukan.
Apa yang ditunjuk angka filepos di dalam file .idx VobSub?
Offset byte ke dalam file .sub, tepat di awal paket program-stream MPEG yang id stream-nya menandainya sebagai private stream — jenis yang dipakai pemutar DVD untuk subtitle. Offset itu bukan nomor subtitle, dan pada cakram yang tidak biasa belum tentu naik seiring timestamp, karena itu halaman ini mengurutkan entri menurut timestamp alih-alih memercayai urutan baris di dalam file.
Mengapa sebagian baris .sub keluar dengan huruf yang salah tetapi panjangnya benar?
Karena palet dan bentuk huruf sama-sama berasal dari gambar, dan OCR menyelesaikan bentuk pada ukuran tetap. Subtitle DVD umumnya dibuat dalam muka huruf kecil yang sangat miring atau sangat tebal; kata dalam italic — dipakai untuk dialog di luar layar dan lirik lagu — adalah korban yang biasa, karena versi miring dari sebuah huruf bukan huruf berbeda bagi manusia tetapi bentuk berbeda bagi pengenal. Bila panjangnya cocok dan hurufnya tidak, perbaikannya adalah memeriksa ulang, bukan mengganti alat.
Apakah posisi subtitle di layar bertahan ke dalam file SRT hasil VobSub?
Tidak, dan tidak ada tempat untuk menampungnya. VobSub menyimpan posisi sebagai persegi panjang area tampilan dalam koordinat dua belas bit di dalam setiap paket, dan SRT tidak punya sintaks penempatan sama sekali. Halaman ini memakai persegi itu untuk mengetahui di mana tinta berada — yang membantu OCR memotong dengan tepat — lalu membuangnya. Bila pemutar Anda membutuhkan subtitle berposisi, ASS adalah format yang bisa membawa informasi itu; SRT dengan penanda posisi adalah konvensi yang dihormati sebagian pemutar dan dicetak apa adanya oleh yang lain.
Alat VobSub ini meminta file .idx, padahal saya hanya punya .sub. Bisakah indeksnya dibangun ulang?
Tidak dari .sub sendirian, dan tidak andal dari gambarnya. Offset pada prinsipnya bisa ditemukan dengan memindai paket private-stream, tetapi timestamp tidak bisa dipulihkan: timestamp itu hidup di .idx dan tidak di tempat lain dalam pasangan ini. Membangun ulang indeks berarti kembali ke cakram atau file VOB asal pasangan itu diekstrak, atau memakai .idx asli bila masih ada di samping track lain. Menebak waktu akan menghasilkan file yang tampak benar dan melenceng terhadap video, yang lebih buruk daripada tidak ada file.
Apakah pasangan file .idx dan .sub dikirim ke suatu tempat selama dibaca?
Tidak. Kedua file dibaca ke memori di tab ini, didekode di sini, dan dikenali di sini. Satu-satunya unduhan adalah pengenal teks, disajikan dari situs ini dan di-cache peramban sesudahnya. Anda bisa mengamati panel Network saat pasangan diproses: tidak ada permintaan yang membawa salah satu file. Ini penting khususnya untuk VobSub, karena file seperti ini biasanya berasal dari cakram milik pengguna dan justru merupakan materi yang tidak seharusnya diserahkan kepada layanan konversi.