为帮助用户更好更快的使用插件,论坛维护了一个示例,示例中包含示例代码、知识点讲解、注意事项等,供您参考。
audioRecorder 插件通过封装系统的录音接口,能够快速的为开发者提供一个完整的录音功能。该插件提供Android和iOS版本,录音方式及录制的音频格式也依赖于相关系统。
开始录音
startRecord({params}, callback(ret, err))
channel:
sampleRates:
savePath:
format:
ret:
{
status : true // 布尔类型;是否录音成功
}
err:
{
errCode : 0 // 数字类型;错误码,取值范围如下:
// 0 初始化失败
// 1 格式不支持
// 2 输出路径无效
// 3 未知错误
// 4 无麦克风访问权限,暂仅支持iOS平台
}
var audioRecorder = api.require('audioRecorder');
audioRecorder.startRecord({
savePath:'fs://test.amr',
format:'amr'
}, function(ret, err){
api.alert({msg: JSON.stringify(ret)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取当前/实时音量
getVolume(callback(ret))
ret:
{
volume: 100 // 数字类型, 当前振幅
}
var audioRecorder = api.require('audioRecorder');
audioRecorder.getVolume(function(ret){
api.alert({msg: JSON.stringify(ret)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本
添加事件监听者
addEventListener({params},callback(ret))
name:
ret:
{
volume: 100 // 数字类型, 当前振幅
}
var audioRecorder = api.require('audioRecorder');
audioRecorder.addEventListener({
name: 'volume'
}, function(ret){
api.alert({msg: JSON.stringify(ret)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本
暂停录音,暂仅支持iOS端
pauseRecord(callback(ret))
ret:
{
status : true // 布尔类型;是否暂停成功
}
var audioRecorder = api.require('audioRecorder');
audioRecorder.pauseRecord(function(ret){
api.alert({msg: JSON.stringify(ret)});
});
iOS系统
可提供的1.0.0及更高版本
恢复录音,暂仅支持iOS端
resumeRecord(callback(ret))
ret:
{
status : true // 布尔类型;是否暂停成功
}
var audioRecorder = api.require('audioRecorder');
audioRecorder.resumeRecord(function(ret){
api.alert({msg: JSON.stringify(ret)});
});
iOS系统
可提供的1.0.0及更高版本
停止录音
stopRecord(callback(ret))
ret:
{
status : true // 布尔类型;是否停止成功
}
var audioRecorder = api.require('audioRecorder');
audioRecorder.stopRecord(function(ret){
api.alert({msg: JSON.stringify(ret)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本
转换成Mp3
covertToMp3({params}, callback(ret))
channel:
sampleRates:
originalFilePath:
mp3FilePath:
quality:
iOS平台仅支持wav,caf,acm,pcm格式,Android平台仅支持pcm格式。
ret:
{
status : true // 布尔类型;是否转换成功
}
var audioRecorder = api.require('audioRecorder');
audioRecorder.covertToMp3({
channel: 2,
sampleRates: 16000,
originalFilePath: 'fs://recorder/123.wav',
mp3FilePath: 'fs://recorder/123.mp3'
}, function(ret) {
api.alert({msg: JSON.stringify(ret)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取文件属性(文件大小和音频时长)
getAttr({params}, callback(ret))
path:
ret:
{
duration : 100000 // 数字类型;音频的时长;单位:ms
length : 6434734 // 数字类型;文件大小;单位:byte
}
var audioRecorder = api.require('audioRecorder');
audioRecorder.getAttr({
path: 'fs://recorder/123.mp3'
}, function(ret) {
api.alert({msg: JSON.stringify(ret)});
});
iOS系统,Android系统
可提供的1.0.0及更高版本