หากต้องการควบคุมลักษณะการทำงานของ Transformer คุณกำหนดค่าตัวเลือกในแพลตฟอร์ม API ได้ หรือแทนที่ฟังก์ชันการทำงานทั้งหมดด้วยการเขียนการใช้งานที่กำหนดเอง อินเทอร์เฟซ แล้วส่งการเชื่อมต่อเหล่านั้นเข้ามา หน้านี้จะอธิบายถึงตัวอย่างบางส่วน
ควบคุมการกำหนดค่าตัวแปลงรหัส
โดยค่าเริ่มต้น Transformer จะเปลี่ยนกลับไปเป็นความละเอียดที่รองรับหาก ฮาร์ดแวร์เปลี่ยนไฟล์ไม่ยอมรับความละเอียดเอาต์พุตที่ขอ สำหรับ เช่น Transformer สามารถจัดความกว้างและความสูงของเอาต์พุตให้เป็นผลคูณของ 2 หรือ 16 ตามที่โปรแกรมเปลี่ยนไฟล์แบบฮาร์ดแวร์มักจะกำหนดไว้ คุณปิดลักษณะการทำงานนี้ได้ เพื่อให้ Transformer แสดงข้อผิดพลาดหากไม่สามารถสร้าง ความละเอียดเอาต์พุต:
Kotlin
transformerBuilder .setEncoderFactory( DefaultEncoderFactory.Builder(context) .setEnableFallback(false) .build())
Java
transformerBuilder .setEncoderFactory( new DefaultEncoderFactory.Builder(context) .setEnableFallback(false) .build());
ในทำนองเดียวกัน DefaultEncoderFactory
ก็รองรับการใช้การเข้ารหัสที่กำหนดเองด้วย
การตั้งค่าด้วยตัวเลือก setRequestedVideoEncoderSettings
หรือจะแทนที่โรงงานของโปรแกรมเปลี่ยนไฟล์และตัวถอดรหัสทั้งหมดเพื่อรับ ควบคุมวิธีตั้งค่าตัวแปลงรหัสได้อย่างสมบูรณ์
มิกเซอร์ตามสั่ง
คุณสามารถตั้งค่า Muxer ที่กำหนดเองสำหรับการเขียนคอนเทนเนอร์สื่อได้โดยเรียกใช้
Transformer.setMuxerFactory
ตัวอย่างเช่น หากคุณใช้ Muxer ของคุณเองที่
ระดับแอปพลิเคชัน คุณสามารถเขียน Wrapper ที่นำ Muxer
ไปใช้
จากนั้นใช้ setMuxerFactory
เพื่อแทรกลงใน Transformer