调用CreateGrabFrameTask接口创建一个视频截帧任务,执行完成后返回TaskId。
接口说明
- 执行完成后,使用GetVideoTask接口查询返回的TaskId,可以查看任务执行结果。您也可以使用通知机制,传入NotifyTopicName和NotifyEndpoint,及时通知任务执行信息。
- 使用视频截帧时,输出的图片按照一张一秒计费。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | CreateGrabFrameTask |
操作接口名称,固定取值为CreateGrabFrameTask。 |
Project | String | 是 | immvideotest |
项目名称。 |
TargetList | String | 是 | [{"GrabType":"interval","GrabNumber":"1","TargetUri":"oss://imm-test/testcases/grabframeimage.jpg"}] |
输出截帧列表。支持对同一视频同时输出多种结果。 截帧列表包括如下选项:
|
VideoUri | String | 是 | oss://imm-test/testcases/video.mp4 |
视频的OSS URI。 OSS地址规则为 |
RegionId | String | 否 | cn-hangzhou |
项目所在地域的ID。 地域Endpoint格式为 |
NotifyTopicName | String | 否 | topic1 |
异步反向通知的TopicName。 |
NotifyEndpoint | String | 否 | http://1111111111.mns.cn-hangzhou.aliyuncs.com |
异步反向通知的Endpoint,任务执行状态可以通过该Endpoint异步通知给调用者。使用此功能需要先开通MNS服务,新建topic和queue,并配置订阅关系。具体操作,请参见消息服务MNS快速入门。 说明 MNS服务和智能媒体管理必须处于同一地域。
|
CustomMessage | String | 否 | GrabFrameTest |
用户自定义的信息。在MNS通知任务执行状态时,内容会原样返回。 |
MNS通知
请求参数中如果设置了NotifyTopicName和NotifyEndpoint支持MNS事件通知,则智能媒体管理会为您返回异步通知。通知的消息格式为:
{
"events": [
{
"eventName": "GrabFrameTask",
"eventSource": "acs:imm",
"eventTime": "2019-09-30T14:14:51.901Z",
"eventVersion": "1.0",
"imm": {
"CustomMessage": "hello",
"ErrorCode": "",
"GrabDuration": "1",
"JobId": "GrabFrameTask-2c21f159-dfe1-4cb3-ba5d-5db0c422ac2a",
"Results": "[{\"Success\":\"true\",\"GrabType\":\"interval\",\"GrabNumber\":\"1\",\"FinalNumber\":\"1\",\"TargetPrefix\":\"oss://imm-test/testcases/",\"TargetList\":[\"grabframeimage.jpg\"],\"Reason\":\"\"}]",
"SourceCodec": "h264",
"SourceDuration": "182.58",
"SourceResolution": "1280x720",
"TaskId": "GrabFrameTask-2c21f159-dfe1-4cb3-ba5d-5db0c422ac2a",
"VideoUri": "oss://imm-test/testcases/video.mp4"
}
}
]
}
MNS通知返回参数说明请参见下表。
参数 |
类型 |
描述 |
---|---|---|
eventName |
String |
任务类型,返回值固定为GrabFrameTask。 |
imm.TaskId |
String |
任务唯一ID。 |
imm.Duration |
String |
视频总时长。 |
imm.GrabDuration |
String |
截帧处理时长。 |
imm.CustomMessage |
String |
用户自定义信息,返回内容和创建任务时设置的内容一致。 |
imm.Results |
String |
视频转码结果Result数组,以JSON格式表示。 |
Result包括的选项请参见下表。
参数 |
类型 |
描述 |
---|---|---|
Success |
String |
任务执行是否成功。 |
GrabType |
String |
截帧模式。 |
GrabNumber |
String |
截帧数量,一张按一秒计费。 |
FinalNumber |
String |
最终输出的数量,例如雪碧图的张数。 |
TargetPrefix |
String |
输出图片的前缀。 |
TargetList |
[]String |
输出图片的数组,如果图片较多时,直接输出设置的值。 |
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
RequestId | String | 10AFFE69-73BA-47C2-8A85-029AA9DA72A3 |
当次请求的Request ID。 |
TaskId | String | GrabFrameTask-ffcdec0c-73ba-451a-bec4-a9fe3f4cd765 |
任务ID。 |
TaskType | String | GrabFrameTask |
任务的类型,返回值固定为GrabFrameTask。 |
示例
请求示例
http(s)://[Endpoint]/?Action=CreateGrabFrameTask
&Project=immvideotest
&TargetList=[{"GrabType":"interval","GrabNumber":"1","TargetUri":"oss://imm-test/testcases/grabframeimage.jpg"}]
&VideoUri=oss://imm-test/testcases/video.mp4
&<公共请求参数>
正常返回示例
XML
格式
<TaskId>GrabFrameTask-ffcdec0c-73ba-451a-bec4-a9fe3f4cd765</TaskId>
<RequestId>10AFFE69-73BA-47C2-8A85-029AA9DA72A3</RequestId>
<TaskType>GrabFrameTask</TaskType>
JSON
格式
{
"TaskId": "GrabFrameTask-ffcdec0c-73ba-451a-bec4-a9fe3f4cd765",
"RequestId": "10AFFE69-73BA-47C2-8A85-029AA9DA72A3",
"TaskType": "GrabFrameTask"
}
在文档使用中是否遇到以下问题
更多建议
匿名提交