Làm cách nào để hợp nhất hai tệp * .srt


11

Xin vui lòng xem câu hỏi này .

Tôi vừa sáp nhập hai tập tin avi cd1.avicd1.avivào movie.avisử dụng:

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

Vấn đề là tôi đã phải phụ đề các tệp được liên kết với các avitệp đầu tiên :

cd1.srt
cd2.srt

Lúc đầu, tôi đã cố gắng đơn giản để ghép các tệp lại với nhau:

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

Nhưng điều đó gây ra sự tàn phá với phụ đề ... có gợi ý nào không?

Câu trả lời:


19

Điều này được thực hiện khá tầm thường, vì .srtcác tệp chỉ là tệp văn bản có chứa dấu thời gian - tất cả những gì bạn cần làm là thêm độ dài cd1.avicho thời gian của tất cả phụ đề trong cd2.srt. Bạn có thể tìm thấy chiều dài của cd1.avivới ffmpeg:

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

Và sau đó thêm nó vào cd2.srtsử dụngsrttool

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

hoặc là:

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

Sau đó, bạn chỉ có thể nối các tệp lại với nhau và đánh số lại:

srttool -r -i cd.srt

Tôi chọn srttoolvì trong Arch nó đi kèm transcode, mà bạn đã cài đặt cho câu hỏi này ; có rất nhiều công cụ khác có thể dịch chuyển và hợp nhất .srtcác tệp, và ít nhất một trang web, nhấn chìm


+1 cảm ơn micheal, thực sự đánh giá cao những nỗ lực của bạn với câu hỏi của tôi
Stefan

1
Cảm ơn! Điều này đã làm việc tuyệt vời. Vấn đề duy nhất tôi tìm thấy là srttool đặt đầu ra cho dòng lệnh. Tôi thực sự không sửa đổi tập tin bạn muốn. Một chút chuyển hướng (>) và WHAMMO, nó hoạt động hoàn hảo. Điều này đã giúp đỡ rất nhiều và cảm ơn bạn rất nhiều.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.