ALSA(Advanced Linux Sound Architecture )是高级 linux 声卡架构简称, 是目前Linux的主流音频体系结构, 提供了音频和MIDI的支持。
除了声音设备驱动,ALSA还捆绑了一个用户空间驱动的库用于应用开发。开发者可以使用这些 ALSA 驱动进行高级 API 开发,可以通过 ALSA 库达成与声音设备的内核(直接)交互。
ALSA 特点如下:
我们可以看到,对于整个 linux 系统来说,整个通用框架基本一致,为了兼容不同的硬件平台,ASoC 就出来了,ASoc 就是就是对ALSA 底层的硬件封装。
对于不同的芯片平台需要去适配ASoc 驱动框架,对于音频工程师而言大部分情况只需要移植音频驱动即可,也就是Codec Driver。
简化一下:对于ASoC 里面的各个模块。我们后续在讨论。
本文简单介绍了,ALSA 驱动通用架构,以及ALSA 驱动特点,对于ALSA 驱动只是冰山一角,后续将继续深入学习。
延申学习:
https://alsa-project.org/wiki/Main_Page https://wiki.archlinux.org/title/Open_Sound_System https://wiki.archlinux.org/index.php/Advanced_Linux_Sound_Architecture_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)