手机 频道

寻找音质变差元凶 聊聊Android音频架构

  【IT168 资讯】Android系统迅速崛起,超越iOS和Symbian成为第一大智能设备操作系统,它的占有率还有迅速扩张的趋势,将有大量的多媒体设备采用这个系统,那么Android是否适合作为影音设备的操作系统使用呢?我们今天就来了解一下Android的音频架构。

聊聊Android的音频架构
▲安卓系统

  Android 基于Linux,我们先来了解一下Linux的特点。Linux使用ALSA作为其音频架构,其全称Advanced Linux Sound Architecture,即高级Linux声音架构的意思,在2.6核心之后,ALSA成为了Linux系统默认的音频子架构。取代了之前的OSS[Open Sound System,开放式声音系统]。

聊聊Android的音频架构
▲Linux ALSA音频架构示意

  ALSA并不太好理解,它首先是一个驱动库,包含了大量的声卡设备的开源驱动,并提供了核心层API与ALSA库通信,而ALSA库则是应用程序访问和操控音频硬件的中间层,这个中间层有标准接口,开发者可以无须考虑硬件差异性进行开发,它对提升开发效率是大有帮助的。ALSA可以向下兼容OSS,因为OSS已经被淘汰,其兼容的工作模式不再讨论。

聊聊Android的音频架构
▲Android 系统下的ALSA库文件

  这个体系被继承到了Android当中。在Android2.2[含2,2]之前,系统文件夹中能找到一个LibAudioALSA.so的文件,这就是ALSA库文件,其他应用程序调用它,与声卡设备进行指令和数据通信。Android音频架构与Linux的并无本质区别。

  在桌面版本的Linux当中,为了兼容各类声卡,Linux也设置了一个SRC[Sample Rate Converter,采样频率转换]的环节,当当前采样率低于48kHz时强制SRC到48kHz输出。这个SRC环节位于ALSA的插件模块中的混音器部分。Android针对这个进行了改进。

  什么是SRC?SRC即Sample Rate Converter,中文意思为采样频率转换。它被声卡爱好者所关注,大部分发烧友视SRC为音质杀手。

1
相关文章