转载地址:https://blog.csdn.net/luckywang1103/article/details/45626201- 下载alsa-lib和alsa-utils
www.alsa-project.org/main/index.php/Download
上面是官方的地址,可是alsa-lib总下载不了,于是我在download.chinaunix.net/上面下载了alsa-lib-1.0.25和alsa-utils-1.0.25
我把这两个文件上传到CSDN资源:http://download.csdn.net/detail/luckywang1103/8684927 - 编译alsa-lib
- 解压alsa-lib-1.0.25.tar.bz2
- 进入alsa-lib-1.0.25目录
- ./configure –host=arm-linux –prefix=$PWD/build –enable-shared –disable-python –with-configdir=$PWD/build/alsa_lib/share –with-plugindir=$PWD/build/alsa_lib/lib
- make & make install
- 编译alsa-utils
- 同上
- 同上
- ./configure –host=arm-linux –prefix=$PWD/build CFLAGS=”-I/home/lei/alsa/alsa-lib-1.0.25/build/include” LDFLAGS=”-L/home/lei/alsa/alsa-lib-1.0.25/build/lib -lasound” –disable-alsamixer –disable-xmlto
- make & make install
说明:这里CFLAGS和LDFLAGS使用的是’2’中alsa-lib在build目录下生成的include文件和lib文件。
- 拷贝文件到开发板
- 将’2’中得到的/home/lei/alsa/alsa-lib-1.0.25/build/lib下的libasound.*复制到开发板的/lib目录下,将/home/lei/alsa/alsa-lib-1.0.25/build/alsa_lib/share文件复制到开发板的同样的文件位置(即在开发板上也要这样一个位置)
说明:share文件包含了一些配置文件alsa.conf等 - 将/home/lei/alsa/alsa-utils-1.0.25/build/bin目录下的aplay复制到开发板,同时可以拷贝/home/lei/alsa/alsa-utils-1.0.25/build/share/sounds/alsa目录下的一些wav文件到开发板供测试。
- 在开发板上ls -l /dev/snd看看系统是否已经有了设备节点,如果没有,需要手动创建。
mkdir /dev/snd
mknod /dev/snd/controlC0 c 116 0
mknod /dev/snd/pcmC0D0p c 116 16
mknod /dev/snd/pcmC0D0c c 116 24
mknod /dev/snd/seq c 116 1
mknod /dev/snd/hwC0D0 c 116 4
mknod /dev/snd/timer c 116 33
可以通过cat /proc/asound/devices,正常会看到一些设备来决定创建哪些设备节点。
0: [ 0] : control
16: [ 0- 0]: digital audio playback
24: [ 0- 0]: digital audio capture
33: : timer
- 播放文件
/bin/aplay Front_Center.wav
部分参考:
http://blog.csdn.net/reille/article/details/5845913 http://ackerman.iteye.com/blog/828912