下载
下载源码包 alsa-lib-1.1.9 , alsa-utils-1.1.9 ,地址 https://www.alsa-project.org/wiki/Main_Page
分别 解压
tar -xvf alsa-lib-1.1.9
tar -xvf alsa-utils-1.1.9
编译alsa-lib
- cd alsa-lib-1.1.9/
- export CC=/xxx/arm-none-linux-gnueabi-gcc //交叉编译工具路径
- ./configure --host=arm-linux --prefix=$HOME/alsa/install --build=x86_64-pc-linux-gnu --target=arm-linux
- make
- make install
编译alsa-utils
-
cd alsa-utils-1.1.9/
-
export CC=/xxx/arm-none-linux-gnueabi-gcc
-
./configure --prefix=$HOME/alsa/install/ --target=arm-linux --host=arm-linux --build=x86_64-pc-linux-gnu --with-alsa-inc-prefix=$HOME/alsa/install/include --with-alsa-prefix=$HOME/alsa/install/lib --disable-alsamixer --disable-xmlto --disable-nls
-
make
说明
–prefix指定了alsa-lib编译后的安装目录,包含库和头文件,编译alsa-utils时候要指明它的库lib和头文件include的目录.
alsamixer是图形化的amixer工具,需要ncurses的支持,在secure CRT中乱码,怕麻烦用–disable-alsamixer禁用了它.
–disable-xmlto和–disable-nls去掉编译都不通过,没去研究为啥.
#使用
aplay -h帮助提示信息和aplay -l 列出声卡和数字音频设备
-D参数用于指定音频设备PCM
以hwx,x开头
根据上面l列出的设备,如果选择tlv320aic3x来播放声音的话那么pcm设备就位hw0,1,如果是hdmi则pcm设备为hw0,0。
声卡号,设备号
-r指定采样频率:5512/8000/11025/16000/22050/32000/44100/48000/64000/88200/96000/176400/192000
aplay -Dhw:0,1 -r8000 -f cd /a/1.wmv
aplay -Dhw:0,1 -r8000 /a/1.wav
arecord -Dhw:0,2 -r48000 -f S32_LE -c 2 | aplay -Dhw:0,1 -r48000//一边采集一边播放