qiniuShortVideo

概述

qiniuShortVideo 封装了七牛的短视频 SDK,提供了包括美颜、滤镜、水印、断点录制、分段回删、视频编辑、混音特效、MV 特效、本地/云端存储在内的多种功能。

android编译及注意事项

  • android使用升级环境编译
  • android编译需在Android 4.3 (API 18) 及其以上
  • android从1.0.7版本开始不需要上传自定义插件了

configuration

视频拍摄配置。

configuration({params})

params

rect:

  • 类型:JSON 对象
  • 描述:(可选项)播放器的位置及尺寸
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;摄像头的预览视图左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:0
    y: 0,   //(可选项)数字类型;(可选项)摄像头的预览视图左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:0
    w: 300,  //(可选项)数字类型;摄像头的预览视图的宽度;支持'aoto';默认值:所属的 Window 或 Frame 的宽度
    h: 200   //(可选项)数字类型;摄像头的预览视图的高度;支持'aoto';默认值:w的3/4
}

beauty:

  • 类型:JSON 对象
  • 描述:(可选项)美颜设置 (暂仅支持Android)
  • 内部字段:
{
    level: 0.5,   // 数字类型,美颜程度
    redden:0.5,   // 数字类型,红润程度
    whiten:0.5    // 数字类型,美白程度
}

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项)摄像头的预览视图添加到指定窗口的名字
  • 默认:插件依附于当前 window

fixed:

  • 类型:布尔类型
  • 描述:(可选项)摄像头的预览视图是否随所属 window 或 frame 滚动
  • 默认:true(不随之滚动)

maxDuration:

  • 类型:数字类型
  • 描述:(可选项)视频录制的最大时长,单位为秒
  • 默认:10

minDuration:

  • 类型:数字类型
  • 描述:(可选项)视频录制的最短时间,单位为秒;(android不支持)
  • 默认:2

innerFocusViewShowEnable:

  • 类型:布尔类型
  • 描述:(可选项)手动对焦的视图动画;(android不支持)
  • 默认:true

continuousAutofocusEnable:

  • 类型:布尔类型
  • 描述:(可选项)连续自动对焦;(android不支持)
  • 默认:true

touchToFocusEnable:

  • 类型:布尔类型
  • 描述:(可选项)手动点击屏幕进行对焦;(android不支持)
  • 默认:true

smoothAutoFocusEnabled:

  • 类型:布尔类型
  • 描述:(可选项)该属性适用于视频拍摄过程中用来减缓因自动对焦产生的镜头伸缩,使画面不因快速的对焦而产生抖动感;(android暂不支持)
  • 默认:true

outputFileType:

  • 类型:字符串类型

  • 描述:(可选项)视频的文件类型;android只支持mp4

  • 取值范围:

    'mp4' : .mp4;

    'mov' : .mov;

    'm4a' : .m4a

  • 默认:'mp4'

videoFrameRate:

  • 类型:数字类型
  • 描述:(可选项)采集的视频数据的帧率
  • 默认:25

cameraPreviewSizeLevel:

  • 类型:字符串类型

  • 描述:(可选项)设置采集画面的分辨率 (ios不支持)

  • 默认:480P

  • 取值范围:

    • 120P
    • 240P
    • 360P
    • 480P
    • 720P
    • 960P
    • 1080P
    • 1200P

cameraPreviewSizeRatio:

  • 类型:字符串类型

  • 描述:(可选项)设置采集画面的长宽比 (ios不支持)

  • 默认:16:9

  • 取值范围:

    • 16:9
    • 4:3

videoSize:

  • 类型:android为字符串类型,iOS为json对象

  • 描述:(可选项)设置编码视频的分辨率

  • 默认值:480*480(iOS不支持此默认值)

  • 取值范围:

    • 240*240
    • 320*240
    • 352*352
    • 640*352
    • 360*360
    • 480*360
    • 640*360
    • 480*480
    • 640*480
    • 848*480
    • 544*544
    • 720*544
    • 720*720
    • 960*720
    • 1280*720
    • 1088*1088
    • 1440*1088
  • iOS内部字段: 需要注意的是,这个参数影响的是视频编码时的分辨率,而非摄像头采集到数据的预览大小,传递给编码器的图像尺寸与此尺寸不同时,会按照AVVideoScalingModeResizeAspectFill对图像做剪切,从而确保图像不会出现压缩的现象。

{
    w: 0,   //数字类型;视频录制分辨率的width
    h: 0,   //数字类型;视频录制分辨率的height
}
```	

    
    

encodingBitrate:

- 类型:数字类型
- 描述:(可选项)视频编码码率;单位Kbps;iOS说明:该参数的视频编码实际过程中,并不是恒定的数值,所以只能设定平均视频编码码率。
- 默认值:1000;iOS默认值:无
- 取值范围:(ios无取值范围)

    - 500
    - 800
    - 1000
    - 1200
    - 1600
    - 2000
    - 2500
    - 4000
    - 8000

hwCodeEnable:

- 类型:布尔类型
- 描述:(可选项)是否开启 H.264 硬编  (ios不支持)
- 默认值:true      true:硬编    false:软编

channelConfig:

- 类型:数字类型
- 描述:(可选项)音频声道  (ios不支持)
- 默认值: 1
- 取值范围:

    - 1    //系统的 AudioFormat.CHANNEL_IN_MONO
    - 2    //系统的 AudioFormat.CHANNEL_IN_STEREO,可能不兼容部分设备,请视情况使用

channels:

- 类型:数字类型
- 描述:(可选项)音频声道数量;目前只支持 1 (默认) 和 2,分别对应 channelConfig 声道设置的 1 与 2  (ios不支持)
- 默认值:1

fillMode:

- 类型:字符串
- 描述:(可选项)预览比例;(ios不支持)
- 默认值:preserveAspectRatio
- 取值范围:

    - 'stretch' : Stretch to fill the full view, which may distort the image outside of its normal aspect ratio;
    
    - 'preserveAspectRatio' : Maintains the aspect ratio of the source image, adding bars of the specified background color;

fileName:

- 类型:字符串
- 描述:(可选项)生成文件的名称,只是一个名称,不是路径,如果不写,插件随机生成一个,(ios不支持)
- 默认值:随机生成
    

sessionPreset:

- 类型:数字
- 描述:(可选项)采集时的画幅分辨率大小,需要注意的是指定分辨率的 sessionPreset 例如 1920x1080 并非所有机型的所有摄像头均支持,在设置相应的采集分辨率之前请务必保证做过充分的机型适配测试,避免在某些机型使用该机型摄像头不支持的 sessionPreset。另外,如果使用只指定采集质量的 sessionPreset,例如 medium,那系统会根据当前摄像头的支持情况使用相应质量等级的分辨率进行采集。此参数仅支持iOS
- 默认值:5
- 取值范围:

    - 0    //high
    - 1    //medium	
    - 2    //low
    - 3    //352x288
    - 4    //640x480
    - 5    //1280x720 
    - 6    //1920x1080
    - 7    //3840x2160(只支持iOS9(包含)以上,否则设置无效)
    - 8    //1280x720
    - 9    //960x540


## 示例代码

```js
var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.configuration({
                              rect : {
                              x :  20,
                              y : 550,
                              w : 350,
                              h : 170
                              },                                              									maxDuration : 20
                          });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

startCaptureSession

开启音视频采集。

startCaptureSession()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.startCaptureSession();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

stopCaptureSession

停止音视频采集(Android 不支持该方法)

stopCaptureSession()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.stopCaptureSession();

可用性

iOS系统

可提供的1.0.0及更高版本

startRecording

开始录制视频。

startRecording()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.startRecording();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

stopRecording

停止录制视频。

stopRecording()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.stopRecording();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

cancelRecording

取消录制会停止视频录制并删除已经录制的视频段文件(包括本地视频文件),可以再调用startRecording和stopRecording进行录制,录制时间从零算起。

cancelRecording()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.cancelRecording();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

showPreviewView

显示摄像头的预览视图。

showPreviewView()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.showPreviewView();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

hidePreviewView

隐藏摄像头的预览视图。

hidePreviewView()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.hidePreviewView();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

closeVideoRecorder

关闭视频拍摄功能,并移除摄像头的预览视图,如需启用视频拍摄功能需要重新调用configuration接口。

closeVideoRecorder()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.closeVideoRecorder();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setPreviewViewRect

设置摄像头的预览视图的坐标。

setPreviewViewRect({params})

params

rect:

  • 类型:JSON 对象
  • 描述:(可选项)播放器的位置及尺寸
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;插件左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:configuration中设置的x坐标
    y: 0,   //(可选项)数字类型;(可选项)插件左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:configuration中设置的y坐标
    w: 300,  //(可选项)数字类型;插件的宽度;默认值:configuration中设置的宽度
    h: 200   //(可选项)数字类型;插件的高度;默认值:configuration中设置的高度
}

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo. setPreviewViewRect({
                            rect:{
                                    x: 0,
                                y: 0,
                                w: 300,
                                h: 200
                                 }
                              });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getFilesCount

获取录制的视频段的总数目(从调用configuration接口算起)。

getFilesCount(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
  count : 2				 //数字类型;录制的视频段的总数目
}

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.getFilesCount(function(ret) {
                 if (ret) {
                         api.alert({msg: JSON.stringify(ret)});
                 }
              });

可用性

iOS系统

可提供的1.0.0及更高版本

getTotalDuration

获取所有录制的视频段加起来的总时长(从调用configuration接口算起)。

getTotalDuration(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
  totalDuration : 20			 //数字类型;所有录制的视频段加起来的总时长
 }

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.getTotalDuration(function(ret) {
                 if (ret) {
                         api.alert({msg: JSON.stringify(ret)});
                 }
              });

可用性

iOS系统

可提供的1.0.0及更高版本

getAllFiles

获取所有录制的视频段的地址(从调用configuration接口算起)。

getAllFiles(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
  allFiles : [			 //数组类型;所有录制的视频段的地址数组
   '/var/mobile/Containers/20171204153729.mp4' :  //字符串类型;视频路径
  ]
 }

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.getAllFiles(function(ret) {
                 if (ret) {
                         api.alert({msg: JSON.stringify(ret)});
                 }
              });

可用性

iOS系统

可提供的1.0.0及更高版本

deleteAllFiles

删除所有录制的视频段,从调用configuration接口算起(也会将本地存储的视频删除,如再次调用startRecording进行录制,录制时间从零算起)。

deleteAllFiles()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.deleteAllFiles();

可用性

iOS系统

可提供的1.0.0及更高版本

deleteLastFile

删除上一个录制的视频段(也会将本地存储的视频删除,删除的视频段的时长也会从总时长中减去)。

deleteLastFile()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.deleteLastFile();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

isTorchOn

获取是否开启闪光灯状态。

isTorchOn(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
  isTorchOn : true				 //布尔类型;是否开启闪光灯
 }

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.isTorchOn(function(ret) {
                 if (ret) {
                         api.alert({msg: JSON.stringify(ret)});
                 }
              });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

torchOn

开启或关闭闪光灯。

torchOn({params})

params

torchOn:

  • 类型:布尔类型
  • 描述:(可选项)开启或关闭闪光灯
  • 默认:false

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.torchOn();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

toggleCamera

切换前置/后置摄像头。

toggleCamera()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.toggleCamera();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setBeautifyModeOn

开启或关闭美颜功能。

setBeautifyModeOn({params})

params

on:

  • 类型:布尔类型
  • 描述:(可选项)开启或关闭美颜功能
  • 默认:false

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.setBeautifyModeOn();

可用性

iOS系统, Android系统

可提供的1.0.0及更高版本

setBeautify

设置对应 Beauty 的程度参数。

setBeautify({params})

params

beautify:

  • 类型:数字类型
  • 描述:(可选项)设置对应 Beauty 的程度参数,beautify 范围从 0 ~ 1,0 为不美颜
  • 默认:0.5

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.setBeautify();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setWhiten

设置美白程度(注意:如果美颜不开启,设置美白程度参数无效)。

setWhiten({params})

params

whiten:

  • 类型:数字类型
  • 描述:(可选项)设置美白程度,范围是从 0 ~ 1,0 为不美白
  • 默认:0.5

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.setWhiten();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setRedden

设置红润的程度参数(注意:如果美颜不开启,设置美白程度参数无效)。

setRedden({params})

params

redden:

  • 类型:数字类型
  • 描述:(可选项)设置红润的程度参数,范围是从 0 ~ 1,0 为不红润
  • 默认:0.5

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.setRedden();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setWaterMark

开启水印。

setWaterMark({params})

params

origin:

  • 类型:JSON 对象
  • 描述:(可选项)水印图片位置
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;水印图片位置左上角的 x 坐标(相对于摄像头预览视图);默认值:0
    y: 0,   //(可选项)数字类型;水印图片位置左上角的 y 坐标(相对于摄像头预览视图);默认值:0
}

path:

  • 类型:字符串类型
  • 描述:用于设置水印的图片路径,要求本地路径(widget://、fs://)
  • 默认:无

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.setWaterMark({
                                 path : 'widget://res/qiniu_logo.png',
                                 origin : {
                                     x : 10,
                                     y : 10
                                 }
                              });

可用性

iOS系统

可提供的1.0.0及更高版本

clearWaterMark

移除水印。

clearWaterMark()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.clearWaterMark();

可用性

iOS系统

可提供的1.0.0及更高版本

isRecording

是否处于录制状态。

isRecording(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
  isRecording : true				 //布尔类型;是否处于录制状态
 }

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.isRecording(function(ret) {
                 if (ret) {
                         api.alert({msg: JSON.stringify(ret)});
                 }
              });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

recoderRate

设置视频拍摄速率,处于录制状态时,设置该值无效。

recoderRate({params})

params

recoderRate:

  • 类型:字符串类型

  • 描述:(可选项)设置视频拍摄速率

  • 取值范围:

    'normal' : 1x;

    'slow' : 0.667x;

    'topSlow' : 0.5x;

    'fast' : 1.5x;

    'topFast' : 2x

  • 默认:'normal'

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.recoderRate();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

fillMode

摄像头预览视图中视频的填充方式。

fillMode({params})

params

fillMode:

  • 类型:字符串类型

  • 描述:(可选项)填充方式

  • 取值范围:

    'stretch' : Stretch to fill the full view, which may distort the image outside of its normal aspect ratio;

    'preserveAspectRatio' : Maintains the aspect ratio of the source image, adding bars of the specified background color;

    'preserveAspectRatioAndFill' : Maintains the aspect ratio of the source image, zooming in on its center to fill the view;

  • 默认:'preserveAspectRatioAndFill'

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.fillMode();

可用性

iOS系统

可提供的1.0.0及更高版本

getFileDuration

获取视频/音频文件的总时长。

getFileDuration({params},callback(ret))

params

path:

  • 类型:字符串类型
  • 描述:视频/音频文件的路径,要求本地路径(widget://、fs://)(android不支持widget)
  • 默认:无

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
  duration :20				 //数字类型;视频/音频文件的总时长
 }

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.getFileDuration(
                     {
                        path : ''
                     },function(ret) {
                     if (ret){	                							api.alert({msg: JSON.stringify(ret)});
                     }
              });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

openFilterSelectView

打开滤镜选择视图。

openFilterSelectView({params})

params

y:

  • 类型:数字类型
  • 描述:(可选项)滤镜左上角的 y 坐标(相对于所属的 Window 或 Frame)
  • 默认:0

useChinese:

  • 类型:布尔类型
  • 描述:滤镜名称是否使用中文
  • 默认:false

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项)滤镜选择视图添加到指定窗口的名字
  • 默认:插件依附于当前 window

fixed:

  • 类型:布尔类型
  • 描述:(可选项)插件是否随所属 window 或 frame 滚动
  • 默认:true(不随之滚动)

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.openFilterSelectView();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

showFilterSelectView

显示滤镜选择视图。

showFilterSelectView()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.showFilterSelectView();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

hideFilterSelectView

隐藏滤镜选择视图。

hideFilterSelectView()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.hideFilterSelectView();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

closeFilterSelectView

关闭滤镜选择视图。

closeFilterSelectView()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.closeFilterSelectView();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getFilterViewHeight

获取滤镜视图的高度。

getFilterViewHeight()

##retrun

height:

  • 类型:数字类型
  • 滤镜视图高度:

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
var height = qiniuShortVideo.getFilterViewHeight();
alert(height);

可用性

Android系统

可提供的1.0.5及更高版本

getFilterInfo

获取滤镜信息。

getFilterInfo(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
  FilterInfos : [			 		//数组类型;滤镜信息数组
    {							 		//JSON对象;滤镜信息
        'name' : '' 					//字符串类型;滤镜名称
        'coverImagePath' : '' 		//字符串类型;滤镜封面(android不支持)
        'colorImagePath' : ''		//字符串类型;滤镜图片
        'index' : 6 					//数字类型;滤镜索引
    }
  ]
}

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.getFilterInfo(function(ret) {
                 if (ret) {
                         api.alert({msg: JSON.stringify(ret)});
                 }
              });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

addFilter

根据索引给摄像头预览视图设置滤镜。

addFilter({params})

params

index:

  • 类型:数字类型
  • 描述:(可选项)滤镜索引,(android不支持)
  • 默认:0

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.addFilter();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

configurationVideoEditor

配置视频编辑预览视图。

configurationVideoEditor({params})

params

rect:

  • 类型:JSON 对象
  • 描述:(可选项)播放器的位置及尺寸
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;视频编辑预览视图左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:0
    y: 0,   //(可选项)数字类型;视频编辑预览视图左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:0
    w: 300,  //(可选项)数字类型;视频编辑预览视图的宽度;支持'aoto';默认值:所属的 Window 或 Frame 的宽度
    h: 200   //(可选项)数字类型;视频编辑预览视图的高度;支持'aoto';默认值:w的3/4
}

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项)视频编辑预览视图添加到指定窗口的名字
  • 默认:插件依附于当前 window

fixed:

  • 类型:布尔类型
  • 描述:(可选项)视频编辑预览视图是否随所属 window 或 frame 滚动
  • 默认:true(不随之滚动)

videoSize:

  • 类型:JSON 对象
  • 描述:(可选项)编辑时的预览分辨率;(android不支持,可以设置填充模式来改变预览大小)
  • 默认值:原视频的分辨率
  • 内部字段:
{
    w: 0,   //数字类型;编辑时的预览分辨率的width
    h: 0,   //数字类型;编辑时的预览分辨率的height
}

timeRange:

  • 类型:JSON 对象
  • 描述:(可选项)播放文件的 timeRange 范围
  • 默认值:从开始到结束
  • 内部字段:
{
    start: 0,   //数字类型;开始时间,单位:秒
    duration: 10,  //数字类型;播放时长,单位:秒;(android不支持,默认播放到结束)
}

loopEnabled:

  • 类型:布尔类型
  • 描述:(可选项)循环播放
  • 默认:false

path:

  • 类型:字符串类型
  • 描述:(可选项)视频文件的路径,要求本地路径(widget://、fs://)(android不支持widget)
  • 默认:调用configuration接口后录制的视频,若调用过scaleAsset接口,则为经过倍速处理后的视频

fileName:

  • 类型:字符串
  • 描述:(可选项)生成文件的名称,只是一个名称,不是路径,如果不写,插件随机生成一个,(ios不支持)
  • 默认值:随机生成

rateType:

  • 类型:数字类型
  • 描述:(可选项)设置编辑后生成视频的倍速;(ios不支持)
  • 默认是:1
  • 取值范围:
    • 0.25
    • 0.5
    • 1
    • 2
    • 4

fillMode:

  • 类型:字符串

  • 描述:(可选项)预览比例;(ios不支持)

  • 默认值:preserveAspectRatio

  • 取值范围:

    • 'stretch' : Stretch to fill the full view, which may distort the image outside of its normal aspect ratio;

    • 'preserveAspectRatio' : Maintains the aspect ratio of the source image, adding bars of the specified background color;

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.configurationVideoEditor({
                              rect : {
                                  x :  20,
                                  y : 550,
                                  w : 350,
                                     h : 170
                              }
                          });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

startEditing

加载编辑信息,实时预览编辑效果。

startEditing()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.startEditing();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

stopEditing

停止实时预览编辑效果,效果上相当于暂停,调用startEditing可继续。

stopEditing()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.stopEditing();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

showVideoEditor

显示视频编辑预览视图。

showVideoEditor()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.showVideoEditor();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

hideVideoEditor

隐藏视频编辑预览视图。

hideVideoEditor()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.hideVideoEditor();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

closeVideoEditor

关闭视频编辑预览视图,若再次使用此功能需要重新调用configurationVideoEditor接口。

closeVideoEditor()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.closeVideoEditor();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setVideoEditorRect

设置视频编辑预览视图的坐标。

setVideoEditorRect({params})

params

rect:

  • 类型:JSON 对象
  • 描述:(可选项)视频编辑预览视图的位置及尺寸
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;视频编辑预览视图左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:configurationVideoEditor中设置的x坐标
    y: 0,   //(可选项)数字类型;(可选项)视频编辑预览视图左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:configurationVideoEditor中设置的y坐标
    w: 300,  //(可选项)数字类型;视频编辑预览视图的宽度;默认值:configurationVideoEditor中设置的宽度
    h: 200   //(可选项)数字类型;视频编辑预览视图的高度;默认值:configurationVideoEditor中设置的高度
}

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.setVideoEditorRect({
                            rect:{
                                    x: 0,
                                y: 0,
                                w: 300,
                                h: 200
                                 }
                              });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

editorFillMode

视频编辑预览视图的填充方式。

editorFillMode({params})

params

fillMode:

  • 类型:字符串类型

  • 描述:(可选项)填充方式

  • 取值范围:

    'stretch' : Stretch to fill the full view, which may distort the image outside of its normal aspect ratio;

    'preserveAspectRatio' : Maintains the aspect ratio of the source image, adding bars of the specified background color;

    'preserveAspectRatioAndFill' : Maintains the aspect ratio of the source image, zooming in on its center to fill the view;(android不支持)

  • 默认:'preserveAspectRatio'

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.editorFillMode();

可用性

iOS系统

可提供的1.0.0及更高版本

setVideoSize

设置视频的预览分辨率。

setVideoSize({params})

params

videoSize:

  • 类型:JSON 对象
  • 描述:(可选项)视频的预览分辨率
  • 默认值:原视频的分辨率
  • 内部字段:
{
    w: 0,   //数字类型;视频的预览分辨率的width
    h: 0,   //数字类型;视频的预览分辨率的height
}

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.setVideoSize();

可用性

iOS系统

可提供的1.0.0及更高版本

setVolume

视频编辑时设置原音(前景)和混音(背景)音量。

setVolume({params})

params

volume:

  • 类型:数字类型
  • 描述:(可选项)音量 取值范围:0.0 - 1.0
  • 默认值:0

bgVolume:

  • 类型:数字类型
  • 描述:(可选项)背景音量 取值范围:0.0 - 1.0
  • 默认值:0

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.setVolume();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getVolume

视频编辑时获取原视频的音量。

getVolume(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
  volume :0				 //数字类型;音量
 }

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.getVolume(function(ret) 
                        {
                         if (ret){	                							api.alert({msg: JSON.stringify(ret)});
                         }
                      });

可用性

iOS系统

可提供的1.0.0及更高版本

editorSetWaterMark

视频编辑时开启水印。

editorSetWaterMark({params})

params

origin:

  • 类型:JSON 对象
  • 描述:(可选项)水印图片位置
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;水印图片位置左上角的 x 坐标(相对于视频编辑预览视图);默认值:0
    y: 0,   //(可选项)数字类型;水印图片位置左上角的 y 坐标(相对于视频编辑预览视图);默认值:0
}

path:

  • 类型:字符串类型
  • 描述:用于设置水印的图片路径,要求本地路径(widget://、fs://)
  • 默认:无

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.editorSetWaterMark({
                                 path : 'widget://res/qiniu_logo.png',
                                 origin : {
                                     x : 10,
                                     y : 10
                                 }
                              });

可用性

iOS系统

可提供的1.0.0及更高版本

editorClearWaterMark

视频编辑时移除水印。

editorClearWaterMark()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.editorClearWaterMark();

可用性

iOS系统

可提供的1.0.0及更高版本

addMusic

视频编辑时添加背景音乐。

addMusic({params})

params

timeRange:

  • 类型:JSON 对象
  • 描述:(可选项)播放文件的 timeRange 范围
  • 默认值:使用整段音乐
  • 内部字段:
{
    start: 0,   //数字类型;开始时间,单位:秒
    duration: 10,  //数字类型;播放时长,单位:秒
}

musicPath:

  • 类型:字符串类型
  • 描述:音频文件的路径,要求本地路径(widget://、fs://)(android只支持fs)
  • 默认:无

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.addMusic({
                         musicPath : 'widget://res/haha.mp3',
                        });
                              

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

updateMusic

视频编辑时更新背景音乐。

updateMusic({params})

params

timeRange:

  • 类型:JSON 对象
  • 描述:(可选项)播放文件的 timeRange 范围
  • 默认值:使用整段音乐
  • 内部字段:
{
    start: 0,   //数字类型;开始时间,单位:秒
    duration: 10,  //数字类型;播放时长,单位:秒
}

volume:

  • 类型:数字类型
  • 描述:(可选项)音量
  • 默认值:不更新背景音乐的音量

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.updateMusic();
                              

可用性

iOS系统

可提供的1.0.0及更高版本

getMusicVolume

视频编辑时获取背景音乐的音量。

getMusicVolume(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
  musicVolume :0				 //数字类型;音量
 }

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.getMusicVolume(function(ret) 
                        {
                         if (ret){	                							api.alert({msg: JSON.stringify(ret)});
                         }
                      });

可用性

iOS系统

可提供的1.0.0及更高版本

addMVLayer

视频编辑时添加 MV 图层。

addMVLayer({params})

params

colorPath:

  • 类型:字符串类型
  • 描述:(可选项)彩色层视频的路径,要求本地路径(widget://、fs://)(android只支持fs)
  • 默认:当 colorPath 和 alphaPath 都不传时,表示移除 MV 图层

alphaPath:

  • 类型:字符串类型
  • 描述:(可选项)被彩色层当作透明层的视频的路径,要求本地路径(widget://、fs://)(android只支持fs)
  • 默认:当 colorPath 和 alphaPath 都不传时,表示移除 MV 图层

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.addMVLayer();
                              

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

editorAddFilter

视频编辑时添加滤镜。

editorAddFilter({params})

params

colorImagePath:

  • 类型:字符串类型
  • 描述:(可选项)当前使用的滤镜的颜色表图的路径,要求本地路径(widget://、fs://)(android只支持fs)
  • 默认:当不传时,表示移除滤镜

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.editorAddFilter();
                              

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

replaceCurrentAsset

视频编辑时替换当前编辑的视频。

replaceCurrentAsset({params})

params

timeRange:

  • 类型:JSON 对象
  • 描述:(可选项)视频的 timeRange 范围
  • 默认值:使用整段视频
  • 内部字段:
{
    start: 0,   //数字类型;开始时间,单位:秒
    duration: 10,  //数字类型;播放时长,单位:秒
}

path:

  • 类型:字符串类型
  • 描述:视频文件的路径,要求本地路径(widget://、fs://)
  • 默认:无

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.replaceCurrentAsset({
                         path : 'widget://res/haha.mp4',
                        });
                              

可用性

iOS系统

可提供的1.0.0及更高版本

saveVideo

保存编辑的视频。

saveVideo(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 描述:保存回调
  • 内部字段:
status:true   //布尔类型;保存状态

filePath:''   //字符串类型;保存路径

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.saveVideo(function(ret){
    api.alert({msg: JSON.stringify(ret)});
});
                              

可用性

android系统

可提供的1.0.0及更高版本

configurationReverserEffect

时光倒流初始化。

configurationReverserEffect({params})

params

path:

  • 类型:字符串类型
  • 描述:(可选项)视频文件的路径,要求本地路径(widget://、fs://)
  • 默认:调用configuration接口后录制的视频,若调用过scaleAsset接口,则为经过倍速处理后的视频

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.configurationReverserEffect();
                              

可用性

iOS系统

可提供的1.0.0及更高版本

startReversing

执行时光倒流。

startReversing()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.startReversing();

可用性

iOS系统

可提供的1.0.0及更高版本

isReversing

是否处于执行时光倒流状态。

isReversing(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
  isReversing : true				 //布尔类型;是否处于执行时光倒流状态
 }

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.isReversing(function(ret) 
                        {
                        if (ret){	                						    api.alert({msg: JSON.stringify(ret)});
                        }
                      });

可用性

iOS系统

可提供的1.0.0及更高版本

scaleAsset

倍速特效,并显示在实时预览编辑窗口上,必须调用过configurationVideoEditor接口。

scaleAsset({params},callback(ret))

params

timeRange:

  • 类型:JSON 对象
  • 描述:(可选项)倍数处理时间段
  • 默认值:需要倍速处理的整段视频
  • 内部字段:
{
    start: 0,   //数字类型;开始时间,单位:秒
    duration: 10,  //数字类型;播放时长,单位:秒
}

path:

  • 类型:字符串类型
  • 描述:(可选项)视频文件的路径,要求本地路径(widget://、fs://)
  • 默认:调用configuration接口后录制的视频,若调用过scaleAsset接口,则为经过倍速处理后的视频

rateType:

  • 类型:字符串类型

  • 描述:(可选项)倍数处理的类型

  • 取值范围:

    'normal' : 1x;

    'slow' : 0.667x;

    'topSlow' : 0.5x;

    'fast' : 1.5x;

    'topFast' : 2x

  • 默认:'normal'

callback(ret)

当倍速特效完成并显示在实时预览编辑窗口结束,会来到此回调。此回调只有触发事件,没有回调参数

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.scaleAsset();
                              

可用性

iOS系统

可提供的1.0.0及更高版本

assetExport

视频合成导出。(android不支持视频合成的功能,视频合成的功能由视频编辑接口来完成)

assetExport({params})

params

isExportMovieToPhotosAlbum:

  • 类型:布尔类型
  • 描述:(可选项)是否将视频导出到相册
  • 默认:false

outputFileType:

  • 类型:字符串类型

  • 描述:(可选项)视频导出的文件类型

  • 取值范围:

    'mp4' : .mp4;

    'mov' : .mov;

    'm4a' : .m4a

  • 默认:'mp4'

outputVideoSize:

  • 类型:JSON 对象
  • 描述:(可选项)视频导出的分辨率
  • 默认值:原视频的分辨率
  • 内部字段:
{
    w: 0,   //数字类型;视频导出的分辨率的width
    h: 0,   //数字类型;视频导出的分辨率的height
}

colorPath:

  • 类型:字符串类型
  • 描述:(可选项)彩色层视频的路径,要求本地路径(widget://、fs://)
  • 默认:不设置

alphaPath:

  • 类型:字符串类型
  • 描述:(可选项)被彩色层当作透明层的视频的路径,要求本地路径(widget://、fs://)
  • 默认:不设置

colorImagePath:

  • 类型:字符串类型
  • 描述:(可选项)当前使用的滤镜的颜色表图的路径,要求本地路径(widget://、fs://)
  • 默认:不设置

path:

  • 类型:字符串类型
  • 描述:(可选项)视频文件的路径,要求本地路径(widget://、fs://)
  • 默认:调用configuration接口后录制的视频

rateType:

  • 类型:字符串类型

  • 描述:(可选项)倍速特效,倍数处理的类型

  • 取值范围:

    'slow' : 0.667x;

    'topSlow' : 0.5x;

    'fast' : 1.5x;

    'topFast' : 2x

  • 默认:不设置

scaleTimeRange:

  • 类型:JSON 对象
  • 描述:(可选项)倍速特效,倍数处理时间段。设置rateType参数后此参数才有效
  • 默认值:整段视频
  • 内部字段:
{
    start: 0,   //数字类型;开始时间,单位:秒
    duration: 10,  //数字类型;时长,单位:秒
}

movieSettings:

  • 类型:JSON 对象
  • 描述:(可选项)视频信息
  • 内部字段:
{
    startTime: 0,   //(可选项)数字类型;开始时间,单位:秒;默认值:0
    duration: 10,  //(可选项)数字类型;时长,单位:秒;默认值:整段视频
    volume: 1,  //(可选项)数字类型;音量大小;默认值:1
}

audioSettings:

  • 类型:JSON 对象
  • 描述:(可选项)背景音乐设置
  • 默认值:不设置
  • 内部字段:
{
     musicPath: '',   //(可选项)字符串类型;音乐文件的路径,要求本地路径(widget://、fs://);默认值:不传则不设置背景音乐,没有此字段则以下字段无效
    startTime: 0,   //(可选项)数字类型;开始时间,单位:秒;默认值:0
    duration: 10,  //(可选项)数字类型;时长,单位:秒;默认值:整段音乐时长
    volume: 1,  //(可选项)数字类型;音量大小;默认值:1
    name: '',   //(可选项)字符串类型;名称;默认值:''
 }

waterMarkSettings:

  • 类型:JSON 对象
  • 描述:(可选项)水印设置
  • 默认值:不设置
  • 内部字段:
{
     waterMarkPath: '',   //(可选项)字符串类型;水印图片的路径,要求本地路径(widget://、fs://);默认值:不传则不设置水印,没有此字段则以下字段无效
     size : {					//(可选项)JSON 对象;水印大小;默认值:水印图片大小
    w: 0,   //(可选项)数字类型;水印的宽;默认值:水印图片的宽
    h: 0,   //(可选项)数字类型;水印的高;默认值:水印图片的高
    }
    point : {					//(可选项)JSON 对象;水印位置;默认值:坐标原点
    x: 0,   //(可选项)数字类型;水印位置x坐标;默认值:0    	 y: 0,   //(可选项)数字类型;水印位置y坐标;默认值:0
    }
}

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.assetExport();
                              

可用性

iOS系统

可提供的1.0.0及更高版本

cancelAssetExport

取消视频导出。(android不支持视频合成的功能,视频合成的功能由视频编辑接口来完成)

cancelAssetExport()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.cancelAssetExport();

可用性

iOS系统

可提供的1.0.0及更高版本

getAssetExportProgress

获取视频导出的进度。(android不支持视频合成的功能,视频合成的功能由视频编辑接口来完成)

getAssetExportProgress(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
  progress : 0.5				 //数字类型;进度
 }

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.getAssetExportProgress(function(ret) 
                        {
                         if (ret){	                							  api.alert({msg: JSON.stringify(ret)});
                         }
                      });

可用性

iOS系统

可提供的1.0.0及更高版本

transcoder

视频转码。(android获取保存结果请添加transcoder监听)

transcoder({params})

params

path:

  • 类型:字符串类型
  • 描述:视频文件的路径,要求本地路径(widget://、fs://)(android只支持fs)
  • 默认:无

isExportMovieToPhotosAlbum:

  • 类型:布尔类型
  • 描述:(可选项)是否将视频导出到相册;(android不支持)
  • 默认:false

outputFileType:

  • 类型:字符串类型

  • 描述:(可选项)视频导出的文件类型;(android只支持mp4)

  • 取值范围:

    'mp4' : .mp4;

    'mov' : .mov;

    'm4a' : .m4a

  • 默认:'mp4'

outputFilePreset:

  • 类型:字符串类型

  • 描述:(可选项)转码后视频的质量;(android不支持)

  • 取值范围:

    'highest' : HighestQuality;

    'low' : LowQuality;

    'medium' : MediumQuality;

    '480' : 640x480;

    '540' : 960x540;

    '720' : 1280x720;

    '1080' : 1920x1080

  • 默认:'highest'

timeRange:

  • 类型:JSON 对象
  • 描述:(可选项)需要转码的视频时间段;(android不支持)
  • 默认值:视频的总时长
  • 内部字段:
{
    start: 0,   //数字类型;开始时间,单位:秒
    duration: 10,  //数字类型;时长,单位:秒
}

destSize:

  • 类型:JSON对象
  • 描述:(可选项)转码后的视频分辨率;(ios不支持)
  • 默认值:原视频分辨率
  • 内部字段:
{
    w: 0,   //数字类型;转码后的宽
    h: 10,  //数字类型;转码后的高
}

destBitrate:

  • 类型:数字类型

  • 描述:(可选项)视频转码后的码率;单位:Kbps;(ios不支持)

  • 默认值:1000

  • 取值范围:

    • 500
    • 800
    • 1000
    • 1200
    • 1600
    • 2000
    • 2500
    • 4000
    • 8000

fileName:

  • 类型:字符串
  • 描述:(可选项)生成文件的名称,只是一个名称,不是路径,如果不写,插件随机生成一个,(ios不支持)
  • 默认值:随机生成

reverse :

  • 类型:布尔类型
  • 描述:(可选项)是否进行时光倒流(视频倒置)(ios不支持)
  • 默认值:false

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.transcoder({
                                    path : ''
                                });                             

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

cancelTranscoding

取消转码流程。

cancelTranscoding()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.cancelTranscoding();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

transcodingProgress

获取视频转码的进度。(android不支持,获取进度请添加transcoder监听)

transcodingProgress(callback(ret))

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:
{
  progress : 0.5				 //数字类型;进度
 }

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.transcodingProgress(function(ret) 
                        {
                         if (ret){	                							  api.alert({msg: JSON.stringify(ret)});
                         }
                      });

可用性

iOS系统

可提供的1.0.0及更高版本

movieCompose

多个视频拼接。

movieCompose({params})

params

paths:

  • 类型:数组类型
  • 描述:存放视频文件路径的数组,视频个数需要一个以上
  • 默认:无
  • 内部字段:
{
    paths : [
        '' ,   //字符串类型;视频文件的路径,要求本地路径(widget://、fs://);默认值:无(android不支持widget)
        '' ,
        ''   
    ]
}

isExportMovieToPhotosAlbum:

  • 类型:布尔类型
  • 描述:(可选项)是否将视频导出到相册(android不支持)
  • 默认:false

outputFileType:

  • 类型:字符串类型

  • 描述:(可选项)视频导出的文件类型;(android只支持mp4)

  • 取值范围:

    'mp4' : .mp4;

    'mov' : .mov;

    'm4a' : .m4a

  • 默认:'mp4'

videoSize:

  • 类型:JSON 对象
  • 描述:(可选项)拼接后视频的分辨率;(由于SDK的限制,android暂不支持自定义分辨率,开发者请从sizeLevel属性中选择分辨率)
  • 默认值:第1个视频的分辨率
  • 内部字段:
{
    w: 0,   //数字类型;分辨率的width
    h: 0,   //数字类型;分辨率的height
}

sizeLevel :

  • 类型:字符串

  • 描述:拼接后视频的分辨率;(ios不支持)

  • 默认值:480x480

  • 取值范围:

    • 240*240
    • 320*240
    • 352*352
    • 640*352
    • 360*360
    • 480*360
    • 640*360
    • 480*480
    • 640*480
    • 848*480
    • 544*544
    • 720*544
    • 720*720
    • 960*720
    • 1280*720
    • 1088*1088
    • 1440*1088

videoFrameRate:

  • 类型:数字类型
  • 描述:(可选项)拼接后视频数据的帧率
  • 默认:25

bitrate:

  • 类型:数字类型
  • 描述:(可选项)拼接后视频的码率
  • 默认:1024*1000 bps

fileName:

  • 类型:字符串
  • 描述:(可选项)生成文件的名称,只是一个名称,不是路径,如果不写,插件随机生成一个,(ios不支持)
  • 默认值:随机生成

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.movieCompose({
                                    paths : [
                                    '','',''
                                    ]
                                });                             

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

stopComposing

停止视频拼接。

stopComposing()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.stopComposing();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

composeGif

视频帧/图片生成 GIF 动图。

composeGif({params})

params

images:

  • 类型:数组类型
  • 描述:存放图片路径的数组,图片个数需要2个或以上(android此字段可以存放视频路径,如果有多个只取第一个路径,只支持mp4类型的视频)
  • 默认:无
  • 内部字段:
{
    images : [
        '' ,   //字符串类型;图片的路径,要求本地路径(widget://、fs://);默认值:无
        '' ,
        ''   
    ]
}

gifName:

  • 类型:字符串类型
  • 描述:(可选项)Gif 的名称;
  • 默认:内部会自动生成一个唯一的名称

interval:

  • 类型:数字类型
  • 描述:(可选项)Gif 动图每帧间隔设置
  • 默认: 0.1f

isLoop

  • 类型:布尔类型
  • 描述:(可选项)gif是否循环;(ios不支持)
  • 默认值:true

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.composeGif({
                                    images : [
                                    '','',''
                                    ]
                                });                             

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

cancelComposeGif

取消合成 Gif 动图。

cancelComposeGif()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.cancelComposeGif();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

loadGif

展示 GIF 图。

loadGif({params})

params

images:

  • 类型:数组类型
  • 描述:存放图片路径的数组,图片个数需要2个或以上
  • 默认:无
  • 内部字段:
{
    images : [
        '' ,   //字符串类型;图片的路径,要求本地路径(widget://、fs://);默认值:无
        '' ,
        ''   
    ]
}

interval:

  • 类型:数字类型
  • 描述:(可选项)Gif 动图每帧间隔设置
  • 默认: 0.1f

rect:

  • 类型:JSON 对象
  • 描述:(可选项)Gif展示视图的位置及尺寸
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;Gif展示视图左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:0
    y: 0,   //(可选项)数字类型;Gif展示视图左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:0
    w: 300,  //(可选项)数字类型;Gif展示视图的宽度;默认值:图片数组第一张图片的宽度
    h: 200   //(可选项)数字类型;Gif展示视图的高度;默认值:图片数组第一张图片的高度
}

repeatCount:

  • 类型:数字类型
  • 描述:(可选项)gif播放重复次数,0 为无限循环
  • 默认: 0

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项)Gif展示视图添加到指定窗口的名字
  • 默认:插件依附于当前 window

fixed:

  • 类型:布尔类型
  • 描述:(可选项)Gif展示视图是否随所属 window 或 frame 滚动
  • 默认:true(不随之滚动)

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.loadGif({
                                    images : [
                                    '','',''
                                    ]
                                });                             

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

removeGif

移除展示的 GIF 图。

removeGif()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.removeGif();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

viewRecorder

录屏。(由于七牛短视频sdk和引擎的原因,录屏功能android暂不支持)

viewRecorder({params},callback(ret))

params

maxDuration:

  • 类型:数字类型
  • 描述:(可选项)录屏的最大时长,单位为秒
  • 默认:120

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项) 录屏的窗口的名称
  • 默认:主窗口

videoFrameRate:

  • 类型:数字类型
  • 描述:(可选项)帧率
  • 默认:25

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:当达到设置的最大的时长,或者调用stopViewRecorder接口后,会来到这个回调
{
  filePath : ''				//字符串类型;录屏文件的路径
  totalDuration : ''		//数字类型;录屏总时长
}

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.viewRecorder(function(ret) 
                        {
                         if (ret){	                							  api.alert({msg: JSON.stringify(ret)});
                         }
                      });                             

可用性

iOS系统

可提供的1.0.0及更高版本

stopViewRecorder

停止录屏。

stopViewRecorder()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.stopViewRecorder();

可用性

iOS系统

可提供的1.0.0及更高版本

uploadVideoFile

视频上传。

uploadVideoFile({params})

params

path:

  • 类型:字符串类型
  • 描述:视频文件的路径,要求本地路径(widget://、fs://)(android不支持widget)
  • 默认:无

token:

  • 类型:字符串类型
  • 描述:上传视频空间 token
  • 默认:无

videoKey:

  • 类型:字符串类型
  • 描述:(可选项)上传视频空间设置的 key
  • 默认:当前上传视频文件的 hash 值

https:

  • 类型:布尔类型
  • 描述:(可选项)上传视频空间是否需要设置为 https 上传, true 为 https 上传,false 为 http 上传
  • 默认:true

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.uploadVideoFile({
                                    path : '',
                                    token : ''
                                });                             

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

cancelUpload

取消上传。

cancelUpload()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.cancelUpload();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

addEventListener

添加监听。

addEventListener({params},callback(ret))

params

name:

  • 类型:字符串
  • 描述:监听的事件的名字
  • 取值范围:
    • videoRecord: 视频录制
    • reverserEffect: 时光倒流
    • assetExport: 视频合成
    • transcoder: 视频转码
    • movieCompose: 视频拼接
    • composeGif: 生成 GIF 动图
    • upload: 视频上传
    • imageVideoCompose: 图片视频拼接

callback(ret)

ret:

  • 类型:JSON对象
  • 内部字段:当upload事件完成时,只有触发事件,没有回调参数
{
  eventType : 'startVideoRecord'			 //字符串类型;视频录制事件;取值范围如下:
          //uploadSuccess(上传成功,仅在upload事件下返回)
                  //startVideoRecord(开始录制)
                  //videoRecording(正在录制)(android不支持)
                  //deleteFile(删除了某一段视频,调用deleteLastFile会回调,调用deleteAllFiles不会回调)
                  //finishRecording(完成一段视频的录制,当达到设置的最大录制时间,或者调用stopRecording接口,(android在该事件中不支持totalDuration))
                 //maxDuration(在达到指定的视频录制时间后,如果再调用startRecording接口,会立即执行该回调。该回调功能是用于页面跳转,(android不支持此事件))
                 
   filePath : ''			 //字符串类型;录制的视频绝对路径;当eventType为startVideoRecord、videoRecording、deleteFile、finishRecording时返回;当reverserEffect、assetExport、transcoder、movieCompose、composeGif、imageVideoCompose事件完成会返回这个字段
   
   fileDuration : 1		 //数字类型;录制的视频段时长,单位:秒;当eventType为videoRecording、deleteFile、finishRecording时返回。当eventType为deleteFile时,返回的是删除的视频段的时长

   totalDuration : 6	 //数字类型;录制的视频(从调用configuration接口之后录制的视频)的总时长,单位:秒;(android单位是毫秒) 当eventType为videoRecording、deleteFile、finishRecording、maxDuration时返回。当eventType为deleteFile时,返回的是删除视频后剩余视频的总时长
   
   errorMsg : ''			 //字符串类型;错误信息;当reverserEffect、assetExport、transcoder、movieCompose、composeGif、upload、imageVideoCompose事件执行发生错误时返回这个字段
   
   progress : 0.6	 //数字类型;进度;可以监听reverserEffect、assetExport、transcoder、movieCompose、upload、imageVideoCompose事件的进度
}

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.addEventListener(
                        {
                         name : 'assetExport',
                     },function(ret) {
                         if (ret) {
                             api.alert({msg: JSON.stringify(ret)});
                        }
                 });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

removeEventListener

移除监听。

removeEventListener({params})

params

name:

  • 类型:字符串
  • 描述:监听的事件的名称
  • 取值范围:
    • videoRecord: 视频录制
    • reverserEffect: 时光倒流
    • assetExport: 视频合成
    • transcoder: 视频转码
    • movieCompose: 视频拼接
    • composeGif: 生成 GIF 动图
    • upload: 视频上传

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.removeEventListener(
                        {
                         name : 'assetExport',
                     });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

clearCache

清除保存在本地的所有视频文件。(android只是清除本插件生成的视频文件,生成的视频文件都保存在sd卡根目录下面的ShortVideo文件夹中)

clearCache()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.clearCache();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

openStickerPanelView

打开贴图页面(该功能需要七牛授权)。

已废弃(本接口1.1.4及以上版本将不再支持)

openStickerPanelView({params})

params

rect:

  • 类型:JSON 对象
  • 描述:(可选项)贴图页面的位置及尺寸
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;贴图页面左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:0
    y: 0,   //(可选项)数字类型;(可选项)贴图页面左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:0
    w: 300,  //(可选项)数字类型;贴图页面的宽度;默认值:所属的 Window 或 Frame 的宽度
    h: 200   //(可选项)数字类型;贴图页面的高度;默认值:200
}

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项)摄像头的预览视图添加到指定窗口的名字
  • 默认:插件依附于当前 window

fixed:

  • 类型:布尔类型
  • 描述:(可选项)摄像头的预览视图是否随所属 window 或 frame 滚动
  • 默认:true(不随之滚动)

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.openStickerPanelView({
                              rect : {
                              x :  20,
                              y : 550,
                              w : 350,
                              h : 170
                              },                                  
                          });

可用性

iOS系统

可提供的1.0.3及更高版本

closeStickerPanelView

关闭贴图页面。

已废弃(本接口1.1.4及以上版本将不再支持)

closeStickerPanelView()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.closeStickerPanelView();

可用性

iOS系统

可提供的1.0.3及更高版本

cutVideo

剪辑视频。

cutVideo(params, callback(ret))

params

path

  • 类型:字符串类型
  • 描述:源视频文件路径。支持fs,widget(android只支持fs)
  • 默认是:无

begin

  • 类型:数字类型
  • 描述:起始时间戳;单位:秒
  • 默认值:无

end

  • 类型:数字类型
  • 描述:结束时间戳;单位:秒
  • 默认值:无

outPath

  • 类型:字符串类型
  • 描述:目标视频文件路径;iOS不支持此参,iOS根据outputFileType参数自动返回对应格式视频文件路径
  • 默认值:无

mode

  • 类型:字符串类型
  • 描述:剪辑模式; 取值范围:ACCURATE(精准模式)、 FAST(快速模式),iOS不支持此参数
  • 默认值:ACCURATE

isExportMovieToPhotosAlbum:

  • 类型:布尔类型
  • 描述:(可选项)是否将视频导出到相册,android不支持此参数
  • 默认:false

outputFileType:

  • 类型:字符串类型

  • 描述:(可选项)视频导出的文件类型,android不支持此参数

  • 取值范围:

    'mp4' : .mp4;

    'mov' : .mov;

  • 默认:'mp4'

outputVideoSize:

  • 类型:JSON 对象
  • 描述:(可选项)视频导出的分辨率,android不支持此参数
  • 默认值:原视频的分辨率
  • 内部字段:
{
    w: 0,   //数字类型;视频导出的分辨率的width
    h: 0,   //数字类型;视频导出的分辨率的height
}

callback(ret)

ret

  • 类型:JSON
  • 描述:剪辑回调
  • 内部字段
status: true   //布尔类型;操作结果;
path:''     //字符串类型;剪辑后的文件路径
percentage:'0.1'//数字类型;剪辑进度;进度中不会有status和path的回调;

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.cutVideo({path:'fs://123.mp4', begin:1234567890, end:1234567899, outPath:'fs://234.mp4'}, function(ret){
    api.alert({msg: JSON.stringify(ret)})
});

可用性

iOS系统,Android系统

可提供的1.0.3及更高版本

cancelCutVideo

取消剪辑视频。

cancelCutVideo()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.cancelCutVideo();

可用性

iOS系统,Android系统

可提供的1.0.3及更高版本

getVideoFrame

获取视频帧。

getVideoFrame(params, callback(ret))

params

path

  • 类型:字符串类型
  • 描述:源视频文件路径。支持fs,widget(android只支持fs)
  • 默认是:无

outPath

  • 类型:字符串类型
  • 描述:图片保存路径;支持fs,widget(android只支持fs)
  • 默认值:无

count

  • 类型:数字类型
  • 描述:返回多少张图片,数字根据视频质量可能不大准确,张数如果大于视频帧数则返回数小于count设定的值, android不支持此参数
  • 默认值:100

keyFrame

  • 类型:布尔类型
  • 描述:是否限定返回关键帧,iOS不支持此参数
  • 默认值:true

width

  • 类型:数字类型
  • 描述:帧宽度,iOS不支持此参数
  • 默认值:100

height:

  • 类型:数字类型,iOS不支持此参数

  • 描述:帧高度

  • 默认值:100

callback(ret)

ret

  • 类型:JSON
  • 描述:帧回调
  • 内部字段
result:   //数组类型;返回帧的封面地址和时间,iOS不支持此字段
result的内部字段:
image:  //字符串类型;图片地址;,iOS不支持此字段
time:   //数字类型;帧时间;单位:毫秒,iOS不支持此字段
image:  //字符类型,图片地址,图片地址分多次返回,android不支持此参数

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.getVideoFrame({path:'fs://123.mp4', outPath:'fs://'}, function(ret){
    api.alert({msg: JSON.stringify(ret)})
});

可用性

iOS系统,Android系统

可提供的1.0.4及更高版本

getVideoFrameByTime

通过时间获取视频帧。

getVideoFrameByTime(params, callback(ret))

params

path

  • 类型:字符串类型
  • 描述:源视频文件路径。支持fs
  • 默认是:无

outPath

  • 类型:字符串类型
  • 描述:图片保存路径;支持fs
  • 默认值:无

time:

  • 类型:数字类型
  • 描述:要获取的视频帧所在的时间;单位:毫秒
  • 默认值:无

keyFrame

  • 类型:布尔类型
  • 描述:是否限定返回关键帧
  • 默认值:true

width

  • 类型:数字类型
  • 描述:帧宽度
  • 默认值:0

height:

  • 类型:数字类型

  • 描述:帧高度

  • 默认值:0

callback(ret)

ret

  • 类型:JSON
  • 描述:帧回调
  • 内部字段
status:  //布尔类型;返回状态
path:   //字符串类型;图片地址

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.getVideoFrameByTime({path:'fs://123.mp4', outPath:'fs://', time:1000}, function(ret){
    api.alert({msg: JSON.stringify(ret)})
});

可用性

Android系统

可提供的1.0.4及更高版本

insertVideo

加载视频草稿(即拍摄了一段视频保存到了草稿箱,在下次拍摄时,可以从草稿箱读取视频继续拍摄或编辑)

insertVideo(params)

params

path

  • 类型:字符串类型
  • 描述:视频草稿文件路径。支持fs,widget(android只支持fs)
  • 默认是:无

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.insertVideo({path:'fs://123.mp4'});

可用性

iOS系统

可提供的1.1.0及更高版本

microPlastic

微整形。

已废弃(本接口1.1.4及以上版本将不再支持)

microPlastic({params})

params

key:

  • 类型:字符串类型
  • 描述:(可选项)参数 key
  • 取值取下:
eyeSize:大眼
chinSize:下巴
noseSize:瘦鼻
mouthWidth:嘴型
archEyebrow:眉型
eyeDis:眼距
eyeAngle:眼角
jawSize:瘦脸

precent:

  • 类型:数字类型
  • 描述:参数值
  • 取值范围:0-1
  • 默认:0.5

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.microPlastic({key:'eyeSize','precent':0.6});

可用性

iOS系统

可提供的1.1.0及更高版本

cancelMicroPlastic

取消所有微整形。

已废弃(本接口1.1.4及以上版本将不再支持)

cancelMicroPlastic()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.cancelMicroPlastic();

可用性

iOS系统

可提供的1.1.0及更高版本

previewSize

设置预览屏幕大小和分辨率(注意,录制的时候不可设置)。

previewSize({params})

params

size:

  • 类型:JSON 对象
  • 描述:(可选项)预览屏幕原大小
  • 默认值:预览屏幕原大小
  • 内部字段:
{
    w: 0,   //数字类型;预览屏幕宽
    h: 0,   //数字类型;预览屏幕长
}

videoSize:

  • 类型:JSON 对象
  • 描述:(可选项)编码视频的视频的分辨率,需要注意的是,这个参数影响的是视频编码时的分辨率,而非摄像头采集到数据的预览大小,传递给编码器的图像尺寸与此尺寸不同时,会按照AVVideoScalingModeResizeAspectFill对图像做剪切,从而确保图像不会出现压缩的现象。
  • 默认值:编码视频的视频的原分辨率
  • 内部字段:
{
    w: 0,   //数字类型;视频的预览分辨率的width
    h: 0,   //数字类型;视频的预览分辨率的height
}

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
    qiniuShortVideo.previewSize({size:{w:500,h:500},videoSize:{w:480,h:845}});

可用性

iOS系统

可提供的1.1.0及更高版本

imageVideoComposer

图片、GIF 图和视频混排。

imageVideoComposer({params})

params

medias:

  • 类型:json数组类型
  • 描述:存放图片、GIF 图和视频的数组
  • 内部字段:
{
    medias : [{
        mediaType: 0 ,   //数字类型;媒体文件类型,0:图片,1:视频,2:GIF
        path:'' ,        //字符串类型;媒体文件路径,要求本地路径,支持fs、widget
        imageDuration: 3.0,//数字类型;图片转换为视频的时长,默认为3.0,即3秒;建议大于2秒;多媒体类型为图片时有效;默认:3.0
        loopCount: 1,//数字类型;如果当前媒体文件是 GIF,则代表 GIF 转为视频的时候,GIF 循环播放的次数,如果当前媒体文件不是 GIF,则 loopCount 不会被使用默认:1,即不做循环   (仅iOS支持)
        gifDuration:,          //数字类型;GIF图总时长,仅mediaType为2时有效(仅android支持)默认值:3
        transitionTime:,     //数字类型 ;过度动画时间(仅android支持)默认值:1
    }]
}

videoSize:

  • 类型:JSON 对象
  • 描述:(可选项)合成视频文件的分辨率(仅iOS支持)
  • 默认值:544x960
  • 内部字段:
{
    w: 0,   //数字类型;分辨率的width;默认:544
    h: 0,   //数字类型;分辨率的height;默认:960
}

androidVideoSize:

  • 类型:数字类型
  • 描述:(可选项)合成文件分辨率
  • 取值范围:0:240P_1 , 1:240_2 2:352P_1 , 3:352P_2 4:360P_1 , 5:360P_2 , 6:360P_3 7:480P_1 , 8:480P_2 , 9:480P_3 10:544P_1 , 11:544P_2 12:720P_1 , 13:720P_2 , 14:720P_3 15:1088P_1 , 16:1088P_2
  • 默认值:4

outputFileType:

  • 类型:字符串类型

  • 描述:(可选项)视频导出的文件类型(仅iOS支持)

  • 取值范围:

    'mp4' : .mp4;

    'mov' : .mov;

    'm4a' : .m4a

  • 默认:'mp4'

videoFrameRate:

  • 类型:数字类型
  • 描述:(可选项)合成视频文件的帧率
  • 默认:30

bitrate:

  • 类型:数字类型
  • 描述:(可选项)合成视频文件的码率
  • 默认:1024*1000 bps

isExportMovieToPhotosAlbum:

  • 类型:布尔类型
  • 描述:(可选项)是否将视频导出到相册(仅iOS支持)
  • 默认:false

disableTransition:

  • 类型:布尔类型
  • 描述:(可选项)是否禁用转场(仅iOS支持)
  • 默认:false

transitionDuration:

  • 类型:数字类型
  • 描述:(可选项)转场动画持续的时长,默认为 1.0,即 1 秒. 如果 transitionDuration 的值大于合并的视频中最短时长,则将使用合并的视频中最短视频的时长作为转场动画的时长。仅当 disableTransition 为 false 的时候,transitionDuration 才生效
  • 默认:1.0

musicURL:

  • 类型:字符串类型
  • 描述:(可选项)背景音乐的路径,要求本地路径,支持fs、widget

musicVolume:

  • 类型:数字类型
  • 描述:(可选项)背景音乐音量,取值范围(0 ~ 1.0)
  • 默认:1.0

movieVolume:

  • 类型:数字类型
  • 描述:(可选项)原视频的音量,取值范围(0 ~ 1.0)
  • 默认:1.0

transitionType:

  • 类型:数字类型

  • 描述:(可选项)转场类型。仅当 disableTransition 为 false 的时候,transitionType 才生效(仅iOS支持)

  • 取值范围:

    0 : 淡入淡出

    1 : 无

  • 默认:0

composerPriorityType:

  • 类型:数字类型

  • 描述:(可选项)拼接策略. 仅当 disableTransition 为 false 的时候,composerPriorityType 才生效

  • 取值范围:

    0 : 以拼接之后,单个视频时间段内音视频同步优先,这是默认模式:这种模式的好处是无论拼接多少个文件,总是能保证拼 接后的文件音视频是同步的,不好之处是拼接处可能会有音频的卡顿

    1 : 以拼接之后,音视频播放连续性优先:这种模式的好处是无论拼接多少个文件,总是能保证拼接后的文件播放是流畅的, 不好之处是可能引起音视频不同步

    2 : 以拼接的文件视频通道长度为准,当参与拼接文件的音频通道时长比视频通道时长长的时候,将多出的音频数据丢弃掉。 当视音频通道时长比视频通道时长短的视频,则将音频通道补齐和视频通道一样长。当一段视频中,音频数据和视频数据时长相 差较大(超过 0.1 秒)时,不建议使用这种模式

    3 : 以拼接的文件音频通道长度为准,当参与拼接文件的视频通道时长比音频通道时长长的时候,将多出的视频数据丢弃掉。 当视频通道时长比音频通道时长短的视频,则将视频通道补齐和音频通道一样长。当一段视频中,音频数据和视频数据时长相差 较大(超过 0.1 秒)时,不建议使用这种模式

  • 默认:0

outVideoPath:

  • 类型:字符串类型
  • 描述:输出视频路径,支持fs路径(仅android支持)
  • 示例:‘fs://video/video1.mp4’

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.imageVideoComposer({
});                             

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

stopImageVideoComposer

停止图片、GIF 图和视频混排。

stopImageVideoComposer()

示例代码

var qiniuShortVideo = api.require('qiniuShortVideo');
qiniuShortVideo.stopImageVideoComposer();
是否仍需要帮助? 请保持联络!
最后更新于 2024/04/24