我目前正在编写一个需要录制和实时处理音频数据的应用程序。为此,我使用 AudioRecord 类。这一切都很好,除了我的主要测试设备 Galaxy Nexus 上录制音频的默认设置是从后置扬声器录制。我假设大多数手机的默认录音源是背面或底部麦克风,因为当您使用手机通话时,您的嘴位于底部附近。
但是,我的应用程序要求我从手机正面的扬声器进行录音,因此我希望有人可以帮助我如何以编程方式更改 AudioRecord 输入源。我已经广泛搜索了这个问题的答案。
我考虑过的一些事情是:
使用AudioManager类并打开免提电话,如:
AudioManager am = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
am.setSpeakerphoneOn(true);
Android目前不支持通话录音,所以我相信你不能将其更改为从耳机录音。然而,您实际上并不需要这样做,手机底部的麦克风应该能够以您需要的全部容量录制内容。要将 AudioRecord 设置为麦克风,只需执行以下操作:
AudioRecord ar = new AudioRecord(AudioSource.MIC, ..., ..., ..., ...);
这将为您提供最佳的录音质量。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)