我目前正在编写一个需要记录和实时处理音频数据的应用程序。为此,我正在使用 AudioRecord 类。这一切都很好,除了在我的主要测试设备(galaxy nexus)上录制音频的默认设置是从后置扬声器录制。我假设大多数手机的默认录音源是背面或底部麦克风,因为当您使用手机通话时,您的嘴巴靠近底部。
但是,我的应用程序要求我从手机正面的扬声器录制,所以我希望有人可以帮助我如何以编程方式更改 AudioRecord 输入源。我已经广泛搜索了这个问题的答案。
我考虑过的一些事情是:
AudioManager am = (AudioManager)getSystemService(Context.AUDIO_SERVICE); am.setSpeakerphoneOn(true);
AudioRecord ar = new AudioRecord(AudioSource.????, ..., ..., ..., ...);
我发现 API 并不太具体说明哪些 AudioSource 格式是哪些,所以我想知道是否有其他人在这个问题上苦苦挣扎并可以为我指明正确的方向。
提前致谢,