1
第十七章 Linux 音频设备驱动
本章导读
在 Linux 中,先后出现了音频设备的两种框架 OSS 和 ALSA,本节将在介绍数字音频设备及音频设备硬件
接口的基础上,展现 OSS 和 ALSA 驱动的结构。
17.1~17.2 节讲解了音频设备及 PCM、IIS 和 AC97 硬件接口。
17.3 节阐述了 Linux OSS 音频设备驱动的组成、mixer 接口、dsp 接口及用户空间编程方法。
17.4 节阐述了 Linux ALSA 音频设备驱动的组成、card 和组件管理、PCM 设备、control 接口、AC97 API
及用户空间编程方法。
17.5 节以 S3C2410 通过 IIS 接口外接 UDA1341 编解码器的实例讲解了 OSS 驱动。
17.6 节以 PXA255 通过 AC97 接口外接 AC97 编解码器的实例讲解了 ALSA 驱动。
17.1 数字音频设备
目前,手机、PDA、MP3 等许多嵌入式设备中包含了数字音频设备,一个典型的数字音频系统的电路组成
如图 17.1 所示。图 17.1 中的嵌入式微控制器/DSP 中集成了 PCM、IIS 或 AC97 音频接口,通过这些接口
连接外部的音频编解码器即可实现声音的 AD 和 DA 转换,图中的功放完成模拟信号的放大功能。
图 17.1 典型的数字音频系统电路
音频编解码器是数字音频系统的核心,衡量它的指标主要有:
• 采样频率
采样的过程就是将通常的模拟音频信号的电信号转换成二进制码 0 和 1 的过程,这些 0 和 1 便构成了数字
音频文件。如图 17.2 中的正弦曲线代表原始音频曲线,方格代表采样后得到的结果,二者越吻合说明采
样结果越好。
采样频率是每秒钟的采样次数,我们常说的 44.1kHz 采样频率就是每秒钟采样 44100 次。理论上采样频
率越高,转换精度越高,目前主流的采样频率是 48kHz。
• 量化精度
量化精度是指对采样数据分析的精度,比如 24bit 量化精度就是是将标准电平信号按照 2 的 24 次方进行
分析,也就是说将图 17.2 中的纵坐标等分为 224 等分。量化精度越高,声音就越逼真。
评论0