概述
Alsa是Advanced Linux Sound Architecture的缩写,即高级Linux声音架构,在Linux 2.6的内核版本后,Alsa目前已经成为了linux的主流音频体系结构。除了 alsa-driver,ALSA 包含在用户空间的 alsa-lib 函数库,具有更加友好的编程接口,并且完全兼容于 OSS,开发者可以通过这些高级 API 使用驱动,不必直接与内核驱动 API 进行交互。
Alsa-utils:包含各种通用的 ALSA 命令行工具,如 amixer、aplay、arecord、alsaconf 等
Alsa-lib :ALSA 应用程序的用户空间库,给应用程序提供接口。
Alsa core:alsa 核心层,向上提供逻辑设备(PCM/CTL/TIMER/…)系统调用,向下驱动硬件设备(Machine/I2S/DMA/CODEC)。
Asoc core:asoc 是建立在标准 alsa core 基础上,为了更好支持嵌入式系统和应用于移动设备的音频 codec 的一套软件体系。
Tinyalsa: Tinyalsa 是一个在 Linux 内核中与 ALSA 接口的小型库。
软件架构
•Asoc core
•alsa框架