Sorun giderme


Demo uygulamadaki yerel dosyalara neden erişemiyorum?

Android 11'den itibaren kapsamlı depolama alanı yaptırımı (API düzeyi 30), doğrudan dosya sistemi erişimini engelliyor. Bu süre boyunca manuel test için harici dosya yönetimi komut dosyasını ekleyerek yerel dosyalara erişmek, Storage iznini eklemeniz gerekir.

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

Ardından adb aracılığıyla izin verin:

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

Dışa aktarma işlemi neden belirli bir cihazda başarısız oluyor?

Lütfen Media3 sorunuyla ilgili bir sorun bildirin takip edin. 'nı kullanın. Cihaza özgü sorunlar için geçici çözümler zaman içinde uyumluluğu artırmak için uygulama kitaplığı.

Transformer, uzak medyanın dönüştürülmesini (veya kaydedilmesini) destekliyor mu?

Dönüştürücü, medya dosyası kapsayıcıları da dahil olmak üzere uzaktan progresif akışları destekler. ses duyabilirsiniz.

Çok zayıf ağ koşullarında, arabelleğe alma işlemi nedeniyle dışa aktarma başarısız olabilir. çok uzun tetikleyiciler için uzak medya denetimleri ardışık düzenin takılıp kalamayacağını belirler. Şu varsayılan davranışı kullanarak varsayılan davranışı geçersiz kılabilirsiniz: Transformer.Builder üzerindeki maxDelayBetweenMuxerSamplesMs ayarı:

Kotlin

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

Java

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

C.TIME_UNSET girişinden geçerseniz zaman aşımını tamamen ortadan kaldırır ancak uygulamanız MediaCodec öğesinin sıkışabileceği yonga setleri için değeri sıfır olmayan daha büyük bir değer ayarlamak isteyebilirsiniz. zaman aşımına uğrar.

Transformer 8k girişi destekler mi?

Dönüştürücü, biçimden bağımsız bir şekilde uygulanır. Böylece videolar da işliyor, ancak cihazdaki donanım özellikleri şu anlama gelebilir: işlem başarısız olur. Örneğin, 8K çözünürlüğe sahip cihazlarda bile 8K'lık bir videonun kodunu çözmek ve yeniden kodlamak mümkün olmayabilir. mevcut donanım codec'i veya RAM kaynakları.

Transformer'ın platformla uyumlu medya kod dönüştürmesi ile ilişkisi nedir?

Uyumlu medya kodu dönüştürme Android 12'deki (API düzeyi 31) bir Android platform özelliğidir ve en fazla bir dakika uzunluğunda medyalar oluşturabilirsiniz. Şu durumda: bu özelliği kullanmayı seçerek uyumlu olmayan biçimde bir medya dosyası okuma kod, istek üzerine dönüştürülmesine ve sonuç, daha sonra okunmak üzere önbelleğe alınmasına neden olur anlamına gelir.

Dönüştürücü, biçimi de destekler. dönüşüm gerçekleştirir, ancak destek kitaplığı olarak kullanılabilir ve uygulamanın içerik üzerinde tam kontrole dönüştürme işlemidir.

Dışa aktarma gecikmesini nasıl azaltabilirim veya işleme hızını nasıl artırabilirim?

Dönüştürücü, donanım hızlandırmalı kod çözme için MediaCodec kullanır ve ve video karelerini işlemek için OpenGL içerir. Şu temel öğelerde yaptığımız ölçümlere göre: Transformer'ın işleme hızındaki sınırlayıcı faktör donanımdır. Büyük efektler içermeyen kullanım alanları için MediaCodec kodlayıcı işleme hızı bahsedeceğim. Bu durumun diğer uygulamaları da aynı şekilde etkilemesi muhtemeldir. Örneğin, platformla uyumlu kod dönüştürme özelliğinin performansı, Transformatör.

Demo uygulamasının hata ayıklama önizlemesi, işleme hızını önemli ölçüde azaltır. Bu nedenle, almak için demo uygulamanın sürüm derlemesiyle test ederken ortaya çıkarmanıza yardımcı olabilir.