在Android中通过耳机插孔输入音频?

我正试图通过耳机插孔为我的最后一年项目提供音频输入.如果有人可以共享有关如何捕获数据的代码,那将是一个很大的帮助.我一直在努力,但因为我对 android很新,我在MediaRecorder.AudioSource中找不到任何耳机插孔的API …只有这些来源可用: http://developer.android.com/reference/android/media/MediaRecorder.AudioSource.html

解决方法

如果您选择例如来自MediaRecorder.AudioSource的DEFAULT或MIC作为输入,然后连接到手机的TRRS插头将自动用作输入而不是内置麦克风.

但你有两个记住三件事:

1)频道数量

TRRS插头有两条线用于耳机的左右声道,但只有一条线用于外部麦克风(参见例如this description of the plug).所以你只能做单声道录音(目前唯一的智能手机例外:索尼Z2有一个新的TRRRS插头).您可以自己构建适配器(参见例如the pictures here).

2)水平

你无法连接例如一个CD播放器直接输入.你需要使用例如电阻分压器,以降低输出电平,以避免过载.

3)信号处理

通常,固件中存在依赖于智能手机制造商的花式信号处理,如自动增益控制(AGC)和/或均衡,噪声抑制,回声消除.您无法将其关闭,因此您无法获得输入信号的完美副本.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...