Module audio

模块功能:音频播放.

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

Info:

  • Copyright: openLuat
  • Release: 2018.3.19
  • License: MIT
  • Author: openLuat

Functions

play (priority, type, path[, vol=4][, cbFnc=nil][, dup=nil][, dupInterval=0]) 播放音频
stop ([cbFnc=nil]) 停止音频播放
setVolume (vol) 设置喇叭音量等级
setCallVolume (vol) 设置通话音量等级
setMicVolume (vol) 设置麦克音量等级
getVolume () 获取喇叭音量等级
getCallVolume () 获取通话音量等级
getMicVolume (vol) 获取麦克音量等级
setStrategy (strategy) 设置优先级相同时的播放策略
setTTSSpeed (speed) 设置TTS朗读速度
setChannel ([channel=2]) 设置音频输出通道 设置后实时生效


Functions

play (priority, type, path[, vol=4][, cbFnc=nil][, dup=nil][, dupInterval=0])
播放音频

Parameters:

  • priority number
    音频优先级,数值越大,优先级越高
  • type string
    音频类型,目前仅支持"FILE"、"TTS"、"TTSCC","RECORD"
  • path string
    音频文件路径,跟typ有关
                   typ为"FILE"时:表示音频文件路径
                   typ为"TTS"时:表示要播放的UTF8编码格式的数据
                   typ为"TTSCC"时:表示要播放给通话对端的UTF8编码格式的数据
                   typ为"RECORD"时:表示要播放的录音id
  • 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时,此值才有意义

Returns:

  • result,bool或者nil类型,同步调用成功返回true,否则返回false

Usage:

  • audio.play(0,"FILE","/ldata/call.mp3")
  • audio.play(0,"FILE","/ldata/call.mp3",7)
  • audio.play(0,"FILE","/ldata/call.mp3",7,cbFnc)
  • 更多用法参考demo/audio/testAudio.lua
stop ([cbFnc=nil])
停止音频播放

Parameters:

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

Returns:

  • nil

Usage:

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

Parameters:

  • vol number
    音量值为0-7,0为静音

Returns:

  • bool result,设置成功返回true,失败返回false

Usage:

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

Parameters:

  • vol number
    音量值为0-7,0为静音

Returns:

  • bool result,设置成功返回true,失败返回false

Usage:

  • audio.setCallVolume(7)
setMicVolume (vol)
设置麦克音量等级

Parameters:

  • vol number
    音量值为0-15,0为静音

Returns:

  • bool result,设置成功返回true,失败返回false

Usage:

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

Returns:

  • number vol,喇叭音量等级

Usage:

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

Returns:

  • number vol,通话音量等级

Usage:

  • audio.getCallVolume()
getMicVolume (vol)
获取麦克音量等级

Parameters:

  • vol
    
            

Returns:

  • number vol,麦克音量等级

Usage:

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

Parameters:

  • strategy number
    优先级相同时的播放策略;0:表示继续播放正在播放的音频,忽略请求播放的新音频;1:表示停止正在播放的音频,播放请求播放的新音频

Returns:

  • nil

Usage:

  • audio.setStrategy(0)
  • audio.setStrategy(1)
setTTSSpeed (speed)
设置TTS朗读速度

Parameters:

  • speed number
    速度范围为0-100,默认50

Returns:

  • bool result,设置成功返回true,失败返回false

Usage:

  • audio.setTTSSpeed(70)
setChannel ([channel=2])
设置音频输出通道
 设置后实时生效

Parameters:

  • channel number [此参数可选,默认值为: 2]
    0:earphone听筒  1:headphone耳机    2:speaker喇叭

Returns:

  • nil

Usage:

  • 设置为听筒输出:audio.setChannel(0)
    设置为耳机输出:audio.setChannel(1)
    设置为喇叭输出:audio.setChannel(2)
generated by LDoc 1.4.6 Last updated 2020-12-22 10:37:08