本插件封装了 iOS 、android 平台上原生视频压缩的功能。对于大型视频文件,压缩时可获取其压缩进度,支持设置压缩视频质量等功能。
1、对于较大的视频文件,可以用本插件压缩,但是比较费时,所以不建议用该插件对较大的文件做压缩
2、从1.0.5版本开始,升级的SDK,使用升级环境编译,且只支持3种压缩格式,
压缩本地视频文件
compression({params}, callback(ret))
path:
quality:
ret:
{
eventType: ‘exporting’, //字符串类型;交互事件类型,取值范围如下:
//exporting:正在压缩,压缩进度为0-100
//failed:失败
//completed:压缩完成事件 ,此时压缩进度为100
//cancelled:取消 (压缩进行中有效)
path: '' , //字符串类型;压缩后视频路径,仅当 eventType 为 completed 时有效
progress: //数字类型;当前压缩进度百分比:0-100
}
var videoCompression = api.require('videoCompression');
videoCompression.compression({
path: '',
quality: ''
}, function(ret) {
if(ret.eventType == 'exporting'){
console.log(JSON.stringify(ret));
} else {
api.alert({msg:JSON.stringify(ret)});
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
获取当前压缩视频的进度
getProgress({params}, callback(ret, err))
ret:
{
progress: 30 //数字类型;压缩进度百分比:0-100
}
var videoCompression = api.require('videoCompression');
videoCompression.getProgress(function(ret) {
alert(ret.progress);
});
iOS系统,Android系统
可提供的1.0.0及更高版本
停止,取消视频压缩
cancel({params})
var videoCompression = api.require('videoCompression');
videoCompression.cancel();
iOS系统,Android系统
可提供的1.0.0及更高版本
清除本地存放的压缩的视频文件,本接口只清除本插件压缩视频文件,调用 api.clearCache接口也会清除压缩的视频文件
clearCache()
var videoCompression = api.require('videoCompression');
videoCompression.clearCache();
iOS系统,Android系统
可提供的1.0.0及更高版本