第17章 Linux音频设备驱动之数字音频设备

本章知识点

1、在 Linux 系统中,先后出现了音频设备的 三 种框架:OSS、ALSA 和ASoC,在介绍数字音频设备及音频设备硬件接口的基础上讲解OSS、ALSA 和 ASoC 驱动的结构。

2、音频设备及 PCM、IIS 和 AC97 硬件接口。

3、 Linux OSS 音频设备驱动的组成、mixer 接口、dsp 接口及用户空间编程方法。

4、 Linux ALSA 音频设备驱动的组成、card 和组件管理、PCM 设备、control 接口、AC97 API 及用户空间编程方法。

5、 Linux ASoC 音频设备驱动的组成,Codec、CPU DAI和板驱动。

17.1 数字音频设备

    手机、PDA、MP3 等许多嵌入式设备中包含数字音频设备,一个典型的数字音频系统的电路组成如图 17.1 所示。

第17章 Linux音频设备驱动之数字音频设备

17.1 典型的数字音频电路

        图 17.1 中的嵌入式微控制器/DSP 中集成了PCM、IIS 或 AC97 音频接口,通过这些接口连接外部的音频编解码器即可实现声音的 AD 和 DA 转换,,图中的功放完成模拟信号的放大功能。

    音频编解码器是数字音频系统的核心,其衡量的主要指标如下。

1.采样频率

    采样的过程是通常将模拟音频信号的电信号转换成二进制码 0 和 1 的过程,这些 0 和 1构成了数字音频件。图 17.2 中的正弦曲线代表原始音频曲线,方格代表采样后得到的结果,两者越吻合说明采样结果越好。

第17章 Linux音频设备驱动之数字音频设备

17.2 数字音频采样

     采样频率是每秒钟的采样次数,常说的 44.1kHz 采样频率就是每秒采样 44100 次。理论上采样频率越高,转换精度越高,主流的采样频率是 48kHz,采样频率是每秒采样48000次。

    2.量化精度

    量化精度是指对采样数据分析的精度,比如 24bit 量化精度是指将标准电平信号按照 2的 24 次方进行分析,也就是将图 17.2 中的纵坐标等分为 2 的24 次方等分。量化精度越高,声音越逼真