Module record

模块功能:录音处理

Info:

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

Functions

start (seconds[, cbFnc=nil][, type="FILE"][, quality=1][, format=3][, streamRptLen=nil]) 开始录音
stop ([cbFnc=nil]) 停止录音
getFilePath () 读取录音文件的完整路径
getData (offset, len) 读取录音数据
getSize () 读取录音文件总长度,录音时长
delete () 删除录音
exists () 判断是否存在录音
isBusy () 是否正在处理录音


Functions

start (seconds[, cbFnc=nil][, type="FILE"][, quality=1][, format=3][, streamRptLen=nil])
开始录音

Parameters:

  • seconds number
    录音时长,单位:秒
  • cbFnc function [此参数可选,默认值为: nil]
    录音回调函数:
         当type参数为"FILE"时,回调函数的调用形式为:
             cbFnc(result,size)
                   result:录音结果,true表示成功,false或者nil表示失败
                   size:number类型,录音文件的大小,单位是字节,在result为true时才有意义
         当type参数为"STREAM"时,回调函数的调用形式为:
             cbFnc(result,size,tag)
                   result:录音结果,true表示成功,false或者nil表示失败
                   size:number类型,每次上报的录音数据流的大小,单位是字节,在result为true时才有意义
                   tag:string类型,"STREAM"表示录音数据流通知,"END"表示录音结束
  • type string [此参数可选,默认值为: "FILE"]
    录音模式
         "FILE"表示文件录音模式,录音数据自动保存在文件中,录音结束后,执行一次cbFnc函数
         "STREAM"表示流录音模式,录音数据保存在内存中,每隔一段时间执行一次cbFnc函数去读取录音数据流,录音结束后再执行一次cbFnc函数
  • quality number [此参数可选,默认值为: 1]
    录音质量,0:一般质量 1:中等质量 2:高质量 3:无损质量
  • format number [此参数可选,默认值为: 3]
    录音格式,1:pcm 2:wav 3:amrnb 4:speex
          pcm格式:录音质量参数无效,采样率:8000,单声道,采样精度:16 bit,5秒钟录音80KB左右
          wav格式:录音质量参数无效,比特率:128kbps,5秒钟录音80KB左右
          amrnb格式:录音质量参数有效
                     录音质量为0时:比特率:5.15kbps,5秒钟录音3KB多
                     录音质量为1时:比特率:6.70kbps,5秒钟录音4KB多
                     录音质量为2时:比特率:7.95kbps,5秒钟录音4KB多
                     录音质量为3时:比特率:12.2kbps,5秒钟录音7KB多
          speex格式:录音质量参数无效,pcm格式128kbps后的压缩格式,5秒钟6KB左右
  • streamRptLen number [此参数可选,默认值为: nil]
    流录音时,每次上报的字节阀值

Usage:

  • 文件录音模式,录音5秒,一般质量,amrnb格式,录音结束后执行cbFnc函数:
    record.start(5,cbFnc)
    流录音模式,录音5秒,一般质量,amrnb格式,每隔一段时间执行一次cbFnc函数,录音结束后再执行一次cbFnc函数:
    record.start(5,cbFnc,"STREAM")
    流录音模式,录音5秒,一般质量,amrnb格式,每产生500字节的录音数据执行一次cbFnc函数,录音结束后再执行一次cbFnc函数:
    record.start(5,cbFnc,"STREAM",nil,nil,500)
stop ([cbFnc=nil])
停止录音

Parameters:

  • cbFnc function [此参数可选,默认值为: nil]
    停止录音的回调函数(停止结果通过此函数通知用户),回调函数的调用形式为:
          cbFnc(result)
          result:number类型
                  0表示停止成功
                  1表示之前已经发送了停止动作,请耐心等待停止结果的回调

Usage:

  • record.stop(cb)
getFilePath ()
读取录音文件的完整路径

Returns:

  • string 录音文件的完整路径

Usage:

  • filePath = record.getFilePath()
getData (offset, len)
读取录音数据

Parameters:

  • offset
     偏移位置
  • len
     长度

Returns:

  • data 录音数据

Usage:

  • data = record.getData(0, 1024)
getSize ()
读取录音文件总长度,录音时长

Returns:

  1. fileSize 录音文件大小
  2. duration 录音时长

Usage:

  • fileSize, duration = record.getSize()
delete ()
删除录音

Usage:

  • record.delete()
exists ()
判断是否存在录音

Returns:

  • result true - 有录音 false - 无录音

Usage:

  • result = record.exists()
isBusy ()
是否正在处理录音

Returns:

  • result true - 正在处理 false - 空闲

Usage:

  • result = record.isBusy()
generated by LDoc 1.4.6 Last updated 2020-10-30 13:25:18