ALSA音频库移植应用

一、简述

        本文档记录自己在移植应用alsa库的大致流程,方便自己以后阅读回忆,同时给需要做相同开发的后来者提供一点经验;

        开发前需要确认自己的开发版是否支持音频模块,确认方法自行百度;

二、所需站点

1. alsa官网:AlsaProjecthttps://www.alsa-project.org/

2. alsa库下载页面:Index of /files/pub/lib/https://www.alsa-project.org/files/pub/lib/        正常音频开发我们只要lib库就好了,这里附一份目前(截止2021-11-18)最新的1.2.5.1版本供访问不了外网的同学下载:

alsa-lib-1.2.5.1.tar.bz2-Linux文档类资源-CSDN下载alsa库更多下载资源、学习资料请访问CSDN下载频道.https://download.csdn.net/download/echodreamers/43663619

三、alsa库编译

        将lib文件放到使用的编译环境,博主用的是Linux下的arm-gcc-4.9.4版本编译器,各位根据需要移植的开发版所需的编译环境使用相应的编译器进行编译即可;

1. 文件解压

tar jxvf alsa-lib-1.2.5.1.tar.bz2

2. 配置编译环境

export CROSS_COMPILER="arm-linux-gnueabi-"
./configure --prefix=/usr/audio/ --host=arm-linux-gnueabi --build=arm

 

正        常编译完最后会提示生成asoundlib.h及文件 :

         然后再执行:

make
sudo make install

        编译完正常是生成inclue、lib、share、bin文件,bin文件博主目前用不到;

        到这里alsa编译基本完成,接下来就是使用alsa库了。

四、库文件使用

1. alsa配置文件

        在需要移植的开发板上创建与之前编译环境配置相同的路径:

/usr/audio/share/

        将编译生成的share文件夹下的alsa文件夹完整上传到当前创建的路径下。

2. 将lib目录下的库文件上传到开发版的固件库目录

        将标红框的文件上传到固件路径即可,现在我们的开发板alsa环境就已经准备就绪了;

3. 代码开发

        将编译生成的include路径下的alsa文件夹加入到代码仓库中,并在工程里里设置好头文件索引,博主这里使用的是CmakeLists;

set(INC_LLAPIDIR ../../include/${GCC_VER} ../../include/${GCC_VER}/alsa)

        之后只要在头文件中包含文件(asoundlib.h),即可开心使用alsa函数库啦。

 五、附录

        这边是开发过程博主参考的一些博客资料;

1. 嵌入式 ALSA库的编译、使用、移植_Genven_Liang的博客-CSDN博客

2. 使用alsa声音的暂停与合成-wangyun183-ChinaUnix博客

3. ALSA音频库开发代码文件-编解码文档类资源-CSDN下载

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值