linux音频框架分析,Linux ALSA音频框架分析六:ALSA-lib嵌入式移植

Linux ALSA音频框架分析六:ALSA-lib移植

虽然linux下alsa框架给用户空间提供了系统调用,但alsa-lib对系统调用进行进一步封装,并实现了很多插件,例如多音频源进行混音播放时,调用的就是 dmix 插件。

一 软件包下载

进入网站http://www.alsa-project.org/选择下载合适版本的软件包。

3f288ee285423cc6e29fa526842ca321.png

其中,alsa-lib是ALSA 应用库(必需基础库),alsa-utils包含一些ALSA小的测试工具.如aplay、arecord 、amixer播放、录音和调节音量小程序,对于一些应用开发者只需要以上两个软件包就可以了。

二 配置和编译

2.1 alsa-lib

解压alsa-lib-x.x.x.tar.bz2

进入解压后目录cd alsa-lib-x.x.x

配置

./configure --host=aarch64-linux-gnu --prefix=/usr/local/share/arm64-alsa --enable-static=yes --enable-shared=no --enable-python=no --with-configdir=/usr/local/share/alsa --with-plugindir=/usr/local/lib/alsa_lib --with-pcm-plugins=hw

编译 make

安装 make install

其中配置参数--prefix=/usr/local/share/arm64-alsa 是编译后结果的输出路径,--with-configdir=/usr/local/share/alsa它将影响 include/config.h中的 ALSA_CONFIG_DIR 目录。

2.2 alsa-utils

解压alsa-utils-x.x.x.tar.bz2

进入解压后目录cd alsa-utils-x.x.x

配置

./configure --host=aarch64-linux-gnu --prefix=/usr/local/share/arm64-alsa CFLAGS="-I/usr/local/share/arm64-alsa/include" LDFLAGS="-L/usr/local/share/arm64-alsa/lib -lasound" --disable-alsamixer --disable-xmlto

编译 make

安装 make install

2.3 移植

复制目标文件夹下的文件到嵌入式系统的根文件系统:

cp -rfa /usr/local/share/arm64-alsa/lib/*  /initramfs/lib/

cp -rfa /usr/local/share/arm64-alsa/bin/*  /initramfs/sbin/

cp -rfa /usr/local/share/arm64-alsa/sbin/* /initramfs/sbin/

cp -rfa /usr/local/share/alsa/*  /initramfs/usr/local/share/alsa/

配置环境变量:

在rootfs/etc/profile,添加如下两行:

#alsa_init

export ALSA_CONFIG_PATH=/usr/local/share/alsa/alsa.conf

生成跟文件系统:

find .|cpio -o -H newc|gzip -9 > $(pwd)/initramfs.img.gz

三 相关软件应用

在alsa-utils包含一些ALSA小的测试工具,这些工具软件都是基于alsa-lib的API实现的,其中amixer可以进行音频通道选通和音量调节,aplay是播放音频软件,arecord是录音软件。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值