更新时间:2024-09-14 GMT+08:00
示例2:提交视频转码任务
场景描述
若您需要将存储在OBS桶中的视频文件进行转码,并添加图片水印,您可以调用MPC API进行转码处理。
本章节指导用户如何使用API调用的方式提交视频转码任务。
接口约束
不支持处理跨区域的媒资文件,如使用
的MPC服务不能处理存储在 OBS桶中的视频文件。前提条件
- 已获取需要创建转码任务区域的项目ID,具体获取方法请参见获取项目ID。
- 已明确需要创建转码任务所在的区域信息,并获取该区域的Endpoint,您可以从地区和终端节点获取。
- 待转码处理的视频文件已经存储在OBS桶中,您可以调用OBS上传对象API上传。
- 已创建用于存储转码生成的文件的OBS桶,您可以调用OBS创建桶API进行创建。
操作步骤
- 获取用户Token,用于MPC接口调用时的认证鉴权。
在“我的凭证”页面获取username、password、domainname、projectname,调用如下接口获取Token。详细信息请参见构造请求。
POST https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "********", //用户名。 "password": "********", //用户登录密码。 "domain": { "name": "domainname" //用户所属的账号名称。 } } } }, "scope": { "project": { "name": "*******" //项目名称。 } } } }
如图1所示,红框中的信息为获取用户Token。
- 创建视频转码模板,获取转码模板ID,具体API调用方法请参见示例1:新建转码模板。
- 创建水印模板。
- 选择POST请求方法并输入URI。
https://{endpoint}/v1/{project_id}/template/watermark
- 请求消息头中增加“X-Auth-Token”,值设置为步骤1中获取的用户Token。
- Request Body中传入参数如下:
{ "template_name": "watermark_1920*1080_10*10_ BottomLeft", "type": "Image", "image_process": "Grayed", "width": "1920", "height": "1080", "dx": "10", "dy": "10", "referpos": "BottomLeft", "timeline_start": "6", "timeline_duration": "8" }
- 请求响应成功后,返回水印模板ID。
{ "template_id":242 }
- 选择POST请求方法并输入URI。
- 提交视频转码任务。
- 选择POST请求方法并输入URI。
https://{endpoint}/v1/{project_id}/transcodings
- 请求消息头中增加“X-Auth-Token”,值设置为步骤1中获取的用户Token。
- Request Body中传入参数如下:
{ "input": { "bucket": "example-bucket", "location": "region01", "object": "/mpc/input/sample.MP4" }, "output": { "bucket": "example-bucket", "location": "region01", "object": "/mpc/output/" }, "trans_template_id":[1002], "watermarks": [{ "input": { "bucket": "example-bucket", "location": "region01", "object": "meipai.jpg" }, "template_id":242 }], "priority":"9", "audit":{ "position":2, "index":2 } }
- 请求响应成功后,返回转码任务ID。
{ "task_id":100211 }
- 选择POST请求方法并输入URI。
- 查询视频转码执行情况。
- 选择GET请求方法并输入URI。
https://{endpoint}/v1/{project_id}/transcodings?task_id=100211
- 请求消息头中增加“X-Auth-Token”,值设置为步骤1中获取的用户Token。
- 请求响应成功后,返回视频转码的详细信息。
- 选择GET请求方法并输入URI。