mp3Recorder

来自于:开发者立即使用

addEventListener startRecord stopRecord openVoiceLine closeVoiceLine setDecibels pauseRecord resumeRecord

论坛示例

为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码供您参考。

概述

mp3Recorder 模块概述

mp3Recorder模块封装在iOS、Android下录音直接生成mp3,统一2个平台的录音生成文件,方便双平台之间的交互,减少录音完成后再转码的过程;同时提供分贝波形图显示UI。

固件要求

Android:4.0及以上 iOS:8.0及以上

模块接口

addEventListener

视频结果和声音分贝监听

addEventListener(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;true||false
  3. evenType : 'endRecord'//录制结束:endRecord
  4. //分贝值:Decibels
  5. data:{
  6. path : '',//录音的文件
  7. duration : 1000,//时长(毫秒)
  8. },
  9. decibel : 11 //分贝值(范围:0-60)
  10. }

示例代码

  1. var demo = api.require('mp3Recorder');
  2. demo.addEventListener(function(ret, err){
  3. alert(JSON.stringify(ret));
  4. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

startRecord

开始录音

startRecord({params}, callback(ret,err))

params

channel:

  • 类型:数字型
  • 描述:(可选项)声道支持:1 单声道 2 立体声道。
  • 默认值:2

sampleRates:

  • 类型:数字型
  • 描述:(可选项)采样率。(8000/44100/96000)
  • 默认值:44100

isDefaultToSpeaker:

  • 类型:布尔型
  • 描述:(可选项)限定录制声音时是否限定扬声器进行播放音频。
  • 默认值:false

callback(ret,err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;true|false
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. msg : ''
  3. }

示例代码

  1. var demo = api.require('mp3Recorder');
  2. demo.startRecord({
  3. channel: 2,//声道支持:1 单声道 2 立体声道
  4. sampleRates : 44100,//采样率
  5. },function(ret, err){
  6. alert(JSON.stringify(ret)+" "+JSON.stringify(err));
  7. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

stopRecord

停止录音

stopRecord(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;true||false
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. msg : ''
  3. }

示例代码

  1. var demo = api.require('mp3Recorder');
  2. demo.stopRecord();

可用性

iOS、Android系统

可提供的1.0.0及更高版本

openVoiceLine

显示线性波形图

openVoiceLine({params}, callback(ret))

params

rect:

  • 类型:JSON 对象
  • 描述:(必填项)模块的位置及尺寸
  • 内部字段:
  1. {
  2. x: 0, //(必填项)数字类型;模块左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:0
  3. y: 0, //(必填项)数字类型;模块左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:0
  4. w: 320, //(必填项)数字类型;模块的宽度;默认值:所属的 Window 或 Frame 的宽度
  5. h: 250 //(必填项)数字类型;模块的高度;默认值:所属的 Window 或 Frame 的高度
  6. }

fixedOn:

  • 类型:字符串
  • 描述:(可选项)模块所属 Frame 的名字,若不传则模块归属于当前 Window

fixed:

  • 类型:布尔
  • 描述:((可选项)模块是否随所属 Window 或 Frame 滚动
  • 默认值:true(不随之滚动)

isTransparent:

  • 类型:布尔型
  • 描述:(可选项)背景是否透明(透明时可以穿透点击视图)。
  • 默认值:false

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;true
  3. }

示例代码

  1. var demo = api.require('mp3Recorder');
  2. demo.openVoiceLine({
  3. rect : {
  4. x : 0,
  5. y : 0,
  6. w : api.frameWidth,
  7. h : api.frameHeight/3
  8. },
  9. fixedOn : api.frameName,
  10. fixed : true,
  11. isTransparent : false
  12. },function(ret){
  13. alert(JSON.stringify(ret));
  14. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

closeVoiceLine

关闭线性波形图

closeVoiceLine(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;true||false
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. msg : ''
  3. }

示例代码

  1. var demo = api.require('mp3Recorder');
  2. demo.closeVoiceLine(function(ret, err){
  3. alert(JSON.stringify(ret) + " " +JSON.stringify(err));
  4. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setDecibels

设置波形图的分贝值

setDecibels({params}, callback(ret,err))

params

decibel:

  • 类型:浮点型
  • 描述:(可选项)分贝值,范围0-60
  • 默认值:1.0

callback(ret,err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;true|false
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. msg : ''
  3. }

示例代码

  1. var demo = api.require('mp3Recorder');
  2. demo.setDecibels({
  3. decibel : 12.33
  4. },function(ret,err){
  5. alert(JSON.stringify(ret,err));
  6. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

pauseRecord

暂停录音

pauseRecord(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;true||false
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. msg : ''
  3. }

示例代码

  1. var demo = api.require('mp3Recorder');
  2. demo.pauseRecord();

可用性

iOS、Android系统

可提供的1.0.5及更高版本

resumeRecord

恢复录音

resumeRecord(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;true||false
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. msg : ''
  3. }

示例代码

  1. var demo = api.require('mp3Recorder');
  2. demo.resumeRecord();

可用性

iOS、Android系统

可提供的1.0.5及更高版本