首页 > 其他分享 >Air201资产定位模组LuatOS:录音&播放录音功能的操作方法

Air201资产定位模组LuatOS:录音&播放录音功能的操作方法

时间:2024-10-13 10:35:05浏览次数:7  
标签:Air201 audio LuatOS record 合宙 录音 播放

 

一直有小伙伴们问,迷你小巧的合宙Air201虽然有很多优点,超低功耗、精准定位,那么它是否支持录音、播放录音功能?

 

那必须能!高集成化设计的Air201自带了ES8311音频解码芯片(Audio Codec)及MIC麦克,可支持本地的录音功能;使用配套喇叭即可将录音保存的数据进行播放,操作极为方便。

本期,我们就来学习合宙Air201实用示例
——录音和播放录音功能

 

 Air201录音&播放录音功能 

 

图片

合宙Air201资产定位模组——是一个集成超低功耗4G通信、语音通话、超低功耗定位、计步、震动、Type-C、充电、放音、录音等功能的超小PCBA。

内部集成高效、简单、可靠的LuatOS语言,旨在帮助客户降低开发难度,降低研发成本,以及打造超小超低功耗的精品产品。

 

接下来,教你从零上手,实现Air201录音和播放的功能。

1. 搭建环境

新同学建议先看前期的基础知识相关教程,更有助于理解和操作。

此时可以在LuaTools项目管理中新建一个项目,重新选择底层CORE和脚本;或者在原有项目的基础上,不更换CORE,将原来的脚本删除,添加为demo/record的脚本。

 

图片

1.1 硬件准备:

合宙Air201板子自带了ES8311音频解码芯片(Audio Codec)及MIC麦克,硬件主要外接一个喇叭。

  • 合宙Air201 PCBA及配套喇叭

  • 带有数据通信功能的数据线

  • Win10以上PC

 

▼ Air201连接喇叭示意 ▼

注意:Air201最大支持8Ω 1.2W功率喇叭(默认),或者4Ω 2.5W功率喇叭。

 

图片

 

图片

1.2 软件准备:

  • LuaTools调试工具:

  • 最新固件:

  • 最新脚本:
     

2. 调试代码

使用克隆的代码进行测试,代码路径:
LuatOS-Air201\demo\record

2.1 初始化驱动ES8311

Air201板子自带了ES8311音频解码芯片(Audio Codec),所以硬件配置参数是固定的。

ES8311使用了I2C0,电源脚为GPIO2,PA控制脚为GPIO23。

 

图片

2.2 注册音频事件回调函数

 

图片

2.3 准备录音

录音API说明

audio.record(id, record_type, record_time, amr_quailty, path, record_callback_time)

  • id:
    多媒体播放通道号

  • record_type:
    录音音频格式,支持audio.AMR和audio.PCM

  • record_time:
    录制时长,单位秒,可选参数,默认为0则表示一直录制。

  • amr_quailty:
    录音质量,只有在音频格式为audio.AMR的情况下此参数有效。

  • path:
    录音文件路径,可选参数,不指定则不保存,可以再audio.on回调函数中处理原始PCM数据。

  • record_callback_time:
    单次录音回调时长,单位100ms,默认1即100ms。在不指定录音文件路径时,此参数有效。

 

图片

2.4 播放录音

播放录音需要使用audio.play() 接口,需要将录音文件的存放路径(path),作为第二个参数传入,就可以将刚刚录音的文件,进行播放。

 

图片


3. 展示效果

将demo烧录至Air201,烧录进去之后会自动开机(如果有意外没有自动开机的话,请手动开机)。

烧录完程序开机后,等待蓝灯亮起,再对着MIC麦克说话。

 

图片

经过5秒后,蓝灯灭掉,会自动结束录音。随后间隔2秒,红灯亮起,开始播放录音文件。

▼ 点击查看演示效果 ▼

今天的分享就到这里了
更多实用示例带你开启应用之门
下一期见~

 

图片

你有哪些开发故事分享呢

标签:Air201,audio,LuatOS,record,合宙,录音,播放
From: https://www.cnblogs.com/luatos/p/18461938

相关文章

  • 鸿蒙开发教程实战案例源码分享-仿微信长按录音效果
    鸿蒙开发仿微信长按录音效果如果你项目有IM聊天,那么长按录音功能是必须的,最好是跟微信一样的效果,对不对。一、思路:自定义触碰事件二、效果图:鸿蒙开发教程实战案例源码分享-仿微信长按录音效果三、关键代码://联系:893151960@Entry@ComponentstructIndex{......
  • android仿录音机通知
    在Android中,为了模拟一个录音机应用的通知,你需要创建一个持久的通知,当录音开始时显示出来,并且在录音过程中一直存在,直到录音结束。下面是如何实现这一点的步骤:1.创建通知渠道对于AndroidOreo(8.0)及更高版本,你需要创建一个通知渠道。privatevoidcreateNotificationChannel(){......
  • 【问题】打开收音机,选择听筒模式,连接蓝牙耳机,播放录音文件,调节音量,声音没有变化
    1、通过起流、停流,不确定stream应该是0,还是3,判断不出来是哪部分日志。AudioFlinger:pid(30768)AudioFlinger:pid(3375)可以查一下,这两个pid都是什么应用在播,:com.hihonor.soundrecorder就是收音机在播放。AS.AudioService:VoicecallactivepkgName:com.hihonor.soundreco......
  • 合宙LuatOS应用,与时间相关那些事
    合宙嵌入式操作系统LuatOS——在蜂窝物联网模组上推出开源二次开发框架,功能齐全性能稳定,可大幅度降低用户的研发成本和研发周期。在LuatOS中,获取时间函数用得最多的就是os.time()函数了。接下来,我会讲一些与这个函数以及其他时间函数相关的知识。一、时间戳相关os.time()这个函数,只......
  • js实现网页端录音功能
    1、代码首先安装依赖包:recorderxnpminstallrecorderx-S<template><divclass="container"><divclass="mt-30"><el-button@click="onStartRecord">开始录音</el-button><el-button@click......
  • 合宙Air201模组LuatOS:点点鼠标就搞定的FOTA远程升级,你知道吗?
     你是不是也经常遇到小伙伴吐槽:开发是个苦差事!做项目倒还好,就怕遇到项目升级,那简直让人头大。。。如果你也有这种困惑,就多了解一下合宙的开发工具,简单实用又高效,甚至只需点点鼠标!本期,我们来学习合宙Air201的实用示例——FOTA远程升级 FOTA远程升级 编辑合宙Air201资产定位模组—......
  • 合宙Air201模组LuatOS:PWRKEY控制,一键解决解决关机难问题
    不知不觉间,我们已经发布拉期课程:helloworld初体验,点灯、远程控制、定位和扩展功能,你学的怎么样?很多伙伴表示已经有点上瘾啦!合宙Air201,如同我们一路升级打怪的得力法器,让开发愈发得心应手。本期,我们将进一步学习合宙Air201应用示例——PWRKEY控制关机功能 PWRKEY控制关机功能 编......
  • 合宙Air201模组LuatOS扩展功能:温湿度传感器篇!
     通过前面几期的学习,同学们的学习热情越来越高。合宙Air201模组除了支持3种定位方式外,还具有丰富的扩展功能,比如:通过外扩BTB链接方案,最多可支持21个IO接口:SPI、I2C、UART等多种接口全部支持。本期,我们将学习合宙Air201的扩展应用之一——I2C驱动AHT10温湿度传感器Air201驱动AHT10......
  • 合宙Air201资产定位模组LuatOS课程:GPS/LBS/Wi-Fi定位
    已经推出3期课程啦:helloworld、点灯、远程控制,小伙伴们是不是收获满满,期待更高阶的应用呢?本期,我们将学习合宙Air201的核心功能之一——定位功能!Air201定位示例教程  合宙Air201资产定位模组——是一个集成超低功耗4G通信、语音通话、超低功耗定位、计步、震动、Type-C、充电、放......
  • 合宙Air201模组LuatOS:点灯仪式
    上一期教程,我们学习了合宙Air201helloworld,很多小伙伴有了初步了解,接下来,推出第二篇:你将体验工程师的重要仪式——点灯!Air201点灯教程  合宙Air201资产定位模组——是一个集成超低功耗4G通信、语音通话、超低功耗定位、计步、震动、Type-C、充电、放音、录音等功能的超小PCBA。......