SRC的由来 在安卓系统中的SRC似乎已经成为每个发烧友绕不开的话题,其全称为Sample Rate Conversion,中文直译过来可以叫它“采样率转换”。既然要说SRC的由来,我们就不得不提到Sample Rate采样率的问题。 采样的意思是从模拟系统的连续信号到数字系统的离散信号所抽取样本的过程。同一歌曲下(同一时间内)抽取的样本越多,对原始信号的回放就更准确,所抽取的数据量也会随之上升(也就是采样率/频率越高)。这也是为什么歌曲的音质有不同等级的划分。 在过去的很长一段时间里,采样率的标准变化过很多次,截至目前来讲使用最广泛的两个频率为44.1KHz与48KHz,同时其倍数88.2KHz和96KHz以及更高的采样也被常用于高规格音频文件中。通常我们认为歌曲的采样率达到44KHz以及16bits(CD音质)被叫做无损。 在安卓手机中 ,由于软件的开放性,各种采样率都被允许在同一系统下存在,但是一个硬件数模转换器(DAC)在一个时间内只能工作在一个固定的采样频率下。就算退一万步来讲我们可以切换不同的采样率进行输出 ,但这样操作的代价也是很大的,最主要的问题是声音中断以及“啪”的电流声。于是为了解决这个问题,就必须使得不同音源全部都要转换成同样的采样率(即SRC)再通过控制器送到DAC处理。 举个简单的例子:在音乐软件里播放的文件采样率为96KHz,而通知铃声或在哔哩哔哩中播放的视频采样率为48KHz,那么在主控混音同时输出的音频文件就全部以48KHz采样率进行输出了,这时歌曲的“音质”就会被劣化了。 USB独占真的能绕开SRC吗 事实上安卓系统中存在多次SRC 第一个是App本身的【SRC1】,这个由App本身控制,和安卓软件层面没有关系。 第二个是安卓自身的【SRC2】,大家所常提到的SRC就是这个了。为了减少bug的产生以及提高App本身的兼容性,绝大多数的音乐软件不会绕过这个SRC。 第三个是DSP/驱动层的【SRC3】,这个是硬件平台相关,高通的芯片就会在DSP中提供这个功能。 至于大家在购买外置的解码耳放一体机(小尾巴)具备的外置DAC和AMP电路,在提升音质上是有帮助的。这就不得不提到手机中各类音乐软件中具备的USB独占的作用了:所谓USB独占其实就是利用外置设备将单一软件的声信号单独用USB输出罢了。说人话就是“只有这一个App能够通过USB接口出声” 所以现在很多音乐软件,以大家最常用的海贝音乐、椒盐音乐为例,他们会在设置中加入一个USB独占的选项。这类的音乐App一般不会在本身进行SRC,其次这类音乐播放软件会将信号直接推送到HAL中,再交由DSP过一遍时钟传输到 DAC中。 所以USB独占真的能绕开SRC吗?从广义上来讲的安卓系统中的SRC确实能绕开,但也仅限于单一软件。其他软件该啥样啥样,它无能为力。
|