录音和播放—R329智能语音开发板入门

首发极术社区
如对Arm相关技术感兴趣,欢迎私信aijishu20加入技术微信群。

R329 EVB5开发板背面贴了3颗麦克风,可组成麦克风阵列,配合降噪算法调试语音识别类产品。

在这里插入图片描述

同时接出了SPK L/R,可以接喇叭进行音频相关的调试。

在这里插入图片描述

*另需注意图中所示的跳线帽需要接上,否则喇叭播放会不出声音

录音

Tina Linux中的音频子系统采用ALSA架构实现。ALSA全称 Advanced Linux Sound Architecture,是目前主流的Linux音频体系结构。

ALSA在内核设备驱动层提供了驱动框架alsa-driver,同时在应用层提供了音频接口库alsa-lib,应用程序只要调用alsa-lib提供的API,即可以完成对底层音频硬件的控制。

内置的固件中,已经封装好了音频相关模块,可以直接使用demo录音和播放。

root@TinaLinux:/# arecord test.wav
[   53.158988] sunxi-codec-machine sndcodec: sunxi_hifi_sndcodec_startup
[   53.166483] sunxi-codec-machine sndcodec: sunxi_hifi_sndcodec_hw_params
[   53.173967] sunxi-internal-cpudai cpudai: ======== hw_params ========
[   53.181212] sunxi-internal-cpudai cpudai: pcm_params->format:2
[   53.187771] sunxi-internal-cpudai cpudai: pcm_params->channels:5
[   53.194529] sunxi-internal-cpudai cpudai: pcm_params->rate:16000
[   53.201281] sunxi-internal-cpudai cpudai: pcm_params->period_size:1024
[   53.208622] sunxi-internal-cpudai cpudai: pcm_params->periods:4
[   53.215276] sunxi-internal-cpudai cpudai: pcm_params->pcm_frames:1024
[   53.222513] sunxi-internal-cpudai cpudai: pcm_params->buffer_size:4096
[   53.229849] sunxi-internal-cpudai cpudai: ===========================
[   53.253756] sunxi-internal-cpudai cpudai: sunxi_hifi_pcm_hw_params
Recording WAVE 'test.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
^CAborted by signal Interrupt...
[   64.045853] sunxi-internal-cpudai cpudai: sunxi_hifi_pcm_hw_free
arecord: pcm_read:2072: read error: Interrupted system call
[   64.090576] sunxi-codec-machine sndcodec: sunxi_hifi_sndcodec_shutdown
root@TinaLinux:/# ls
44100-mono-s16_le-10s.wav  rdinit
base                       rom
bin                        root
dev                        sbin
etc                        sys
lib                        test.wav
lib64                      tmp
mnt                        usr
overlay                    var
proc                       www

在这里插入图片描述

播放

使用命令aplay +音频文件即可播放该文件,如:

root@TinaLinux:/# aplay test.wav
[  125.270510] sunxi-codec-machine sndcodec: sunxi_hifi_sndcodec_startup
[  125.278025] sunxi-codec-machine sndcodec: sunxi_hifi_sndcodec_hw_params
[  125.285477] sunxi-internal-cpudai cpudai: ======== hw_params ========
[  125.292722] sunxi-internal-cpudai cpudai: pcm_params->format:2
[  125.299283] sunxi-internal-cpudai cpudai: pcm_params->channels:2
[  125.306043] sunxi-internal-cpudai cpudai: pcm_params->rate:48000
[  125.312797] sunxi-internal-cpudai cpudai: pcm_params->period_size:1024
[  125.320138] sunxi-internal-cpudai cpudai: pcm_params->periods:4
[  125.326795] sunxi-internal-cpudai cpudai: pcm_params->pcm_frames:1024
[  125.334034] sunxi-internal-cpudai cpudai: pcm_params->buffer_size:4096
[  125.341369] sunxi-internal-cpudai cpudai: ===========================
[  125.490383] sunxi-internal-cpudai cpudai: sunxi_hifi_pcm_hw_params
Playing WAVE 'test.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
[  136.190698] sunxi-internal-cpudai cpudai: sunxi_hifi_pcm_hw_free
[  136.370445] sunxi-codec-machine sndcodec: sunxi_hifi_sndcodec_shutdown

在这里插入图片描述

把文件拉到电脑上

我们可以通过adb将音频文件拉到电脑上查看。

adb pull test.wav

在这里插入图片描述

Audacity

查看音频文件可以使用音频处理软件,如Audacity。

这是一个常用的音频处理软件,免费,开源,遵循GNU协议,可以到网上搜索下载。Windows和Ubuntu版本均有。

在这里插入图片描述

上图就是我们用Audacity打开刚刚录下的音频文件的样子。图中只有一个声道,如果是用三麦克风的阵列录得声音,我们可以看到有三个音轨。如果还有一路或者两路回路(AEC),我们一根可以看到四个或者五个音轨。

录三个声道

录三个声道可以使用命令:

arecord -D hw:audiocodec,0  -f S24_LE -c 3 test.wav

”-D:”代表设备,“-f”代表格式(采样深度和大小端),“-c”代表声道数。这里我们录了3个声道,如果3个声道的麦克风都是好的,拉到电脑用Audacity上查看可以看到如图所示的三个音轨:

在这里插入图片描述

温馨tips:如想了解更多R329相关开发信息,点击查看 全志科技R329智能语音开发板详细资料

相关阅读:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: S32K144开发板是一款基于NXP S32K1系列微控制器的开发板,适用于初学者和专业开发人员进行学习和实践。本手册旨在帮助初学者熟悉S32K144开发板的硬件、软件和基本操作,为开发者快速入门提供指导。 硬件部分,手册提供了开发板的外部引脚和各种接口的介绍,包括键盘矩阵、LCD显示、GPIO端口、ADC、PWM、CAN、SPI、I2C等等。对于初学者来说,手册提供了良好的硬件概念,可以使他们更好地了解这些接口的作用和用途。 软件方面,手册介绍了如何安装和使用S32 Design Studio和SDK,以及如何创建新项目和使用示例程序。手册提供了详细的步骤和示例代码,帮助开发者轻松入门。 此外,手册还介绍了一些常用的调试和测试工具,如调试器、虚拟示波器及其他工具,这些工具可以帮助开发者更好地理解设备的工作原理和进行调试。 总的来说,该入门手册提供了完整的S32K144开发板的介绍,从硬件到软件,从基础到深入。对于初学者来说,这是一个很好的起点,可以让他们快速熟悉并运用S32K144开发板进行开发。 ### 回答2: s32k144开发板入门手册是一份详细的指南,旨在为开发者提供有关如何使用这个板子的基础知识和信息。这个文档提供了大量的信息,从软件安装到硬件连接以及更高级的主题,如如何编写和调试代码。以下是关于这份手册的一些重要信息。 首先,s32k144开发板入门手册介绍了工具链和软件的安装方式。对于刚入门的开发者来说,这非常有用,因为它确保他们可以在他们的电脑上正确地配置开发环境。 其次,这个手册也教你如何将s32k144开发板连接到电脑上,以便下载和运行代码。这包括物理连接以及软件设置,如何使用调试工具等。 接下来,这个手册解释了如何使用开发环境(如Keil或IAR)编写代码。它也介绍了一些基本的编程概念,如寄存器选项卡、中断等等。此外,手册还包括调试代码的方法,例如单步调试和断点。 最后,s32k144开发板入门手册还涵盖了像CAN、PWM、ADC等高级主题。这些内容可能对一些开发者来说比较高级,但对于那些想了解更多的人来说,这些信息非常有用。 总之,s32k144开发板入门手册是一份非常详细的文档,非常适合想要深入了解如何使用这个板子的开发者。它不仅提供了基础知识,还提供了更高级的主题,让开发者更好地理解和掌握这款开发板的所有功能。 ### 回答3: s32k144开发板入门手册是一本非常重要的指南,它可以帮助初学者入门和了解s32k144开发板的基本知识。 首先,s32k144开发板入门手册介绍了开发板的基本硬件组成,包括主芯片、外设模块、存储器、通讯模块等。它还详细描述了开发板的各种连接口和引脚功能,以方便初学者进行各种实验和应用。此外,手册还列出了开发板的规格参数和性能指标,帮助读者更好地了解开发板的特点和优势。 其次,s32k144开发板入门手册介绍了开发板的软件环境和工具链。手册详细介绍了开发板所支持的应用程序语言和开发工具,包括C语言、C++语言和汇编语言等。为了帮助读者快速上手,手册还提供了一些简单的实验代码以供参考和学习。 最后,s32k144开发板入门手册也介绍了一些常见的问题和解决方案,以帮助读者在实验和开发中遇到问题时能够快速解决。 总之,s32k144开发板入门手册是一本非常有价值的指南,对于初学者和s32k144开发板的用户都有很大帮助。它提供了丰富的信息和实用的工具,让使用者能够更好地了解和应用s32k144开发板,为未来的学习和实践奠定了坚实的基础。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值