@[TOC]
模块功能:音频播放.
支持MP3、amr文件播放;
支持本地TTS播放、通话中TTS播放到对端(需要使用支持TTS功能的core软件)
播放音频
|名称|传入值类型|释义|
|-|-|-|
|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
停止音频播放
|名称|传入值类型|释义|
|-|-|-|
|cbFnc|function|可选参数,默认为nil 停止音频播放的回调函数(停止结果通过此函数通知用户),回调函数的调用形式为:
cbFnc(result)
result:number类型
0表示停止成功|
nil
例子
audio.stop()
设置喇叭音量等级
|名称|传入值类型|释义| |-|-|-| |vol|number|音量值为0-7,0为静音|
bool result,设置成功返回true,失败返回false
例子
audio.setVolume(7)
设置通话音量等级
|名称|传入值类型|释义| |-|-|-| |vol|number|音量值为0-7,0为静音|
bool result,设置成功返回true,失败返回false
例子
audio.setCallVolume(7)
设置mic增益等级
通话时mic增益在通话建立成功之后设置才有效
录音mic增益设置后实时生效
|名称|传入值类型|释义|
|-|-|-|
|mode|string|增益类型
"call"表示通话中mic增益
"record"表示录音mic增益|
|level|number|增益等级,取值为0-7|
bool result,设置成功返回true,失败返回false
例子
audio.setMicGain("record",7),设置录音时mic增益为7级
获取喇叭音量等级
无
number vol,喇叭音量等级
例子
audio.getVolume()
获取通话音量等级
无
number vol,通话音量等级
例子
audio.getCallVolume()
设置优先级相同时的播放策略
|名称|传入值类型|释义|
|-|-|-|
|strategy|number|优先级相同时的播放策略;
0:表示继续播放正在播放的音频,忽略请求播放的新音频
1:表示停止正在播放的音频,播放请求播放的新音频|
nil
例子
audio.setStrategy(0)
audio.setStrategy(1)
设置TTS朗读速度
|名称|传入值类型|释义| |-|-|-| |speed|number|速度范围为0-100,默认50|
bool result,设置成功返回true,失败返回false
例子
audio.setTTSSpeed(70)
设置音频输入、输出通道
设置后实时生效
|名称|传入值类型|释义|
|-|-|-|
|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)