Pemecahan masalah


Mengapa saya tidak dapat mengakses file lokal di aplikasi demo?

Penerapan penyimpanan terbatas dari Android 11 (level API 30) mencegah akses sistem file langsung. Untuk pengujian manual selama Anda dapat mengakses file lokal dengan menambahkan tombol izin penyimpanan dalam manifes aplikasi demo:

<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>

Kemudian berikan izin melalui adb:

adb shell appops set --uid androidx.media3.demo.transformer \
    MANAGE_EXTERNAL_STORAGE allow

Mengapa ekspor gagal di perangkat tertentu?

Laporkan masalah di masalah Media3 pelacak dengan informasi yang memadai untuk mereproduksi masalah. Solusi untuk masalah khusus perangkat dapat ditambahkan ke {i>library<i} untuk meningkatkan kompatibilitas dari waktu ke waktu.

Apakah Transformer mendukung transformasi (atau perekaman) media jarak jauh?

Transformer mendukung streaming progresif jarak jauh, termasuk penampung file media seperti MP4.

Dalam kondisi jaringan yang sangat buruk, ekspor mungkin gagal karena buffering media jarak jauh yang terlalu lama akan memicu pemeriksaan di muxer yang dimaksudkan untuk mengidentifikasi bahwa pipeline macet. Anda dapat mengganti perilaku {i>default<i} dengan menetapkan maxDelayBetweenMuxerSamplesMs di Transformer.Builder:

Kotlin

Transformer.Builder(context)
    .setMaxDelayBetweenMuxerSamplesMs(C.TIME_UNSET)
    .build()

Java

new Transformer.Builder(context)
    .setMaxDelayBetweenMuxerSamplesMs(C.TIME_UNSET)
    .build();

Meneruskan C.TIME_UNSET akan menghapus waktu tunggu sepenuhnya, tetapi jika aplikasi Anda berjalan di chipset tempat MediaCodec macet, Anda mungkin ingin menyetel instance waktu tunggu habis.

Apakah Transformator mendukung input 8k?

Transformer diimplementasikan dalam cara yang tidak bergantung pada format, sehingga tidak membatasi video 8K, tetapi kemampuan perangkat keras pada perangkat dapat berarti bahwa ekspor tidak berhasil. Misalnya, bahkan pada perangkat yang dapat merekam 8K, kemampuan untuk mendekode dan mengenkode ulang video 8K karena codec perangkat keras atau sumber daya RAM yang tersedia.

Bagaimana Transformer berhubungan dengan transcoding media yang kompatibel dengan platform?

Transcoding media yang kompatibel adalah fitur platform Android dari Android 12 (API level 31) yang mengonversi hingga satu menit ke dalam format yang didukung aplikasi. Jika Anda memilih untuk menggunakan fitur ini, membaca file media dalam format yang tidak kompatibel menyebabkannya di-transcoding sesuai permintaan, dan hasilnya disimpan dalam cache untuk dibaca nanti operasional bisnis.

Transformer juga mendukung format konversi, tetapi tersedia sebagai pustaka dukungan dan aplikasi memiliki kendali penuh atas analisis genomik, atau transcoding media.

Bagaimana cara mengurangi latensi ekspor atau meningkatkan throughput?

Transformer mengandalkan MediaCodec untuk decoding dengan akselerasi hardware dan encoding, dan OpenGL untuk memproses frame video. Berdasarkan pengukuran kita pada pada umumnya, faktor pembatas dalam throughput Transformer adalah hardware Throughput encoder MediaCodec untuk kasus penggunaan tanpa efek yang berat diproses. Hal ini kemungkinan akan memengaruhi implementasi lainnya dengan cara yang sama. Sebagai misalnya, fitur transcoding yang kompatibel dengan platform memiliki performa yang serupa dengan Transformator.

Pratinjau debug aplikasi demo mengurangi throughput secara signifikan, jadi nonaktifkan fitur pratinjau saat melakukan pengujian dengan build rilis aplikasi demo untuk mendapatkan kinerja yang realistis.