การบันทึกวิดีโอบนดิสก์ส่วนตัว บริการคลาวด์ หรือดิสก์อาจทุกทีเมื่อพื้นที่จำกัด การลดขนาดไฟล์ทำให้เก็บไฟล์ใหญ่และคอลเลกชันที่เพิ่มขึ้นง่ายขึ้น แต่บางวิธีมีประสิทธิภาพมากกว่า
มีเครื่องมือมากมายในสนามจัดการวิดีโอ ที่สามารถเพิ่มประสิทธิภาพขนาดไฟล์ อย่างไรก็ตาม หลายตัวในนั้น - รวมถึง VLC, Cinelerra และ Blender - แชร์ Engine เดียวกันภายใต้ UI - ยูทิลิตี้บรรทัดคำสั่งชื่อ FFMPEG ที่นี่เราจะแสดงวิธีลดขนาดไฟล์วิดีโอด้วย FFMPEG จากเทอร์มินัล Linux
FFMPEG คืออะไร?
FFMPEG ถือว่าเป็นยูทิลิตี้จัดการสื่อบรรทัดคำสั่งที่ครบครันที่สุดในระบบนิเวศซอฟต์แวร์ Linux ระหว่างคุณสมบัติอันยิ่งใหญ่ เครื่องมือนี้จัดการการสร้าง GIF, ตัด/ตัดต่อวิดีโอ และบันทึกได้ด้วย
สำคัญที่สุด FFMPEG แปลงวิดีโอในระดับละเอียดอ่อนให้อาประมาณ รักษาคุณภาพได้ในระดับมาก ในขณะที่ขนาดไฟล์ลดลงครึ่งหนึ่ง (หรือแม้แต่เหลือ 1 ใน 4 ในกรณีสุดโหด)
การติดตั้ง
ติดตั้ง FFMPEG ใน Ubuntu ง่ายพอสมควรด้วยคำสั่ง:
sudo apt install ffmpeg
เมื่อติดตั้งเสร็จ คุณพร้อมเริ่มต้น
การใช้งาน
การใช้ FFMPEG อาจง่ายแค่:
ffmpeg -i input.video output.video
อย่างไรก็ตาม เพื่อลดขนาดไฟล์วิดีโออย่างเหมาะสมจริง เราต้องพิจารณาแอตทริบิวต์ของนามสกุลไฟล์บางอย่าง
สมการการเพิ่มประสิทธิภาพ
เมื่อพูดถึงไฟล์วิดีโอ ไม่ใช่ทุกประเภทที่สร้างเท่ากัน ตัวอย่าง นามสกุลไฟล์ AVI มักใหญ่กว่า MP4
สิ่งนี้มาจากตรรกะที่สร้างไว้ใน Container ที่ตั้งใจสำหรับสภาพแวดล้อม แต่สิ่งนั้นสามารถปรับเปลี่ยนได้โดยเลือก Codec ที่เหมาะสมสำหรับเข้ารหัสไฟล์ของคุณ เลือกคุณภาพพร้อมขนาดใหญ่ หรือพกพาได้พร้อมขนาดเล็ก
ข้อสรุปคือ MP4 ขนาดเล็กที่สุดของวิดีโอเฉพาะจะเล็กกว่า AVI ขนาดเล็กที่สุดของวิดีโอเดียวกันเสมอ แต่มีความแปรปรวนของขนาดและคุณภาพแม้ภายในประเภทไฟล์เหล่านี้
น่าสนใจที่ว่า MP4 ไม่ใช่ระดับต่ำสุดที่ไปได้ในการตามหาขนาดไฟล์เล็กที่สุดที่สมบูรณ์แบบ แชมป์ปัจจุบันของประเภทไฟล์วิดีโอที่รักษาคุณภาพได้คือ Container ต่างๆ สำหรับ Flash Videos และ Windows Media Videos (FLV และ WMV) สิ่งเหล่านี้เป็นส่วนหนึ่งของสมการง่ายๆ ที่เราใช้ได้เพื่อไฟล์วิดีโอขนาดเล็กมาก แต่คุณภาพสูง:
Container เล็ก + Codec 有效率 + FPS ต่ำ + Bitrate ต่ำ = ไฟล์วิดีโอขนาดเล็กมาก/คุณภาพสูง
หมายเหตุ: สำหรับบทความนี้ คุณภาพสูงหมายถึง Pixelation น้อยที่สุดหรือการสูญเสียสีที่สำคัญ การลดคุณภาพเป็นเรื่องไม่หลีกเลี่ยงในระดับหนึ่งหากเราต้องการเพิ่มประสิทธิภาพขนาดไฟล์จริงๆ แต่แค่ไหนที่เห็นได้ชัด ขึ้นอยู่กับสิ่งที่เราเพิ่มประสิทธิภาพ ความเร็วการเคลื่อนไหว ความหลากหลายของสี และคุณภาพ/ความหนาแน่นของเสียง เล่นร่วมกันในการตัดสินใจว่าจะลดการตั้งค่าลงได้ถึงไหน
ตัวเลือกมีมากในโลกของ Video Codecs และ Containers เราจะทำให้ง่ายโดยใช้ WMV 8 (FFMPEG ยังไม่รองรับ WMV 9 อย่างเต็มที่)
เพิ่มประสิทธิภาพวิดีโอ
เมื่อเรารัน FFMPEG มันจะแปลงไฟล์ Input เป็นประเภทไฟล์ที่เราระบุ โดยใช้พารามิเตอร์ที่ตั้งค่าด้วยแฟล็กพิเศษ โค้ดของเรา:
ffmpeg -i input.mp4 -b 1000k -vcodec wmv2 -acodec wmav2 -crf 19 -filter:v fps=fps=24 output.wmv
โค้ดข้างต้นแปลงไฟล์ Input เป็นไฟล์ที่มี Bitrate 1Mbps, Framerate 24fps, Constant Rate Factor 19 และนามสกุล .wmv เปลี่ยน "input.mp4" ให้เหมาะกับความต้องการ และปรับค่า -crf ให้สูงขึ้นสำหรับขนาดไฟล์เล็กลง (พร้อมคุณภาพลดลงตามลำดับ)
FFMPEG อันทรงพลังพอที่จะทำได้มากกว่าที่กล่าวถึงที่นี่ ชุดคุณสมบัติครบถ้วนน่าประทับใจ และมีอะไรมากกว่าการแปลงวิดีโอเพียงอย่างเดียว ดูเว็บไซต์官方ของโปรเจกต์เพื่อข้อมูลเพิ่มเติม