แปลง mkv เป็น mp4 ซ้ำด้วย avconv


3

ฉันต้องการสร้างสคริปต์ที่สามารถแปลงไฟล์. mkv ทั้งหมดเป็น. mp4 ในไดเรกทอรีเริ่มต้นและไดเรกทอรีย่อยทั้งหมดภายใต้

ฉันสามารถแปลงไฟล์ทีละไฟล์โดยใช้:

avconv -i input.mkv -codec copy output.mp4

และการแปลงไฟล์ทั้งหมดในไดเรกทอรีปัจจุบันจะไม่ยากเกินไป แต่หลังจากการค้นหาหลายชั่วโมงฉันไม่สามารถหาวิธีนี้ซ้ำได้

ฉันรวบรวมว่าฉันต้องใช้คำสั่ง find แต่ฉันค่อนข้างใหม่กับ Linux และฉันหลงทางอย่างสมบูรณ์ในการรวม find และ avconv เพื่อบรรลุสิ่งที่ฉันต้องการ

คำตอบ:


4

คุณต้องเปิดใช้งานการวนซ้ำแบบซ้ำใน Bash:

shopt -s globstar

จากนั้นวนรอบอย่างง่ายแทนที่ชื่อไฟล์เอาต์พุต:

for f in **/*.mkv; do avconv -i "$f" -c copy "${f%.mkv}.mp4"; done

โปรดทราบว่าสิ่งนี้อาจล้มเหลวในวิดีโอที่มีตัวแปลงสัญญาณ MP4 บรรจุไม่สามารถจัดการได้ MP4 มีข้อ จำกัด มากกว่า MKV ซึ่งโดยทั่วไปสามารถรวมตัวแปลงสัญญาณทั้งหมด

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