ฉันต้องการระบุอัตราเฟรมตัวแปรด้วยค่าสูงสุดและอนุญาตให้ libx264 ลดอัตราเฟรมตามที่เห็นสมควร ความคิดที่นี่คือการได้รับการบีบอัดพิเศษเมื่อมีบางสิ่งบางอย่างเช่นยังคงขยายเฟรม
ในความเข้าใจของฉันนี่อาจเป็นไปได้ในทางที่ค่อนข้างงุ่มง่าม แต่ไม่เป็นที่พึงปรารถนาด้วยเหตุผลที่ซับซ้อนและมีความซับซ้อน
แม้ว่าสตรีม x264 จะมีอัตราเฟรมอัตราเฟรมเป็นปัญหาระดับคอนเทนเนอร์มากกว่าตัวแปลงสัญญาณหนึ่ง
ในการเข้ารหัส passthrough VFR จะมีสิ่งที่สำคัญคือไฟล์ข้อความที่มีรายละเอียดว่าอัตราเฟรมอยู่ที่ใดเฟรม / ครั้งและในการเข้ารหัสแหล่งที่มาฟังก์ชันเช่น tcfile-in หรือ tcfile-out ส่งผ่านการประทับเวลาไปยังการเข้ารหัส เพื่อแมปตำแหน่งอัตราและทำให้วิดีโอมีความสอดคล้องกันจากแหล่งที่มา
แนวคิดที่มีอัตราเฟรมต่ำเป็นแนวคิดที่มีเหตุผล แต่ไม่ได้ผลด้วยเหตุผลหลายประการ แม้ว่า x264 นั้นจะทราบถึงความสามารถของ VFR แต่ฉันไม่คิดว่าจะมีฟังก์ชั่นการวิเคราะห์ที่จะทำให้การเคลื่อนไหวของเฟรมแตกต่างกันเพื่อลดขนาดไฟล์ (ในทางที่จะควบคุมบิตเรตได้หลายวิธี)
แหล่งที่มาเป็นปัญหาเช่นกัน: แหล่งที่มาของ VFR โดยปกติแล้วจะรักษาความผันแปรของเฟรมไว้ แต่เห็นได้ชัดว่าเข้ารหัสไฟล์ CFR ที่บิตเรตตัวแปร (เป็นความคิดที่ดีบางครั้งโดยเฉพาะเมื่อต้องการเทเลคอม)
ซึ่งหมายความว่าคุณอาจจะต้องเขียนใหม่บิตเรตด้วยมือ (เช่น timestamps ฉากช้า muxed ลงในไฟล์) หรือรีสอร์ทไปสังหารกรอบ algorith เช่น dup, dedup และ exactDedup สำหรับ AviSynth หากวิดีโอของคุณมีการเคลื่อนไหวที่ต่ำมากเฟรมบางส่วน (ถึงครึ่งหนึ่ง) จะถูกส่งออกไป ปัญหาคืออัลกอรึทึมเหล่านี้ไม่ได้ก้าวหน้าและไม่ได้เลือกทางเลือกที่ดีกับวิดีโอ "ชีวิตจริง" ว่าอะไรจะช่วยให้มีการเข้ารหัสที่ดีที่สุด
นอกจากนี้การลบเฟรมที่มีสิ่งต่าง ๆ เช่นเฟรม I และ B จะลดจำนวนรายละเอียดที่มีอยู่เมื่อเวลาผ่านไปซึ่งทำให้การเคลื่อนไหวดู "Steppy" และสามารถรบกวนพารามิเตอร์วิดีโอพื้นฐานอื่น ๆ และทำให้สิ่งประดิษฐ์เช่นนามแฝง
และเนื่องจากวิธีการทำงานของตัววัดปริมาณ x264 จะลดบิตเรตอย่างไม่เป็นสัดส่วนในฉากเหล่านี้ที่มีการเคลื่อนไหวต่ำ หากคุณมีสไลด์โชว์ของภาพที่เหมือนกันจะมีการเคลื่อนไหว (หากมีเพียงธัญพืชและสิ่งประดิษฐ์อื่น ๆ ) และจะมีการสูญเสียคุณภาพซึ่งจะไม่สามารถมองเห็นได้โดยไม่ต้องเปลี่ยนบิตเรตอย่างรุนแรง
และสุดท้ายเหตุผลที่ไม่มีตัวเลือกมากมายในการทำสิ่งที่คุณต้องการก็คือ x264 นั้นดีในการจัดการบิตเรตเพียงแค่ใช้การบีบอัดชั่วคราว (บันทึกการเปลี่ยนแปลงในเฟรมบางส่วน) การไปที่อัตราเฟรม 1/2 จะไม่ลดขนาดไฟล์ลงครึ่งหนึ่ง 10% น่าจะเป็นกำไรที่คาดหวังจากการเคลื่อนไหวต่ำหรือภาพเคลื่อนไหว
ดังนั้นโดยย่อการวางบิตเรตของฉากแบบคงที่ของคุณจะทำเพียงเล็กน้อยสำหรับขนาดไฟล์ของคุณ แต่จะเพิ่มโฮสต์คุณภาพและปัญหาการซิงค์ไม่พูดถึงความเข้ากันไม่ได้กับซอฟต์แวร์ตัดต่อวิดีโอ
หากคุณต้องการลองใช้เครื่องมือถอดรหัสคุณอาจ จำกัด อัตราเฟรมสูงสุดใหม่โดยใช้ตัวเลือกระดับซึ่งแต่ละประเภทจะมีความละเอียดสูงสุดและเป็นเฟรม น่าเสียดายที่คุณอาจต้องทำงานที่ความละเอียดต่ำมากเพื่อให้ได้อัตราเฟรมที่คุณต้องการโดยใช้โปรไฟล์ มันกลับมาที่การแก้ไขอัตราด้วยตนเองไม่ว่าจะทั้งหมดหรือเพื่อแก้ไขอัตราเฟรมที่คุณคิดว่าสูงเกินไป ไม่ว่าจะด้วยวิธีใดจะใช้การเล่นปาหี่เพื่อรักษาเสียงให้สอดคล้องกับ framerates ใหม่หากมีการเปลี่ยนแปลงหลังจากกระบวนการเข้ารหัสเมื่ออนุรักษ์ tcfile
สิ่งที่ควรหลีกเลี่ยงคือการใช้เวลาในการปรับการตั้งค่าบิตเรตเป็นจำนวนมากจะช่วยเพิ่มประสิทธิภาพในการจัดการขนาดไฟล์และปรับปรุงคุณภาพวิดีโอของคุณแทนที่จะก่อให้เกิดความยุ่งยากเล็กน้อย การรักษา FPS ดั้งเดิมน่าจะเป็นความคิดที่ดีที่สุดนอกเสียจากคุณจะตั้งเป้าหมายในการออกอากาศหรือมาตรฐานสื่อ ผู้เล่นมีความสามารถในการเล่นบิตเรตตัวแปร (ต่างจากตัวแก้ไข) และยิ่งเฟรมในวิดีโอของคุณเล่นได้ราบรื่นและอาจมีขนาดไฟล์เล็กลงเนื่องจากการเปลี่ยนแปลงการเคลื่อนไหวระหว่างเฟรมขนาดเล็ก
ต่อไปนี้เป็นคอลเล็กชันลิงก์ไปยังข้อมูลมาตรฐานและการอภิปรายในฟอรัมที่จะช่วยในเรื่องการเข้ารหัสที่สับสน:
- เครื่องมือการทำลาย avisynth
- สวิตช์ fps และ -r
- x264 ทั่วไป (tcfile, fps)
- มาตรฐานไฟล์ timecode
- ระดับและโปรไฟล์
- สั้น, CFR / VFR สรุปการตั้งค่าที่ชัดเจน (ส่วน "framerate")
doom9, videohelp, & c การอภิปรายเชิงทฤษฎี
1
2
3
4
5
6
7