![](https://csdnimg.cn/release/download_crawler_static/86756645/bg5.jpg)
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
[root@oseasy ~]# arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC662 rev1 Analog [ALC662 rev1 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 2: ALC662 rev1 Alt Analog [ALC662 rev1 Alt Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
2.4 ALSA 用户部分
ALSA 是一个完全开放源代码的音频驱动程序集,除了像 OSS 那样提供了一组内核驱动
程序模块之外,ALSA 还专门为简化应用程序的编写提供了相应的函数库,即用户态 ALSA 库。
与 OSS 提供的基于 ioctl 的原始编程接口相比,ALSA 函数库使用起来要更加方便一些。利用
该函数库,开发人员可以方便快捷的开发出自己的应用程序,细节则留给函数库内部处理。
当然 ALSA 也提供了类似于 OSS 的系统接口,不过 ALSA 的开发者建议应用程序开发者使用
音频函数库而不是驱动程序的 API。
2.4.1 用户部分接口
ALSA 用户部分直接向用户态应用程序或 PulseAudio 服务提供 API,这些 API 在 ALSA 官
方网站都可以看到,都是以 snd_开头的 API 函数。这些函数主要包括如下几个部分的功能:
➢ Information Interface (/proc/asound):信息接口,用于获取声卡信息
➢ Control Interface (/dev/snd/controlCX):控制接口,提供管理声卡注册和请求可用设
备的通用功能
➢ Mixer Interface (/dev/snd/mixerCXDX):混音器接口,提供多个应用的混音播放功能
➢ PCM Interface (/dev/snd/pcmCXDX):PCM 音频接口,管理数字音频回放(playback)和
录音(capture)的接口,它是开发数字音频程序最常用到的接口