record

record

模块功能:录音处理

record.start(seconds, cbFnc, type, quality, format, streamRptLen)

开始录音

  • 参数

传入值类型

释义

number

seconds,录音时长,单 位:秒流录音模式下,如果想长时间 录音,可以将此参数设置为0x7FFFFFF F,相当于录音2147483647秒=24855天

function

可选参数, 默认为``nil``,cbFnc,录音 回调函数:当type参数为“FILE”时, 回调函数的调用形式为:cbFnc(resul t,size)result:录音结果,true表示 成功,false或者nil表示失败size:n umber类型,录音文件的大小,单位是 字节,在result为true时才有意义当t ype参数为“STREAM”时,回调函数的调 用形式为:cbFnc(result,size,tag) result:录音结果,true表示成功,f alse或者nil表示失败size:number类 型,每次上报的录音数据流的大小, 单位是字节,在result为true时才有 意义tag:string类型,“STREAM”表示 录音数据流通知,“END”表示录音结束

string

可选参数,默认为`` “FILE”``,type,录音模式“FILE ”表示文件录音模式,录音数据自动保 存在文件中,录音结束后,执行一次 cbFnc函数“STREAM”表示流录音模式, 录音数据保存在内存中,每隔一段时 间执行一次cbFnc函数去读取录音数据 流,录音结束后再执行一次cbFnc函数

number

可选参数,默认为``1``

,quality,录音质量,0:一般质量

1:中等质量 2:高质量 3:无损质量

number

可选参数,默认为` `3``,format,录音格式,1:pcm 2:wav 3:amrnb 4:s peexpcm格式:录音质量参数无效,采 样率:8000,单声道,采样精度:16 bit,5 秒钟录音80KB左右wav格式:录音质量 参数无效,比特率:128kbps,5秒钟 录音80KB左右amrnb格式:录音质量参 数有效录音质量为0时:比特率:5.15 kbps,5秒钟录音3KB多录音质量为1时 :比特率:6.70kbps,5秒钟录音4KB 多录音质量为2时:比特率:7.95kbps ,5秒钟录音4KB多录音质量为3时:比 特率:12.2kbps,5秒钟录音7KB多spe ex格式:录音质量参数无效,pcm格式 128kbps后的压缩格式,5秒钟6KB左右

number

可选参数 ,默认为``nil``,streamRpt Len,流录音时,每次上报的字节阀值

  • 返回值

  • 例子

-- 文件录音模式,录音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)

record.stop(cbFnc)

停止录音

  • 参数

传入值类型

释义

function

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

  • 返回值

  • 例子

record.stop(cb)

record.getFilePath()

读取录音文件的完整路径

  • 参数

  • 返回值

string 录音文件的完整路径

  • 例子

filePath = record.getFilePath()

record.getData(offset, len)

读取录音数据

  • 参数

传入值类型

释义

param

offset 偏移位置

param

len 长度

  • 返回值

data 录音数据

  • 例子

data = record.getData(0, 1024)

record.getSize()

读取录音文件总长度,录音时长

  • 参数

  • 返回值

fileSize 录音文件大小 duration 录音时长

  • 例子

fileSize, duration = record.getSize()

record.delete()

删除录音

  • 参数

  • 返回值

  • 例子

record.delete()

record.exists()

判断是否存在录音

  • 参数

  • 返回值

result true - 有录音 false - 无录音

  • 例子

result = record.exists()

record.isBusy()

是否正在处理录音

  • 参数

  • 返回值

result true - 正在处理 false - 空闲

  • 例子

result = record.isBusy()