Saya mencoba mengekstrak subtitle dari video sebagai .srt
file, saya menggunakan perintah berikut:
FFMPEG -i mytestmovie.mkv -vn -an -codec:s:0.1 srt sub.srt
Tapi, saya mendapat kesalahan sebagai opsi Tidak Dikenali codec:s:0:1
Jadi, dapatkah Anda memberi tahu saya perintah yang tepat dan cara mengekstrak subtitle sebagai .srt
file dalam video?
Jawaban:
Sederhana:
sumber
0:s:1
untuk mengunduh yang kedua,0:s:2
untuk mengunduh yang ketiga, dan seterusnya.-map
parameter untuk setiap file. Juga termasuk-c copy
sehingga hanya ekstrak file tanpa berusaha untuk memprosesnya:ffmpeg -i Movie.mkv -c copy -map 0:s:0 subs.01.srt -c copy -map 0:s:1 subs.02.srt
. Lagi pula itu akan memakan waktu lama karena ffmpeg harus membaca seluruh file video untuk menemukan semua bagian dari subtitle stream.-codec:s:0:1
salah. Jika Anda menggunakan-codec:s:0
maka ffmpeg akan menggunakan codec yang dinyatakan untuk aliran subtitle pertama yang diteruskan ke output, jika Anda menggunakannya-codec:s:1
maka ia akan menggunakannya untuk aliran subtitle kedua, dll.Anda juga dapat menggunakan
-codec:s
untuk memilih semua aliran subtitle output, atau-codec:2
untuk memilih aliran output ketiga, terlepas dari apa itu.Anda mungkin bingung karena
-map
opsi berperilaku dengan cara yang berbeda - di sana, Anda harus memilih input yang berasal dari aliran yang dipilih. (jadi,-map 0:s:0
akan mengambil aliran subtitle pertama dari input pertama, dan memasukkannya ke output). Namun,-map
untuk memilih aliran mana yang ingin Anda ambil dari input; sedangkan sebagian besar opsi lain yang menggunakan pemetaan aliran adalah untuk digunakan pada aliran setelah mereka dipilih (jadi tidak perlu menentukan file input mana mereka berasal), karena mereka diteruskan ke output.sumber
ffmpeg -i E:\Routine\routine.mkv -map 0:s:0 E:\Routine\sub.srt
(ffmpeg akan mendeteksi bahwa Anda menginginkan subtitle srt dari nama file keluaran)ffmpeg -i film.mp4 -vn -an -codec:s srt film.srt
yang seharusnya menyalin semua subtitle ke file srt.-codec:s
sama dengan-codec:s:0
sehingga tidak memilih semua subtitle ... itu akan mengekstrak teks pertama