我正在做一个项目,我必须使用 Android 开发板,就像下面一样,通过 MIC 录制音频,特别是语音。
对于来自 MIC 的音频,我希望它被背景噪音过滤掉。我知道我可以应用一些噪声抑制算法来过滤它,但我想使用内置功能VOICE_RECOGNITION作为音频源,这来过滤背景噪声。
AudioRecord audioRecord = new AudioRecord(AudioSource.MIC, SAMPLE_RATE, CHANNEL_CONFIG, AUDIO_FORMAT, minBufSize);
AudioRecord audioRecord = new AudioRecord(AudioSource.VOICE_RECOGNITION, SAMPLE_RATE, CHANNEL_CONFIG, AUDIO_FORMAT, minBufSize);
这,VOICE_RECOGNITION说:
为语音识别调整的麦克风音频源(如果可用),否则行为类似于 DEFAULT。
它说“如果可用”,这是有道理的,此功能并非在所有设备上都可用,也不是 Android 操作系统的一部分,因为如果它是操作系统的一部分,它应该在所有设备上都可用。这意味着,它与硬件有关,所有制造商可能都没有提供此功能。
我的问题:
- 在购买之前,我如何知道此功能是否可用?
- 正如我所假设的那样,这个功能真的与硬件有关吗?
- 如果此功能在我的相应设备中不可用,我该如何启用它?
注意:上面定义的所有 Android 开发板都可以运行 Android JellyBean 4.2.2。
注意:我有三星 Galaxy S2,其中提供了此功能。经测试,工作正常。
任何额外的细节将不胜感激。谢谢