一、环境介绍
系统: ubuntu18.04 (64位)
声卡: 电脑自带
二、功能介绍
通过alsa-lib库读取电脑声卡的PCM数据保存到文件。
在ubuntu系统上安装alsa-lib库方法:
sudo apt-get install libasound2-dev
如果是在其他发行版linux系统上或者需要在嵌入式linux系统上使用alsa-lib库,可以下载alsa-lib源码包,自行编译。
开源ALSA架构的官网地址:https://www.alsa-project.org/wiki/Main_Page
三、获取本机可用的声卡设备
获取声卡可以使用arecord -L命令。
在ubuntu系统下如果没有这个命令,直接根据提示安装一个即可。
示例: 一般hw:0或者default表示默认声卡设备。
wbyq@wbyq:/mnt/hgfs/linux-share-dir/linux_c/linux_pcm_save$ arecord -L
default
Playback/recording through the PulseAudio sound server
null
Discard all samples (playback) or generate zero samples (capture)
pulse
PulseAudio Sound Server
sysdefault:CARD=AudioPCI
Ensoniq AudioPCI, ES1371 DAC2/ADC
Default Audio Device
front:CARD=AudioPCI,DEV=0
Ensoniq AudioPCI, ES1371 DAC2/ADC
Front speakers
iec958:CARD=AudioPCI,DEV=0
Ensoniq AudioPCI, ES1371 DAC2/ADC
IEC958 (S/PDIF) Digital Audio Output
dmix:CARD=AudioPCI,DEV=0
Ensoniq AudioPCI, ES1371 DAC2/ADC
Direct sample mixing device
dsnoop:CARD=AudioPCI,DEV=0
Ensoniq AudioPCI, ES1371 DAC2/ADC
Direct s