普通模版创建及使用

本篇文章介绍通过控制台和API创建及使用普通模板。

通过控制台或API创建的模板,均可通过API使用,从而达到批量生产的目标。

系统内置了一些普通模板-公共模板库,无需创建即可直接使用。

通过控制台创建及使用

控制台创建普通模板

  1. 在IMS控制台,从左侧导航栏选择云智能剪辑,在云智能剪辑页,选择要导出模板的云剪辑工程,单击导出模版

  2. 选中可变素材,设置为可替换,并设置ID命名。点击右上角导出,即可创建普通模板。

修改模板参数并导出

通过控制台使用

  1. 在IMS控制台,从左侧导航栏选择云剪辑模版,在云剪辑模版页,选择普通模版页签,选择要使用的模板,单击使用模版

  2. 此时控制台会基于模板新创建一个工程,即可正常使用。

控制台会基于模板新创建一个工程,即可正常使用

通过API使用模板

由控制台创建的模板,可以通过API来使用,从而进行批量视频生成。

使用模板ID和ClipsParam提交剪辑合成任务,即可使用模板。模板ID通过控制台即可获得,接下来介绍如何生成ClipsParam:

方式1:根据ID命名拼接

控制台创建的模板,通过ID命名,即可拼出ClipsParam。如下面设置的ID命名:

模板ID命名

则对应的ClipsParam为:

{
 "1": "替换后的字幕",
 "2": "****20b48fb04483915d4f2cd8ac****",
 "3": "****20b48fb04483915d4f2cd8ac****",
 "4": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/your-video1.mp4",
 "5": "https://your-bucket.oss-cn-shanghai.aliyuncs.com/your-video2.mp4"
}

即:ID命名为key,需要替换的文案或媒资ID为value。

说明

使用模板时,ClipsParam中的MediaId可以使用IMS的MediaId、VOD的MediaId,OSS地址,可以混合使用,以下ClipsParam相同。

方式2:调用GetTemplate获取ClipsParam

使用TemplateId调用获取模板信息接口,返回结果中的ClipsParam字段如下:

{"1":"text","2":"mediaId","3":"mediaId","4":"mediaId","5":"mediaId"}

此为ClipsParam示例,value中的text换成文案,mediaId换成真实的MediaId,或OSS地址,即可得到最终的ClipsParam。

有了模板ID和ClipsParam即可调用提交剪辑合成作业接口即可使用模板提交合成,代码示例:

SubmitMediaProducingJobRequest request = new SubmitMediaProducingJobRequest();
request.setTemplateId("Your TemplateId");
request.setClipsParam("{\"1\":\"替换的字幕\",\"2\":\"****20b48fb04483915d4f2cd8ac****\",\"3\":\"****20b48fb04483915d4f2cd8ac****\",\"4\":\"****20b48fb04483915d4f2cd8ac****\",\"5\":\"****20b48fb04483915d4f2cd8ac****\"}");
request.setOutputMediaConfig("{\"MediaURL\":\"http://your-bucket.oss-cn-shanghai.aliyuncs.com/object.mp4\"}");
SubmitMediaProducingJobResponse response = iceClient.submitMediaProducingJob(request);
System.out.println("jobid : " + response.getBody().getJobId());

通过API创建及使用

普通模板Config是基于云剪辑Timeline的一个封装,自定义模板Config会更加灵活,建议有特殊需求的客户熟悉Config结构并熟练自定义模板,普通模板Config详解

普通模板Config示例

以下为视频拼接模板Config:

{
    "VideoTracks": [
        {
            "VideoTrackClips": [
                {
                    "Sys_Type" : "ArrayItems",
                    "Sys_ArrayObject" : "$VideoArray",
                    "Sys_Template" : {
                        "MediaId" : "$MediaId"
                    }
                }
            ]
        }
    ]
}

更多模板Config示例见:普通模板Config示例

通过API创建模板

调用创建模板接口,传入Config,注意普通模板Type取值为Timeline。

代码示例:

AddTemplateRequest request = new AddTemplateRequest();
request.setType("Timeline");
request.setName("普通模板测试");
request.setConfig("{\"VideoTracks\":[{\"VideoTrackClips\":[{\"Sys_Type\":\"ArrayItems\",\"Sys_ArrayObject\":\"$VideoArray\",\"Sys_Template\":{\"MediaId\":\"$MediaId\"}}]}]}");
AddTemplateResponse response = iceClient.addTemplate(request);
System.out.println("templateId : " + response.getBody().getTemplate().getTemplateId());

创建成功后,会返回模板ID,在合成时使用。

通过API使用模板

使用模板需要模板ID和ClipsParam。接下来介绍如何生成ClipsParam:

方式1:ClipsParam规则

上面Config中的参数为VideoArray,为数组参数,则ClipsParam为:

{
    "VideoArray": [
        "****05512043f49f697f7425****", 
        "****2788e810116a45109f2e****", 
        "https://your-bucket.oss-cn-shanghai.aliyuncs.com/your-video1.mp4",
        "https://your-bucket.oss-cn-shanghai.aliyuncs.com/your-video2.mp4"
    ]
}

即value为需要替换的媒资ID数组,或OSS地址数组(可以混合)。

方式2:调用GetTemplate获取ClipsParam

使用TemplateId调用获取模板信息接口,返回结果中的ClipsParam字段如下:

{"VideoArray":["mediaId"]}

此为ClipsParam示例,value为数组,将其换为真实的mediaId数组,或OSS地址数组(可以混合),即可得到最终的ClipsParam。

调用提交剪辑合成作业接口代码示例:

SubmitMediaProducingJobRequest request = new SubmitMediaProducingJobRequest();
request.setTemplateId("Your TemplateId");
request.setClipsParam("{\"VideoArray\":[\"****05512043f49f697f7425****\",\"****2788e810116a45109f2e****\",\"https://your-bucket.oss-cn-shanghai.aliyuncs.com/your-video1.mp4\",\"https://your-bucket.oss-cn-shanghai.aliyuncs.com/your-video2.mp4\"]}");
request.setOutputMediaConfig("{\"MediaURL\":\"http://your-bucket.oss-cn-shanghai.aliyuncs.com/object.mp4\"}");
SubmitMediaProducingJobResponse response = iceClient.submitMediaProducingJob(request);
System.out.println("jobid : " + response.getBody().getJobId());

相关文档:

普通模板-公共模板库

普通模板Config详解

普通模板Config示例

阿里云首页 智能媒体生产 相关技术圈