| <html devsite><head> |
| <title>配置预处理效果</title> |
| <meta name="project_path" value="/_project.yaml"/> |
| <meta name="book_path" value="/_book.yaml"/> |
| </head> |
| <body> |
| <!-- |
| Copyright 2017 The Android Open Source Project |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <p>Android 平台向 <a href="http://developer.android.com/reference/android/media/audiofx/package-summary.html">audiofx</a> 软件包(可供开发者访问)中支持的设备提供音频效果。例如,Nexus 10 支持以下预处理效果:</p> |
| |
| <ul> |
| <li> |
| <a href="http://developer.android.com/reference/android/media/audiofx/AcousticEchoCanceler.html">回声消除</a></li> |
| <li> |
| <a href="http://developer.android.com/reference/android/media/audiofx/AutomaticGainControl.html">自动增益控制</a></li> |
| <li> |
| <a href="http://developer.android.com/reference/android/media/audiofx/NoiseSuppressor.html">噪音抑制</a></li> |
| </ul> |
| |
| <h2 id="audiosources">与 AudioSources 配对</h2> |
| <p>预处理效果与在其下请求预处理的使用情形模式配对。在 Android 应用的开发过程中,使用情形称为 <code>AudioSource</code>;且应用开发者会要求使用 <code>AudioSource</code> 的抽象,而不是实际的音频硬件设备。Android 音频政策管理器根据特定于产品的规则将 <code>AudioSource</code> 映射到指定的捕获路径配置(设备、增益、预处理等)。我们向开发者提供了以下来源:</p> |
| |
| <ul> |
| <li><code>android.media.MediaRecorder.AudioSource.CAMCORDER</code></li> |
| <li><code>android.media.MediaRecorder.AudioSource.VOICE_COMMUNICATION</code></li> |
| <li><code>android.media.MediaRecorder.AudioSource.VOICE_CALL</code></li> |
| <li><code>android.media.MediaRecorder.AudioSource.VOICE_DOWNLINK</code></li> |
| <li><code>android.media.MediaRecorder.AudioSource.VOICE_UPLINK</code></li> |
| <li><code>android.media.MediaRecorder.AudioSource.VOICE_RECOGNITION</code></li> |
| <li><code>android.media.MediaRecorder.AudioSource.MIC</code></li> |
| <li><code>android.media.MediaRecorder.AudioSource.DEFAULT</code></li> |
| </ul> |
| |
| <p>针对各个 <code>AudioSource</code> 请求的默认预处理效果在 <code>/system/etc/audio_effects.conf</code> 文件中指定。要为各个 <code>AudioSource</code> 指定您自己的默认效果,请创建一个 <code>/system/vendor/etc/audio_effects.conf</code> 文件,并指定要开启的预处理效果。有关示例,请参阅 <code>device/samsung/manta/audio_effects.conf</code> 中的 Nexus 10 实现。AudioEffect 实例在创建和销毁时获取和释放会话,因此效果(如响度增强器)能够在整个会话期间持续存在。</p> |
| |
| <p class="warning"><strong>警告</strong>:对于 <code>VOICE_RECOGNITION</code> 使用情形,请勿启用噪音抑制预处理效果。从此音频来源录制时,该效果应默认处于停用状态,您不得在自己的 audio_effects.conf 文件中启用它。无论该效果处于默认启用状态的原因在于配置文件,还是音频 HAL 实现的默认行为,都将导致设备无法满足<a href="/compatibility/index.html">兼容性要求</a>。</p> |
| |
| <p>以下示例为 VoIP <code>AudioSource</code> 和摄像机 <code>AudioSource</code> 启用了预处理。通过以这种方式声明 <code>AudioSource</code> 配置,框架会自动向音频 HAL 请求使用这些效果。</p> |
| |
| <pre class="devsite-click-to-copy"> |
| pre_processing { |
| voice_communication { |
| aec {} |
| ns {} |
| } |
| camcorder { |
| agc {} |
| } |
| } |
| </pre> |
| |
| <h2 id="tuning">来源调谐</h2> |
| |
| <p><code>AudioSource</code> 调谐对音频增益或音频处理没有明确的要求,但语音识别 (<code>VOICE_RECOGNITION</code>) 除外。语音识别的要求包括:</p> |
| |
| <ul> |
| <li>100Hz 至 4kHz 范围内的平坦频率响应 (+/- 3dB)</li> |
| <li>近距离通话配置:90dB SPL 读取值为 2500 的 RMS(16 位样本)</li> |
| <li>在 -18dB 至 +12dB 范围内相对于 90dB SPL 的呈线性的电平轨道</li> |
| <li>THD < 1%(100Hz 至 4000Hz 范围内的 90dB SPL)</li> |
| <li>近超声要求(有关测试,请参阅<a href="/compatibility/cts/near-ultrasound.html">近超声测试</a>):<ul> |
| <li>支持 CDD 中第 7.8.3 节中定义的 SUPPORT_PROPERTY_MIC_NEAR_ULTRASOUND。</li> |
| <li>支持 44100 或 48000 采样率中的一个,或者两者都支持(无带通或抗混叠滤波器的情况下)。</li> |
| </ul></li> |
| <li>效果/预处理必须默认处于停用状态。</li> |
| </ul> |
| |
| <p>关于调谐不同来源的不同效果,示例如下:</p> |
| |
| <ul> |
| <li>噪音抑制器<ul> |
| <li>调谐 <code>CAMCORDER</code> 的风噪抑制器</li> |
| <li>调谐 <code>VOICE_COMMUNICATION</code> 的静态噪音抑制器</li> |
| </ul> |
| </li> |
| <li>自动增益控制<ul> |
| <li>调谐 <code>VOICE_COMMUNICATION</code> 和手机主麦克风的近距离通话</li> |
| <li>调谐 <code>CAMCORDER</code> 的远距离通话</li> |
| </ul> |
| </li> |
| </ul> |
| |
| <h2 id="resources">资源</h2> |
| |
| <p>有关详情,请参阅以下资源:</p> |
| |
| <ul> |
| <li><a href="http://developer.android.com/reference/android/media/audiofx/package-summary.html">audiofx 软件包</a>的相关 Android 文档</li> |
| |
| <li><a href="http://developer.android.com/reference/android/media/audiofx/NoiseSuppressor.html">噪音抑制音频效果</a>的相关 Android 文档</li> |
| |
| <li>Nexus 10 的 <code>device/samsung/manta/audio_effects.conf</code> 文件</li> |
| </ul> |
| |
| </body></html> |