В релиз Android 10 включены следующие требования для захвата речи с помощью VOICE_COMMUNICATION .
- В реализациях следует предусмотреть акустический эхоподавляющий модуль (AEC) на пути захвата при использовании параметра
VOICE_COMMUNICATION. - Если используется система подавления эха (AEC), она должна быть обнаруживаема и управляема через компонент
AcousticEchoCancelerв API SDK.
Платформа Android предоставляет звуковые эффекты для поддерживаемых устройств в пакете audiofx , который доступен разработчикам. Например, Nexus 10 поддерживает следующие эффекты предварительной обработки:
Сопряжение с экземплярами AudioSource
Эффекты предварительной обработки связаны с режимом использования, в котором запрашивается предварительная обработка. В разработке приложений для Android сценарий использования называется экземпляром AudioSource ; и разработчики приложений запрашивают использование абстракции AudioSource вместо фактического аудиоустройства. Менеджер политик Android Audio сопоставляет экземпляр 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 и укажите эффекты предварительной обработки, которые необходимо включить. Пример можно увидеть в реализации для Nexus 10 в device/samsung/manta/audio_effects.xml . Экземпляры AudioEffect получают и освобождают сессию при создании и уничтожении, что позволяет эффектам (таким как Loudness Enhancer) сохраняться на протяжении всей сессии.
В следующем примере включена предварительная обработка для экземпляров 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>
Настройка источника
В настройках AudioSource нет явных требований к усилению звука или его обработке, за исключением распознавания голоса ( VOICE_RECOGNITION ). Требования к распознаванию голоса включают:
- Плоская частотная характеристика (+/- 3 дБ) от 100 Гц до 4 кГц.
- Конфигурация для ближнего действия: уровень звукового давления 90 дБ, среднеквадратичное значение 2500 (16-битные отсчеты).
- Уровень изменяется линейно от -18 дБ до +12 дБ относительно 90 дБ SPL.
- Коэффициент нелинейных искажений (THD) < 1% (90 дБ SPL в диапазоне от 100 до 4000 Гц)
- Требования к ультразвуковому исследованию в ближнем диапазоне (информацию о проведении исследования см. в разделе «Ультразвуковые исследования в ближнем диапазоне »):
- Поддержка параметра
SUPPORT_PROPERTY_MIC_NEAR_ULTRASOUND, как определено в разделе 7.8.3 CDD. - Поддержка одной или обеих частот дискретизации: 44100 или 48000 без полосовых или сглаживающих фильтров.
- Поддержка параметра
- Эффекты/предварительная обработка отключены по умолчанию.
Примерами настройки различных эффектов для разных источников являются:
- Шумогаситель
- Настроен на подавление шума ветра для
CAMCORDER - Настроен для стационарного шумоподавления в целях
VOICE_COMMUNICATION
- Настроен на подавление шума ветра для
- Автоматическая регулировка усиления
- Настроено для разговоров на близком расстоянии для
VOICE_COMMUNICATIONи основного микрофона телефона. - Настроено для дальней связи с
CAMCORDER
- Настроено для разговоров на близком расстоянии для
Ресурсы
Для получения более подробной информации обратитесь к следующим ресурсам:
- Документация Android для пакета audiofx
- Документация Android по эффекту подавления шума
- файл
/device/google/crosshatch/audio_effects.xmlдля Pixel 3