USB声卡解码器连接Android手机时问题的出现和分析 修改USB音频设备采样率补充测试
Soomal 于 2017.10.25 06:45:44 | 源自:www.soomal.com | 版权:原创
平均/总评分:10.00/50

作为目前使用人数最多、设备应用最广泛的移动移动操作系统,音频应用必然是无法绕开的话题。虽然Android较早地支持UAC2.0[USB Audio Class]协议并提供了通用驱动,可以正常支持兼容UAC协议的USB声卡或解码器设备,专为手机设计便携式声卡解码器也是当前的市场潮流。

然而Soomal在实际使用和测试中发现,许多Android5.X-7.X系统的手机、平板和机顶盒在连接USB2.0异步音频设备时,会将采样率锁定至192kHz,这就意味着在播放常用的44.1kHz采样的音乐时会出现SRC现象。通过近一个月来对Android音频系统甚至是Android源代码的分析,我们也找到了Android系统对USB2.0声卡锁定192kHz的原因。

尽管这一现象是由Android音频系统源代码存在BUG导致,但想要短时间内让谷歌或手机厂商开发者进行修正是困难的,目前也只有OPPO R11等极少数机型在连接USB声卡时可自动切换采样率播放。但幸运的是,通过发挥主观能动性,我们找到了临时性的解决方案。在拥有root系统修改权限的前提下,可以通过修改特定的系统配置文件选择Android系统在连接USB音频设备时的初始化采样率。那么今天我们就来通过简单测试验证一下修改配置后是否有效,以及对第三方云音乐应用是否能以设定的采样率正常播放。

具体来说,就是通过修改audio_policy.conf文件[通常在系统的/etc路径下]来指定连接USB声卡时的播放采样率。在测试中,我们将在已经解锁获得root权限的Nexus 9[Android7.0]下分别测试系统默认状态以及修改采样率配置为44.1kHz后对谷歌Play音乐、网易云音乐等使用Android标准音频接口的应用和海贝音乐播放44.1kHz采样率测试信号时的效果。 本次测试以乐之邦数字时代2的SPDIF同轴输出为参考,XMOS、Bravo、C-Media等其它兼容UAC的USB2.0异步音频方案的测试效果完全相同,这里不再重复列出。

测试项目

Dyamic,Play音乐

Dyamic,网易云 44100 海贝音乐
噪声水平, dB (A): -93.1 -93.1 -97.7 -97.7
动态范围, dB (A): 92.7 92.7 97.7 97.7
总谐波失真, %: 0.0006 0.0006 0.0003 0.0003
互调失真, %: 0.0061 0.0061 0.0036 0.0036
立体声分离度, dB: -94.1 -94.1 -98.4 -98.4

在以往的各类Android手机音质测评中,Android SRC对音质的负面影响一直存在,但很难在同一硬件条件下进行对比。而在这次测试中,读者可以通过USB数字声卡输出信号这种近乎理想条件的理论测试成绩进行对比了。从测试结果可以看出,无论从RMAA测试成绩还是频响图来看,USB声卡在Android系统锁定192kHz采样率状态下,从数字信号的品质开始就有了很大的差距。Dynamic设置下的数字时代2测试成绩显然是极不正常的。当设为44100或直接使用海贝音乐时,理论测试表现就和Windows、iOS等平台表现一致了。

总结

虽然相对于电力充足的PC平台,USB声卡在连接手机时音质会略显不足,而不同操作系统UAC通用音频驱动的差异也会带来些许的声音差异。但可以看出,在所谓的“Dynamic”设置,实际采样率锁定在192kHz时,其Android SRC造成的音质劣化要远远大于供电、操作系统对USB声卡带来的影响。如果用户听过正常状态的数字时代2,那么在Android SRC+锁频192kHz状态下,其在动态、信噪比和整体声音控制力上的劣化已经很明显地体现在了RMAA成绩中,现在的USB2纯数字声卡能发出这种声音其实已经和坏掉没什么区别,但绝大多数对此有察觉用户会认为只是手机供电不给力造成的吧?

因此,这些麻烦对有音质需求的Android设备用户来说,应该是极力避免的,如果既对外接USB声卡提升手机音质有急切需求,又实在离不开网易云等使用Android标准音频接口的音乐应用,那么解决方法就只有购买一台OPPO R11或是自己动手“破解”手机系统了。虽然谷歌并不是没有尝试过改善,例如运行原生Android系统的三星手机或Pixel XL下,USB音频设备的连接状态和采样率设置确实产生了变化,但遗憾的是,即使采样率从锁定192变成96或48随机乱跳,也还远达不到用户USB音频周边应有的正常音质水平。因此,我们依旧建议用户通过向Google或手机厂商反馈来彻底解决这一问题。

转发到新浪微博 转发到腾讯微博 RSS订阅 收藏本文 本文代码
请您评分 1 2 3 4 5 6 7 8 9 10
182.133.***.***
182.133.***.***
有一个疑惑,三星S8用USB连接到DAC上听歌,如果用海贝USB独占输出音质会差一大截,固定采样频率也没有改观,但如果用自带播放器或者其他第三方播放器就没有这样的问题,,难道这就是SRC?


此帖使用HTC M8ET提交
发表于2017.11.01 21:19:38
24
125.032.015.***
125.032.015.***
发表于2017.10.31 09:12:53
23
182.247.***.***
182.247.***.***
一直以来都是用ipad air2+海贝音乐听歌,已经放弃用安卓机听歌,虽然用的是安卓机-三星note5和三星s6。
此帖使用SAMSUNG SM-G9208提交
发表于2017.10.29 14:22:57
22
211.124.***.***
211.124.***.***
如果是很严重的问题,谷歌不在底层修改是说不过去的,这么多年都没有修改,也许问题没有数码多说的那么严重.
此帖使用MAC提交
发表于2017.10.29 08:30:39
21
因为SRC,听歌都在运算。所以永远不说Android机性能过剩
此帖使用Win10提交
发表于2017.10.28 21:32:16
20
123.245.***.***
123.245.***.***
我的一加3 氢OS7.1.1系统里a2dp outputs跟usb outputs就已经是44100采样了,毕竟是OPPO儿子,步步高的孙子,血缘关系蛤蛤

我的一加3 氢OS7.1.1系统里a2dp outputs跟usb outputs就已经是44100采样了,毕竟是OPPO儿子,步步高的孙子,血缘关系蛤蛤
此帖使用Win10提交
发表于2017.10.27 12:50:43
19
125.227.009.***
125.227.009.***
发表于2017.10.26 12:04:20
18
离不开网易云,真是个纠结的问题。
此帖使用SM-G9350提交
发表于2017.10.26 12:02:03
17
171.010.***.***
171.010.***.***
是为了适配自家的解码耳放吗
此帖使用iPhone提交
发表于2017.10.26 07:16:47
16
OPPO和VIVO卖得好是有一定道理的.
发表于2017.10.25 19:48:42
14
101.090.125.***
101.090.125.***
发表于2017.10.25 15:49:10
13

此帖使用ZUK Z2131提交
发表于2017.10.25 14:11:03
12
171.213.***.***
171.213.***.***
原来如此,我说飞傲x7用QQ音乐音质差自带播放app一大截呢,自带好像就是海贝
此帖使用Win10提交
发表于2017.10.25 14:06:53
11
发表于2017.10.25 13:49:05
10
112.096.109.***
112.096.109.***
发表于2017.10.25 11:53:27
8
我还是老老实实攒钱等着搬块砖好了。。。
此帖使用Win10提交
发表于2017.10.25 10:41:40
7
113.095.***.***
113.095.***.***

此帖使用Win10提交
发表于2017.10.25 08:53:49
5
提示本贴可以匿名回复 ,您现在正处在潜水状态
回复
验证码
8729 为防止广告机贴垃圾,不得已而为之
表情
正文