Uygulama geliştiricileri için ses gecikmesi

Mümkün olan en düşük ses gecikmesi için Obua'yı kullanmanızı öneririz.

Obua

Oboe yerel ses kullanır ve Android 8.1+ için AAudio ve Android'in eski sürümleri için OpenSL ES üzerine kurulmuştur. Bir cihaz için mümkün olan en düşük gecikmeyi elde etmek amacıyla setPerformanceMode(oboe::PerformanceMode::LowLatency) ve setSharingMode(oboe::SharingMode::Exclusive) ayarlayın. Obua hakkında daha fazla bilgi için Başlangıç ​​kılavuzuna , README.md ve Tam kılavuza bakın. Obua'yı kullanan örnek bir uygulama için Soundboard uygulamasına bakın.

Not: Gecikmeye duyarlı uygulamalar için Java'da çıkış ses akışları oluşturmak amacıyla AudioTrack'i kullanıyorsanız PERFORMANCE_MODE_LOW_LATENCY modunu kullanın.

Uygulama kontrol listesi

Android yerel sesini kullanmak için:

  1. Android NDK'yı indirip yükleyin.
  2. Obua için Başlangıç ​​kılavuzunu izleyin.
  3. Obua oluşturucuda setPerformanceMode(oboe::PerformanceMode::LowLatency) ve setSharingMode(oboe::SharingMode::Exclusive) çağrılarını yapın.
  4. android.media.AudioManager.getProperty(java.lang.String) tarafından döndürülen önerilen yerel arabellek boyutunu ve örnek hızını kullanın.

    Not: Giriş için aynı arabellek boyutu ve örnekleme hızı da kullanılmalıdır.

  5. Ani CPU kullanımı veya sınırsız engelleme olmadan geri arama işleyicilerinizi kısa tutun. Önceliğin tersine çevrilmesinden kaçının.
  6. Giriş ve çıkış geri çağırma işleyicileri arasında ve geri arama işleyicileri ile uygulamanızın geri kalanı arasında iletişim kurmak için engellemeyen algoritmalar kullanmayı düşünün.

Diğer kaynaklar

kaynak.android.com

Source.android.com sitesi öncelikle Android cihazları üreten OEM'ler ve bu OEM'lere bileşen sağlayan SoC satıcıları için tasarlanmıştır.

Ancak bu sitede gecikmeyle ilgili çok sayıda yararlı bilgi mevcut olduğundan, bunları incelemek isteyebilirsiniz. Ses gecikmesi bölümündeki makalelere bakın.

android-ndk

Android yerel sesinin nasıl kullanılacağı hakkında sorularınız varsa android-ndk tartışma grubuna sorabilirsiniz.

Obua ile ilgili hataları bildirin

Obua'yı kullanırken sorun yaşıyorsanız, bir hata bildirebilirsiniz .

Videolar

Obua'ya Başlarken
Düşük Gecikmeli Ses - Çünkü Kulaklarınız Buna Değer
Android Geliştirici Zirvesi 2018.
Android'de Kazanmak - Bir Android ses uygulaması nasıl optimize edilir
Android Geliştirici Yarışması 2018.
Android'de yüksek performanslı ses (Google I/O 2013)
Videonun tamamı gecikmeyle ilgili.
Android'de harika multimedya deneyimleri oluşturma (Google I/O 2014)
İlk 14 dakika genel olarak ses ve özel olarak giriş gecikmesi ile ilgilidir.
Ses gecikmesi: arabellek boyutları (100 Günlük Google Geliştirme)
Ses gecikmesi, arabellek boyutları ve görev zamanlaması arasındaki ilişkiyi açıklar.