แต่ฉันสงสัยว่ามีวิธีการกำหนดบิตเรตเป้าหมาย "ดี" หรือไม่
อัตราบิตเป้าหมายที่ดีคืออัตราบิตที่:
- ได้รับการสนับสนุนโดยเครือข่ายที่คุณสตรีมเนื้อหาจาก (เช่นเครือข่าย 3G, WiFi ที่บ้าน ฯลฯ ) ซึ่งค่อนข้างง่ายในการคำนวณ
- ดูดีสำหรับคุณซึ่งเป็นการวัดความคิดเห็นส่วนตัว
22 Mbit / s หรือ 45 Mbit / s ค่อนข้างสูงสำหรับผู้ใช้ทั่วไปและโดยเฉพาะอย่างยิ่งสำหรับวิดีโอที่บีบอัดแล้วเช่น h.264 คุณสามารถไปข้างหน้าและลดอัตราบิตให้เป็นค่า "มีเหตุผล" ได้เสมอโดยคำนึงถึงความจุในการจัดเก็บที่คุณสามารถจ่ายได้และคุณภาพที่คุณต้องการสูญเสีย
คุณสามารถปรับขนาดวิดีโอ 1080p เป็น 720p หากคุณไม่ต้องการขนาดจริงหรือไม่มีความสามารถในการประมวลผลเพื่อแก้ไข
…หรือถ้ามีประเด็นใดที่พยายามทำบิตเรตตัวแปร
จุดอัตราบิตคงที่คือการปรับให้เข้ากับสถานการณ์สื่อสตรีมมิ่งที่มีคอขวดที่ จำกัด อัตราบิตสูงสุดของวิดีโอที่ส่ง ในโลกมัลติมีเดียทุกวันนี้มันไม่สมเหตุสมผลอีกต่อไป
เมื่อคุณบีบวิดีโอลงในจำนวนบิตคงที่ต่อวินาทีโดยทั่วไปคุณบอกตัวเข้ารหัสให้ใช้บิตจำนวนเท่ากันเพื่อเข้ารหัสกรอบเวลาเดียวกันเสมอ นั่นเป็นวิธีที่ดีที่สุดเหรอ? อย่างที่คุณอาจเดาได้แล้วตอนนี้ก็ไม่ใช่ การอ้างอิงคู่มือ CRFจาก Handbrake (ฉันจะกลับมาดูในภายหลัง):
ดวงตารับรู้รายละเอียดเพิ่มเติมในวัตถุนิ่งกว่าเมื่อพวกเขากำลังเคลื่อนไหว ด้วยเหตุนี้คอมเพรสเซอร์วิดีโอสามารถใช้การบีบอัดเพิ่มเติม (ลดรายละเอียดเพิ่มเติม) เมื่อสิ่งที่เคลื่อนไหวและใช้การบีบอัดน้อยลง (เก็บรายละเอียดเพิ่มเติม) เมื่อสิ่งต่าง ๆ ยังคง ผู้ชมวิดีโอดูเหมือนจะมีคุณภาพสูงกว่า
ดังนั้นจึงไม่ทำให้รู้สึกที่จะใช้อัตราบิตตัวแปรที่คุณจะทำได้ มันจะทำให้วิดีโอดูดีขึ้นแม้ในขนาดไฟล์เดียวกันของวิดีโออัตราบิตคงที่
ยิ่งไปกว่านั้นเครื่องเข้ารหัสส่วนใหญ่ - อันที่โด่งดังที่สุดคือx264 - มักจะทำงานได้แย่มากเมื่อคุณบอกให้ใช้อัตราบิตคงที่ มันเป็นการดีกว่าที่จะให้พวกเขา "อิสระ" มากขึ้นในแง่ของจำนวนบิตที่พวกเขาต้องการใช้ในเฟรม ท้ายที่สุดนั่นคืองานของโปรแกรมเปลี่ยนไฟล์ไม่ใช่คุณ และเรียกว่า "คุณภาพคงที่"
เพียงพอแล้ว - สิ่งนี้หมายความว่าอย่างไรในทางปฏิบัติ หากคุณใช้ FFmpeg เพื่อเข้ารหัสวิดีโอแสดงว่าคุณใช้เครื่องมือที่ดีพออยู่แล้ว หากตอนนี้คุณติดตั้ง x264 และใช้เวอร์ชันล่าสุดของทั้งสองแสดงว่าคุณกำลังใช้โปรแกรมเข้ารหัสที่ดีที่สุดตัวหนึ่งที่ปัจจุบันให้บริการฟรี แทนที่จะเข้ารหัสด้วยอัตราบิตคงที่ให้ x264 เลือกจำนวนเงินที่ต้องการใช้ ทำได้โดยใช้ตัวเลือกอัตราคงที่
ในกรณีที่ง่ายมากนี่หมายถึงการตั้งค่าระหว่าง 17 และ 23 ฉันเลือก MP4 เป็นที่เก็บเอาท์พุทแทนที่จะเป็น MOV เพราะมีเครื่องมือที่ดีกว่าสำหรับการใช้งานแบบมัลติเพล็กซ์
ffmpeg -i input.mov -c:v libx264 -crf 22 output.mp4
ค่าที่ต่ำกว่าคุณภาพที่ดีกว่าและเอาท์พุทที่ใหญ่ขึ้น ในทางกลับกันยิ่งมีคุณภาพสูง ในเวลาเดียวกันคุณจะลดอัตราบิตเฉลี่ยที่ต้องการ ตรวจสอบคู่มือการเข้ารหัส x264ffmpeg
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ
ตอนนี้งานของคุณคือการหาค่า CRF ที่:
- ลดอัตราบิตโดยรวมไปยังจุดที่คุณสามารถจ่ายได้
- ไม่ลดคุณภาพมากเกินไปวิดีโอยังดูดี
ใช่มันเกี่ยวข้องกับการเข้ารหัสและการลองผิดลองถูกมากมาย แต่นี่เป็นธุรกิจประจำวันเมื่อคุณทำการจูนและเข้ารหัสวิดีโอ
โอ้และถ้าคุณไม่ชอบบรรทัดคำสั่งHandbrakeเป็นเครื่องมือข้ามแพลตฟอร์มที่ฟรีเหมือนกันทุกประการ มันยังมีตัวเลื่อน CRF: