設定預先處理效果

Android 10 版本包含以下使用 VOICE_COMMUNICATION 擷取內容的規定。

  • 在使用 VOICE_COMMUNICATION 擷取時,實作項目應在擷取路徑上提供聲學回音消除器 (AEC)。
  • 如果提供 AEC,則必須透過 SDK API 的 AcousticEchoCanceler 進行探索和控制。

Android 平台會在支援的裝置上提供音效效果,開發人員可透過 audiofx 套件存取這些效果。舉例來說,Nexus 10 支援下列預先處理效果:

與 AudioSource 例項配對

預處理效果會與要求預處理的用途模式配對。在 Android 應用程式開發中,用途稱為 AudioSource 例項;應用程式開發人員要求使用 AudioSource 抽象化,而非實際的音訊硬體裝置。Android 音訊政策管理員會根據產品專屬規則,將 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

/vendor/etc/audio_effects.xml 檔案會指定為每個 AudioSource 例項套用的預設前置處理效果。如要為每個 AudioSource 例項指定專屬的預設效果,請建立 /vendor/etc/audio_effects.xml 檔案,並指定要啟用的預先處理效果。如需範例,請參閱 device/samsung/manta/audio_effects.xml 中的 Nexus 10 實作項目。AudioEffect 例項在建立和銷毀時會取得及釋放工作階段,讓音量增強器等效果在整個工作階段中持續存在。

以下範例會為 VoIP AudioSource 和攝影機 AudioSource 例項啟用預先處理功能。透過這種方式宣告 AudioSource 設定,架構會自動要求使用 HAL 中的這些效果。

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

來源調整

AudioSource 調校作業對音訊增益或音訊處理沒有明確規定,但語音辨識 (VOICE_RECOGNITION) 除外。語音辨識的規定包括:

  • 100 Hz 至 4 kHz 的平坦頻率響應 (+/- 3 dB)
  • 近講設定:90 dB SPL 讀取的 RMS 為 2500 (16 位元樣本)
  • 相對於 90 dB SPL,音量會以線性方式從 -18 dB 到 +12 dB 變化
  • THD < 1% (90 dB SPL in 100 to 4000 Hz range)
  • 近場超音波測試條件 (如要進行測試,請參閱「近場超音波測試」):
    • 支援 CDD 第 7.8.3 節所定義的 SUPPORT_PROPERTY_MIC_NEAR_ULTRASOUND
    • 支援 44100 或 48000 取樣率 (或兩者皆支援),且不含頻帶或反鋸齒濾鏡。
  • 預設為停用效果/預先處理

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

  • 雜訊抑制器
    • 針對 CAMCORDER 的風噪抑制器進行調整
    • 針對 VOICE_COMMUNICATION 的靜止噪音抑制器進行調整
  • 自動增益控制
    • 針對 VOICE_COMMUNICATION 和主要手機麥克風的近講模式進行調整
    • 針對 CAMCORDER 調整遠距通話

資源

詳情請參閱下列資源: