瑞芯微(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
相关推荐
数字融合13 分钟前
透明化视场时空配准视频孪生多视域空间融合技术
人工智能·音视频·virtualenv
养海绵宝宝的小蜗14 分钟前
LVS(Linux Virtual Server)项目知识点总结
linux·运维·lvs
醉城夜风~24 分钟前
手撕 C++ string:从零实现一个简易字符串类
开发语言·c++·算法
秋田君28 分钟前
QT_QT布局常用类QSplitter窗口分割类与QDockWidget窗口停靠类
开发语言·数据库·qt
老王生涯29 分钟前
rust开发环境配置-Windows & GNU
开发语言·windows·rust
Yeauty32 分钟前
自建 HLS 第一问:fMP4 还是 TS?用 Rust 在进程内把两种都跑出来
开发语言·后端·rust
发量惊人的中年网工35 分钟前
工业视觉云边 AI 推理总是卡顿?SD-WAN 打通边缘算力互联
网络·人工智能·网络安全·云计算
AC赳赳老秦44 分钟前
软著公开信息批量采集:OpenClaw 抓取软件著作权公开数据,分析企业技术布局方向
大数据·网络·人工智能·python·php·deepseek·openclaw
颜x小1 小时前
[C#]泛型类与泛型方法
开发语言·c++·c#
benben0441 小时前
大模型之基于PEFT的SFT微调实战篇
开发语言·python