Lompat ke konten utama
SubtitleMatrix

Ambil subtitle dari video

Input mediaSubtitle di dalam video

Proses pertama mengunduh mesin subtitle — sekitar 31 MB, disajikan oleh situs ini dan di-cache peramban setelahnya. Videonya sendiri tidak pernah meninggalkan tab ini.

Halaman ini mengambil file video dan mengembalikan track subtitle yang sudah ada di dalamnya, satu file per track, dinamai menurut bahasa track tersebut. File Matroska dengan track SDH Inggris, track Tionghoa, dan track gambar PGS keluar sebagai tiga file: satu .srt, satu .srt lagi, dan satu .sup. Container didemux, bukan di-encode ulang, sehingga track teks disalin keluar sebagai byte yang memang sudah ada di dalam file — bukan diketik ulang dari layar, bukan di-timing ulang.

Pekerjaannya terjadi di tab. Video dibaca oleh build ffmpeg yang dikompilasi ke WebAssembly dan disajikan situs ini sendiri, dan satu-satunya permintaan jaringan adalah untuk mesin itu: sekitar 31 MB saat pertama kali Anda memakai halaman, lalu di-cache peramban. Videonya sendiri tidak pernah dikirim ke mana pun, aturan yang sama dengan setiap halaman lain di sini dan alasan halaman ini bisa dipakai pada materi yang tidak boleh keluar dari mesin.

Subtitle yang terbakar ke dalam gambar tidak bisa diekstrak, dan tidak ada alat yang bisa melakukannya, karena tidak ada track untuk dibaca — kata-kata itu adalah piksel. Bila file tidak punya stream subtitle sama sekali, halaman ini mengatakannya alih-alih menghasilkan file kosong, dan itu termasuk kasus subtitle terbakar: video dengan subtitle terlihat tetapi tanpa track subtitle akan dilaporkan tidak punya apa pun untuk diekstrak.

Halaman ini mendaftar setiap stream subtitle yang ditemukannya sebelum menulis apa pun: indeks, codec, bahasa, judul, dan apakah stream ditandai default atau forced. Track yang sudah hidup di container sendiri mempertahankan formatnya — ASS tetap ASS, WebVTT tetap WebVTT — karena mengonversinya ke SRT di sini akan diam-diam membuang pemformatan, dan membuang pemformatan tanpa diminta adalah satu hal yang tidak dilakukan situs ini. Track yang codec-nya tidak punya container mandiri (track mov_text di dalam MP4, misalnya) di-encode ulang ke SRT, dan kartu hasil mengatakannya alih-alih membiarkannya lewat sebagai salinan.

Ekstensi file hasil ditentukan oleh codec track itu, bukan oleh ekstensi video sumbernya. Track bitmap keluar sebagai gambar, bukan teks: stream PGS menjadi .sup dan stream DVD menjadi .sub. Itu disengaja — gambar adalah apa yang ada di dalam file, dan menebak teksnya adalah pekerjaan terpisah dengan halaman sendiri dan pertanyaan bahasanya sendiri. Bawa .sup ke halaman PGS bila Anda membutuhkan teks.

Pertanyaan yang sering diajukan

Container video apa saja yang bisa saya masukkan ke halaman ekstrak subtitle ini?

MKV, MP4, M4V, AVI, MOV, TS, WebM, WMV, FLV, MPG, dan OGV. Daftar itu sebenarnya adalah daftar demuxer yang dimiliki build ffmpeg bawaan, bukan daftar codec video: apa pun isi container-nya, track subtitle adalah jenis stream yang sama. File dengan ekstensi tidak biasa tetapi isi Matroska normal biasanya tetap bekerja, karena demuxer membaca header alih-alih nama; unduhan terfragmentasi atau tidak lengkap sering tidak, karena tidak ada indeks untuk ditelusuri.

Apakah video saya keluar dari komputer selama track subtitle dibaca?

Tidak. Satu-satunya unduhan adalah mesin ffmpeg itu sendiri, sekitar 31 MB, disajikan dari situs ini dan di-cache peramban setelah penggunaan pertama. Video Anda dipasang ke sistem file virtual mesin di dalam tab dan dibaca dari sana; video itu tidak pernah ditulis ke badan permintaan. Anda bisa memastikannya di panel Network: selama file diproses tidak ada permintaan yang membawanya. Sifat itulah alasan halaman ini ada — sebagian besar ekstraktor mengunggah lebih dulu, dan materi yang terikat urusan hukum atau medis tidak boleh diunggah.

Mengapa saya mendapat file .sup alih-alih .srt saat mengekstrak subtitle video?

Karena track itu disimpan sebagai gambar, bukan teks. Stream PGS (codec hdmv_pgs_subtitle) adalah rangkaian gambar, dan ekstraksi jujur dari stream gambar adalah stream gambar: sebuah .sup, yang persis diharapkan pemutar dan editor subtitle. Mengubahnya menjadi teks berarti mengenali huruf di setiap gambar, yang merupakan halaman berbeda dengan pertanyaan bahasa dan langkah pemeriksaan ulang. Ekstraktor tidak pernah mengarang teks yang tidak dibacanya.

Apa yang dilakukan alat ekstrak video pada track yang formatnya tidak punya file mandiri?

Track itu di-encode ulang ke SRT dan hasilnya ditandai sebagai hasil encode ulang. Kasus umumnya adalah mov_text, codec subtitle yang hidup di dalam MP4: codec itu tidak punya format file sendiri, jadi menyalin stream keluar akan menghasilkan byte yang tidak bisa dibuka apa pun. Encode ulang tidak lossless — pemformatan dan penempatan yang mungkin dibawa mov_text tidak bertahan — sehingga kartu hasil mencantumkannya sebagai kehilangan alih-alih menyajikan file sebagai salinan utuh dari isi container.

Bagaimana file hasil ekstraksi dinamai bila ada beberapa track subtitle?

Mengikuti nama video itu sendiri dan kode bahasa track: file bernama documentary.mkv dengan track Inggris memberi documentary.eng.srt. Bila dua track berbagi bahasa — track Inggris normal dan track SDH Inggris, yang umum — track kedua menjadi documentary.eng-2.srt alih-alih menimpa yang pertama. Track tanpa tag bahasa jatuh ke indeks stream-nya, sehingga tetap bisa dibedakan. Bila Anda mendapat lebih dari satu file, halaman menawarkannya sebagai satu zip, karena peramban memblokir halaman yang memulai beberapa unduhan sekaligus.

Mengapa ekstraksi subtitle video pertama berjalan lebih lama daripada yang kedua?

Proses pertama mengunduh mesin ffmpeg, sekitar 31 MB. Baris progres mencakup unduhan itu lalu ekstraksinya sendiri. Peramban meng-cache mesin tersebut, sehingga proses berikutnya di halaman yang sama mulai hampir seketika; hal yang sama berlaku setelah muat ulang bila cache belum dibersihkan. Mesin disajikan dalam empat potongan karena platform hosting menolak file tunggal di atas 25 MiB, dan halaman merakitnya di memori sebelum mulai — perakitan itu adalah bagian dari penantian pertama yang sama.

Bisakah saya membatalkan ekstraksi track subtitle yang terlalu lama?

Bisa. Tombol batal menghentikan ekstraksi yang sedang berjalan dan mematikan worker yang mengerjakannya, sehingga file besar tidak terus memakai satu inti setelah Anda memutuskan untuk tidak menunggu. Membatalkan bukan galat: item kembali ke keadaan yang bisa Anda coba lagi, dan proses berikutnya memulai worker baru. Tidak ada hasil sebagian yang ditawarkan sebagai unduhan, karena file subtitle setengah jadi yang terlihat lengkap lebih buruk daripada tidak ada file sama sekali.

Alat terkait