FFMPEG mkv to mp4 conversion สูญเสียคำบรรยาย


11

กำลังพยายามแปลงไลบรารี mkv ของฉันเป็น mp4 (Iphone 6 plus)

ฉันได้รับการแปลง mkv เป็น mp4 อย่างถูกต้อง แต่ฉันไม่มีส่วนคำบรรยาย (SRT)

นี่คือรหัสของฉัน:

dir/b/s *.mkv >mkvlist.txt   ///////// this gets a list of all the mkv files on the directory

for /F "delims=;" %%F in (mkvlist.txt) do ffmpeg.exe  -i "%%F" -format mp4 -vcodec copy -acodec aac -strict -2 -sn "%%~dF%%~pF%%~nF.mp4"   ///////////// this makes the conversion

del mkvlist.txt     ////// this deletes the txt file

ฉันต้องการรวมคำบรรยายลงใน scrip แต่ฉันมีปัญหาในการใส่ชื่อที่ถูกต้องสำหรับคำบรรยายลงในสคริปต์ (เนื่องจากนี่เป็นชุดการแปลงหลายชุด)


ไฟล์. mkv เป็นรูปแบบคอนเทนเนอร์ มีโอกาสมากที่ไฟล์ mkv จะมีไฟล์. srt ที่คุณสามารถแตกไฟล์ได้ ตรวจสอบให้แน่ใจว่ามีชื่อเดียวกันกับไฟล์. mp4 และควรใช้งานได้ ไฟล์ mkv อาจมีไฟล์ mp4 เช่นกัน แต่อาจมี. divx, .avi หรือรูปแบบวิดีโออื่น ๆ
LPChip

คำตอบ:


17

MP4 ไม่รองรับ SRT คุณสามารถใช้ softsubs หรือ hardsubs ก็ได้

softsubs

คำบรรยายที่ประกอบด้วยกระแสข้อมูลแยกต่างหากในไฟล์ พวกเขาสามารถสลับเปิด / ปิดโดยผู้เล่นและไม่จำเป็นต้องมีการเข้ารหัสวิดีโอสตรีม

ffmpeg -i input.mkv -c copy -c:s mov_text output.mp4

การสนับสนุน Player สำหรับ softsubs ข้อความที่ตั้งเวลาใน MP4 อาจค่อนข้างแย่ คุณจะต้องลอง

hardsubs

Hardsubs นั้นถูก "เขียน" ลงในวิดีโอดังนั้นวิดีโอจะต้องถูกเข้ารหัสอีกครั้ง

ffmpeg -i input.mkv -vf subtitles=input.mkv output.mp4

ดูเอกสารประกอบตัวกรอง susbtitlesสำหรับข้อมูลเพิ่มเติมเช่นวิธีเลือกสตรีมคำบรรยายเฉพาะหากมีมากกว่าหนึ่ง


คุณช่วยฉันเข้าใจรหัสของฉันให้ดีขึ้นได้ไหม คุณจะเพิ่มการเข้ารหัสอีกครั้งสำหรับที่ไหนและทำไม (และถ้าคุณนึกถึงโซลูชันหรือวิธีการแบตช์แปลงไฟล์ทั้งหมดในโฟลเดอร์ย่อยด้วยหมวดย่อยที่สอดคล้องกัน?) (ถ้าไม่มีคำบรรยายคุณจะต้องข้ามไฟล์ทั้งหมดและไปยังไฟล์ถัดไป
dpkmon

2

ฉันมีปัญหาคล้ายกันที่เกิดขึ้นจาก MP4 เป็น MKV จากไฟล์ mp4 บางไฟล์ที่ฉันฉีกด้วย Handbrake ฉันได้ทำการตรวจสอบครั้งแรกที่ https://en.wikibooks.org/wiki/FFMPEG_An_Intermediate_Guide/subtitle_optionsซึ่งบอกถึงรูปแบบคำบรรยายเฉพาะสำหรับ mkv vs mp4 หลังจากเล่นกับการแปลง ass และ mov_text ที่ไม่ได้ผลฉันทดสอบไฟล์บางไฟล์และสังเกตว่ารูปแบบ dvd_subtitle ปรากฏขึ้น หลังจากเล่นมากรอบต่อไปนี้ทำงาน

ffmpeg -i "\\server\directory\Sourcefile.mp4" -c:v copy -c:a copy -c:s dvd_subtitle "\\server\directory\Outputfile.mkv"

หวังว่ามันจะช่วย

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.