API 文档

SDK 文档

诚邀爱技术、爱分享的你,成为文档内容共建者> HOT

简介

本文档提供关于数据万象媒体处理任务的相关 API 概览以及 SDK 示例代码,此处以动图任务举例。

API 操作名 操作描述
CreateMediaJobs 创建任务 创建一个媒体处理任务
CancelMediaJob 删除任务 删除一个媒体处理任务,正在处理中的任务不可删除
DescribeMediaJob 查询任务 查询一个任务
DescribeMediaJobs 查询任务列表 查询队列中的任务列表

基本操作

创建任务

功能说明

创建一个媒体处理任务。

方法原型

public MediaJobResponse createMediaJobs(MediaJobsRequest req);

参数说明

Request 中的具体数据描述如下:

节点名称(关键字) 父节点 描述 类型 必选
Tag Request 创建任务的 Tag:Animation 动图任务,Snapshot 截图任务,Transcode 转码任务,SmartCover 智能封面任务 String
Input Request 待操作的媒体信息 Container
Operation Request 操作规则 Container
QueueId Request 任务所在的队列 ID String

Container 类型 Input 的具体数据描述如下:

节点名称(关键字) 父节点 描述 类型 必选
Object Request.Input 媒体文件的名字 String

Container 类型 Operation 的具体数据描述如下:

节点名称(关键字) 父节点 描述 类型 必选
Animation Request.Operation 指定该任务的参数,同创建动图模板 CreateMediaTemplate 接口中的 Request.Animation Container
Snapshot Request.Operation 指定该任务的参数,同创建截图模板 CreateMediaTemplate 接口中的 Request.Snapshot Container
Transcode Request.Operation 指定该任务的参数,同创建转码模板 CreateMediaTemplate 接口中的 Request.Transcode Container
Watermark Request.Operation 指定该任务的参数,同创建水印模板 CreateMediaTemplate 接口中的 Request.Watermark Container
SmartCover Request.Operation 当 Tag 为 SmartCover 时有效,目前为空 Container
TemplateId Request.Operation 指定的模版 ID String
Output Request.Operation 结果输出地址 Container
注意:

优先使用 TemplateId,无 TemplateId 时使用对应任务类型的参数。

Container 类型 Animation 的具体数据描述如下:

节点名称(关键字) 父节点 描述 类型 必选
Container Request.Operation.Animation 同动图模板 CreateMediaTemplate 接口中的 Request.Container Container
Video Request.Operation.Animation 同动图模板 CreateMediaTemplate 接口中的 Request.Video Container
TimeInterval Request.Operation.Animation 同动图模板 CreateMediaTemplate 接口中的 Request.TimeInterval Container

Container 类型 Output 的具体数据描述如下:

节点名称(关键字) 父节点 描述 类型 必选
Region Request.Operation.Output 存储桶的地域 String
Bucket Request.Operation.Output 存储结果的存储桶 String
Object Request.Operation.Output 结果文件的名字 String

返回结果说明

  • 成功:返回 job 对象响应信息。
  • 失败:发生错误(如 Bucket 不存在),抛出异常 CosClientException 或者 CosServiceException。详情请参见 异常处理

请求示例

//1.创建任务请求对象
MediaJobsRequest request = new MediaJobsRequest();
//2.添加请求参数 参数详情请见api接口文档
request.setBucketName("examplebucket-1250000000");
request.setTag("Transcode");
request.getInput().setObject("1.mp4");
request.getOperation().setTemplateId("t0e09a9456d4124542b1f0e44d501*****");
request.getOperation().getOutput().setBucket("examplebucket-1250000000");
request.getOperation().getOutput().setRegion("ap-chongqing");
request.getOperation().getOutput().setObject("2.mp4");
request.setQueueId("p9900025e4ec44b5e8225e70a52170834");
//3.调用接口,获取任务响应对象
MediaJobResponse response = client.createMediaJobs(request);

取消任务

功能说明

取消一个未在处理中的任务。

方法原型

public Boolean cancelMediaJob(MediaJobsRequest req);

参数说明

参数名称 描述 类型 必选
bucketName Bucket 的命名规则为 BucketName-APPID,详情请参见 存储桶概述 String
jobId 要取消的任务 id String

返回结果说明

  • 成功: 返回一个布尔类型,成功则返回 true。
  • 失败: 发生错误(如身份认证失败),抛出异常 CosClientException 或者 CosServiceException。详情请参见 异常处理

请求示例

MediaJobsRequest request = new MediaJobsRequest();
request.setBucketName("examplebucket-1250000000");
request.setJobId("jae776cb4ec3011eab2cdd3817d4*****");
Boolean response = client.cancelMediaJob(request);

查询任务

功能说明

根据任务 id 查询任务详情。

方法原型

public MediaJobResponse describeMediaJob(MediaJobsRequest req);

参数说明

参数名称 描述 类型 必选
bucketName Bucket 的命名规则为 BucketName-APPID,详情请参见 存储桶概述 String
jobId 要取消的任务 id String

返回结果说明

  • 成功: 返回任务详情响应包装类,类中包含一个 MediaJobObject 任务详情对象。
  • 失败: 发生错误(如身份认证失败),抛出异常 CosClientException 或者 CosServiceException。详情请参见 异常处理

请求示例

//1.创建任务请求对象
MediaJobsRequest request = new MediaJobsRequest();
//2.添加请求参数 参数详情请见api接口文档
request.setBucketName("examplebucket-1250000000");
request.setJobId("j29a82fea08ba11ebb54bc9d1c05*****");
//3.调用接口,获取任务响应对象
MediaJobResponse response = client.describeMediaJob(request);

查询任务列表

功能说明

查询队列中的任务列表。

方法原型

public MediaListJobResponse describeMediaJobs(MediaJobsRequest cIMediaJobsRequest);   

参数说明

节点名称(关键字 描述 类型 必选
bucketName Bucket 的命名规则为 BucketName-APPID,详情请参见 存储桶概述 String
queueId 拉取该队列 ID 下的任务 String
tag 任务的Tag:Animation String
orderByTime Desc 或者 Asc。默认为 Desc String
nextToken 请求的上下文,用于翻页。上次返回的值 String
size 拉取的最大任务数。默认为10。最大为100 Integer
states 拉取该状态的任务,以,分割支持多状态 All,Submitted,Running,Success,
Failed,Pause,Cancel。默认为 All
String
startCreationTime 拉取创建时间大于该时间的任务。格式为:%Y-%m-%dT%H:%m:%S%z String
endCreationTime 拉取创建时间小于该时间的任务。格式为:%Y-%m-%dT%H:%m:%S%z String

返回结果说明

  • 成功: 返回一个任务集合响应实体。
  • 失败: 发生错误(如身份认证失败),抛出异常 CosClientException 或者 CosServiceException。详情请参见 异常处理

请求示例

MediaJobsRequest request = new MediaJobsRequest();
request.setBucketName("examplebucket-1250000000");
request.setQueueId("p9900025e4ec44b5e8225e70a521*****");
request.setTag("Transcode");
MediaListJobResponse response = client.describeMediaJobs(request);
List<MediaJobObject> jobsDetail = response.getJobsDetail();
目录