配置預處理效果

Android 10 版本包含以下使用VOICE_COMMUNICATION進行捕獲的要求。

  • 當使用VOICE_COMMUNICATION進行捕獲時,實現應在捕獲路徑上提供聲學迴聲消除器 (AEC)。
  • 如果提供 AEC,它必須是可通過 SDK API 的AcousticEchoCanceler發現和控制的。

Android平台在audiofx包中提供了支持設備的音效,可供開發者訪問。例如,Nexus 10 支持以下預處理效果:

與音頻源配對

預處理效果與請求預處理的用例模式配對。在 Android 應用程序開發中,用例稱為AudioSource實例;並且應用程序開發人員要求使用AudioSource抽象而不是實際的音頻硬件設備。 Android Audio Policy Manager 根據產品特定的規則將AudioSource實例映射到給定的捕獲路徑配置(包括設備、增益和預處理)。以下來源向開發人員公開:

  • 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

應用於每個AudioSource實例的默認預處理效果在/vendor/etc/audio_effects.xml文件中指定。要為每個AudioSource實例指定您自己的默認效果,請創建一個/vendor/etc/audio_effects.xml文件並指定要打開的預處理效果。例如,請參閱device/samsung/manta/audio_effects.xml中 Nexus 10 的實現。 AudioEffect實例在創建和銷毀時獲取和釋放會話,使效果(例如響度增強器)在整個會話中持續存在。

以下示例為 VoIP AudioSource和 Camcorder AudioSource實例啟用預處理。通過以這種方式聲明AudioSource配置,框架會自動請求使用來自 HAL 的那些效果。

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

源調優

除了語音識別 ( VOICE_RECOGNITION ) 之外, AudioSource調整對音頻增益或音頻處理沒有明確要求。語音識別的要求包括:

  • 100 Hz 至 4 kHz 的平坦頻率響應 (+/- 3 dB)
  • 近距離通話配置:90 dB SPL 讀取 2500 的 RMS(16 位樣本)
  • 相對於 90 dB SPL,從 -18 dB 到 +12 dB 線性跟踪電平
  • THD < 1%(100 至 4000 Hz 範圍內為 90 dB SPL)
  • 近超聲要求(有關測試,請參閱近超聲測試):
    • 支持 CDD 第 7.8.3 節中定義的SUPPORT_PROPERTY_MIC_NEAR_ULTRASOUND
    • 支持 44100 或 48000 採樣率中的一種或兩種,無需帶通或抗混疊濾波器。
  • 默認情況下禁用效果/預處理

針對不同來源調整不同效果的示例如下:

  • 噪音抑制器
    • CAMCORDER調整風噪聲抑制器
    • 針對VOICE_COMMUNICATION的固定噪聲抑制器進行了調整
  • 自動增益控制
    • 針對VOICE_COMMUNICATION和主電話麥克風進行了近距離通話調整
    • CAMCORDER調整遠距離通話

資源

有關詳細信息,請參閱以下資源: