最近项目中解决了噪音问题和杂音问题后,用户向我们反馈(同时我们也发现)另外一个问题。
部分直播间左右耳麦音量大小不一样,也就是左右声道音量大小不一样。
找了几款反馈过来的手机,分别是荣耀3X、盖世3和联想A3000。
我猜想应该和降噪MIC有关。

下面以荣耀3X为测试机型对比小米2,分析一下录音的情况。
测试使用RecForge Pro和自己写的一个录音demo。
录音参数设置为:
采样率 32000
声道 Stereo
音频数据 16bits
pcm格式数据。

一、前半段面对前置MIC录音,后半段面对后置降噪MIC录音。
可以看到,面对前置MIC录音的时候,左声道是前置MIC正面采集的音频,所以振幅较大。
右声道是后置MIC采集的音频,相对左声道振幅较小。得到结果如下:

二、在通话设置里面,将降噪MIC关闭,结果还是一样。

三、用小米2,同样的方法测试通话MIC和降噪MIC。关闭和开启双MIC降噪,左右声道几乎都一样。

结论:荣耀3X采用了双MIC降噪,在嘈杂的环境通话,可以通过后置降噪MIC,录取噪声,反相抵消通话MIC的噪声,以达到通话质量较好的目的。
在单声道的情况下,确实在一定程度上改善了通话质量。
然而在普通录音中,设置双声道的情况下,使用前置MIC采集到左声道,后置MIC采集到右声道的做法,
在近距离录音的情况下,左右声道反差很大,让人听起来不舒服。
同样采用双MIC降噪的小米2,录制双声道的音频却没有这样的问题。估计是录音时关掉了后置MIC。

双MIC安卓手机录音问题的更多相关文章

  1. 部分安卓手机微信浏览器中使用XMLHttpRequest 2上传图片显示字节数为0的解决办法

    前端JS中使用XMLHttpRequest 2上传图片到服务器,PC端和大部分手机上都正常,但在少部分安卓手机上上传失败,服务器上查看图片,显示字节数为0.下面是上传图片的核心代码: HTML < ...

  2. 安卓手机APP压力monkey测试

    一.Monkey概述 Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行 ...

  3. PowerShell脚本自动设置安卓手机wifi代理

    在实际测试工作中,经常要将安卓手机通过wifi代理的形式连接到本机的fiddler或charles服务器代理进行抓包测试.最近一直在想,有没有什么方法可以自动设置安卓手机的wifi代理,曾经想通过修改 ...

  4. HTML 判断手机的类型(苹果手机安卓手机)

    function isJudege_PlatForm() { var version = navigator.appVersion; var platName = navigator.userAgen ...

  5. 微信小程序 wx.uploadFile在安卓手机上面the same task is working问题解决

    微信小程序上传图片的时候,如果是多图片上传,一般都是直接用一个循环进行wx.uploadFile 这个在电脑上面测试与苹果手机上面都不会有什么问题 但当用安卓测试的时候,你会发现小程序会提示一个the ...

  6. Vysor:在电脑里控制你的安卓手机

    Vysor是一款可以使用电脑操作安卓手机的谷歌浏览器插件,在chrome中安装了Vysor插件以后,用户就可以使用电脑打开手机的屏幕,在手机的屏幕界面中,用户不仅可以观看,甚至可以使用电脑直接操作手机 ...

  7. 安卓手机已保存WiFi密码查看助手(开源)

    一.需求分析 最近电脑需要连接WiFi,却发现WiFi密码给忘记了.而手机里有保存过的WiFi密码,但是在手机的设置界面看不到. 虽然已经有一些可以查看WiFi密码的app,但是主要还是担心密码被那些 ...

  8. 安卓手机上运行 PC-E500 程序

    目录 第1章安卓手机上运行 PC-E500 程序    1 1 PockEmul    1 2 下载    1 3 打包BASIC程序    2 4 配置PC-E500模拟器    5 5 载入e50 ...

  9. 关于iphone、安卓手机VPN全面解析

    现在智能手机功能越来越强大,网络APP层出不穷,社交大佬facebook.twitter等纷纷推出了自己的社交APP应用,大部分手机已经内置了很多社交应用,包括facebook等:android.io ...

随机推荐

  1. struts2总结六: Struts2的拦截器

    一.Struts2的系统结构图

  2. [itint5]直角路线遍历棋盘

    http://www.itint5.com/oj/#22 这题一开始直接用暴力的DFS来做,果然到25的规模就挂了. vector<bool> visited(50, false); ve ...

  3. JS选中OPTION

    var obj_prov = document.getElementById("prov"); var prov_text = obj_prov.options[obj_prov. ...

  4. 企业级 Linux 安全管理实例(1)

    公司企业多用Linux服务器,其中涉及到的一些安全管理对于安全运维人员来说是必不可少的应知技能, 以下案例沿着背景->需求->具体要求->操作步骤的流程进行描述,可以加深对安全管理的 ...

  5. PC寄存器的真实状态

    因为预取指令的关系,PC寄存器永远比当前的寄存器多两个指令,ARM模式为大8,Thumb模式为大2,这针对的是32bit的ARMv7的指令集 In ARM state, the value of th ...

  6. js生成二维码参数设置

    jquery qrcode使用方法 $(selector).qrcode({ width: 100, height: 100, color: '#3a3', text: 'http://larsjun ...

  7. poj1026Cipher(置换群)

    链接 找循环节 然后所有子循环节的最小公倍数就是总的循环节 找结果的时候也按一个个置换来进行转换 不然也TLE #include <iostream> #include<cstdio ...

  8. 判断String为空

    1.  et_string.equals("")|| et_string==null 2.  ""用equal.null用== TextUtils.isEmpt ...

  9. acdream 瑶瑶带你玩激光坦克 (模拟)

    瑶瑶带你玩激光坦克 Time Limit: 2000/1000MS (Java/Others)    Memory Limit: 256000/128000KB (Java/Others) Submi ...

  10. tomcat+oracle连接池

    tomcat 5.5.23 oracle 10g 全局配置 一.tomcat目录\common\lib下添加包ojdbc14.jar. 二.tomcat目录\conf\server.xml的<G ...