mp3Recorder

来自于:开发者立即使用

概述

mp3Recorder 模块概述

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

模块接口

addEventListener

视频结果和声音分贝监听

addEventListener(callback(ret))

callback(ret)

ret:

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

示例代码

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

可用性

iOS、Android系统

可提供的1.0.0及更高版本

startRecord

开始录音

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

params

channel:

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

sampleRates:

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

callback(ret,err)

ret:

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

err:

  • 类型:JSON 对象
  • 内部字段:
{
    msg : ''
}

示例代码

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

可用性

iOS、Android系统

可提供的1.0.0及更高版本

stopRecord

停止录音

stopRecord(callback(ret, err))

callback(ret, err)

ret:

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

err:

  • 类型:JSON 对象
  • 内部字段:
{
    msg : ''
}

示例代码

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

可用性

iOS、Android系统

可提供的1.0.0及更高版本

openVoiceLine

显示线性波形图

openVoiceLine({params}, callback(ret))

params

rect:

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

fixedOn:

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

fixed:

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

isTransparent:

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

callback(ret)

ret:

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

示例代码

var demo = api.require('mp3Recorder');
demo.openVoiceLine({
    rect : {
        x : 0,
        y : 0,
        w : api.frameWidth,
        h : api.frameHeight/3
    },
    fixedOn : api.frameName,
    fixed : true,
    isTransparent : false
},function(ret){
    alert(JSON.stringify(ret));
});

可用性

iOS、Android系统

可提供的1.0.0及更高版本

closeVoiceLine

关闭线性波形图

closeVoiceLine(callback(ret, err))

callback(ret, err)

ret:

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

err:

  • 类型:JSON 对象
  • 内部字段:
{
    msg : ''
}

示例代码

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

可用性

iOS、Android系统

可提供的1.0.0及更高版本

setDecibels

设置波形图的分贝值

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

params

decibel:

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

callback(ret,err)

ret:

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

err:

  • 类型:JSON 对象
  • 内部字段:
{
    msg : ''
}

示例代码

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

可用性

iOS、Android系统

可提供的1.0.0及更高版本