Android 10 sürümünde, VOICE_COMMUNICATION ile çekim için aşağıdaki şartlar yer alır.
- Uygulamalar,
VOICE_COMMUNICATIONile kayıt yaparken kayıt yolunda akustik yankı giderici (AEC) sağlamalıdır. - AEC sağlanıyorsa SDK API'leri
AcousticEchoCanceleraracılığıyla bulunabilir ve kontrol edilebilir olmalıdır.
Android platformu, geliştiricilerin erişebileceği
audiofx paketinde desteklenen cihazlarda ses efektleri sunar.
Örneğin, Nexus 10 aşağıdaki ön işleme efektlerini destekler:
AudioSource örnekleriyle eşleme
Ön işleme efektleri, ön işlemenin istendiği kullanım alanı moduyla eşleştirilir. Android uygulama geliştirmede kullanım alanı, AudioSource örneği olarak adlandırılır ve uygulama geliştiriciler, gerçek ses donanımı cihazı yerine AudioSource soyutlamasını kullanmayı ister. Android Audio Policy Manager, ürüne özel kurallara göre bir AudioSource örneğini belirli bir kayıt yolu yapılandırmasıyla (cihaz, kazanç ve ön işleme dahil) eşler. Geliştiriciler aşağıdaki kaynakları kullanabilir:
android.media.MediaRecorder.AudioSource.CAMCORDERandroid.media.MediaRecorder.AudioSource.VOICE_COMMUNICATIONandroid.media.MediaRecorder.AudioSource.VOICE_CALLandroid.media.MediaRecorder.AudioSource.VOICE_DOWNLINKandroid.media.MediaRecorder.AudioSource.VOICE_UPLINKandroid.media.MediaRecorder.AudioSource.VOICE_RECOGNITIONandroid.media.MediaRecorder.AudioSource.MICandroid.media.MediaRecorder.AudioSource.DEFAULT
Her AudioSource örneği için uygulanan varsayılan ön işleme efektleri /vendor/etc/audio_effects.xml dosyasında belirtilir. Her AudioSource örneği için kendi varsayılan efektlerinizi belirtmek istiyorsanız /vendor/etc/audio_effects.xml dosyası oluşturun ve etkinleştirilecek ön işleme efektlerini belirtin. Örnek için device/samsung/manta/audio_effects.xml bölümündeki Nexus 10 uygulamasına bakın.
AudioEffect örnekleri, oluşturulup yok edildiğinde bir oturum edinir ve serbest bırakır. Bu sayede efektler (ör. Loudness Enhancer) oturum boyunca kalıcı olur.
Aşağıdaki örnekte, VoIP AudioSource ve kamera AudioSource örnekleri için ön işleme etkinleştirilir. AudioSource yapılandırmasını bu şekilde bildirerek çerçeve, HAL'den bu efektlerin kullanılmasını otomatik olarak ister.
<preprocess> <stream type="voice_communication"> <apply effect="aec"/> <apply effect="ns"/> </stream> <stream type="camcorder"> <apply effect="agc"/> </stream> </preprocess>
Kaynak ince ayarları
AudioSource ayarlama, ses tanıma (VOICE_RECOGNITION) dışında ses kazancı veya ses işleme ile ilgili açık şartlar içermez. Ses tanıma ile ilgili şartlar şunlardır:
- 100 Hz - 4 kHz arasında düz frekans yanıtı (+/- 3 dB)
- Yakın konuşma yapılandırması: 90 dB SPL, 2.500 RMS (16 bit örnek) olarak okunur.
- Seviye, 90 dB SPL'ye göre -18 dB ile +12 dB arasında doğrusal olarak değişir.
- THD < %1 (100-4.000 Hz aralığında 90 dB SPL)
- Ultrasona yakınlık şartları (test için Ultrasona Yakınlık Testleri bölümüne bakın):
- CDD'nin 7.8.3 bölümünde tanımlandığı şekilde
SUPPORT_PROPERTY_MIC_NEAR_ULTRASOUNDiçin destek. - Bant geçiren veya anti-aliasing filtreleri olmadan 44.100 ya da 48.000 örnekleme hızlarından birini veya her ikisini desteklemelidir.
- CDD'nin 7.8.3 bölümünde tanımlandığı şekilde
- Efektler/ön işleme varsayılan olarak devre dışıdır
Farklı kaynaklar için farklı efektlerde ince ayarlar yapma örnekleri:
- Gürültü bastırıcı
CAMCORDERiçin rüzgar gürültüsü bastırıcıya göre ayarlandıVOICE_COMMUNICATIONiçin sabit gürültü bastırıcı ayarlandı
- Otomatik Kazanç Denetimi
VOICE_COMMUNICATIONve ana telefon mikrofonu için yakın konuşmaya göre ayarlanır.CAMCORDERiçin uzaktan konuşmaya ayarlandı
Kaynaklar
Daha fazla bilgi için aşağıdaki kaynaklara bakın:
- audiofx package için Android dokümanları
- Android dokümanları - Gürültü bastırma ses efekti
/device/google/crosshatch/audio_effects.xmlPixel 3 dosyası