Penyesuaian

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.