compressVideo

来自于:开发者立即使用

概述

compressVideo封装了iOS和Android端本地视频的压缩功能,以及本地视频的选取。可用于上传视频到服务器前对视频进行压缩,以便减少视频容量,减少上传时间。

模块接口

selectVideo

选取本地视频。注意:对于iOS,在选取视频确定时,系统会自带出现正在压缩提示,此处系统并未真正进行压缩,如需要压缩请使用compressVideo方法。对于Android,该方法会调用系统自带文件管理器进行选择文件,开发者可根据用户选择完成后返回的文件路径自行判断选择的文件是否是视频文件。

selectVideo(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 描述:返回所选视频的地址。Android的文件路径举例:"/storage/emulated/0/videos/in.mp4"或如:"/mnt/sdcard/videos/in.mp4".
  • 内部字段:
{
    path:""      //字符串类型,选中的视频路径    
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    msg:"系统没有文件管理器进行选择文件"//Android返回的错误提示
}

示例代码

var demo = api.require('compressVideo');
demo.selectVideo(function(ret,err){
            if(ret){
                //选择成功
                var msg = "视频地址 :"+ret.path;
                path = ret.path;
                alert(msg);
            }else{
                //选择失败
                alert(JSON.stringify(err));
            }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

compressVideo

传入视频路径压缩视频

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

params

path:

  • 类型:字符串
  • 默认:无
  • 描述:(必填)需要压缩的视频文件路径,该参数可传入调用selectVideo方法返回的视频文件路径(path),或可传入开发者自行获取到的的视频文件路径。

quality:

  • 类型:字符串
  • 默认:'m'
  • 描述:(可选项)对压缩视频的质量要求,取值:l、m、h , 其中 l 为最差画质,m 为中度画质,h 为略高画质

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
{
    path: ''  //字符串,视频压缩后的文件路径,Android压缩成功后默认存放在手机存储根目录下的compressVideo目录下
}

err:

  • 类型:JSON对象
  • 内部字段:
{
    msg:'压缩失败'
}

示例代码

var params = {
    path:path,//先通过上面的选取视频功能从手机里面选取视频得到路径
    quality:'m'
};
demo.compressVideo(params,function(ret,err){
    if(ret){
        //压缩成功
        var msg = "压缩后的视频地址:"+ret.path;
        alert(msg);
    }else{
        //压缩失败
        alert(JSON.stringify(err));
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本