กลับไปที่บล็อก
27 ตุลาคม 2569Sergei Solod67 นาทีในการอ่าน

MP4 เทียบกับ WebM ในปี 2026: เลือกรูปแบบวิดีโอ ตัวแปลงสัญญาณ และคุณภาพการบีบอัดอย่างไร

เว็บไซต์และอุปกรณ์พกพาควรใช้วิดีโอรูปแบบใด? บทความนี้เปรียบเทียบ MP4, WebM, H.264, HEVC, VP9 และ AV1 จากมุมมองการใช้งานจริง พร้อมการทดลองบีบอัดด้วย FFmpeg การแลกเปลี่ยนระหว่างขนาดไฟล์กับคุณภาพที่ CRF 20–32 พรีเซ็ต x264 และแนวทางส่งวิดีโอที่ให้ความสำคัญกับความเข้ากันได้ก่อน

การบีบอัดวิดีโอH.264MP4WebMFFmpeg

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

ผมศึกษาทั้ง MP4, WebM, H.264, H.265/HEVC, VP9, AV1, FFmpeg, พรีเซ็ตของตัวเข้ารหัส x264, ความเข้ากันได้ของเบราว์เซอร์, การถอดรหัสด้วยฮาร์ดแวร์บนอุปกรณ์พกพา และการวัดคุณภาพวิดีโอ นอกจากนี้ ผมยังทดลองบีบอัดจริง โดยเข้ารหัสวิดีโอต้นฉบับเดียวกันด้วยค่า CRF หลายระดับ แล้วเปรียบเทียบผลทั้งด้วยสายตาและตัวชี้วัดเชิงวัตถุ

สุดท้ายผมตัดสินใจให้ความสำคัญกับ MP4 ที่ใช้ H.264 เมื่อต้องมีไฟล์วิดีโอเพียงไฟล์เดียวที่ใช้งานได้กับเบราว์เซอร์ โทรศัพท์ และแอปพลิเคชันภายนอกในวงกว้างที่สุดเท่าที่จะเป็นไปได้ในทางปฏิบัติ

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

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

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

1. คอนเทนเนอร์วิดีโอกับตัวแปลงสัญญาณไม่ใช่สิ่งเดียวกัน

ก่อนเปรียบเทียบ MP4 กับ WebM เราต้องเข้าใจความแตกต่างระหว่างคอนเทนเนอร์กับตัวแปลงสัญญาณ (codec) ก่อน

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

ตัวอย่างเช่น MP4 สามารถบรรจุวิดีโอ H.264, HEVC หรือ AV1 ได้ แม้ใช้นามสกุลไฟล์เดียวกัน แต่แต่ละชุดมีลักษณะการบีบอัดและข้อกำหนดของอุปกรณ์ต่างกัน

องค์ประกอบตัวอย่างหน้าที่
คอนเทนเนอร์วิดีโอMP4, WebM, MOV, MKVบรรจุวิดีโอ เสียง และข้อมูลเวลา
ตัวแปลงสัญญาณวิดีโอH.264, HEVC, VP9, AV1บีบอัดและคลายข้อมูลเฟรมภาพ
ตัวแปลงสัญญาณเสียงAAC, Opus, MP3บีบอัดและคลายข้อมูลเสียง
ตัวเข้ารหัสวิดีโอx264, x265, SVT-AV1, libvpx-vp9ทำหน้าที่เข้ารหัสเพื่อบีบอัดวิดีโอ

การเปลี่ยนนามสกุลไฟล์จาก .webm เป็น .mp4 ไม่ได้เปลี่ยน codec ของวิดีโอ เช่นเดียวกับการใส่ AV1 ลงในคอนเทนเนอร์ MP4 ก็ไม่ได้ทำให้อุปกรณ์ที่ไม่มีความสามารถถอดรหัส AV1 เล่นวิดีโอนั้นได้

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

2. MP4 เทียบกับ WebM: แบบไหนเหมาะกับวิดีโอบนเว็บมากกว่า?

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

MP4 กับ H.264: รองรับอุปกรณ์ได้กว้างที่สุดในทางปฏิบัติ

MP4 ที่ใช้วิดีโอ H.264 และเสียง AAC มีประวัติการรองรับที่กว้างขวางมาก ใช้งานได้กับเบราว์เซอร์หลักบนคอมพิวเตอร์และมือถือ โปรแกรมเล่นวิดีโอของระบบปฏิบัติการ และแอปพลิเคชันภายนอกจำนวนมาก

ตัวถอดรหัสวิดีโอด้วยฮาร์ดแวร์ในสมาร์ตโฟนและคอมพิวเตอร์ก็รองรับรูปแบบนี้อย่างแพร่หลาย การถอดรหัสด้วยฮาร์ดแวร์ช่วยลดการใช้ CPU เพิ่มประสิทธิภาพการเล่น และลดการใช้พลังงานเมื่อเทียบกับการถอดรหัสด้วยซอฟต์แวร์ได้

ข้อเสียหลักคือประสิทธิภาพการบีบอัด codec รุ่นใหม่มักให้คุณภาพที่สายตารับรู้ใกล้เคียงกันด้วยบิตเรตที่ต่ำกว่า

ถึงอย่างนั้น H.264 ก็ยังเป็นตัวเลือกที่ยอดเยี่ยมเมื่อความเสถียรในการเล่นสำคัญกว่าการทำให้ไฟล์มีขนาดเล็กที่สุดเท่าที่จะทำได้

WebM กับ VP9: บีบอัดได้ดีและเหมาะกับเบราว์เซอร์

โดยทั่วไป WebM บรรจุวิดีโอ VP8, VP9 หรือ AV1 และมักใช้ Opus หรือ Vorbis สำหรับเสียง

VP9 มักบีบอัดได้ดีกว่า H.264 เมื่อคุณภาพที่มองเห็นใกล้เคียงกัน ปัจจุบันเบราว์เซอร์ส่วนใหญ่รองรับ VP9 รวมถึง Safari รุ่นใหม่ด้วย

ดังนั้น การกล่าวว่า Safari ไม่รองรับ WebM หรือ VP9 เลยจึงไม่ถูกต้อง ความเข้ากันได้ของเบราว์เซอร์พัฒนาขึ้นมากตามเวลา

ข้อจำกัดที่สำคัญกว่าคือความเข้ากันได้นอกเบราว์เซอร์ แอปพลิเคชันที่ติดมากับระบบปฏิบัติการ อุปกรณ์รุ่นเก่า และซอฟต์แวร์ภายนอกอาจจัดการ WebM ได้ไม่สม่ำเสมอเท่า MP4 ที่ใช้ H.264 แบบทั่วไป

สำหรับแอปที่เล่นวิดีโอเฉพาะในเบราว์เซอร์และควบคุมความสามารถในการเล่นได้ WebM เป็นตัวเลือกที่ดี แต่ถ้าผู้ใช้ดาวน์โหลดไฟล์ไปเปิดด้วยซอฟต์แวร์ที่หลากหลาย MP4/H.264 ยังให้ผลที่คาดเดาได้มากกว่า

ความแตกต่างในทางปฏิบัติ

ข้อกำหนดMP4 + H.264WebM + VP9
การเล่นบนเบราว์เซอร์สมัยใหม่ยอดเยี่ยมดีมาก
การรองรับเบราว์เซอร์และอุปกรณ์รุ่นเก่าโดยทั่วไปดีกว่าขึ้นอยู่กับสภาพแวดล้อมมากกว่า
ความเข้ากันได้ของไฟล์ที่ดาวน์โหลดโดยทั่วไปดีกว่าคาดเดาผลกับแอปของระบบได้ยากกว่า
ประสิทธิภาพการบีบอัดดีมักดีกว่า
การถอดรหัสด้วยฮาร์ดแวร์แพร่หลายมากพบได้ทั่วไป แต่ขึ้นอยู่กับอุปกรณ์
เหมาะที่สุดกับไฟล์เดียวที่ต้องรองรับอุปกรณ์หลากหลายส่งวิดีโอบนเว็บอย่างมีประสิทธิภาพเมื่อทราบสภาพแวดล้อมของผู้ใช้

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

3. H.264 เทียบกับ H.265, VP9 และ AV1: ควรเลือก codec ไหน?

codec วิดีโอหลักแต่ละตัวมีจุดสมดุลต่างกันระหว่างประสิทธิภาพการบีบอัด ต้นทุนการเข้ารหัส การรองรับของฮาร์ดแวร์ ความเข้ากันได้ของซอฟต์แวร์ และการอนุญาตให้ใช้งาน

codecประสิทธิภาพการบีบอัดความเข้ากันได้ในทางปฏิบัติการใช้งานทั่วไป
H.264 / AVCดียอดเยี่ยมวิดีโอบนเว็บทั่วไป การเล่นบนมือถือ การดาวน์โหลด
H.265 / HEVCโดยทั่วไปดีกว่า H.264ขึ้นอยู่กับสภาพแวดล้อมอุปกรณ์ Apple ที่รองรับ สภาพแวดล้อมที่ควบคุมได้ วิดีโอความละเอียดสูง
VP9โดยทั่วไปดีกว่า H.264ดีมากบนเบราว์เซอร์สมัยใหม่การส่งวิดีโอผ่านเบราว์เซอร์
AV1มีศักยภาพในการบีบอัดสูงมากรองรับมากขึ้นเรื่อย ๆ แต่ยังมีข้อจำกัดกับอุปกรณ์เก่าสตรีมมิงยุคใหม่และอุปกรณ์ที่รองรับ

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

H.264: เทคโนโลยีที่ผ่านการพัฒนามายาวนาน ถอดรหัสได้รวดเร็ว และรองรับอย่างกว้างขวาง

H.264 ได้รับการปรับแต่งมาอย่างดีและมีฮาร์ดแวร์กับซอฟต์แวร์รองรับจำนวนมาก ความพร้อมและความแพร่หลายของเทคโนโลยีเป็นข้อได้เปรียบเมื่อวิดีโอต้องเล่นได้อย่างเสถียรโดยไม่ต้องติดตั้งโปรแกรมพิเศษ

จุดอ่อนคือ codec รุ่นใหม่มักบีบอัดวิดีโอได้มีประสิทธิภาพกว่า นอกจากนี้ H.264 ยังมีประเด็นด้านสิทธิบัตรและการอนุญาตให้ใช้สิทธิ ซึ่งควรตรวจสอบสำหรับกรณีการเผยแพร่เชิงพาณิชย์ที่เกี่ยวข้อง

H.265 / HEVC: บีบอัดได้ดีกว่า แต่ต้องแลกกับข้อจำกัดด้านความเข้ากันได้

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

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

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

VP9: ทางเลือกแบบเปิดที่ใช้งานได้จริง

VP9 ให้การบีบอัดที่ดีและรองรับเบราว์เซอร์สมัยใหม่อย่างกว้างขวาง จึงน่าสนใจหากวิดีโอจะเล่นอยู่ภายในเบราว์เซอร์และสภาพแวดล้อมการเล่นคาดเดาได้

ข้อเสียหลักในกรณีของผมคือความไม่แน่นอนเมื่อผู้ใช้ดาวน์โหลดวิดีโอ หรือเปิดผ่านแอปที่ติดตั้งในเครื่องซึ่งอาจรองรับ WebM หรือ VP9 ได้ไม่สม่ำเสมอ

AV1: บีบอัดได้ยอดเยี่ยม แต่ฮาร์ดแวร์ยังไม่รองรับทุกอุปกรณ์

AV1 เป็นหนึ่งใน codec วิดีโอสมัยใหม่ที่มีอนาคตมากที่สุด สามารถประหยัดบิตเรตได้มากเมื่อเทียบกับ codec รุ่นเก่า และการรองรับการถอดรหัสด้วยฮาร์ดแวร์ก็เพิ่มขึ้นต่อเนื่อง

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

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

คู่มือ codec วิดีโอของ MDN มีรายละเอียดที่เป็นประโยชน์เกี่ยวกับ codec เหล่านี้และข้อกำหนดของเบราว์เซอร์

4. ควรใช้ไฟล์วิดีโอรูปแบบเดียวหรือทำหลายเวอร์ชัน?

นี่เป็นหนึ่งในการตัดสินใจด้านสถาปัตยกรรมที่สำคัญที่สุดสำหรับการส่งวิดีโอ

หากทำได้หลายเวอร์ชัน เว็บไซต์สามารถส่ง AV1 หรือ VP9 ให้กับอุปกรณ์ที่รองรับ และใช้ H.264 เป็นตัวสำรองสำหรับสภาพแวดล้อมอื่น วิธีนี้ช่วยเพิ่มประสิทธิภาพการบีบอัดโดยยังคงรองรับการเล่นได้ในวงกว้าง

แต่การดูแลหลายเวอร์ชันก็เพิ่มความซับซ้อนทั้งการเข้ารหัส การจัดเก็บ แคช การตรวจสอบ และการเลือกเวอร์ชันสำหรับเล่น

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

ผมเลือก MP4/H.264 เพราะต้องการไฟล์เดียวที่เล่นได้ในเบราว์เซอร์หลัก บนสมาร์ตโฟน และในขั้นตอนการดาวน์โหลดไปเปิดด้วยโปรแกรมทั่วไป โดยไม่ต้องพึ่งรูปแบบสำรอง

นี่ไม่ได้หมายความว่า MP4/H.264 บีบอัดได้ดีที่สุด แต่เป็นการให้ความสำคัญกับการเล่นที่คาดเดาได้มากกว่าข้อได้เปรียบด้านขนาดไฟล์ที่ codec รุ่นใหม่อาจมี

5. ทำไมวิดีโอสำหรับมือถือจึงมีลำดับความสำคัญต่างออกไป

การบีบอัดวิดีโอควรสอดคล้องกับวิธีที่คนจะรับชมเนื้อหาจริง

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

สำหรับคลิปสั้นที่เน้นมือถือ ไฟล์ที่เล็กลงมีข้อดีหลายประการ ได้แก่

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

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

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

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

หลักการสำคัญนั้นเรียบง่าย: ปรับแต่งเพื่อประสบการณ์การรับชมที่ต้องการ ไม่ใช่เพื่อไล่ตามคุณภาพสูงสุดในเชิงนามธรรม

6. ทำความเข้าใจ CRF ของ x264: ค่ายิ่งต่ำคุณภาพยิ่งดี ค่ายิ่งสูงไฟล์ยิ่งเล็ก

หลังเลือก H.264 แล้ว ปัญหาถัดมาคือควรบีบอัดวิดีโอหนักเพียงใด

ใน x264 ค่า Constant Rate Factor หรือ CRF ใช้ควบคุมการแลกเปลี่ยนระหว่างการรักษารายละเอียดภาพกับขนาดไฟล์

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

CRF ไม่ได้กำหนดบิตเรตหรือขนาดไฟล์ผลลัพธ์แบบตายตัว ตัวเข้ารหัสจะจัดสรรบิตตามเนื้อหาต้นฉบับ ฉากเรียบง่ายกับฉากที่มีรายละเอียดมากจึงอาจให้ไฟล์ขนาดต่างกันมากแม้ใช้ CRF เท่ากัน

CRF ไม่ได้เป็นตัวกำหนดความเข้ากันได้พื้นฐานของตัวถอดรหัสด้วย วิดีโอ H.264 สองไฟล์ที่เข้ารหัสอย่างถูกต้องด้วย CRF 22 และ CRF 30 สามารถใช้ codec โปรไฟล์ ระดับ รูปแบบพิกเซล ขนาดภาพ และอัตราเฟรมเดียวกันได้

ความต่างหลักจึงอยู่ที่คุณภาพหลังบีบอัดและลักษณะของบิตเรต

ที่สำคัญ ตัวเลข CRF ไม่สามารถนำมาเทียบกันตรง ๆ ระหว่างการพัฒนา codec คนละแบบได้ CRF 30 ของ x264 ไม่ได้หมายถึงคุณภาพที่มองเห็นเท่ากับ CRF 30 ของตัวเข้ารหัส AV1

7. การทดลองบีบอัดจริงของผม: CRF 22 ถึง 32

ผมต้องการหาว่าจะบีบอัดได้หนักแค่ไหนก่อนที่ความแตกต่างจะเริ่มส่งผลต่อการรับชมตามปกติ

ผมใช้วิดีโอสั้นหนึ่งไฟล์ที่เคยผ่านการบีบอัดมาแล้ว และสร้างไฟล์ H.264 เพื่อเปรียบเทียบที่ CRF 22, 24, 26, 28, 29, 30, 31 และ 32

ผมรักษาคุณสมบัติสำคัญของวิดีโอไว้ ได้แก่ ความละเอียด อัตราเฟรม ระยะเวลา และจำนวนเฟรม รวมทั้งใช้การตั้งค่าตัวเข้ารหัสอย่างสม่ำเสมอ เพื่อประเมินผลจากการเปลี่ยนค่า CRF โดยเฉพาะ

ผลที่ได้แสดงให้เห็นว่าขนาดไฟล์แตกต่างกันอย่างมาก

CRFขนาดโดยประมาณเมื่อเทียบกับไฟล์ต้นฉบับความหมาย
2263%บีบอัดอย่างระมัดระวังและรักษารายละเอียดได้มากกว่า
2449%ไฟล์เล็กลงโดยเสียคุณภาพเพิ่มขึ้นเพียงเล็กน้อย
2638%ประหยัดพื้นที่ขึ้นอีกแต่ยังรักษารายละเอียดได้มากพอสมควร
2830%ไฟล์กะทัดรัดและยังค่อนข้างใกล้เคียงต้นฉบับ
2926%บีบอัดหนักขึ้น
3023%จุดสมดุลที่ผมชอบสำหรับวิดีโอที่ทดสอบนี้
3121%ประหยัดพื้นที่เพิ่ม แต่ความเที่ยงตรงต่อต้นฉบับลดลง
3219%ไฟล์เล็กที่สุดในชุดทดสอบ และสูญเสียคุณภาพตามค่าที่วัดมากที่สุด

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

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

ผมยังลองตรวจเวอร์ชันที่บีบอัดหนักกว่านั้น รวมถึง CRF 32 แต่ก็ไม่ได้สังเกตเห็นความแตกต่างชัดเจนระหว่างการเล่นคลิปนั้นตามปกติ

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

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

8. การวัดเชิงวัตถุยืนยันว่าคุณภาพลดลงจริง

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

ผมยังเปรียบเทียบผลลัพธ์ที่เข้ารหัสด้วยตัวชี้วัดคุณภาพภาพเชิงวัตถุ และพบว่าเมื่อ CRF เพิ่มขึ้น ความคล้ายคลึงกับต้นฉบับจะลดลง

สำหรับการเปรียบเทียบที่ย่อภาพลงด้วยวิธีเดียวกัน เพื่อจำลองสภาพการดูบนจอมือถือที่มีความหนาแน่นพิกเซลสูง ค่า SSIM ที่เป็นตัวแทนมีดังนี้

CRFSSIM โดยประมาณขนาดไฟล์เมื่อเทียบกับ CRF 28
220.99342.13×
280.98691.00×
300.98370.79×
320.97950.63×

แนวโน้มชัดเจนว่าเมื่อบีบอัดหนักขึ้น ความเที่ยงตรงต่อวิดีโอต้นฉบับที่วัดได้ก็ลดลง เมื่อดูอย่างละเอียด ยังพบความแตกต่างเล็กน้อยของเส้นบางและพื้นผิว

แต่ประสบการณ์รับชมทั่วไปของคลิปที่ทดสอบยังใกล้เคียงกันมาก นี่คือเหตุผลที่ควรใช้การวัดเชิงวัตถุควบคู่กับการประเมินด้วยสายตา

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

VMAF เป็นอีกตัวชี้วัดคุณภาพตามการรับรู้ที่มีประโยชน์ Netflix เผยแพร่โมเดล VMAF v1 ในเดือนมิถุนายน 2026 ซึ่งรวมถึงโมเดลที่ออกแบบสำหรับสภาพการดูบนโทรศัพท์ด้วย โมเดลเหล่านี้คำนึงอย่างชัดเจนว่าคุณภาพที่รับรู้ขึ้นอยู่บางส่วนกับขนาดหน้าจอและระยะการรับชมสัมพัทธ์

ตัวอย่างที่เข้ารหัสแบบระมัดระวังในงานทดสอบนี้มีค่า VMAF เฉลี่ยที่รายงานประมาณ 95 แต่ไม่มีชุดข้อมูล VMAF ที่วัดอย่างสม่ำเสมอครอบคลุมค่า CRF ที่บีบอัดหนักทั้งหมด ดังนั้น ผมจึงไม่ใช้ VMAF เพื่อกล่าวว่า CRF 30 หรือ 32 ผ่านเกณฑ์คุณภาพสากลใด ๆ

ข้อสรุปที่นำไปใช้ได้จึงจำกัดกว่านั้น: วิดีโอสั้นที่ทดสอบรองรับการบีบอัด H.264 ที่ค่อนข้างหนักได้ดีมากเมื่อเล่นตามปกติ

9. เหตุผลที่ผมเลือก CRF 30 สำหรับวิดีโอสั้นบนมือถือ

หลังเปรียบเทียบไฟล์แล้ว ผมตัดสินใจใช้ CRF 30 กับวิดีโอสั้นประเภทใกล้เคียงกันที่รับชมผ่านมือถือเป็นหลัก

เหตุผลมีดังนี้

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

เมื่อเทียบกับ CRF 28 ค่า CRF 30 ทำให้ไฟล์ผลลัพธ์ที่ทดสอบเล็กลงประมาณ 21% และเมื่อเทียบกับ CRF 22 ไฟล์เล็กลงมากกว่า 60%

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

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

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

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

10. ทำไมผมจึงไม่แนะนำ CRF 30 สำหรับภาพยนตร์หรือวิดีโอคุณภาพสูง

นี่คือข้อจำกัดที่สำคัญที่สุดของการทดลอง

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

เนื้อหาเหล่านี้อาจมีการไล่เฉดสีละเอียด เกรนฟิล์ม ฉากแสงน้อย การเคลื่อนไหวซับซ้อน พื้นผิวที่มีรายละเอียดมาก และสีที่ปรับแต่งมาอย่างประณีต การเก็บรายละเอียดเหล่านี้อาจสำคัญกว่าการประหยัดแบนด์วิดท์เพียงเล็กน้อย

สำหรับวิดีโอ 1080p คุณภาพสูงทั่วไป ผมจะเริ่มด้วยการตั้งค่า x264 ที่ระมัดระวังกว่ามาก คือ CRF ประมาณ 20 แล้วทดลองค่าที่ต่ำและสูงกว่านั้นให้เหมาะกับเนื้อหา

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

คำแนะนำนี้สอดคล้องกับแนวทางการเข้ารหัสที่เผยแพร่กันทั่วไป ตัวอย่างเช่น เอกสารการตั้งค่าคุณภาพของ HandBrake แนะนำค่า RF ประมาณ 20–24 สำหรับการใช้งาน x264 ที่ 1080p หลายกรณี

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

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

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

11. ทำไมผมจึงใช้พรีเซ็ต veryslow ของ x264

CRF ควบคุมคุณภาพการบีบอัดด้านหนึ่ง ส่วนพรีเซ็ตของ x264 กำหนดว่าตัวเข้ารหัสจะใช้ความพยายามในการคำนวณมากเพียงใดเพื่อค้นหาวิธีเข้ารหัสที่มีประสิทธิภาพ

x264 มีพรีเซ็ตตั้งแต่เร็วมากไปจนถึงช้ามาก โดยทั่วไปพรีเซ็ตที่ช้ากว่าจะใช้เวลา CPU มากกว่า และอาจบีบอัดได้มีประสิทธิภาพกว่าเมื่อคุณภาพภาพที่มองเห็นใกล้เคียงกัน

ผมเปรียบเทียบพรีเซ็ต medium กับ veryslow โดยใช้ต้นฉบับเดียวกัน ที่ระดับคุณภาพที่ทดสอบ veryslow ให้ไฟล์ขนาดเล็กกว่า

สำหรับการเข้ารหัสแบบออฟไลน์เพียงครั้งเดียวแล้วนำไฟล์ไปใช้ซ้ำหลายครั้ง เวลาประมวลผลที่เพิ่มขึ้นอาจคุ้มค่า

นั่นคือเหตุผลที่ผมเลือก -preset veryslow

อย่างไรก็ตาม พรีเซ็ตนี้ไม่ได้ดีที่สุดสำหรับทุกกรณี หากต้องประมวลผลวิดีโอทันที ทรัพยากร CPU มีต้นทุนสูง หรือมีไฟล์ค้างรอประมวลผลจำนวนมหาศาล slow หรือ medium อาจให้ความสมดุลในการทำงานที่ดีกว่า

พรีเซ็ตมีผลหลักต่อความซับซ้อนของการเข้ารหัสและประสิทธิภาพการบีบอัด ไม่ได้เปลี่ยน H.264 ให้กลายเป็น codec อีกชนิด หรือทำให้ไฟล์ผลลัพธ์ไม่รองรับมือถือโดยตัวมันเอง

12. สำหรับวิดีโออนิเมะ ผมใช้การปรับจูน animation ของ x264

เมื่อวิดีโอต้นฉบับเป็นภาพวาดเคลื่อนไหวหรือมีลักษณะภาพแบบอนิเมะ ผมจะใช้ -tune animation กับ x264

การปรับจูนนี้ต่างจากค่า CRF เพราะมันเปลี่ยนการตัดสินใจบางอย่างของตัวเข้ารหัสให้เหมาะกับลักษณะของภาพ การปรับจูน animation ออกแบบมาสำหรับเนื้อหาที่มีเส้นขอบจากภาพวาด พื้นที่สีเรียบ และการเคลื่อนไหวที่มีรูปแบบเฉพาะ

ดังนั้น แนวทางที่ผมชอบคือ

  • อนิเมะหรือวิดีโอแอนิเมชันภาพวาด: ใช้ -preset veryslow -tune animation
  • วิดีโอถ่ายทำจริงทั่วไป: ไม่ควรเปิดการปรับจูน animation โดยอัตโนมัติ ให้เริ่มจากค่าเริ่มต้นของตัวเข้ารหัส หรือประเมินการปรับจูนที่เหมาะสมต่างหาก

ต้องเข้าใจผลของการปรับจูนให้ถูกต้อง -tune animation ไม่ได้รับประกันว่าภาพจะดีขึ้นอย่างเห็นได้ชัดหรือไฟล์จะเล็กลง มันปรับพฤติกรรมของตัวเข้ารหัสเท่านั้น และผลลัพธ์ขึ้นอยู่กับเนื้อหา

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

การเปรียบเทียบขนาดไฟล์หลักที่ CRF 22–32 ทำโดยไม่เปิดการปรับจูน animation ดังนั้น จึงไม่ควรสมมติว่าขนาดไฟล์และอัตราการบีบอัดที่ได้จากการทดลองนั้นจะยังเท่าเดิมเมื่อเปิด -tune animation

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

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

13. การตั้งค่า FFmpeg ที่ผมแนะนำสำหรับคลิปอนิเมะสั้นบนมือถือ

สำหรับวิดีโออนิเมะ SDR ทั่วไปที่จำเป็นต้องแปลงรหัสจริง ๆ คำสั่งต่อไปนี้คือโปรไฟล์ที่ผมจะใช้เป็นจุดเริ่มต้น

ffmpeg -i input.mp4 \
  -map 0:v:0 -map '0:a:0?' \
  -c:v libx264 \
  -preset veryslow \
  -tune animation \
  -crf 30 \
  -profile:v high \
  -pix_fmt yuv420p \
  -c:a aac -b:a 128k \
  -movflags +faststart \
  output.mp4

คำสั่งนี้กำหนดตัวเลือกสำคัญไว้อย่างชัดเจน

  • -c:v libx264 ใช้ตัวเข้ารหัส H.264 แบบซอฟต์แวร์
  • -preset veryslow ให้ความสำคัญกับประสิทธิภาพการบีบอัดมากกว่าความเร็วเข้ารหัส
  • -tune animation เปิดการปรับจูนสำหรับภาพแอนิเมชัน
  • -crf 30 ใช้เป้าหมายคุณภาพคงที่แบบบีบอัดค่อนข้างหนักที่ผมเลือกสำหรับคลิปประเภทนี้
  • -profile:v high เลือกโปรไฟล์ H.264 ที่อุปกรณ์สมัยใหม่รองรับทั่วไป
  • -pix_fmt yuv420p ส่งออกวิดีโอแบบ 8 บิต 4:2:0
  • -map 0:v:0 เลือกสตรีมวิดีโอแรก
  • -map '0:a:0?' เลือกสตรีมเสียงแรกถ้ามี
  • -c:a aac -b:a 128k เข้ารหัสเสียงเป็น AAC แบบทั่วไปเมื่อมีเสียง
  • -movflags +faststart ย้ายข้อมูลเริ่มต้นของ MP4 ไปไว้ใกล้ต้นไฟล์

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

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

เมื่ออัตราเฟรมและขนาดภาพของต้นฉบับเหมาะสมอยู่แล้ว การคงค่าเดิมมักทำให้เปรียบเทียบง่ายขึ้นและหลีกเลี่ยงการปรับขนาดหรือการเปลี่ยนแปลงการเคลื่อนไหวที่ไม่จำเป็น อย่าบังคับให้วิดีโออัตราเฟรมแปรผันกลายเป็นอัตราเฟรมคงที่เว้นแต่จำเป็น เพราะอาจทำให้มีการทำเฟรมซ้ำหรือทิ้งเฟรม หากปรับขนาด ควรรักษาอัตราส่วนการแสดงผลและใช้ขนาดที่เข้ากันได้กับรูปแบบพิกเซล 4:2:0 ที่เลือก ความละเอียด อัตราเฟรม หรือระดับ H.264 ที่สูงเกินไปอาจเกินขีดจำกัดการถอดรหัสของอุปกรณ์เก่า บางครั้งจึงต้องลดความละเอียดหรืออัตราเฟรมโดยตั้งใจเพื่อรักษาความเข้ากันได้

14. จุดเริ่มต้น FFmpeg ที่ระมัดระวังกว่าสำหรับวิดีโอคุณภาพสูง

หากความเที่ยงตรงของภาพสำคัญกว่าขนาดไฟล์มาก ให้เริ่มด้วย CRF ที่ต่ำกว่าแล้วประเมินผล

ตัวอย่างเช่น คำสั่งต่อไปนี้เป็นจุดเริ่มต้นที่สมเหตุสมผลสำหรับการทดลองกับวิดีโอถ่ายทำจริงแบบ SDR ทั่วไป

ffmpeg -i input.mp4 \
  -map 0:v:0 -map '0:a:0?' \
  -c:v libx264 \
  -preset slow \
  -crf 20 \
  -profile:v high \
  -pix_fmt yuv420p \
  -c:a aac -b:a 192k \
  -movflags +faststart \
  output.mp4

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

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

สำหรับวิดีโอระดับพรีเมียม ให้ลอง CRF ประมาณ 18, 20 และ 22 แล้วตัดสินใจจากผลที่มองเห็นจริง ภาพเกรนหรือการเคลื่อนไหวที่เข้ารหัสได้ยากอาจต้องใช้ค่าอื่น และไฟล์มาสเตอร์สำหรับเก็บถาวรอาจต้องบีบอัดเบากว่านั้นมาก

15. อย่าเข้ารหัสวิดีโอซ้ำโดยไม่มีเหตุผล

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

ก่อนแปลงรหัส ควรถามก่อนว่าไฟล์เดิมตรงตามความต้องการด้านความเข้ากันได้ ขนาด และคุณภาพอยู่แล้วหรือไม่

หากไฟล์มีวิดีโอ H.264 และเสียง AAC ที่เข้ากันได้อยู่แล้ว และไม่จำเป็นต้องเปลี่ยนภาพ การคัดลอกสตรีมอาจดีกว่าการเข้ารหัสแบบสูญเสียข้อมูลอีกครั้ง

ffmpeg -i input.mp4 \
  -map 0:v:0 -map '0:a:0?' \
  -c copy \
  -movflags +faststart \
  output.mp4

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

โดยทั่วไป การคัดลอกสตรีมจะไม่ช่วยลดขนาดไฟล์ได้มากเท่าการเข้ารหัสใหม่ด้วยคุณภาพที่ต่ำกว่า

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

16. ตรวจสอบวิดีโอที่เข้ารหัสแล้ว อย่าเชื่อเพียงขนาดไฟล์

แม้ FFmpeg จะทำงานเสร็จและส่งรหัสออกสำเร็จ ก็ไม่ได้พิสูจน์โดยอัตโนมัติว่าวิดีโอตรงตามข้อกำหนดทุกอย่าง

เริ่มด้วยการใช้ FFprobe ตรวจสอบสตรีมในไฟล์ผลลัพธ์

ffprobe -v error \
  -show_entries stream=codec_name,profile,pix_fmt,width,height,avg_frame_rate,nb_frames:format=duration,size \
  -of json output.mp4

ตรวจสอบ codec รูปแบบพิกเซล ขนาดภาพ อัตราเฟรม ระยะเวลา และสตรีมเสียง

จากนั้นถอดรหัสไฟล์ผลลัพธ์ทั้งไฟล์ เพื่อตรวจหาความเสียหายหรือข้อผิดพลาดในการถอดรหัสบางประเภท

ffmpeg -v error -xerror -i output.mp4 -f null -

เมื่อลองบีบอัด ควรเปรียบเทียบไฟล์ที่สร้างจากต้นฉบับเดียวกัน รักษาตัวแปรสำคัญให้คงที่ และเปลี่ยนการตั้งค่าหลักเพียงอย่างเดียวในแต่ละครั้ง

ลองดูวิดีโอขณะเคลื่อนไหว ตรวจสอบรายละเอียด และสังเกตบริเวณไล่ระดับสี ฉากมืด วัตถุที่เคลื่อนที่ และข้อความ

หากทำได้ ให้ใช้ตัวชี้วัดเชิงวัตถุอย่าง SSIM, PSNR หรือ VMAF ประกอบการเปรียบเทียบด้วยสายตา อย่าตีความว่าคะแนนที่สูงเพียงค่าเดียวพิสูจน์ได้ว่าข้อบกพร่องทั้งหมดมองไม่เห็น

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

17. ตรวจสอบว่าเว็บไซต์ส่งไฟล์ MP4 ได้ถูกต้อง

การตั้งค่าเข้ารหัสที่ดีไม่อาจชดเชยระบบส่งวิดีโอบนเว็บที่ไม่ดีได้

สำหรับการเล่น MP4 แบบดาวน์โหลดไปเล่นไปทั่วไป ให้กำหนดส่วนหัว Content-Type: video/mp4 ให้ถูกต้อง และรองรับคำขอ HTTP แบบระบุช่วงไบต์ในกรณีที่ต้องโหลดบางส่วนหรือเลื่อนตำแหน่งการเล่น

ตัวเลือก +faststart ของ FFmpeg ย้ายข้อมูลเริ่มต้นของไฟล์ MP4 แบบทั่วไปไปไว้ใกล้ส่วนต้นของไฟล์ วิธีนี้ช่วยให้โหลดแบบต่อเนื่องได้สะดวกขึ้น แต่ไม่ได้เพิ่มคุณภาพภาพหรือลดบิตเรต

คุณสามารถใช้แท็กวิดีโอ HTML พื้นฐานเพื่อเล่นไฟล์ H.264 MP4 หนึ่งไฟล์ได้

<video controls playsinline preload="metadata">
  <source src="/media/video.mp4" type="video/mp4">
</video>

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

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

สำหรับคลิปสั้นบนมือถือ การจัดลำดับเวลาดาวน์โหลดให้เหมาะสมอาจสำคัญพอ ๆ กับการลดขนาดไฟล์ที่เข้ารหัสแล้ว

18. ควรเลือกรูปแบบวิดีโอและคุณภาพระดับไหน?

คำตอบที่เหมาะสมขึ้นอยู่กับสิ่งที่คุณต้องการปรับให้ดีที่สุด

เป้าหมายของคุณจุดเริ่มต้นที่แนะนำ
วิดีโอไฟล์เดียวที่เล่นบนเว็บและดาวน์โหลดได้โดยรองรับอย่างกว้างขวางMP4 + H.264 + AAC หากมีเสียง
ส่งวิดีโอให้เบราว์เซอร์สมัยใหม่โดยใช้ได้หลายรูปแบบAV1 หรือ VP9 พร้อม H.264 เป็นตัวสำรอง
บีบอัดให้ดีที่สุดบนอุปกรณ์ที่รองรับพิจารณา AV1
สภาพแวดล้อมการเล่นที่ควบคุมได้และรองรับ HEVCพิจารณา MP4 + HEVC
คลิปสั้นบนมือถือที่เน้นขนาดไฟล์พิจารณา x264 CRF 30 หลังทดสอบคลิปตัวแทน
อนิเมะหรือแอนิเมชันภาพวาดประเมิน x264 ที่ใช้ -tune animation
ภาพยนตร์คุณภาพสูงหรือวิดีโอระดับพรีเมียมเริ่มทดสอบด้วย CRF ที่ระมัดระวังกว่าใกล้ 20
การเข้ารหัสออฟไลน์ที่เวลา CPU สำคัญน้อยกว่าพิจารณา x264 slow หรือ veryslow
ต้องประมวลผลเร็วและมี CPU จำกัดพิจารณา x264 medium หรือ slow
วิดีโอเดิมตรงตามข้อกำหนดแล้วเก็บไฟล์ไว้หรือเปลี่ยนคอนเทนเนอร์โดยไม่เข้ารหัสใหม่
เก็บถาวรหรือแก้ไขในอนาคตเก็บไฟล์มาสเตอร์คุณภาพสูงแยกจากไฟล์ที่เผยแพร่

19. ข้อสรุปของผม และสิ่งที่การทดลองพิสูจน์ได้จริง

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

รูปแบบที่เลือกคือ MP4 กับ H.264 เพราะความเข้ากันได้ที่คาดเดาได้กับเบราว์เซอร์ โทรศัพท์ ไฟล์ดาวน์โหลด และแอปภายนอกสำคัญกว่าการใช้ codec รุ่นใหม่เพื่อให้ไฟล์เล็กที่สุดเท่าที่จะทำได้

ตัวเข้ารหัสที่เลือกคือ libx264 พร้อมพรีเซ็ต veryslow เพราะสามารถเข้ารหัสแบบออฟไลน์ได้และผมยอมรับเวลาประมวลผลเพิ่มเติมได้

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

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

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

ข้อสรุปสำคัญที่สุดคือ ไม่มี codec รูปแบบไฟล์ หรือค่า CRF เพียงค่าเดียวที่ดีที่สุดสำหรับวิดีโอทุกชนิด

หากคุณต้องการความเข้ากันได้สูงสุดและมีไฟล์เดียว MP4/H.264 เป็นค่าเริ่มต้นที่ดี หากทำรูปแบบสำรองได้และต้องการการบีบอัดที่ดีกว่า ให้ศึกษา VP9 และ AV1 หากกำลังเข้ารหัสคลิปสั้นที่คนดูบนมือถือเป็นหลัก ให้ทดสอบว่า CRF ที่สูงขึ้นทำให้ไฟล์เล็กลงพอหรือไม่โดยไม่กระทบประสบการณ์ที่ต้องการ และหากเข้ารหัสภาพยนตร์หรือฟุตเทจระดับพรีเมียม ให้ใช้การตั้งค่าคุณภาพที่ระมัดระวังกว่าและตรวจสอบผลอย่างละเอียด

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