Rilis Android 10 mencakup persyaratan berikut untuk pengambilan gambar dengan VOICE_COMMUNICATION
.
- Penerapannya harus menyediakan peredam gema akustik (AEC) pada jalur pengambilan saat mengambil gambar dengan
VOICE_COMMUNICATION
. - Jika menyediakan AEC, AEC harus dapat ditemukan dan dikontrol melalui
AcousticEchoCanceler
API SDK.
Platform Android menyediakan efek audio pada perangkat yang didukung dalam paket audiofx
, yang tersedia untuk diakses oleh pengembang. Misalnya, Nexus 10 mendukung efek prapemrosesan berikut:
Sandingkan dengan instans AudioSource
Efek pra-pemrosesan dipasangkan dengan mode kasus penggunaan di mana pra-pemrosesan diminta. Dalam pengembangan aplikasi Android, kasus penggunaan disebut sebagai instance AudioSource
; dan pengembang aplikasi meminta untuk menggunakan abstraksi AudioSource
alih-alih perangkat keras audio yang sebenarnya. Android Audio Policy Manager memetakan instance AudioSource
ke konfigurasi jalur pengambilan tertentu (termasuk perangkat, penguatan, dan pra-pemrosesan) sesuai dengan aturan khusus produk. Sumber-sumber berikut diekspos ke pengembang:
-
android.media.MediaRecorder.AudioSource.CAMCORDER
-
android.media.MediaRecorder.AudioSource.VOICE_COMMUNICATION
-
android.media.MediaRecorder.AudioSource.VOICE_CALL
-
android.media.MediaRecorder.AudioSource.VOICE_DOWNLINK
-
android.media.MediaRecorder.AudioSource.VOICE_UPLINK
-
android.media.MediaRecorder.AudioSource.VOICE_RECOGNITION
-
android.media.MediaRecorder.AudioSource.MIC
-
android.media.MediaRecorder.AudioSource.DEFAULT
Efek pra-pemrosesan default yang diterapkan untuk setiap instance AudioSource
ditentukan dalam file /vendor/etc/audio_effects.xml
. Untuk menentukan efek default Anda sendiri untuk setiap instans AudioSource
, buat file /vendor/etc/audio_effects.xml
dan tentukan efek prapemrosesan yang akan diaktifkan. Sebagai contoh, lihat penerapan Nexus 10 di device/samsung/manta/audio_effects.xml
. Instans AudioEffect
memperoleh dan melepaskan sesi saat dibuat dan dimusnahkan, sehingga memungkinkan efek (seperti Loudness Enhancer) bertahan sepanjang sesi.
Contoh berikut memungkinkan prapemrosesan untuk instans VoIP AudioSource
dan Camcorder AudioSource
. Dengan mendeklarasikan konfigurasi AudioSource
dengan cara ini, kerangka kerja secara otomatis meminta penggunaan efek tersebut dari HAL.
<preprocess> <stream type="voice_communication"> <apply effect="aec"/> <apply effect="ns"/> </stream> <stream type="camcorder"> <apply effect="agc"/> </stream> </preprocess>
Penyetelan sumber
Penyetelan AudioSource
tidak memiliki persyaratan eksplisit pada perolehan audio atau pemrosesan audio, kecuali pengenalan suara ( VOICE_RECOGNITION
). Persyaratan untuk pengenalan suara meliputi:
- Respon frekuensi datar (+/- 3 dB) dari 100 Hz hingga 4 kHz
- Konfigurasi close-talk: 90 dB SPL membaca RMS 2500 (sampel 16 bit)
- Level track secara linear dari -18 dB hingga +12 dB relatif terhadap 90 dB SPL
- THD < 1% (90 dB SPL dalam rentang 100 hingga 4000 Hz)
- Persyaratan USG jarak dekat (untuk pengujian, lihat Tes USG Dekat ):
- Dukungan untuk
SUPPORT_PROPERTY_MIC_NEAR_ULTRASOUND
sebagaimana didefinisikan dalam bagian 7.8.3 CDD. - Dukungan untuk salah satu atau kedua laju pengambilan sampel 44100 atau 48000 tanpa filter band-pass atau antialiasing.
- Dukungan untuk
- Efek/pemrosesan awal dinonaktifkan secara default
Contoh penyetelan efek berbeda untuk sumber berbeda adalah:
- Penekan Kebisingan
- Disetel untuk peredam kebisingan angin untuk
CAMCORDER
- Disetel untuk peredam kebisingan stasioner untuk
VOICE_COMMUNICATION
- Disetel untuk peredam kebisingan angin untuk
- Kontrol Penguatan Otomatis
- Disetel untuk percakapan jarak dekat untuk
VOICE_COMMUNICATION
dan mikrofon telepon utama - Disetel untuk pembicaraan jauh tentang
CAMCORDER
- Disetel untuk percakapan jarak dekat untuk
Sumber daya
Untuk informasi lebih lanjut, lihat sumber daya berikut:
- Dokumentasi Android untuk paket audiofx
- Dokumentasi Android untuk efek audio Peredam Kebisingan
-
/device/google/crosshatch/audio_effects.xml
file untuk Pixel 3