Computer >> คอมพิวเตอร์ >  >> ระบบ >> Linux

วิธีลดขนาดไฟล์วิดีโอโดยใช้ FFMPEG จาก Linux Terminal

วิธีลดขนาดไฟล์วิดีโอโดยใช้ FFMPEG จาก Linux Terminal

การบันทึกวิดีโอบนไดรฟ์จัดเก็บข้อมูลส่วนบุคคล บริการคลาวด์ หรือดิสก์อาจเป็นเรื่องยากเมื่อมีพื้นที่จำกัด การลดขนาดไฟล์ทำให้การถือไฟล์ขนาดใหญ่ขึ้นและขยายคอลเล็กชันได้ง่ายขึ้น แต่วิธีการบางอย่างในการทำเช่นนี้ก็มีประสิทธิภาพมากกว่าวิธีอื่นๆ

มีเครื่องมือมากมายให้เลือกใช้ในการจัดการวิดีโอ ซึ่งสามารถปรับขนาดไฟล์ให้เหมาะสมได้ อย่างไรก็ตาม สิ่งเหล่านี้ รวมถึง VLC, Cinelerra และ Blender ต่างก็ใช้เอ็นจิ้นเดียวกันภายใต้ UI ซึ่งเป็นยูทิลิตี้บรรทัดคำสั่งที่มีชื่อว่า FFMPEG ที่นี่เราจะแสดงวิธีลดขนาดไฟล์วิดีโอโดยใช้ FFMPEG จากเทอร์มินัล Linux

FFMPEG คืออะไร

FFMPEG เป็นยูทิลิตี้จัดการสื่อบรรทัดคำสั่งที่มีคุณสมบัติครบถ้วนที่สุดในระบบนิเวศซอฟต์แวร์ Linux เครื่องมือนี้สามารถจัดการกับการสร้าง GIF สับ/แก้ไขวิดีโอ และบันทึกได้ ในบรรดาฟีเจอร์ที่หลากหลาย เครื่องมือนี้สามารถจัดการการสร้าง GIF ได้

สิ่งสำคัญที่สุดคือ FFMPEG สามารถแปลงวิดีโอได้ในระดับที่ละเอียดจนน่าประหลาดใจ ทำให้สามารถรักษาคุณภาพในระดับสูงได้ในขณะที่ขนาดไฟล์ลดลงครึ่งหนึ่งในทางบวก (หรือแบ่งครึ่งในกรณีที่ร้ายแรง)

การติดตั้ง

การติดตั้ง FFMPEG ใน Ubuntu ทำได้ง่ายโดยใช้คำสั่งต่อไปนี้:

sudo apt install ffmpeg

วิธีลดขนาดไฟล์วิดีโอโดยใช้ FFMPEG จาก Linux Terminal

เมื่อการติดตั้งเสร็จสิ้น คุณก็พร้อมที่จะเริ่มต้น

การใช้งาน

การใช้ FFMPEG สามารถทำได้ง่ายๆ ดังนี้:

ffmpeg -i input.video output.video

วิธีลดขนาดไฟล์วิดีโอโดยใช้ FFMPEG จาก Linux Terminal

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

สมการการเพิ่มประสิทธิภาพ

เมื่อพูดถึงไฟล์วิดีโอ ไฟล์ทุกประเภทไม่ได้ถูกสร้างขึ้นอย่างเท่าเทียมกัน ตัวอย่างเช่น นามสกุลไฟล์ avi มักจะมีขนาดใหญ่กว่าไฟล์ mp4

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

ประเด็นสำคัญที่นี่คือ mp4 ที่เล็กที่สุดของวิดีโอหนึ่งๆ จะเล็กกว่า avi ที่เล็กที่สุดของวิดีโอเดียวกันเสมอ แต่ขนาดและคุณภาพจะมีความแตกต่างกัน แม้จะอยู่ในไฟล์ประเภทใดประเภทหนึ่งเหล่านี้

ที่น่าสนใจคือ mp4 ไม่ใช่ไฟล์ที่ต่ำที่สุดที่สามารถไล่ตามไฟล์ขนาดเล็กที่สมบูรณ์แบบได้ แชมป์เปี้ยนประเภทไฟล์วิดีโอที่เก็บได้คุณภาพในปัจจุบันคือคอนเทนเนอร์ต่างๆ ที่มีให้สำหรับวิดีโอแฟลชและวิดีโอสื่อ Windows (FLV และ WMV) สิ่งเหล่านี้เป็นส่วนหนึ่งของสมการง่ายๆ ที่เราสามารถใช้เพื่อให้ได้ไฟล์วิดีโอที่มีขนาดเล็กมาก แต่มีคุณภาพสูง:

ภาชนะขนาดเล็ก + ตัวแปลงสัญญาณที่มีประสิทธิภาพ + เฟรมต่อวินาทีต่ำ + อัตราบิตต่ำ =ไฟล์วิดีโอขนาดเล็ก/คุณภาพสูง

หมายเหตุ :สำหรับวัตถุประสงค์ของบทความนี้ คุณภาพสูง หมายถึงการแตกพิกเซลที่มองเห็นได้น้อยที่สุดหรือการสูญเสียสีอย่างมีนัยสำคัญ การลดคุณภาพเป็นสิ่งที่หลีกเลี่ยงไม่ได้ในระดับหนึ่ง หากเราต้องการปรับขนาดไฟล์ให้เหมาะสมจริงๆ อย่างไรก็ตาม ความชัดเจนของสิ่งนี้ขึ้นอยู่กับสิ่งที่เรากำลังปรับให้เหมาะสม ความเร็วในการเคลื่อนที่ ความหลากหลายของสี และคุณภาพ/ความหนาแน่นของเสียงมีส่วนในการตัดสินใจว่าเราจะปรับให้ต่ำแค่ไหนด้วยการตั้งค่า

ตัวเลือกมีมากมายในโลกของตัวแปลงสัญญาณวิดีโอและคอนเทนเนอร์ ดังนั้นเราจะทำสิ่งต่างๆ ให้ง่ายขึ้นโดยใช้ WMV 8 (FFMPEG ยังไม่รองรับ WMV 9 อย่างสมบูรณ์)

การเพิ่มประสิทธิภาพวิดีโอ

เมื่อเรารัน FFMPEG มันจะแปลงวิดีโออินพุตของเราเป็นประเภทไฟล์ที่เราระบุโดยใช้พารามิเตอร์ที่เราตั้งค่าด้วยแฟล็กพิเศษ นี่คือรหัสของเรา:

ffmpeg -i input.mp4 -b 1000k -vcodec wmv2 -acodec wmav2 -crf 19 -filter:v fps=fps=24  output.wmv

วิธีลดขนาดไฟล์วิดีโอโดยใช้ FFMPEG จาก Linux Terminal

วิธีลดขนาดไฟล์วิดีโอโดยใช้ FFMPEG จาก Linux Terminal

โค้ดด้านบนจะแปลงไฟล์อินพุตของเราให้เป็นไฟล์เดียวด้วยบิตเรต 1Mbps, อัตราเฟรมที่ 24fps, แฟคเตอร์อัตราคงที่ที่ 19 และนามสกุล .wmv เปลี่ยน “input.mp4” เพื่อให้เหมาะกับความต้องการของคุณและปรับ -crf ค่าเป็นตัวเลขที่สูงขึ้นสำหรับขนาดไฟล์ที่เล็กลง (โดยมีคุณภาพที่ต่ำลงเรื่อยๆ)

FFMPEG นั้นทรงพลังมากพอที่จะประสบความสำเร็จมากกว่าที่เคยสัมผัสที่นี่ ชุดคุณลักษณะที่สมบูรณ์นั้นน่าประทับใจ และมีวิธีมากกว่าการแปลงวิดีโอเพียงอย่างเดียว ตรวจสอบเว็บไซต์อย่างเป็นทางการของโครงการสำหรับข้อมูลเพิ่มเติม