合宙Air724UG LuatOS-Air script lib API--audio

audio
Table of Contents
audio
audio.play(priority, type, path, vol, cbFnc, dup, dupInterval)
audio.stop(cbFnc)
audio.setVolume(vol)
audio.setCallVolume(vol)
audio.setMicGain(mode, level)
audio.getVolume()
audio.getCallVolume()
audio.setStrategy(strategy)
audio.setTTSSpeed(speed)
audio.setChannel(output, input)
audio
模块功能:音频播放.

支持MP3、amr文件播放;

支持本地TTS播放、通话中TTS播放到对端(需要使用支持TTS功能的core软件)

audio.play(priority, type, path, vol, cbFnc, dup, dupInterval)
播放音频

参数
名称 传入值类型 释义
priority number 音频优先级,数值越大,优先级越高
优先级高的播放请求会终止优先级低的播放
相同优先级的播放请求,播放策略参考:audio.setStrategy接口
type string 音频类型,目前仅支持"FILE"、“TTS”
path string 音频文件路径,跟typ有关
typ为"FILE"时:表示音频文件路径
typ为"TTS"时:表示要播放的UTF8编码格式的数据
vol number 可选参数,默认为4 播放音量,取值范围0到7,0为静音
cbFnc function 可选参数,默认为nil 音频播放结束时的回调函数,回调函数的调用形式如下:
cbFnc(result)
result表示播放结果:
0-播放成功结束;
1-播放出错
2-播放优先级不够,没有播放
3-传入的参数出错,没有播放
4-被新的播放请求中止
5-调用audio.stop接口主动停止
dup bool 可选参数,默认为nil 是否循环播放,true循环,false或者nil不循环
dupInterval number 可选参数,默认为0 循环播放间隔(单位毫秒),dup为true时,此值才有意义
返回值
result,bool或者nil类型,同步调用成功返回true,否则返回false

例子
audio.play(0,“FILE”,“/lua/call.mp3”)
audio.play(0,“FILE”,“/lua/call.mp3”,7)
audio.play(0,“FILE”,“/lua/call.mp3”,7,cbFnc)
– 更多用法参考demo/audio/testAudio.lua
详细指南和示例参考:指南 示例

audio.stop(cbFnc)
停止音频播放

参数
名称 传入值类型 释义
cbFnc function 可选参数,默认为nil 停止音频播放的回调函数(停止结果通过此函数通知用户),回调函数的调用形式为:
cbFnc(result)
result:number类型
0表示停止成功
返回值
nil

例子
audio.stop()
详细指南和示例参考:指南 示例

audio.setVolume(vol)
设置喇叭音量等级

参数
名称 传入值类型 释义
vol number 音量值为0-7,0为静音
返回值
bool result,设置成功返回true,失败返回false

例子
audio.setVolume(7)
详细指南和示例参考:指南 示例

audio.setCallVolume(vol)
设置通话音量等级

参数
名称 传入值类型 释义
vol number 音量值为0-7,0为静音
返回值
bool result,设置成功返回true,失败返回false

例子
audio.setCallVolume(7)
详细指南和示例参考:指南 示例

audio.setMicGain(mode, level)
设置mic增益等级

通话时mic增益在通话建立成功之后设置才有效
录音mic增益设置后实时生效

参数
名称 传入值类型 释义
mode string 增益类型
"call"表示通话中mic增益
"record"表示录音mic增益
level number 增益等级,取值为0-7
返回值
bool result,设置成功返回true,失败返回false

例子
audio.setMicGain(“record”,7),设置录音时mic增益为7级
详细指南和示例参考:指南 示例

audio.getVolume()
获取喇叭音量等级

参数

返回值
number vol,喇叭音量等级

例子
audio.getVolume()
详细指南和示例参考:指南 示例

audio.getCallVolume()
获取通话音量等级

参数

返回值
number vol,通话音量等级

例子
audio.getCallVolume()
详细指南和示例参考:指南 示例

audio.setStrategy(strategy)
设置优先级相同时的播放策略

参数
名称 传入值类型 释义
strategy number 优先级相同时的播放策略;
0:表示继续播放正在播放的音频,忽略请求播放的新音频
1:表示停止正在播放的音频,播放请求播放的新音频
返回值
nil

例子
audio.setStrategy(0)
audio.setStrategy(1)
详细指南和示例参考:指南 示例

audio.setTTSSpeed(speed)
设置TTS朗读速度

参数
名称 传入值类型 释义
speed number 速度范围为0-100,默认50
返回值
bool result,设置成功返回true,失败返回false

例子
audio.setTTSSpeed(70)
详细指南和示例参考:指南 示例

audio.setChannel(output, input)
设置音频输入、输出通道

设置后实时生效

参数
名称 传入值类型 释义
output number 可选参数,默认为2 0:earphone听筒,1:headphone耳机,2:speaker喇叭
input number 可选参数,默认为0 0:主mic,3:耳机mic
返回值
nil

例子
– 设置为听筒输出:audio.setChannel(0)
– 设置为耳机输出:audio.setChannel(1)
– 设置为喇叭输出:audio.setChannel(2)
– 设置为喇叭输出、耳机mic输入:audio.setChannel(2,3)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

l531798151

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值