调用CreateGrabFrameTask接口创建一个视频截帧任务,执行完成后返回TaskId。
接口说明
- 执行完成后,使用GetVideoTask接口查询返回的TaskId,可以查看任务执行结果。您也可以使用通知机制,传入NotifyTopicName和NotifyEndpoint,及时通知任务执行信息。
- 使用视频截帧时,输出的图片按照一张一秒计费。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
Project | string | 是 | 项目名称。 | immvideotest |
VideoUri | string | 是 | 视频的OSS URI。 OSS地址规则为 | oss://imm-test/testcases/video.mp4 |
NotifyTopicName | string | 否 | 异步反向通知的TopicName。 | topic1 |
NotifyEndpoint | string | 否 | 异步反向通知的Endpoint,任务执行状态可以通过该Endpoint异步通知给调用者。使用此功能需要先开通MNS服务,新建topic和queue,并配置订阅关系。具体操作,请参见消息服务MNS快速入门。 说明MNS服务和智能媒体管理必须处于同一地域。 | http://1111111111.mns.cn-hangzhou.aliyuncs.com |
TargetList | string | 是 | 输出截帧列表。支持对同一视频同时输出多种结果。 截帧列表包括如下选项:
| [{"GrabType":"interval","GrabNumber":"1","TargetUri":"oss://imm-test/testcases/grabframeimage.jpg"}] |
CustomMessage | string | 否 | 用户自定义的信息。在MNS通知任务执行状态时,内容会原样返回。 | GrabFrameTest |
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 | 输出图片的数组,如果图片较多时,直接输出设置的值。 |
返回参数
示例
正常返回示例
JSON
格式
{
"TaskId": "GrabFrameTask-ffcdec0c-73ba-451a-bec4-a9fe3f4cd765",
"RequestId": "10AFFE69-73BA-47C2-8A85-029AA9DA72A3",
"TaskType": "GrabFrameTask"
}
错误码
访问错误中心查看更多错误码。