aliShortVideoAPI

###视频合拍

概述

aliShortVideo简介

aliShortVideoAPI插件封装了阿里短视频的视频功能(标准版),包括视频录制、合拍、视频编辑、视频剪裁等功能。

短视频SDK服务需要开通License,开通方式请参考产品介绍页。iOS端注意:开通License后,请确保提交的bundle id和XCode中对应配置保持一致。

插件接口

openRecord

视频录制

openRecord({params}, callback(ret))

params

rect:

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

videoSize:

  • 类型:JSON 对象
  • 描述:(可选项)视频分辨率
  • 内部字段:
{
    w: 100, //(可选项)数字类型;插件的宽度;默认:720
    h: 100  //(可选项)数字类型;插件的高度;默认:1280
}

minDuration:

  • 类型:数字类型
  • 描述:(可选项)最小时长,单位秒。
  • 默认值: 0.5

maxDuration:

  • 类型:数字类型
  • 描述:(可选项)最大时长,单位秒 。
  • 默认值:8

gop

  • 类型:数字类型
  • 描述:(可选项)关键帧。
  • 默认值:5

videoQuality

  • 类型:数字类型
  • 描述:(可选项)视频清晰度。
  • 默认值:2 - 0:超高清 - 1:高清 - 2:普通 - 3:低 - 4:很低 - 5:差

encodeMode

  • 类型:数字类型
  • 描述:(可选项)编码格式。
  • 默认值:1 - 0:软编:提升质量、牺牲速度 - 1:硬编:提升速度、牺牲视频质量 - 2:FFmpeg软编码(仅android支持)

useFaceDetect:

  • 类型:布尔类型
  • 描述:(可选项)是否开启人脸识别 ;使用自带人脸识别,开启该功能,系统会在检测到有人脸动图加入时自动进行追踪显示 (仅iOS支持,android人脸识别需要专业版)
  • 默认值:true

faceDetectCount

  • 类型:数字类型
  • 描述:(可选项)设置识别人脸的个数 当设置值小于1时,默认为1;当设置值大于3时,默认为3 最大是3个 最小是1个 如果不需要检测人脸 使用:useFaceDetect = NO(仅iOS支持,android人脸识别需要专业版)
  • 默认值:3

faceDectectSync:

  • 类型:布尔类型
  • 描述:(可选项) 是否同步贴合人脸 同步贴合人脸动图会在同步线程执行,优点是贴合性强,缺点是性能差的设备会有卡顿现象 非同步贴合人脸动图,有点是画面流畅但贴图贴合性不强 默认是YES,6及以下机型建议异步,6以上建议同步(仅iOS支持,android人脸识别需要专业版)
  • 默认值:true

frontCaptureSessionPreset

  • 类型:数字类型
  • 描述:(可选项) 前置摄像头采集分辨率(仅iOS支持)
  • 默认值:3 - 1 //352288 - 2 //640480 - 3 //1280720 - 4 //19201080

backCaptureSessionPreset

  • 类型:数字类型
  • 描述:(可选项) 后置摄像头采集分辨率(仅iOS支持)
  • 默认值:3 - 1 //352288 - 2 //640480 - 3 //1280720 - 4 //19201080

recordFps

  • 类型:数字类型
  • 描述:(可选项) 录制帧率, 取值区间(0,30],区间外的值将视为无效值,依然使用默认值。
  • 默认值:25

beautifyStatus:

  • 类型:布尔类型
  • 描述:(可选项) 是否开启美颜
  • 默认值:true

beautifyValue

  • 类型:数字类型
  • 描述:(可选项) 设置美颜度 [0,100]
  • 默认值:80

videoFlipH:

  • 类型:布尔类型
  • 描述:(可选项)镜像输出 。
  • 默认值:false

exposureValue

  • 类型:数字类型
  • 描述:(可选项) 曝光值 [0,1]
  • 默认值:0.5

cameraType:

  • 类型:数字类型
  • 描述:(可选项)摄像头类型(仅android支持)
  • 取值范围:1-前置摄像头,2-后置摄像头
  • 默认值:2

outPutPath:

  • 类型:字符串类型
  • 描述:输出文件路径,支持fs路径(仅android支持)
  • 例:‘fs://recordVideo/record.mp4’

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项)插件视图添加到指定 frame 的名字(只指 frame,传 window 无效)(仅android有效)
  • 默认:插件依附于当前 window

fixed:

  • 类型:布尔类型
  • 描述:(可选项)是否将插件视图固定到窗口上,不跟随窗口上下滚动(仅android有效)
  • 默认值:true(不随之滚动)

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //成功还是失败
    videoPath:''  //录制完成后才会返回
    progress:,      //小数类型;录制进度(仅android支持)
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.openRecord({
                     minDuration:2, //最小时长
                     maxDuration:15,//最大时长
                     gop:5,//关键帧间隔
                     videoQuality:1,//视频清晰度
                     encodeMode:1,//b编码格
                     videoFlipH:false,//镜像输出 
                         
    }, function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

startPreview

开始预览

startPreview(callback(ret))

示例代码

    var name = api.require('aliShortVideoAPI');
    name.startPreview();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

stopPreview

停止预览

stopPreview(callback(ret))

示例代码

    var name = api.require('aliShortVideoAPI');
    name.stopPreview();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

destroyRecorder

销毁预览

destroyRecorder(callback(ret))

示例代码

    var name = api.require('aliShortVideoAPI');
    name.destroyRecorder();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

switchCameraPosition

切换摄像头

switchCameraPosition(callback(ret))

示例代码

    var name = api.require('aliShortVideoAPI');
    name.switchCameraPosition();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

switchTorchMode

循环切换手电筒模式 电筒模式有三种,分别是off,on和auto。切换顺序:off —-> on —-> auto。默认值:off

switchTorchMode(callback(ret))

示例代码

    var name = api.require('aliShortVideoAPI');
    name.switchTorchMode();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setTorchType

设置手电筒模式

setTorchType({params}, callback(ret))

params

type:

  • 类型:数字类型
  • 描述:(可选项)手电筒模式。
  • 默认值: 0 - 1 //off - 2 //on - 3 //auto

示例代码

    var name = api.require('aliShortVideoAPI');
    name.setTorchType();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

focusPoint

手动对焦

坐标系为 openRecord 接口打开的视频预览区域,左上角为原点,往右为x正轴,往下为y正轴。

focusPoint({params}, callback(ret))

params

pointX:

  • 类型:数字类型
  • 描述:(可选项)对焦的x坐标。
  • 默认值: 中心位置(仅iOS支持)

pointY:

  • 类型:数字类型
  • 描述:(可选项)对焦的y位置。
  • 默认值: 中心位置(仅iOS支持)

示例代码

    var name = api.require('aliShortVideoAPI');
    name.focusPoint({
        pointX:,
        pointY:
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

videoZoomFactor

设置变焦倍数 每次调用videoZoomFactor接口,实际变焦值zoom为设定的1/100。例:设置videoZoomFactor = 10.0f,实际zoom += 0.1f。如果您开启前置摄像头录制,那么当前设置无效

videoZoomFactor({params}, callback(ret))

params

videoZoomFactor:

  • 类型:数字类型
  • 描述:(可选项)变焦倍数。
  • 默认值: 10

示例代码

    var name = api.require('aliShortVideoAPI');
    name.videoZoomFactor();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setFaceBeautify

设置美颜值

setFaceBeautify({params}, callback(ret))

params

value:

  • 类型:数字类型
  • 描述:(可选项)美颜值。 [0,100]
  • 默认值: 30

示例代码

    var name = api.require('aliShortVideoAPI');
    name.setFaceBeautify();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setFilter

设置滤镜

setFilter({params}, callback(ret))

params

eid:

  • 类型:数字类型
  • 描述:(可选项)数据ID。 例如:11002(仅iOS支持)

filterPath:

  • 类型:字符串类型
  • 描述:滤镜资源路径(iOS端资源demo),支持fs,原生路径。iOS端如:fs://aliShortVideoAPI/filter/波普

示例代码

    var name = api.require('aliShortVideoAPI');
    name.setFilter();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

deleteFilter

移除滤镜

deleteFilter()

示例代码

    var name = api.require('aliShortVideoAPI');
    name.deleteFilter();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setAnimationFilte

设置特效

setAnimationFilte({params}, callback(ret))

params

eid:

  • 类型:数字类型
  • 描述:(可选项)数据ID。 例如:11002,仅iOS支持
  • 默认:插件自动生成

filterPath:

  • 类型:字符串类型
  • 描述:滤镜资源路径(iOS端资源demo),支持fs,原生路径。iOS端如:fs://aliShortVideoAPI/filter/波普

duration:

  • 类型:数字类型
  • 描述:动效保留时间,秒(仅android支持)

startTime:

  • 类型:数字类型
  • 描述:动效开始时间,秒(仅android支持)

示例代码

    var name = api.require('aliShortVideoAPI');
    name.setAnimationFilte();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

deleteAnimationFilter

移除特效

deleteAnimationFilter({params})

params

eid:

  • 类型:数字类型
  • 描述:(可选项)数据ID。 例如:11002,仅iOS支持
  • 默认:插件自动生成

filterPath:

  • 类型:字符串类型
  • 描述:滤镜资源路径 ,支持fs,原生路径(仅android支持)

duration:

  • 类型:数字类型
  • 描述:动效保留时间,秒(仅android支持)

startTime:

  • 类型:数字类型
  • 描述:动效开始时间,秒(仅android支持)

示例代码

    var name = api.require('aliShortVideoAPI');
    name.deleteAnimationFilter();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

startRecording

开始录制

startRecording()

示例代码

    var name = api.require('aliShortVideoAPI');
    name.startRecording();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

stopRecording

停止录制

stopRecording()

示例代码

    var name = api.require('aliShortVideoAPI');
    name.stopRecording();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

cancelRecording

取消录制一个片段视频(仅android支持)

cancelRecording()

示例代码

    var name = api.require('aliShortVideoAPI');
    name.cancelRecording();

可用性

Android系统

可提供的1.0.0及更高版本

finishRecording

完成录制(android端会将录制片段视频拼接)

finishRecording()

示例代码

    var name = api.require('aliShortVideoAPI');
    name.finishRecording();

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getVideoPathList

获取片段路径列表(仅android支持)

getVideoPathList()

callback(ret,err)

ret:

  • 类型 :JSON对象类型
  • 描述:正常返回结果
  • 内部字段
{
    status:,     //布尔类型,是否成功
    list:['',''],      //数组类型 ;视频片段
}

err:

  • 类型:JSON对象类型
  • 描述:返回错误
  • 内部字段:
{
    msg:'',      //字符串类型;错误信息
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.getVideoPathList({
        function(ret,err){
        }
    });

可用性

Android系统

可提供的1.0.0及更高版本

deletePart

删除片段视频(仅android支持)

deletePart({params})

params

deleteAll:

  • 类型:布尔类型
  • 描述:(可选项)是否删除所有片段未true则index参数无效
  • 默认值:false

index:

  • 类型:数字类型
  • 描述:(可选项)删除指定片段
  • 默认值:删除最后一段

示例代码

    var name = api.require('aliShortVideoAPI');
    name.deletePart({});

可用性

Android系统

可提供的1.0.0及更高版本

openMix

合拍视频

openMix({params}, callback(ret))

params

rect:

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

videoSize:

  • 类型:JSON 对象
  • 描述:(可选项)视频分辨率
  • 内部字段:
{
    w: 100, //(可选项)数字类型;插件的宽度;默认:720
    h: 100  //(可选项)数字类型;插件的高度;默认:1280
}

videoPath:

  • 类型:字符串类型
  • 描述: 参与合拍的视频路径。 //支持widget://和 fs://

minDuration:

  • 类型:数字类型
  • 描述:(可选项)设置可录制的最小时长,单位秒。
  • 默认值: 0.5

maxDuration:

  • 类型:数字类型
  • 描述:(可选项)设置可录制的最大时长,单位秒 。
  • 默认值:8

gop

  • 类型:数字类型
  • 描述:(可选项)关键帧间隔,有效区间[0, 9000],其中0和1都表示全I帧。
  • 默认值:5

videoQuality

  • 类型:数字类型
  • 描述:(可选项)视频清晰度。
  • 默认值:2 - 0:超高清 - 1:高清 - 2:普通 - 3:低 - 4:很低 - 5:差

encodeMode

  • 类型:数字类型
  • 描述:(可选项)编码格式。
  • 默认值:1 - 0:软编:提升质量、牺牲速度 - 1:硬编:提升速度、牺牲视频质量

useFaceDetect:

  • 类型:布尔类型
  • 描述:(可选项)是否开启人脸识别 ;使用自带人脸识别,开启该功能,系统会在检测到有人脸动图加入时自动进行追踪显示
  • 默认值:true

faceDetectCount

  • 类型:数字类型
  • 描述:(可选项)设置识别人脸的个数 当设置值小于1时,默认为1;当设置值大于3时,默认为3 最大是3个 最小是1个 如果不需要检测人脸 使用:useFaceDetect = NO
  • 默认值:3

faceDectectSync:

  • 类型:布尔类型
  • 描述:(可选项) 是否同步贴合人脸 同步贴合人脸动图会在同步线程执行,优点是贴合性强,缺点是性能差的设备会有卡顿现象 非同步贴合人脸动图,有点是画面流畅但贴图贴合性不强 默认是YES,6及以下机型建议异步,6以上建议同步
  • 默认值:true

frontCaptureSessionPreset

  • 类型:数字类型
  • 描述:(可选项) 前置摄像头采集分辨率
  • 默认值:3 - 1 //352288 - 2 //640480 - 3 //1280720 - 4 //19201080

backCaptureSessionPreset

  • 类型:数字类型
  • 描述:(可选项) 后置摄像头采集分辨率
  • 默认值:3 - 1 //352288 - 2 //640480 - 3 //1280720 - 4 //19201080

recordFps

  • 类型:数字类型
  • 描述:(可选项) 录制帧率, 取值区间(0,30],区间外的值将视为无效值,依然使用默认值。
  • 默认值:25

beautifyStatus:

  • 类型:布尔类型
  • 描述:(可选项) 是否开启美颜
  • 默认值:true

beautifyValue

  • 类型:数字类型
  • 描述:(可选项) 设置美颜度 [0,100]
  • 默认值:80

exposureValue

  • 类型:数字类型
  • 描述:(可选项) 曝光值 [0,1]
  • 默认值:0.5

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    eventType:,    //字符串类型;交互事件类型;取值范围:
                   //finish:
                   //faild:
                   //start:
                   //progress:
    videoPath:''  //字符串类型;视频拼接完成后的路径,仅当eventType为finish时有值
    progress:     //数字类型;进度,仅当eventType为progress时有值
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.openMix({
                     minDuration:2, //最小时长
                     maxDuration:15,//最大时长
                     gop:5,//关键帧间隔
                     videoQuality:1,//视频清晰度
                     encodeMode:1,//b编码格式
                     recordType:0,//拍摄方式 
                
    }, function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS 系统

可提供的1.0.0及更高版本

openMixSynthetic

路径视频合成视频(多个视频合成一个)

openMixSynthetic({params}, callback(ret))

params

videoSize:

  • 类型:JSON 对象
  • 描述:(可选项)视频分辨率
  • 内部字段:
{
    w: 100, //(可选项)数字类型;插件的宽度;默认:720
    h: 100  //(可选项)数字类型;插件的高度;默认:1280
}

gop

  • 类型:数字类型
  • 描述:(可选项)关键帧。
  • 默认值:5

fps

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

bitrate

  • 类型:数字类型
  • 描述:(可选项)码率。
  • 默认值:10000000

videoQuality

  • 类型:数字类型
  • 描述:(可选项)视频清晰度。
  • 默认值:2 - 0:超高清 - 1:高清 - 2:普通 - 3:低 - 4:很低 - 5:差

videoPathArray:

  • 类型:数组
  • 内部字段:
[
  {
          trackId:'',       //字符串类型;要添加到的轨道标识(仅android支持)
          filePath:'',  //字符串类型;视频路径
          mode:0,  //(可选项)数字类型;视频在轨道上的内容填充模式;默认:0
              - 0 //Fit
              - 1 //Fill
         audioReference:true,  //布尔类型;指定此轨道的音频作为最终合成视频的音频 ;默认:false(仅iOS支持)
          durationReference:true  //布尔类型;指定以此轨道的时长作为最终合成视频的时长 ;默认:false(仅iOS支持)
          endTime:,        //数字类型;结束时间	(仅android支持)
          
  },
]

tracks

  • 类型:JSON数组类型
  • 描述:轨道(仅android支持)
  • 内部字段:
[{
    trackId:‘’,        //字符串类型,轨道唯一标识,以便在该轨道内添加视频
    centerX:,      //小数类型,轨道中心点x比例坐标
    centerY:,      //小数类型,轨道中心点y比例坐标
    widthRatio:,  //小数类型,轨道宽度占比
    heightRatio:,     //小数类型,轨道高度占比
    audioReferenceTrack:,       //布尔类型;是否为输出音频轨道,轨道数组中必须有且只有一个为true
    durationReferenceTrack:,     //布尔类型;是否为输出视频长度轨道,轨道数组中必须有且只有一个为true
}
]

outPath

  • 类型:字符串类型
  • 描述:合成输出路径,支持fs路径(仅android支持)

crf

  • 类型:数字类型
  • 描述:(可选项)输出的crf(仅android支持)
  • 默认值:23

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //‘finish’,'faild',
    videoPath:''  //录制完成后才会返回,(仅iOS支持)
    progress: ,    //合成进度
    errorCode:,   //数字类型;错误码,(仅android支持)
}

示例代码

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

可用性

Android系统,iOS系统

可提供的1.0.0及更高版本

starMixSynthetic

开始路径视频合成(与openMixSynthetic使用)

starMixSynthetic()

示例代码

    var name = api.require('aliShortVideoAPI');
    name.starMixSyntheticr();

可用性

Android系统,iOS系统

可提供的1.0.0及更高版本

pauseMixSynthetic

暂停路径视频合成(与openMixSynthetic使用)

pauseMixSynthetic()

示例代码

    var name = api.require('aliShortVideoAPI');
    name.pauseMixSynthetic();

可用性

Android系统,iOS系统

可提供的1.0.0及更高版本

resumeMixSynthetic

恢复路径视频合成(与openMixSynthetic使用)

resumeMixSynthetic()

示例代码

    var name = api.require('aliShortVideoAPI');
    name.resumeMixSynthetic();

可用性

Android系统,iOS系统

可提供的1.0.0及更高版本

cancelMixSynthetic

取消路径视频合成(与openMixSynthetic使用)

cancelMixSynthetic()

示例代码

    var name = api.require('aliShortVideoAPI');
    name.cancelMixSynthetic();

可用性

Android系统,iOS系统

可提供的1.0.0及更高版本

videoCrop

视频剪裁

videoCrop({params}, callback(ret))

params

videoPath:

  • 类型:字符串类型
  • 描述:被裁减的视频路径 。

outPath:

  • 类型:字符串类型
  • 描述:裁剪后视频输出路径(仅android支持)

isVideo:

  • 类型:布尔类型
  • 描述:是否为视频路径; true:视频路径;false:音乐路径(仅iOS支持)

mediaType:

  • 类型:数字类型
  • 描述:(可选项)文件类型(仅android支持)
  • 取值范围:0:视频,1:音频,2:图片
  • 默认值:0

videoSize:

  • 类型:JSON 对象
  • 描述:(可选项)剪裁后视频分辨率; 视频分辨率必须为偶数,裁剪音乐时无需设置
  • 内部字段:
{
    w: 100, //(可选项)数字类型;插件的宽度;默认:720
    h: 100  //(可选项)数字类型;插件的高度;默认:1280
}

startTime:

  • 类型:数字类型
  • 描述:(可选项)开始时间,单位秒。
  • 默认值: 0

endTime:

  • 类型:数字类型
  • 描述:(可选项)结束时间,单位秒 。
  • 默认值:被裁减的视频时长

gop

  • 类型:数字类型
  • 描述:(可选项)关键帧; 裁剪音乐时无需设置
  • 默认值:5

videoQuality

  • 类型:数字类型
  • 描述:(可选项)视频清晰度;裁剪音乐时无需设置
  • 默认值:2 - 0:超高清 - 1:高清 - 2:普通 - 3:低 - 4:很低 - 5:差

encodeMode

  • 类型:数字类型
  • 描述:(可选项)编码格式;
  • 默认值:1 - 0:软编:提升质量、牺牲速度 - 1:硬编:提升速度、牺牲视频质量
    • 2:FFmpeg软编码(仅android支持)

fps

  • 类型:数字类型
  • 描述:(可选项) 录制帧率;裁剪音乐时无需设置。(仅iOS支持)
  • 默认值:25

cropMode

  • 类型:数字类型
  • 描述:(可选项)剪裁模式;裁剪音乐时无需设置
  • 默认值:0 - 0:填充 - 1:剪裁

bitrate

  • 类型:数字类型
  • 描述:(可选项)码率;裁剪音乐时无需设置
  • 默认值:2000000

fillBackgroundColor

  • 类型:字符串类型
  • 描述:(可选项) 背景颜色;视频填充模式下有效,裁剪音乐时无需设置;支持#、rgb、rgba、
  • 默认值:'#000000'

cropRect:

  • 类型:JSON对象类型
  • 描述:裁剪区域,裁剪区域是相对视频原始大小计算的,因此cropRect不能超出视频的原始分辨率(仅android支持)
  • 内部字段:
{
    left:,  //数字类型;裁剪左边框x轴坐标
    top:,    //数字类型;裁剪上边框y轴坐标
    right:,  //数字类型;裁剪右边框x轴坐标
    bottom:,     //数字类型;裁剪下边框y轴坐标
}

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //成功还是失败
    videoPath:''  //剪裁完成后才会返回(仅iOS支持)
    progress:,       //数字类型;裁剪进度(仅android支持)
    cancelComplete:,      //布尔类型,是否取消,取消裁剪时返回true(仅android支持)
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

startCrop

开始剪裁视频

startCrop(callback(ret))

callback(ret)(仅iOS支持)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //‘finish’,'faild',
    videoPath:''  //剪裁完成后才会返回,
    progress:     //剪裁进度
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.startCrop(function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

cancleCrop

取消剪裁视频(android可取消图片)

cancleCrop(callback(ret))

callback(ret)(仅iOS支持)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //‘finish’,完成取消
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.cancleCrop(function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

imageCrop

图片剪裁,(仅iOS支持,android端图片裁剪设置见videoCrop接口)

imageCrop({params}, callback(ret))

params

cropRect:

  • 类型:JSON 对象
  • 描述:(可选项)裁剪的位置及尺寸;例如一张图片(200x200像素 ,cropRect可设置为 (0,0,100,100)(单位为像素)) 。仅适用于裁剪模式。
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;左上角的 x 坐标(相对于被裁减的图片);默认:0
    y: 0,   //(可选项)数字类型;左上角的 y 坐标(相对于被裁减的图片);默认:0
    w: 100, //(可选项)数字类型;裁剪后的宽度;默认:0
    h: 100  //(可选项)数字类型;裁剪后的高度;默认:0
}

imagePath:

  • 类型:字符串类型
  • 描述:被裁减的图片路径 。

videoSize:

  • 类型:JSON 对象
  • 描述:(可选项)剪裁后图片分辨率;
  • 内部字段:
{
    w: 100, //(可选项)数字类型;插件的宽度;默认:720
    h: 100  //(可选项)数字类型;插件的高度;默认:1280
}

cropMode

  • 类型:数字类型
  • 描述:(可选项)剪裁模式设置
  • 默认值:0 - 0:填充 - 1:剪裁

fillBackgroundColor

  • 类型:字符串类型
  • 描述:(可选项) 背景颜色;视频填充模式下有效,裁剪音乐时无需设置;支持#、rgb、rgba、
  • 默认值:'#000000'

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //成功还是失败
    imagePath:''  //剪裁完成后才会返回
}

示例代码

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

可用性

iOS系统

可提供的1.0.0及更高版本

videoEdit

视频、图片、GIF图编辑

videoEdit({params}, callback(ret))

params

rect:

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

outPath:

  • 类型:字符串类型
  • 描述:输出路径,支持fs路径 (仅android支持)

videoSize:

  • 类型:JSON 对象
  • 描述:(可选项)视频分辨率
  • 内部字段:
{
    w: 100, //(可选项)数字类型;插件的宽度;默认:720
    h: 100  //(可选项)数字类型;插件的高度;默认:1280
}

gop

  • 类型:数字类型
  • 描述:(可选项)关键帧。
  • 默认值:5

videoQuality

  • 类型:数字类型
  • 描述:(可选项)视频清晰度。
  • 默认值:2 - 0:超高清 - 1:高清 - 2:普通 - 3:低 - 4:很低 - 5:差

codeType

  • 类型:数字类型
  • 描述:(可选项)编码格式。
  • 默认值:1 - 0:软编:提升质量、牺牲速度 - 1:硬编:提升速度、牺牲视频质量 - 2: ffmpeg - 3: Openh264(仅iOS支持) - 4: X264(仅iOS支持)

mode

  • 类型:数字类型
  • 描述:(可选项)裁剪模式。
  • 默认值:0 - 0:fit - 1:fill

fps

  • 类型:数字类型
  • 描述:(可选项) 帧率;建议20 - 60 不超过60
  • 默认值:25

clip:

  • 类型:数组对象
  • 描述:(可选项)视频分辨率(android为必选项)
  • 内部字段:
[{
    id:,      //(可选项)数字类型;唯一标识(仅android支持)
    editType:0,  //(可选项)数字类型;编辑类型(视频、图片、GIF图)
      - 0:视频
      - 1:图片
      - 2:GIF图(仅iOS支持)
    path: '', //字符串类型;(视频、图片、GIF图)路径; 支持widget://和fs://,android仅支持fs
    startTime: 0 , //(可选项)数字类型;播放的时间长度(视频和GIF有效);默认:0
    duration: ,  //(可选项)数字类型;播放的时间长度;默认:视频时长;图片3秒;GIF时长(从0开始播放)
    animDuration:0, //(可选项)数字类型;过渡动画时长;默认:0(仅iOS支持)
    },
]

frameRate:

  • 类型:数字类型
  • 描述:帧率(仅android支持)

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项)插件视图添加到指定 frame 的名字(只指 frame,传 window 无效)(仅android有效)
  • 默认:插件依附于当前 window

fixed:

  • 类型:布尔类型
  • 描述:(可选项)是否将插件视图固定到窗口上,不跟随窗口上下滚动(仅android有效)
  • 默认值:true(不随之滚动)

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //成功还是失败
    eventType:'',      //字符串类型,回调事件(仅android支持)
                                    ‘end’:结束
                                    ‘dataReady’:播放数据准备完成
                                    ‘error’:错误
                                    ‘playProgress’:播放进度
   endCode:,        //数字类型;eventType为‘end’时返回(仅Android支持)
   errorCode:,       //数字类型。eventType为‘error’时返回(仅Android支持)
   currentPlayTime:,       //数字类型;当前播放时间 eventType为‘playProgress’时返回(仅Android支持)
   currentStreamPlayTime:,     //数字类型;当前播放的视频时间,eventType为‘playProgress’时返回(仅Android支持)
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.videoEdit({

                
    }, function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

addMediaClip

增加媒体片段(视频、图片、GIF图)

addMediaClip({params}, callback(ret))

params

index

  • 类型:数字类型
  • 描述:(可选项) 增加的位置,不能超过当前已有媒体片段的最大角标(从0开始)
  • 默认值:0

clip:

  • 类型:数组对象
  • 描述:(可选项)视频分辨率
  • 内部字段:
{
    id:,      //(可选项)数字类型;唯一标识(仅android支持)
    editType:0,  //(可选项)数字类型;编辑类型(视频、图片、GIF图)
      - 0:视频
      - 1:图片
      - 2:GIF图
    path: '', //字符串类型;(视频、图片、GIF图)路径; 支持widget://和fs://
    startTime: 0 , //(可选项)数字类型;播放的时间长度(视频和GIF有效);默认:0
    duration: ,  //(可选项)数字类型;播放的时间长度;默认:视频时长;图片3秒;GIF时长(从0开始播放)
    animDuration:0, //(可选项)数字类型;过渡动画时长;默认:0(仅iOS支持)
    transitionType:,    //(可选项)数字类型,转场效果,0:圆形打开,1:淡入淡出,2:五角星打开,3:百叶窗,4:平移(仅android支持)
    }

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //成功还是失败
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.addMediaClip({

                
    }, function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

updateMediaClip

更新媒体片段(视频、图片、GIF图)

updateMediaClip({params}, callback(ret))

params

index

  • 类型:数字类型
  • 描述:(可选项) 更换的位置;
  • 默认值:0

clip:

  • 类型:数组对象
  • 描述:(可选项)视频分辨率
  • 内部字段:
{
    id:,      //(可选项)数字类型;唯一标识(仅android支持)
    editType:0,  //(可选项)数字类型;编辑类型(视频、图片、GIF图)
      - 0:视频
      - 1:图片
      - 2:GIF图
    path: '', //字符串类型;(视频、图片、GIF图)路径; 支持widget://和fs://
    startTime: 0 , //(可选项)数字类型;播放的时间长度(视频和GIF有效);默认:0
    duration: ,  //(可选项)数字类型;播放的时间长度;默认:视频时长;图片3秒;GIF时长(从0开始播放)
    animDuration:0, //(可选项)数字类型;过渡动画时长;默认:0(仅iOS支持)
    transitionType:,    //(可选项)数字类型,转场效果,0:圆形打开,1:淡入淡出,2:五角星打开,3:百叶窗,4:平移(仅android支持)
    }

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //成功还是失败
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.updateMediaClip({

                
    }, function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

deleteMediaClipAtIndex

删除某个媒体片段(视频、图片、GIF图)

deleteMediaClipAtIndex({params}, callback(ret))

params

index

  • 类型:数字类型
  • 描述:(可选项) 删除的位置;
  • 默认值:0

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //成功还是失败
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.deleteMediaClipAtIndex({
          index:0
    }, function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

deleteAllMediaClips

删除所有媒体片段(视频、图片、GIF图)

deleteAllMediaClips( callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //成功还是失败
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.deleteAllMediaClips(function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getMediaClipAtIndex

获取某个媒体片段(视频、图片、GIF图)

getMediaClipAtIndex({params}, callback(ret))

params

index

  • 类型:数字类型
  • 描述:(可选项) 获取的位置;
  • 默认值:0

callback(ret)

ret:

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

    mediaType:0,      //数字类型;媒体片段的类型
          - 0:视频
          - 1:图片
          - 2:音频
          - 3:GIF图(仅iOS支持)
    mediaHeight:100,      //数字类型;图片、视频高(仅iOS支持)
    mediaWidth:100,      //数字类型;图片、视频宽(仅iOS支持)
    src:'',      //片段资源本地路径
    startTime:0,      //数字类型;开始时间(android媒体片段为视频时返回)
    fadeDuration:0,      //数字类型;过渡时长(仅iOS支持)
    displayMode:0,      //数字类型;显示模式(仅iOS支持)
          - 0:剪裁
          - 1:填充
    rotation:30,      //数字类型;转角角度(android媒体片段为视频时返回)
    duration:16,      //数字类型;持续时长
    streamId:10,      //数字类型;片段id
    audioMixWeight:80,      //数字类型;音量大小(仅iOS支持)

}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.getMediaClipAtIndex({
          index:0
    }, function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getAllMediaClips

获取所有媒体片段(视频、图片、GIF图)

getAllMediaClips(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{   data:[ 

    {
    mediaType:0,      //数字类型;媒体片段的类型
          - 0:视频
          - 1:图片
          - 2:音频
          - 3:GIF图(仅iOS支持)
    mediaHeight:100,      //数字类型;图片、视频高(仅iOS支持)
    mediaWidth:100,      //数字类型;图片、视频宽(仅iOS支持)
    src:'',      //片段资源本地路径
    startTime:0,      //数字类型;开始时间(android媒体片段为视频时返回)
    fadeDuration:0,      //数字类型;过渡时长(仅iOS支持)
    displayMode:0,      //数字类型;显示模式(仅iOS支持)
          - 0:剪裁
          - 1:填充
    rotation:30,      //数字类型;转角角度(android媒体片段为视频时返回)
    duration:16,      //数字类型;持续时长
    streamId:10,      //数字类型;片段id
    audioMixWeight:80,      //数字类型;音量大小(仅iOS支持)
    }

}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.getAllMediaClips({
          index:0
    }, function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

mediaPlay

播放媒体片段

mediaPlay(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{  
    status:,      //成功还是失败
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.mediaPlay(function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

mediaStop

停止播放媒体片段

mediaStop(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{  
    status:,      //成功还是失败
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.mediaStop(function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

mediaPause

暂停播放媒体片段

mediaPause(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{  
    status:,      //成功还是失败
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.mediaPause(function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

mediaResume

继续播放媒体片段

mediaResume(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{  
    status:,      //成功还是失败
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.mediaResume(function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

mediaIsPlaying

媒体片段是否正在播放

mediaIsPlaying(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{  
    status:,      //播放还是未播放
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.mediaIsPlaying(function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

mediaSeekTo

seek到某一时间点

mediaSeekTo({params}, callback(ret))

params

seekTo

  • 类型:数字类型
  • 描述:(可选项) 跳到的位置;
  • 默认值:0

callback(ret)

ret:

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

    status:,      //成功还是失败

}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.mediaSeekTo({
          index:0
    }, function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getMediaDuration

获取总时长(秒)

getMediaDuration(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{  
    duration:12,      //总时长
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.getMediaDuration(function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getMediaCurrentTime

获取当前播放(秒)

getMediaCurrentTime(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{  
    currentTime:12,      //前播放时间(秒)
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.getMediaCurrentTime(function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getCurrentStreamTime

获取原始视频流播放时间(秒)

getCurrentStreamTime(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{  
    streamTime:12,      //原始视频流播放时间(秒)
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.getCurrentStreamTime(function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getClipStartTimeAtIndex

获取视频片段在播放时间轴上开始播放的时间(秒)

getClipStartTimeAtIndex({params}, callback(ret))

params

index

  • 类型:数字类型
  • 描述:(可选项) 获取的位置;
  • 默认值:0

callback(ret)

ret:

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

    startTime:0,      //数字类型;视频片段在播放时间轴上开始播放的时间

}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.getClipStartTimeAtIndex({
          index:0
    }, function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setMediaRefreshFps

设置播放器的刷新频率(仅iOS支持)

setMediaRefreshFps({params}, callback(ret))

params

fps

  • 类型:数字类型
  • 描述:(可选项) 帧率;默认值:30帧/s,最大值:60帧/s,建议设置值不小于20帧/s
  • 默认值:0

callback(ret)

ret:

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

    startTime:0,      //数字类型;视频片段在播放时间轴上开始播放的时间

}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.setMediaRefreshFps({
          index:0
    }, function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

iOS系统

可提供的1.0.0及更高版本

setApplyTimeFilter

设置时间特效

setApplyTimeFilter({params}, callback(ret))

params

startTime

  • 类型:数字类型
  • 描述:时间特效开始时间

endTime

  • 类型:数字类型
  • 描述:时间特效结束时间

type

  • 类型:数字类型
  • 描述:(可选项)时间特效类型。
  • 默认值:0 - 0:变速 - 1:反复 - 2:倒放

needOriginDuration:

  • 类型:布尔类型
  • 描述:(可选类型)是否需要保持原视频长度(仅android支持)
  • 默认值:false

repeatTime:

  • 类型:数字类型
  • 描述:(可选项)重复次数 type为1时有效(仅android支持)
  • 默认值:1

param

  • 类型:数字类型
  • 描述:倍速;在变速类型下代表速率,范围建议 0.5 - 2;在反复类型下代表反复次数,内部取整型
  • 默认:1

callback(ret)

ret:

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

    status:,      //布尔类型;成功还是失败

}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setMediaMusic

设置音乐

setMediaMusic({params}, callback(ret))

params

path

  • 类型:字符串类型
  • 描述: 音乐文件路径;支持widget://和fs://

startTime

  • 类型:数字类型
  • 描述: 音乐在播放轴上的开始播放时间

duration

  • 类型:数字类型
  • 描述:音乐在播放轴上的播放持续时间

streamStartTime

  • 类型:数字类型
  • 描述: 音乐在自身轴上的用来播放的开始时间

streamDuration

  • 类型:数字类型
  • 描述:音乐在自身轴上的用来播放的持续时长

audioMixWeight

  • 类型:数字类型
  • 描述:(可选项)音量大小
  • 默认:当前音量

musicType

  • 类型:数字类型
  • 描述:(可选项)背景音乐或配音(仅android支持)
  • 取值范围:1:背景音乐,2:配音
  • 默认值:1

id

  • 类型:数字类型
  • 描述:资源id,唯一标识(仅android支持)

callback(ret)

ret:

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

    status:,      //布尔类型;成功还是失败
    count:,        //数字类型;添加的音乐资源个数(仅iOS支持)
    streamIdArray: //数组类型:streamID数组(仅iOS支持)

}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

removeMusic

删除某个音乐

removeMusic({params}, callback(ret))

params

index

  • 类型:数字类型
  • 描述:删除的音乐位置(仅iOS支持)

id

  • 类型 :数字类型
  • 描述 :已添加的资源id(仅android支持)

musicType

  • 类型:数字类型
  • 描述:(可选项)背景音乐或配音(仅android支持)
  • 取值范围:1:背景音乐,2:配音
  • 默认值:1

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

removeAllMusic

删除所有音乐(仅iOS支持)

removeAllMusic(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败
}

示例代码

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

可用性

iOS系统

可提供的1.0.0及更高版本

setAudioEffect

设置单路流音效

setAudioEffect({params}, callback(ret))

params

streamId

  • 类型:数字类型
  • 描述:流id

weight

  • 类型:数字类型
  • 描述:音效权重,范围0-100
  • 默认:50

effectType

  • 类型:数字类型
  • 描述:音效类型
  • 默认:0
    • 0:默认
    • 1:萝莉
    • 2:大叔
    • 3:混响
    • 4:回声
    • 5:机器人
    • 6:大魔王
    • 7:小黄人
    • 8:去噪

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

removeAudioEffect

删除单路流音效

removeAudioEffect({params}, callback(ret))

params

streamId

  • 类型:数字类型
  • 描述:流id

effectType

  • 类型:数字类型
  • 描述:音效类型
  • 默认:0
    • 0:默认
    • 1:萝莉
    • 2:大叔
    • 3:混响
    • 4:回声
    • 5:机器人
    • 6:大魔王
    • 7:小黄人
    • 8:去噪

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setMainStreamsAudioEffect

设置主流音效(仅iOS支持)

setMainStreamsAudioEffect({params}, callback(ret))

params

weight

  • 类型:数字类型
  • 描述:音效权重,范围0-100
  • 默认:50

effectType

  • 类型:数字类型
  • 描述:音效类型
  • 默认:0
    • 0:默认
    • 1:萝莉
    • 2:大叔
    • 3:混响
    • 4:回声
    • 5:机器人
    • 6:大魔王
    • 7:小黄人
    • 8:去噪

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败
}

示例代码

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

可用性

iOS系统

可提供的1.0.0及更高版本

removeMainStreamsAudioEffect

去除主流音效(仅iOS支持)

removeMainStreamsAudioEffect({params}, callback(ret))

params

effectType

  • 类型:数字类型
  • 描述:音效类型
  • 默认:0
    • 0:默认
    • 1:萝莉
    • 2:大叔
    • 3:混响
    • 4:回声
    • 5:机器人
    • 6:大魔王
    • 7:小黄人
    • 8:去噪

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败
}

示例代码

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

可用性

iOS系统

可提供的1.0.0及更高版本

setMute

设置静音(仅iOS支持)

setMute({params}, callback(ret))

params

isMute

  • 类型:布尔类型
  • 描述:是否静音
  • 默认:false

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败
}

示例代码

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

可用性

iOS系统

可提供的1.0.0及更高版本

setVolume

设置音量

setVolume({params}, callback(ret))

params

volume

  • 类型:数字类型
  • 描述:音量,如果设置的volume值大于100可能导致破音,建议设置范围:0-100
  • 默认:100

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setMainStreamsAudioWeight

设置主流音频大小(仅iOS支持)

setMainStreamsAudioWeight({params}, callback(ret))

params

weight

  • 类型:数字类型
  • 描述:音效权重,范围0-100
  • 默认:50

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败
}

示例代码

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

可用性

iOS系统

可提供的1.0.0及更高版本

setAudioWeight

设置主流音频大小

setAudioWeight({params}, callback(ret))

params

streamId

  • 类型:数字类型
  • 描述:流id

weight

  • 类型:数字类型
  • 描述:音效权重,范围0-100
  • 默认:50

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setMainStreamsAudioDenoise

设置主流去噪(仅iOS支持)

setMainStreamsAudioDenoise({params}, callback(ret))

params

isDenoise

  • 类型:布尔类型
  • 描述:是否设置主流去噪
  • 默认:false

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败
}

示例代码

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

可用性

iOS系统

可提供的1.0.0及更高版本

setAudioDenoise

设置任意音频流去噪

setAudioDenoise({params}, callback(ret))

params

streamId

  • 类型:数字类型
  • 描述:流id

isDenoise

  • 类型:布尔类型
  • 描述:是否设置主流去噪
  • 默认:false

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setGraffiti

设置涂鸦

setGraffiti({params}, callback(ret))

params

lineColor

  • 类型:字符串类型
  • 描述:画笔颜色;支持#、rgb、rgba(仅iOS支持)
  • 默认:'#FFFFFF'

lineWidth

  • 类型:数字类型
  • 描述:画笔宽度(仅iOS支持)
  • 默认:5

shadowColor

  • 类型:字符串类型
  • 描述:线条阴影颜色(仅iOS支持)
  • 默认:无

shadowWidth

  • 类型:数字类型
  • 描述:线条阴影宽度(仅iOS支持)
  • 默认:无

enableCrossBorder

  • 类型:布尔类型
  • 描述:是否允许越界画图(仅iOS支持)
  • 默认:false

width:

  • 类型:数字类型
  • 描述:涂鸦画布的宽(仅android支持)

height:

  • 类型:数字 类型
  • 描述:涂鸦画布的高(仅android支持)

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败
    endPoint:{    //终点坐标 (仅iOS支持)
      x:,
      y:
    },  
    startPoint:{  //起始点坐标
      x:,
      y:
    },   
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

changePaint

替换涂鸦

changePaint({params}, callback(ret))

params

lineColor

  • 类型:字符串类型
  • 描述:画笔颜色;支持#、rgb、rgba
  • 默认:'#FFFFFF'

lineWidth

  • 类型:数字类型
  • 描述:画笔宽度
  • 默认:5

shadowColor

  • 类型:字符串类型
  • 描述:线条阴影颜色(仅iOS支持)
  • 默认:无

shadowWidth

  • 类型:数字类型
  • 描述:线条阴影宽度(仅iOS支持
  • 默认:无

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败  
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

removePaint

清空所有线条

removePaint(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败  
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

undoPaint

撤销上一步

undoPaint(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败  (仅iOS回调)
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

redoPaint

恢复上一步(仅iOS支持)

redoPaint(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败  
}

示例代码

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

可用性

iOS系统

可提供的1.0.0及更高版本

undoAllChanges

撤销本次涂鸦所有的操作

undoAllChanges(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败  
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

completePaint

获取涂鸦完成后的图片(仅iOS支持)

completePaint(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败  
    imagePath:''  //涂鸦图片路径;在status为true时返回此参数
}

示例代码

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

可用性

iOS系统

可提供的1.0.0及更高版本

confirm

确认所有操作(仅android支持)

confirm(callback(ret))

示例代码

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

可用性

Android系统

可提供的1.0.0及更高版本

applyPaintCanvas

设置涂鸦渲染到视频 (仅android支持)

applyPaintCanvas(callback(ret))

callback(ret,err)

ret

  • 类型:JSON对象类型
  • 描述:正确返回
  • 内部字段
{
    status:,       //布尔类型,是否成功
}

err

  • 类型:JSON对象类型
  • 描述:错误返回
  • 内部字段:
{
msg:'',   //字符串类型 错误信息     
}

示例代码

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

可用性

Android系统

可提供的1.0.0及更高版本

removeCanvas

移除渲染到视频上的涂鸦 (仅android支持)

removeCanvas(callback(ret))

示例代码

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

可用性

Android系统

可提供的1.0.0及更高版本

releaseCanvas

释放涂鸦资源 (仅android支持)

releaseCanvas(callback(ret))

示例代码

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

可用性

Android系统

可提供的1.0.0及更高版本

setWaterMark

设置水印

setWaterMark({params}, callback(ret))

params

rect:

  • 类型:JSON 对象
  • 描述:(可选项)插件的位置及尺寸
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;左上角的 x 坐标(相对于编辑区域);默认:0
    y: 0,   //(可选项)数字类型;左上角的 y 坐标(相对于编辑区域);默认:0
    w: 100, //(可选项)数字类型;宽度;默认:100
    h: 100  //(可选项)数字类型;高度;默认:100
}

outPutSize:

  • 类型:JSON 对象
  • 描述:(可选项)分辨率(仅iOS支持)
  • 内部字段:
{
    w: 100, //(可选项)数字类型;插件的宽度;默认:720
    h: 100  //(可选项)数字类型;插件的高度;默认:1280
}

path

  • 类型:字符串类型
  • 描述:水印图片的路径;fs://

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败  
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setTailWaterMark

设置片尾水印

setTailWaterMark({params}, callback(ret))

params

rect:

  • 类型:JSON 对象
  • 描述:(可选项)插件的位置及尺寸
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;左上角的 x 坐标(相对于编辑区域);默认:0
    y: 0,   //(可选项)数字类型;左上角的 y 坐标(相对于编辑区域);默认:0
    w: 100, //(可选项)数字类型;宽度;默认:100
    h: 100  //(可选项)数字类型;高度;默认:100
}

outPutSize:

  • 类型:JSON 对象
  • 描述:(可选项)分辨率(仅iOS支持)
  • 内部字段:
{
    w: 100, //(可选项)数字类型;插件的宽度;默认:720
    h: 100  //(可选项)数字类型;插件的高度;默认:1280
}

endTime

  • 类型:数字类型
  • 描述:片尾水印的持续时长
  • 默认:2(秒)

path

  • 类型:字符串类型
  • 描述:水印图片的路径;fs://

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败  
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

applyTransition

设置转场

applyTransition({params}, callback(ret))

params

duration

  • 类型:数字类型
  • 描述:转场时间;需要保证转场时间小于等于视频片段时长(仅iOS支持)
  • 默认:1(秒)

overlapDuration

  • 类型:数字类型
  • 描述:转场效果前后两段视频的重叠时间(仅android支持)
  • 默认:1(秒)

type

  • 类型:数字类型
  • 描述:转场模式
  • 默认:0
    • 0:百叶窗
    • 1:平移
    • 2:圆形
    • 3:多边形
    • 4:淡入淡出
    • 5:五角星(仅android支持)

index

  • 类型:数字类型
  • 描述:给第几个片段添加转场
  • 默认呢:0

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败  
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

removeTransitionAtIndex

删除某个转场效果(仅iOS支持)

removeTransitionAtIndex({params}, callback(ret))

params

index

  • 类型:数字类型
  • 描述:删除第几个片段添加的转场
  • 默认呢:0

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;成功还是失败  
}

示例代码

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

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

compose

合成输出(仅Android支持)

compose({params}, callback(ret))

params

outPath:

  • 类型:字符串类型
  • 描述:输出路径,支持fs路径

videoSize:

  • 类型:JSON 对象
  • 描述:(可选项)视频分辨率
  • 内部字段:
{
    w: 100, //(可选项)数字类型;插件的宽度;默认:720
    h: 100  //(可选项)数字类型;插件的高度;默认:1280
}

gop

  • 类型:数字类型
  • 描述:(可选项)关键帧。
  • 默认值:5

videoQuality

  • 类型:数字类型
  • 描述:(可选项)视频清晰度。
  • 默认值:2 - 0:超高清 - 1:高清 - 2:普通 - 3:低 - 4:很低 - 5:差

codeType

  • 类型:数字类型
  • 描述:(可选项)编码格式。
  • 默认值:1 - 0:软编:提升质量、牺牲速度 - 1:硬编:提升速度、牺牲视频质量 - 2: ffmpeg

mode

  • 类型:数字类型
  • 描述:(可选项)裁剪模式。
  • 默认值:0 - 0:fit - 1:fill

fps

  • 类型:数字类型
  • 描述:(可选项) 帧率;建议20 - 60 不超过60
  • 默认值:25

frameRate:

  • 类型:数字类型
  • 描述:帧率

callback(ret,err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;是否正常返回
    eventType:'',      //字符串类型;
                                     ‘completed’:完成回调
                                     ‘progress’:进度回调
                                      ‘error’:错误回调
    progress:,         //数字类型,eventType为‘progress’时返回
    errorCode:,      //数字类型;错误码 eventType为‘error’时返回
}

err:

  • 类型:JSON 对象
  • 内部字段:
{    
    msg:'',      //字符串类型;错误信息
}

示例代码

    var name = api.require('aliShortVideoAPI');
    name.compose({
        outPath:'',
        frameRate:,
        fps:,
        mode:,
    }, function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

Android系统

可提供的1.0.0及更高版本

cancelCompose

取消合成(仅Android支持)

cancelCompose({params}, callback(ret))

callback(ret,err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{    
    status:,      //布尔类型;是否成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{    
    msg:'',      //字符串类型;错误信息
}

示例代码

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

可用性

Android系统

可提供的1.0.0及更高版本

exitEdit

退出编辑(仅Android支持)

exitEdit({params}, callback(ret))

示例代码

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

可用性

Android系统

可提供的1.0.0及更高版本

openMixRecord

初始化视频合拍 (仅android支持)

openMixRecord({params}, callback(ret))

params

preViewRect:

  • 类型:JSON 对象
  • 描述:摄像头预览控件位置
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;插件左上角的 x 坐标;默认:0
    y: 0,   //(可选项)数字类型;插件左上角的 y 坐标;默认:0
    w: 100, //(可选项)数字类型;插件的宽度;默认:100
    h: 100  //(可选项)数字类型;插件的高度;默认:100
}

playViewRect:

  • 类型:JSON 对象
  • 描述:合拍视频控件位置
  • 内部字段:
{
    x: 0,   //(可选项)数字类型;插件左上角的 x 坐标;默认:100
    y: 0,   //(可选项)数字类型;插件左上角的 y 坐标;默认:0
    w: 100, //(可选项)数字类型;插件的宽度;默认:100
    h: 100  //(可选项)数字类型;插件的高度;默认:100
}

outPutInfo

  • 类型:JSON对象类型
  • 描述:视频输出设置
  • 内部字段:
{
encodeMode:,    //(可选项)数字类型;编码格式
                                 0:软编:提升质量、牺牲速度
                                 1:硬编:提升速度、牺牲视频质量,默认值
                                 2:FFmpeg软编码
crf:,       //(可选项)数字类型;编码质量因子;默认值23
videoWidth:,      //(可选项)数字类型;视频宽度;默认值:720
videoHeight:,      //(可选项)数字类型;视频高度;默认值:1280
fps:,       //(可选项)数字类型;录制采集帧率 ;默认值:30
encoderFps:,      //(可选项)数字类型;编码帧率;默认值:30
}

inPutInfo

  • 类型:JSON对象类型
  • 描述:输入设置
  • 内部字段:
{
    filePath:'',       //字符串类型;
    startTime:,     //数字类型;开始时间
    endTime:,      //数字类型;结束时间
    mixDisplayParam:{     //JSON对象类型;合拍样本视频窗口显示布局参数
        cropMode:,    //(可选项)数字类型;剪裁模式 
                                  0:填充,默认值
                                  1:剪裁
        level:,       //(可选项)数字类型;布局等级,高层级的渲染画面会覆盖低层级的渲染画面
        centerX:,      //小数类型,轨道中心点x比例坐标
        centerY:,      //小数类型,轨道中心点y比例坐标
        widthRatio:,  //小数类型,轨道宽度占比
        heightRatio:,     //小数类型,轨道高度占比
    },
    recordDisplayParam:{   //JSON对象类型;合拍摄像头采集窗口的显示布局参数
        cropMode:,    //(可选项)数字类型;剪裁模式
                                  0:填充
                                  1:剪裁
        level:,       //(可选项)数字类型;布局等级,高层级的渲染画面会覆盖低层级的渲染画面
        centerX:,      //小数类型,轨道中心点x比例坐标
        centerY:,      //小数类型,轨道中心点y比例坐标
        widthRatio:,  //小数类型,轨道宽度占比
        heightRatio:,     //小数类型,轨道高度占比
    }
}

minDuration:

  • 类型:数字类型
  • 描述:(可选项)最小时长,单位秒。
  • 默认值: 2

maxDuration:

  • 类型:数字类型
  • 描述:(可选项)最大时长,单位秒 。
  • 默认值:8

gop

  • 类型:数字类型
  • 描述:(可选项)关键帧。
  • 默认值:5

videoQuality

  • 类型:数字类型
  • 描述:(可选项)视频清晰度。
  • 默认值:2 - 0:超高清 - 1:高清 - 2:普通 - 3:低 - 4:很低 - 5:差

beautifyStatus:

  • 类型:布尔类型
  • 描述:(可选项) 是否开启美颜
  • 默认值:true

beautifyValue

  • 类型:数字类型
  • 描述:(可选项) 设置美颜度 [0,100]
  • 默认值:80

cameraType

  • 类型:数字类型
  • 描述:(可选项)摄像头类型
  • 取值范围:1-前置摄像头,2-后置摄像头
  • 默认值:2

rate

  • 类型:小数类型
  • 描述:(可选项)录制速率
  • 取值范围:[0.5-2.0]
  • 默认值:1

outPutPath

  • 类型:字符串类型
  • 描述:输出文件路径,支持fs路径(仅android支持)
  • 例:‘fs://recordVideo/record.mp4’

fixedOn:

  • 类型:字符串类型
  • 描述:(可选项)插件视图添加到指定 frame 的名字(只指 frame,传 window 无效)(仅android有效)
  • 默认:插件依附于当前 window

fixed:

  • 类型:布尔类型
  • 描述:(可选项)是否将插件视图固定到窗口上,不跟随窗口上下滚动(仅android有效)
  • 默认值:true(不随之滚动)

示例代码

    var name = api.require('aliShortVideoAPI');
    name.openMixRecord({
                    preViewRect:{
                        x:,
                        y:,
                        w:,
                        h:,
                    },
                    playViewRect:{
                            x:,
                            y:,
                         w:,
                            h:,
                    },
                    outPutInfo:{
                        encodeMode:,   
                        crf:,
                        videoWidth:, 
                        videoHeight:, 
                        fps:, 
                        encoderFps:, 
                    },
                    inPutInfo:{
                        filePath:'', 
                        startTime:, 
                        endTime:,  
                        mixDisplayParam:{  
                            cropMode:, 
                            level:, 
                            centerX:,  
                            centerY:,  
                            widthRatio:, 
                            heightRatio:, 
                        },
                        recordDisplayParam:{   
                            cropMode:,   
                            level:, 
                            centerX:,  
                            centerY:,   
                            widthRatio:,  
                            heightRatio:,  
                        }
                    },
                    minDuration:,
                    maxDuration:,
                    outPutPath:'',
    }, function(ret) {
        if (ret) {
           api.alert({msg: JSON.stringify(ret)});
        }
    });

可用性

Android系统

可提供的1.0.0及更高版本

setMixRecordCallback

设置合拍监听(仅android支持)

setMixRecordCallback({params}, callback(ret))

callback(ret,err)

ret

  • 类型:JSON对象类型
  • 内部字段:
{
    status:,      //布尔类型,是否正常返回
    eventType:'',      //字符串类型;
                                ‘complete’:片段结束
                                ‘finish’:合成结束
                                ‘progress’:进度
                                ‘onMaxDuration’:到达最大时长
                                ‘error’:发生错误
 validClip:,  //布尔类型;eventType 为‘complete’时返回
clipDuration:,   //数字类型;eventType 为‘complete’时返回
outputPath:'',     //字符串类型;eventType 为‘finish’时返回
progress:,        //数字类型;eventType 为‘progress’时返回
errorCode:'',      //数字类型;eventType 为‘error’时返回
}

err

  • 类型:JSON对象类型
  • 内部字段:
{
msg:'',  //字符串类型;错误信息
}

示例代码

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

可用性

Android系统

可提供的1.0.0及更高版本

startMixRecordPreview

开启合拍预览(仅android支持)

startMixRecordPreview({params}, callback(ret))

callback(ret,err)

ret

  • 类型:JSON对象类型
  • 内部字段:
{
    status:,      //布尔类型,是否成功
}

err

  • 类型:JSON对象类型
  • 内部字段:
{
msg:'',  //字符串类型;错误信息
}

示例代码

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

可用性

Android系统

可提供的1.0.0及更高版本

stopMixRecordPreview

停止合拍预览(仅android支持)

stopMixRecordPreview({params}, callback(ret))

示例代码

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

可用性

Android系统

可提供的1.0.0及更高版本

startMixRecordRecording

开始合拍录制 (仅android支持)

startMixRecordRecording({params}, callback(ret))

callback(ret,err)

ret

  • 类型:JSON对象类型
  • 内部字段:
{
    status:,      //布尔类型,是否成功
}

err

  • 类型:JSON对象类型
  • 内部字段:
{
msg:'',  //字符串类型;错误信息
}

示例代码

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

可用性

Android系统

可提供的1.0.0及更高版本

stopMixRecordRecording

停止合拍录制 (仅android支持)

stopMixRecordRecording({params}, callback(ret))

callback(ret,err)

ret

  • 类型:JSON对象类型
  • 内部字段:
{
    status:,      //布尔类型,是否成功
}

err

  • 类型:JSON对象类型
  • 内部字段:
{
msg:'',  //字符串类型;错误信息
}

示例代码

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

可用性

Android系统

可提供的1.0.0及更高版本

finishMixRecord

结束合拍录制合成视频 (仅android支持)

finishMixRecord({params}, callback(ret))

callback(ret,err)

ret

  • 类型:JSON对象类型
  • 内部字段:
{
    status:,      //布尔类型,是否成功
}

err

  • 类型:JSON对象类型
  • 内部字段:
{
msg:'',  //字符串类型;错误信息
}

示例代码

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

可用性

Android系统

可提供的1.0.0及更高版本

cancleMixRecordFinish

取消合拍合成视频 (仅android支持)

cancleMixRecordFinish({params}, callback(ret))

callback(ret,err)

ret

  • 类型:JSON对象类型
  • 内部字段:
{
    status:,      //布尔类型,是否成功
}

err

  • 类型:JSON对象类型
  • 内部字段:
{
msg:'',  //字符串类型;错误信息
}

示例代码

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

可用性

Android系统

可提供的1.0.0及更高版本

closeMixRecord

关闭视频合拍 (仅android支持)

closeMixRecord({params}, callback(ret))

示例代码

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

可用性

Android系统

可提供的1.0.0及更高版本

是否仍需要帮助? 请保持联络!
最后更新于 2024/11/18