Bagaimana cara menggabungkan dua file * .srt

11

Silakan lihat pertanyaan ini .

Saya baru saja bergabung dua file avi cd1.avidan cd1.avimenjadi movie.avimenggunakan:

avimerge -o movie.avi -i cd{1,2}.avi

Masalahnya adalah saya harus subtitle file yang tertaut ke avifile pertama :

cd1.srt
cd2.srt

Pada awalnya saya mencoba menggabungkan file-file itu bersama-sama:

cat cd{1,2}.srt > movie.srt

Tapi itu menyebabkan kekacauan dengan subtitle ... ada saran?

Stefan
sumber

Jawaban:

19

Ini cukup sepele dilakukan, karena .srtfile hanya file teks yang berisi perangko waktu - yang perlu Anda lakukan adalah menambahkan panjang cd1.avike waktu semua subtitle di cd2.srt. Anda dapat menemukan panjang cd1.avidengan ffmpeg:

ffmpeg -i cd1.avi  # Look for the Duration: line

Dan kemudian tambahkan itu cd2.srtmenggunakansrttool

srttool -d 12345 -i cd2.srt  # 12345 is the amount to add in seconds

atau:

srttool -a hh:mm:ss -i cd2.srt  # The first subtitle will now start at hh:mm:ss

Maka Anda hanya dapat menggabungkan file-file tersebut bersama-sama dan memberi nomor baru:

srttool -r -i cd.srt

Saya memilih srttoolkarena di Arch ia datang dengan transcode, yang Anda instal untuk pertanyaan ini ; ada banyak alat lain yang dapat menggeser dan menggabungkan .srtfile juga, dan setidaknya satu situs web, tenggelam

Michael Mrozek
sumber
Terima kasih, micheal, sangat menghargai upaya Anda dengan pertanyaan saya
Stefan
1
Terima kasih! Ini bekerja dengan baik. Satu-satunya masalah yang saya temukan adalah srttool menempatkan output ke baris perintah. Sebenarnya saya tidak mengubah file yang Anda inginkan. Pengalihan kecil (>) dan WHAMMO, ini berfungsi dengan sempurna. Ini sangat membantu dan terima kasih banyak.