IMX8mp alsa音频调试
Posted 老衲开心用飘柔
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IMX8mp alsa音频调试相关的知识,希望对你有一定的参考价值。
1、硬件环境:
soc: im8mp
bt: cypress CYW43455, 并通过M2接口连接到imx8mp开发板。
2、硬件连接:
3、综述:
BT通过M2接口连接到IMX8mp开发板,M2接口中包含了PCM总线、UART、BT_EN引脚。
通话音频播放,BT使用imx8mp默认PCM接口,所以默认情况下无需额外配置,imx8会自动识别并加载音频设备,通过aplay -l 指令可以发现对应card2设备。通过card2音频设备可以进进行音频通话。播放音频到card2代表本地手机A通话输入,从card2录入音频代表远端手机B通话输入。
音乐音频播放,BT将从手机接收的A2DP数据传送到Host协议栈,协议栈打开PCM设备即WM8960设备进行编解码并通过imx8mp开发板默认耳机接口输出。
附加:协议栈需求的libasound.so即alsa库,imx8mp交叉编译工具以及linux系统内已默认包含且可用,所以无需单独编译alsa库,编译协议栈时仅需要source /opt环境变量并编译即可。
4、imx8mp本地音频设备列表:
5、录音和播放测试:
使用wm8960录音和播放:
arecord -D plughw3,0 1.wav
aplay -D plughw:3,0 1.wav
使用bt pcm总线录音和播放:
arecord -D plughw:2,0 1.wav
aplay -D plughw:2,0 1.wav
调整音量:
alsamixer
6、协议栈测试:
(1)设置音频配置文件/etc/asound.conf, 配置默认card和device.
(2)协议栈测试电话:
录音:arecord -D plughw:2,0 1.wav &
运行协议栈,连接手机A并拨打手机B并接通,对手机B说话,录入声音。
播放:aplay -D plughw:3,0 1.wav通过wm8960播放录音, 或 aplay -D plughw:2,0 1.wav &
运行协议栈后,连接手机A并拨打手机B并接通,从手机B观察是否有录音播放。
(3)协议栈测试音频:
运行协议栈,连接手机并播放音乐,观察wm8960的耳机口是否有音频播放
RK3588平台开发系列讲解(AUDIO篇)Android音频调试--tiny-alsa 工具
平台 | 内核版本 | 安卓版本 |
---|---|---|
RK3588 |
Linux 5.10 |
Android 12 |
文章目录
沉淀、分享、成长,让自己和他人都能有所收获!
以上是关于IMX8mp alsa音频调试的主要内容,如果未能解决你的问题,请参考以下文章
嵌入式Bluetooth应用开发笔记第三篇:初探BLUE ALSA应用开发
韦东山嵌入式Linux视频教程_3期项目实战之ALSA声卡_从零编写之调试(基于优龙FS2410开发板,UDA1341声卡)