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) 设置通话音量等级
setMicGain (mode, level) 设置mic增益等级 通话时mic增益在通话建立成功之后设置才有效 录音mic增益设置后实时生效
getVolume () 获取喇叭音量等级
getCallVolume () 获取通话音量等级
setStrategy (strategy) 设置优先级相同时的播放策略
setTTSSpeed (speed) 设置TTS朗读速度
setChannel ([output=2][, input=0]) 设置音频输入、输出通道 设置后实时生效


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)
setMicGain (mode, level)
设置mic增益等级
 通话时mic增益在通话建立成功之后设置才有效
 录音mic增益设置后实时生效

Parameters:

  • mode string
    增益类型
          "call"表示通话中mic增益
          "record"表示录音mic增益
  • level number
    增益等级,取值为0-7

Returns:

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

Usage:

  • audio.setMicGain("record",7),设置录音时mic增益为7
getVolume ()
获取喇叭音量等级

Returns:

  • number vol,喇叭音量等级

Usage:

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

Returns:

  • number vol,通话音量等级

Usage:

  • audio.getCallVolume()
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 ([output=2][, input=0])
设置音频输入、输出通道
 设置后实时生效

Parameters:

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

Returns:

  • nil

Usage:

  • 设置为听筒输出:audio.setChannel(0)
    设置为耳机输出:audio.setChannel(1)
    设置为喇叭输出:audio.setChannel(2)
    设置为喇叭输出、耳机mic输入:audio.setChannel(2,3)
generated by LDoc 1.4.6 Last updated 2021-01-27 10:12:38