arm linux利用alsa驱动并使用usb音频设备

2025-05-25 0 20

一.背景:

arm linux的内核版本是3.13.0

二.准备工作

添加alsa驱动到内核中,也就是在编译内核的时候加入以下选项:

arm linux利用alsa驱动并使用usb音频设备

接下来就重新编译内核即可

三.交叉编译alsa-lib和alsa-utils (alsa-utils是一系列的音频设备控制工具,而alsa-lib是alsa-utils依赖的库,所以先将alsa-lib编译好)

3.1交叉编译alsa-lib

3.2交叉编译alsa-utils

四.将三编译好的库及工具都拷贝至arm开发板(笔者通常直接将编译好的都压缩好之后再复制到开发板进行解压,以避免直接复制造成软链接无法复制的情况)

五.使用alsa-utils中的工具进行各类操作

5.1录音:

arecord -d \”plughw:0,0\” demo.wmv

5.2播放:

aplay -d \”plughw:0,0\” demo.wmv

 5.3获取控制信息:

amixer controls

输出信息如下:

?
1
2
3
4
5
6
7
8
9
10
numid=3,iface=mixer,name=\'master mode switch\'
numid=29,iface=mixer,name=\'master mux\'
numid=4,iface=mixer,name=\'master quality switch\'
numid=2,iface=mixer,name=\'master switch\'
numid=1,iface=mixer,name=\'master volume\'
numid=7,iface=mixer,name=\'pcm mode switch\'
numid=6,iface=mixer,name=\'pcm switch\'
numid=5,iface=mixer,name=\'pcm volume\'
numid=9,iface=mixer,name=\'mic switch\'
numid=8,iface=mixer,name=\'mic volume\'

5.4 获取录音时的音量大小

从5.3可以获取到”numid=8,iface=mixer,name=\'mic volume\’“这条信息,从mic volume可以得知是mic的音量

amixer cget numid=8,iface=mixer,name=\'mic volume\'

5.4设置录音时的音量大小

amixer cset numid=8,iface=mixer,name=\'mic volume\' 255

六:注意事项:

如果将编译好的alsa-utils中的工具复制到fat32格式的存储设备的时候,注意fat32是不支持软链接的,此时需要直接复制一个aplay并将名称改为arecord:

cp aplay arecord

总结

以上所述是小编给大家介绍的arm linux利用alsa驱动并使用usb音频设备 ,希望对大家有所帮助!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 arm linux利用alsa驱动并使用usb音频设备 https://www.kuaiidc.com/51124.html

相关文章

发表评论
暂无评论