Untuk mengontrol perilaku Transformer, Anda dapat mengonfigurasi opsi di permukaan API atau mengganti bagian fungsionalitas sepenuhnya dengan menulis implementasi kustom antarmuka dan meneruskannya. Halaman ini menjelaskan beberapa contoh.
Mengontrol konfigurasi codec
Secara default, Transformer akan kembali ke resolusi yang didukung jika encoder hardware perangkat tidak menerima resolusi output yang diminta. Misalnya, Transformer dapat menyelaraskan lebar dan tinggi output agar menjadi kelipatan 2 atau 16 seperti yang sering diperlukan oleh encoder hardware. Anda dapat menonaktifkan perilaku ini sehingga Transformer akan menampilkan error jika tidak dapat menghasilkan resolusi output yang diperlukan:
Kotlin
transformerBuilder.setEncoderFactory( DefaultEncoderFactory.Builder(context).setEnableFallback(false).build() )
Java
transformerBuilder.setEncoderFactory( new DefaultEncoderFactory.Builder(context).setEnableFallback(false).build());
Demikian pula, DefaultEncoderFactory juga mendukung penggunaan setelan
encoding kustom dengan opsi setRequestedVideoEncoderSettings.
Anda juga dapat mengganti sepenuhnya factory untuk encoder dan decoder guna mendapatkan kontrol penuh atas cara penyiapan codec.
Muxer kustom
Anda dapat menetapkan muxer kustom untuk menulis penampung media dengan memanggil
Transformer.setMuxerFactory. Misalnya, jika Anda menerapkan muxer sendiri di tingkat aplikasi, Anda dapat menulis wrapper yang menerapkan antarmuka Muxer, lalu menggunakan setMuxerFactory untuk menyuntikkannya ke Transformer.