瑞芯微(EASY EAI)RV1126B 音频输入

1. 声卡资源介绍

EASY-EAI-Nano-TB仅有一块由RV1126B主控输出的声卡。

通过串口调试或ssh调试,可以进入开发板终端。执行aplay命令查看声卡相关的详细信息,如下所示。

复制代码
arecord -l

1.1 硬件接口

硬件接口位置如下所示。

2. 声卡控制

Linux系统在应用层调用声卡,通常采用alsa(aplay,arecord,amixer)框架,本文只会描述本开发板平台相关的部分。如果用户想要进一步地了解alsa用法,可以通过开发者社区的《alsa使用简介》进行更进一步的了解。

2.1 音频录制

音频录制采用arecord命令进行。

复制代码
arecord -D plughw:0,0 -c 2 -r 44100 -f S16_LE 1234567.wav

以【Ctrl+C】组合键终止录制。

注意:录制单通道(-c 1)音频时,-f仅支持【S16_LE】和【S24_LE】两种采样位深。

2.2 录音音量调节

Card0录音音量【值】的【范围】是从 0到31

复制代码
amixer -c 0 cset name='ACodec_LP PGA Gain Volume' 0  ##设置Card0输出音量【值】为 0
amixer -c 0 cset name='ACodec_LP PGA Gain Volume' 16  ##设置Card0输出音量【值】为 16
amixer -c 0 cset name='ACodec_LP PGA Gain Volume' 31  ##设置Card0输出音量【值】为 31

注:此处的【值】是跟增益正相关的一个变量,但它既不是增益,也不是音量百分比。并且调整它,音量大小变化【不是线性】的。

2.3 录制命令详解

以cd格式录制(以【Ctrl+C】组合键终止录制):

复制代码
arecord -D hw:0,0 -f cd 1234567.wav

指定了cd录制格式,就相当于固定了声道(双声道)、采样率(44100Hz)和采样位深(S16_LE)

指定录制时间:

复制代码
arecord -D hw:0,0 -f cd -d 10 1234567.wav

-d 10:表示指定录制时间为10s后,录制自动结束

arecord更多的使用方法参考:

复制代码
arecord -h
相关推荐
Cx330❀1 分钟前
深入浅出 Qt 绘图机制:从 QPainter 到四大图像类解析
开发语言·qt·ui·性能优化·图形渲染
信可维13 分钟前
AI 读 Word 表格总读错?先查合并单元格和表头这 3 处
开发语言·人工智能·c#·word·软件工程
Amumu1213819 分钟前
Node学习: 网络基础概念 + HTTP模块
网络·node.js
tdtengrun26 分钟前
“绿色轮胎安全周”走进校园,让安全与环保理念扎根童心
网络·媒体
HEJOO940 分钟前
Java 并发运行中的安全问题详解
java·开发语言
星夜离尘561 小时前
MATLAB阶跃响应怎么量:别把最后一个采样点当成稳态
开发语言·matlab
水饺编程1 小时前
第2章:Linux 基础,rm 命令
linux·c语言·汇编
雪落漂泊1 小时前
Linux基础开发工具(三)gcc/g++与make/makefile篇
linux·运维·服务器
云水初1 小时前
【agent篇】RAG Agent避坑指南(附高级RAG Agent汇总)
开发语言·笔记·python·学习·langchain·agent·rag
Littlehero_1211 小时前
QT自定义控件之水泥厂组态(源码开源)
开发语言·qt