Transformer'ın davranışını kontrol etmek için API yüzeyindeki seçenekleri yapılandırabilirsiniz. özel uygulamalar yazarak işlevsellik parçalarını tamamen değiştirmeyi deneyin ve bunları aktarabilirsiniz. Bu sayfada bazı örnekler açıklanmaktadır.
codec yapılandırmasını kontrol etme
Varsayılan olarak cihazın donanım kodlayıcısı, istenen çıkış çözünürlüğünü kabul etmiyor. Örneğin, Örneğin, Dönüştürücü, çıkış genişliğini ve yüksekliğini 2'nin katları olacak şekilde hizalayabilir veya 16 kodlayıcının gerekli gördüğü şekilde çalışır. Bu davranışı devre dışı bırakabilirsiniz Bu nedenle, Transformer gerekli olanı üretemezse bunun yerine bir hata verir. çıkış çözünürlüğü:
Kotlin
transformerBuilder .setEncoderFactory( DefaultEncoderFactory.Builder(context) .setEnableFallback(false) .build())
Java
transformerBuilder .setEncoderFactory( new DefaultEncoderFactory.Builder(context) .setEnableFallback(false) .build());
Benzer şekilde, DefaultEncoderFactory
özel kodlamanın kullanılmasını da destekler
setRequestedVideoEncoderSettings
seçeneği ile de ayarlayabilirsiniz.
Kodlayıcıların ve kod çözücülerin fabrikalarını tamamen değiştirebilir, codec'lerin nasıl ayarlandığı üzerinde tam kontrol sahibidir.
Özel mux'lar
Medya kapsayıcılarını yazmak için özel bir muxer ayarlamak için
Transformer.setMuxerFactory
Örneğin,
isterseniz Muxer
öğesini uygulayan bir sarmalayıcı yazabilirsiniz.
arayüzü ve ardından setMuxerFactory
öğesini kullanarak Transformer'a ekleyin.