record录音

5 篇文章 1 订阅
1 篇文章 0 订阅

录音

简介

Air724UG 内置3种音频输出模式,分别为扬声器(SPK)输出,耳机(HP)输出和听筒(RECEIVER)输出,mic输入有主麦和耳机的mic输入。


API说明

audio的API在luat lib有做封装,建议直接用lib的API接口。

API接口描述
audio.play(priority, type, path, vol, cbFnc, dup, dupInterval)音频播放.
audio.stop(cbFnc)停止音频播放
audio.setVolume(vol)设置喇叭音量等级
audio.setCallVolume(vol)设置通话音量等级
audio.setChannel(output, input)设置音频输出、输入通道

更多API信息参考


示例

  1. EVB_Air724UG_A13开发板一套,包括天线SIM卡,USB线。
  2. PC电脑,一副带mic的国标耳机,一个1w喇叭 ,a13 板上自带了一个差分的驻极体mic。如果用a11,a12开发板要外接一个mic。
  3. luat开发环境:环境搭建方法
    图片.png

步骤

本文以demo\record这个DEMO为例设置:输入是开发板上mic,输出是喇叭做演示,如果要修改为其他方式可以参考以下第2点,这里不再详细介绍。
1.插好耳机,喇叭接到开发板的spk+,spk- 的管脚上。
2.修改demo代码如下:

  • 设置语音的输入和输出通道
--第一个参数语音输出:2是喇叭,1是耳机,0是听筒, 第二个参数语音输入:0是主麦,3是耳机
--比如以下是设置为喇叭输出,主麦输入
audio.setChannel(2,0) 
  • 启动定时器开始录音,并且播放录音

--函数名:rcdcb
--功能  :录音结束后的回调函数,如果录音成功返回true和文件大小,否则返回false
--[[
函数名:rcdcb
功能  :录音结束后的回调函数
参数  :
        result:录音结果,true表示成功,false或者nil表示失败
        size:number类型,录音文件的大小,单位是字节,在result为true时才有意义
返回值:无
]]
function rcdcb(result,size)
    log.info("testRecord.rcdcb",result,size)
    if result then
        rcdoffset,rcdsize,rcdcnt = 0,size,(size-1)/RCD_READ_UNIT+1
        sys.timerLoopStart(readrcd,1000)
    end    
end

--定时1s,录音5s
sys.timerStart(record.start,1000,5,rcdcb)

3.在了解并修改了DEMO后将demo和对应的底包:Luat_V0030_RDA8910_TTS_FLOAT.pac下载到开发板,下载的方式这里不详细说明请参考环境搭建中的烧录章节。
4. 下载完成后重启,对着开发板上的mic讲话,几秒后喇叭会输出你刚讲过的话,在luatoos工具上可以看到打印的数据如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-X21vLhLG-1624772093763)(http://openluat-luatcommunity.oss-cn-hangzhou.aliyuncs.com/images/20210404190948348_微信截图_20210404190914.png “undefined”)]


常见问题

  • 为什么设置通道没用?
    1:通道设置是否正确
    2:看mic ,喇叭,耳机是否损坏,固件是否选对

相关资料以及购买链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值