Skonfiguruj efekty wstępnego przetwarzania

Android 10 zawiera te funkcje: wymagania dotyczące przechwytywania za pomocą VOICE_COMMUNICATION.

  • Implementacje powinny zapewniać akustyczną redukcję echa (AEC) na ścieżce przechwytywania, gdy nagrywanie za pomocą VOICE_COMMUNICATION.
  • Jeśli udostępniasz AEC, musi on być wykrywalny i kontrolowany za pomocą interfejsu API pakietu SDK AcousticEchoCanceler

Platforma Android udostępnia efekty dźwiękowe na obsługiwanych urządzeniach audiofx, z którego mogą korzystać deweloperzy. Nexus 10 obsługuje na przykład te efekty wstępnego przetwarzania:

Parowanie z instancjami AudioSource

Efekty wstępnego przetwarzania są łączone z trybem przypadku użycia, w którym wymagane jest wstępne przetwarzanie. W przypadku tworzenia aplikacji na Androida odnosi się do jako instancji AudioSource; a deweloperzy aplikacji proszą o korzystanie z Abstrakcja AudioSource zamiast rzeczywistego sprzętu audio urządzenia. Menedżer zasad dotyczących dźwięku w Androidzie mapuje instancję AudioSource na dla danej konfiguracji ścieżki przechwytywania (obejmujące urządzenie, wzmocnienie i wstępne przetwarzanie) zgodnie do reguł poszczególnych produktów. Deweloperzy mają dostęp do tych źródeł:

  • 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

Domyślne efekty wstępnego przetwarzania stosowane do każdej instancji AudioSource są określone w pliku /vendor/etc/audio_effects.xml. Do możesz określić własne efekty domyślne dla każdej instancji AudioSource, utworzyć /vendor/etc/audio_effects.xml i określ z wstępnym przetwarzaniem efektów, aby je włączyć. Zobacz przykładową implementację Nexus 10 z ofertą device/samsung/manta/audio_effects.xml. AudioEffect instancja uzyskuje i zwalnia sesję po utworzeniu i zniszczeniu, Dzięki temu efekty (takie jak Wzmacniacz głośności) utrzymują się przez cały czas .

Przykład poniżej włącza wstępne przetwarzanie dla VoIP wystąpienia AudioSource oraz kamery AudioSource. Deklarując konfigurację AudioSource w ten sposób, automatycznie prosi o użycie tych efektów z listy HAL.

<preprocess>
        <stream type="voice_communication">
            <apply effect="aec"/>
            <apply effect="ns"/>
        </stream>
        <stream type="camcorder">
            <apply effect="agc"/>
        </stream>
    </preprocess>

Dostrajanie źródła

Dostrajanie urządzenia AudioSource nie ma wyraźnych wymagań dotyczących dźwięku wzmocnienie lub przetwarzanie dźwięku, z wyjątkiem rozpoznawania głosu (VOICE_RECOGNITION). Wymagania dotyczące rozpoznawania głosu:

  • Stała częstotliwość (+/– 3 dB) od 100 Hz do 4 kHz
  • Konfiguracja Zbliżeniowa rozmowy: 90 dB SPL oznacza odczyt RMS 2500 (próbki 16-bitowe)
  • Poziom śledzi liniowo od -18 dB do +12 dB w stosunku do wartości SPL wynoszącej 90 dB
  • THD < 1% (90 dB SPL w zakresie 100–4000 Hz)
  • Wymogi dotyczące wykonywania badań w pobliżu USG (dotyczące badań, zobacz Ultradźwięk niewielki Testy):
    • Obsługa usługi SUPPORT_PROPERTY_MIC_NEAR_ULTRASOUND zgodnie z definicją w artykule 7.8.3 obrony CDD.
    • obsługa jednej lub obu częstotliwości próbkowania 44 100 lub 48 000 bez przepustowości i i antyaliasing.
  • Efekty/wstępne przetwarzanie wyłączone domyślnie

Przykłady dostrajania różnych efektów dla różnych źródeł:

  • Tłumik szumów
    • Dostrojono pod kątem tłumienia szumu wiatru na urządzeniu CAMCORDER
    • Dostrojono pod kątem nieruchomego tłumienia szumów na urządzeniu VOICE_COMMUNICATION
  • Automatyczna kontrola wzmocnienia
    • Dostosowane do bliskiej rozmowy na telefonie VOICE_COMMUNICATION i głównym mikrofon
    • Dostrojone do dalekiej rozmowy przez CAMCORDER

Materiały

Więcej informacji znajdziesz w tych materiałach: