Atlas 200外设驱动开发和调试指南_音频功能
调试基于Atlas 200 参考板驱动包进行重构调试,调试方法请参考https://support.huawei.com/enterprise/zh/doc/EDOC1100193743/3db58fa7
1 芯片型号
本调测参考的音频功能使用KT0210芯片。
2 固件烧录
是否需要烧录固件:是
固件和烧录指导请联系KT0210芯片的厂家进行获取。
3 内核配置
修改内核配置的方法请参考源码编译。
支持音频功能,需要打开以下内核配置:
Device Drivers --->
<*> Sound card support --->
<*> Advanced Linux Sound Architecture --->
[*] USB sound devices --->
Atlas 200 外设驱动开发和调试指南
Atlas 200 外设驱动开发和调试指南 4 音频功能
<*> USB Audio/MDIO driver
4 驱动调试
是否需要驱动支持:否
5 测试工具
音频的调测工具:alsa-utils、alsa-lib
交叉编译环境准备
编译环境要求:
Ubuntu 18.04 x86_64
下载交叉编译工具链
https://releases.linaro.org/components/toolchain/binaries/7.3-2018.05/aarch64-
linux-gnu/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu.tar.xz
安装工具链请参考
https://support.huawei.com/enterprise/zh/doc/EDOC1100193743/af79c73a
工具编译
alsa-utils工具的编译依赖于alsa-lib,需要先编译安装alsa-lib,然后再编译安装alsautils。
alsa-lib的编译安装
下载alsa-lib源码包
https://www.linuxfromscratch.org/blfs/view/svn/multimedia/alsa-lib.html
将下载好的alsa-lib源码包上传到编译服务器上,解压
tar -xvf alsa-lib-1.2.5.1.tar.bz2
进入主目录
cd alsa-lib-1.2.5.1
创建安装目录
mkdir _install
编译安装
ȇȍcÑnfigñà --host=aarch64-linux-gnu ȝȝÝàfiĂɊȰWwȍȎ²näìÃÃ
make
make install
alsa-utils工具的编译安装
下载alsa-utils源码包
https://www.linuxfromscratch.org/blfs/view/svn/multimedia/alsa-utils.html
将下载好的alsa-utils源码包上传的编译服务器上,保持与alsa-lib在同一目录下,解压
tar -xvf alsa-utils-1.2.5.1.tar.bz2
进入主目录
cd alsa-utils-1.2.5.1
创建安装目录
mkdir _install
编译安装
ȇȍcÑnfigñà --host=aarch64-linux-gnu CC=aarch64-linux-gnu-gcc --disablealsamixer ȝȝÝàfiĂɊȰWwȍȎ²näìÃà CPPFLAGS=-I$PWD/../alsa-lib-1.2.5.1/_install/
include LDFLAGS=-L$PWD/../alsa-lib-1.2.5.1/_install/lib
make
make install
成功编译安装后,可以在alsa-utils-1.2.5.1/_install/bin/路径下找到二进制工具aplay和arecord。
工具使用和音频功能验证
在使用工具的时候保证音频设备插入,如耳机。
播放功能
./aplay /home/HwHiAiUser/test.wav
录音功能
举例 :录制5s,通道数为2,采样率16000,采样精度16bit,保存为wav文件
./arecord -f S16_LE -r 16000 -c 2 -d 5 /home/HwHiAiUser/test.wav
6 常见问题
工具在编译环境编译成功后,拷贝到开发板环境执行时报错,报错信息如下:
root@davinci-mini:/usr/local/alsa-utils/bin# ./aplay ../share/sounds/alsa/Noise.wav
ALSA lib cÑnfȇcǿ4133ǿ(änȎcÑnfigȎñÝìȎà) Cannot access fià /usr1/SmartBase/
opensource/alsa_utils/output/alsa-lib-1.2.5.1/_install/share/alsa/alsa.conf
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM default
aplay: main:830: audio open error: No such fià or directory
问题分析和解决方法
工具依赖的配置文件路径在编译时固定,将编译好的工具放到环境上运行时会出现以上错误,最直接的解决方法创建已经固定的配置文件路径,并将alsa-lib的share目录拷贝过去:
mkdir -p /usr1/SmartBase/opensource/alsa_utils/output/alsa-lib-1.2.5.1/_install
cp -rf alsa-lib/share /usr1/SmartBase/opensource/alsa_utils/output/alsa-lib-1.2.5.1/_install/
路径中的工具版本请根据自己使用的实际版本进行修改。
Atlas 200外设驱动开发和调试指南_音频功能
调试基于Atlas 200 参考板驱动包进行重构调试,调试方法请参考https://support.huawei.com/enterprise/zh/doc/EDOC1100193743/3db58fa7
1 芯片型号
本调测参考的音频功能使用KT0210芯片。
2 固件烧录
是否需要烧录固件:是
固件和烧录指导请联系KT0210芯片的厂家进行获取。
3 内核配置
修改内核配置的方法请参考源码编译。
支持音频功能,需要打开以下内核配置:
Device Drivers --->
<*> Sound card support --->
<*> Advanced Linux Sound Architecture --->
[*] USB sound devices --->
Atlas 200 外设驱动开发和调试指南
Atlas 200 外设驱动开发和调试指南 4 音频功能
<*> USB Audio/MDIO driver
4 驱动调试
是否需要驱动支持:否
5 测试工具
音频的调测工具:alsa-utils、alsa-lib
交叉编译环境准备
编译环境要求:
Ubuntu 18.04 x86_64
下载交叉编译工具链
https://releases.linaro.org/components/toolchain/binaries/7.3-2018.05/aarch64-
linux-gnu/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu.tar.xz
安装工具链请参考
https://support.huawei.com/enterprise/zh/doc/EDOC1100193743/af79c73a
工具编译
alsa-utils工具的编译依赖于alsa-lib,需要先编译安装alsa-lib,然后再编译安装alsautils。
alsa-lib的编译安装
下载alsa-lib源码包
https://www.linuxfromscratch.org/blfs/view/svn/multimedia/alsa-lib.html
将下载好的alsa-lib源码包上传到编译服务器上,解压
tar -xvf alsa-lib-1.2.5.1.tar.bz2
进入主目录
cd alsa-lib-1.2.5.1
创建安装目录
mkdir _install
编译安装
ȇȍcÑnfigñà --host=aarch64-linux-gnu ȝȝÝàfiĂɊȰWwȍȎ²näìÃÃ
make
make install
alsa-utils工具的编译安装
下载alsa-utils源码包
https://www.linuxfromscratch.org/blfs/view/svn/multimedia/alsa-utils.html
将下载好的alsa-utils源码包上传的编译服务器上,保持与alsa-lib在同一目录下,解压
tar -xvf alsa-utils-1.2.5.1.tar.bz2
进入主目录
cd alsa-utils-1.2.5.1
创建安装目录
mkdir _install
编译安装
ȇȍcÑnfigñà --host=aarch64-linux-gnu CC=aarch64-linux-gnu-gcc --disablealsamixer ȝȝÝàfiĂɊȰWwȍȎ²näìÃà CPPFLAGS=-I$PWD/../alsa-lib-1.2.5.1/_install/
include LDFLAGS=-L$PWD/../alsa-lib-1.2.5.1/_install/lib
make
make install
成功编译安装后,可以在alsa-utils-1.2.5.1/_install/bin/路径下找到二进制工具aplay和arecord。
工具使用和音频功能验证
在使用工具的时候保证音频设备插入,如耳机。
播放功能
./aplay /home/HwHiAiUser/test.wav
录音功能
举例 :录制5s,通道数为2,采样率16000,采样精度16bit,保存为wav文件
./arecord -f S16_LE -r 16000 -c 2 -d 5 /home/HwHiAiUser/test.wav
6 常见问题
工具在编译环境编译成功后,拷贝到开发板环境执行时报错,报错信息如下:
root@davinci-mini:/usr/local/alsa-utils/bin# ./aplay ../share/sounds/alsa/Noise.wav
ALSA lib cÑnfȇcǿ4133ǿ(änȎcÑnfigȎñÝìȎà) Cannot access fià /usr1/SmartBase/
opensource/alsa_utils/output/alsa-lib-1.2.5.1/_install/share/alsa/alsa.conf
ALSA lib pcm.c:2660:(snd_pcm_open_noupdate) Unknown PCM default
aplay: main:830: audio open error: No such fià or directory
问题分析和解决方法
工具依赖的配置文件路径在编译时固定,将编译好的工具放到环境上运行时会出现以上错误,最直接的解决方法创建已经固定的配置文件路径,并将alsa-lib的share目录拷贝过去:
mkdir -p /usr1/SmartBase/opensource/alsa_utils/output/alsa-lib-1.2.5.1/_install
cp -rf alsa-lib/share /usr1/SmartBase/opensource/alsa_utils/output/alsa-lib-1.2.5.1/_install/
路径中的工具版本请根据自己使用的实际版本进行修改。