注册登录

小米不支持“全局DAC”?论小米如何降低手机音乐背景噪声

最近论坛上有不少关于USB耳机播放的吐槽,有人说小米手机关闭了USB DAC driver,导致USB耳机音质变差,也有人说小米手机不支持“全局DAC”,还有人说用1000多元的耳机也能听到底噪,受到了伤害。

开发小哥感受到了巨大的压力,认真研究了Android USB耳机播放,同时也研究了大家反馈比较多的某APP USB独占模式。发些这其中有一些误解,同时也确实存在一些问题(对技术兴趣不大的兄弟,可以直接跳到最后看结论)。在进一步说明之前,让我们先来对耳机类型做一个说明:

数字耳机还是模拟耳机?

从接口看,有线耳机主要有两种接口,3.5mm接口和USB接口耳机,如下图所示:

 890fd1f49e99f9b12c05f36dddc3dc0.png

图一分别是3.5mm接口和Type-C USB接口

从手机输出信号来分,耳机又可以分为数字耳机和模拟耳机。顾名思义,模拟耳机接收模式信号,数字耳机接收信号数字。耳机的发声单元接收的是模拟的电信号,它把电信号转换声波,才能被人耳听到。因此数字耳机里会有一个DAC(digital analog convert),它负责把数字信号转成模拟信号后送给发声单元。

一般而言,3.5mm耳机是模拟耳机,USB接口耳机是数字耳机。但是加上USB转接头或者USB声卡后情况就变得很复杂了,为了方便大家确认自己的耳机类型,下面做了个简单分类:

摸拟耳机:3.5mm接口耳机,小米USB转接头+3.5mm耳机

数字耳机:小米USB数字耳机,HTC数字转接头+3.5mm耳机,USB外置声卡+3.5mm耳

啰嗦一句就是,要站在手机的角度来区分耳机类型。比如3.5mm耳机加上HTC数字转头,这个组合对手机来说是数字耳机,同样的3.5mm耳机加上小米USB转接头,这个组合对手机而言就是模拟耳机。

然后讲一下Android音频播放:

 21c99c999387e35f4ecc89806f78bd7.png

当外接模拟耳机时,音乐播放过程如下

音乐APP把数字信号送给Android音频系统,经过Android音频系统处理后通过音频接口送给音频CODEC,经过CODEC内部的DAC转成摸拟信号后送给耳机。

当外接数字耳机时,音乐播放过程如下:

音乐APP把播放的数字信号送给Android音频系统,经过Android音频系统处理后通过USB接口送给数字耳机,通过耳机内部的DAC转成摸拟信号后送给发声单元。

当我们谈到Android手机音质时,大家都会把锅甩给Android音频系统,这个已经谈论得很多了,这里我们再拿出来说一次,下面是Android音频系统的一个简单示意图。

 2783e1b16e32aeaf6f92b639b13a995.png

里面主要有两个模块,SRC和Mixer:

  • SRC:sample rate conversion(采样率转换);
  • Mixer:混音,把多个音源混在一起。

这么设计是为了应对手机上的复杂场景,想象一下:你快乐的打着游戏(APP2),放着happy的音乐(APP1),这时还来了一个QQ通知(APP3),这些声音要经过Mixer混在一起后输出。Android混音后输出的采样率固定为48k,如果某个APP输出的声音格式和混音输出结果不一样,就需要做SRC,这对音质是一个大大的损伤

那么独占是怎么做的呢?还是来看下示意图:

52fdf5eaeeea311aa4a0c0da146fa96.png

APP工作在USB独占模式时,会直接把数字信号直接送给USB系统,通过USB接口送给数字耳机。这么做的好处是显示易见的:它避开Android音频系统,没有音质上的任何损失。不过它的副作用也同样明显:独占APP占用USB系统后,Android音频系统的声音就没办法再送到USB系统了,因为USB系统没有Mixer,没有人帮忙做混音,所以这时手机上其他APP都是没有声音的。

分析了音乐播放的原理,实际上很多结论就很清楚了

  1. 不存在不使用数字耳机内部DAC的情况;
  2. 数字耳机只能接收数字信号,必须通过数字耳机内部的DAC做数模转换;
  3. 没有所谓的“全局DAC模式”,独占模式只是为了绕开Android的音频系统,这种模式下,其他APP会没有声音,没办法避免。

要想音质好,又要“全局DAC”必须满足下面两个条件:

  1. 避免对数字信号做造成音质损失的处理;
  2. 要有混音模块。

基于上面两条,我们重新优化了Android音频系统,使得不管是QQ音乐、网易云音乐这类三方APP,还是系统自带小米音乐,音质都得到了提升,特别是对反馈比较多的底噪问题改善尤其明显。同时我们对游戏底噪也进行了优化。这些优化不光只针对数字耳机,对模拟耳机和扬声器也适用。

例行总结:

虽然我们现在的手机底噪和大多数友商一样,符合产业标准,但金耳朵用户期望更高,这个我们非常理解,针对这个需求,我们对所有场景重新做了底噪优化(而非独占app的一个场景),优化后,我们实验室测试,应该能够达到业界顶尖水平(低调一下,改一下说法,虽然工程师觉得是最好的)目前米9开发版已经外发,欢迎大家体验反馈,后续我们定成小米质量标准(远超行业标准),逐渐在所有产品推进,争取持续做到业内最好!

0条回复

作者
用户头像
文章 0关注 0粉丝 0
发私信
相关文章
联系客服