CreateVideoCompressTask
描述
创建一个视频压缩存储的任务。该任务需要一个视频类型的 project,目前为 VideoCompressStarter / VideoCompressProfessional。
请求参数
名称 | 类型 | 是否必填 | 描述 |
---|---|---|---|
Project | string | 是 | Project |
Action | String | 是 | CreateVideoCompressTask |
VideoUri | string | 是 | 视频 Uri OSS 地址规则为: oss://bucket/object ,其中 bucket 为和当前 Project 在同一区域的 OSS 桶名, object 为文件路径。 |
TargetList | []TargetVideos | 是 | 压缩后的视频列表。可对统一输入视频同时压缩多份不同格式结果。 |
NotifyTopicName | String | 否 | 异步通知的 TopicName |
NotifyEndpoint | String | 否 | 异步反向通知的 Endpoint,作业处理状态可以通过该 Endpoint 异步通知到调用者 |
CustomMessage | String | 否 | 用户自定义信息,在通知时回原样返回。 |
关于 MNS 的使用方式,参考 消息服务 MNS 概述
数据类型TargetVideos
IMM 参数 | 类型 | 是否必填 | 描述 |
---|---|---|---|
AudioBitrate | String | 否 | 音频码率,单位:比特每秒(bit/s),可选值:64k,128k,192k,256k,320k |
AllowIncreaseAudioBitrate | Bool | 否 | 允许输出音频比特率高于原音频。默认 true 。 |
AudioQuality | Integer | 否 | 音频质量,取值范围为0-9(mp3),值越小质量越高;10-500(aac),值越大质量越高。仅支持mp3和aac。不能与音频码率参数AudioBitrate共用。 |
AudioSampleRate | Integer | 否 | 音频采样频率,单位:赫兹(Hz),常用采样频率:8000,12050,22050,44100等。不传则保持原采样频率。 |
AllowIncreaseAudioSampleRate | Bool | 否 | 允许输出文件帧率高于原视频。默认 true 。 |
VideoFrameRate | Integer | 否 | 视频帧率,不传则保持原值。 |
AllowIncreaseVideoFrameRate | Bool | 否 | 允许输出文件帧率高于原视频。默认 true 。 |
VideoBitrate | String | 否 | 视频比特率,单位:比特每秒(bit/s)。 常用视频比特率:128k,1.25m,5m等。 |
AllowIncreaseVideoBitrate | Bool | 否 | 允许输出文件比特率高于原视频。默认 true 。 |
VideoCodec | String | 否 | 视频编码方案,可选值:libx264, libvpx, libtheora, libxvid, copy。 |
AudioCodec | String | 否 | 音频编码方案,可选值:libmp3lame, libvorbis, libfdk_aac, opus, copy。 |
SeekStartTime | Integer | 否 | 指定视频截取的开始时间,单位:秒。 |
Duration | Integer | 否 | 指定视频截取的长度,单位:秒。 |
VideoResolution | String | 否 | 指定视频分辨率,格式为 宽x高。例如:640x480。 |
AllowIncreaseVideoResolution | Bool | 否 | 允许输出文件分辨率高于原视频。默认 true 。 |
AdaptVideoResolutionDirection | Bool | 否 | 自适应分辨率方向。默认 false 。 |
VideoRotation | Integer | 否 | 指定顺时针旋转的度数,可取值为90、180、270,默认为自动旋转。 |
DisableAudio | Bool | 否 | 是否禁用音频流。 |
DisableVideo | Bool | 否 | 是否禁用视频流。 |
VideoProfile | String | 否 | 设置视频的profile等级,可选值:baseline,main,high。 |
AudioChannel | Integer | 否 | 声道数:1为单声道,2为立体声 |
TargetUri | String | 否 | 输出文件的OSS URI。 |
HLSTime | Integer | 否 | HLS格式的切片大小,单位秒。输出文件为m3u8格式时必传。 |
Watermarks | []Watermarks | 否 | 水印列表 |
VideoCRF | Integer | 否 | 指定恒定质量模式(视频编码器为libx264才有效);取值范围0-51,数值越大画质越差,建议取值[18,28]。 |
VideoMaxBitrate | String | 否 | 动态码率下限定最大码率,如1000k 。注:该参数需要和VideoCRF参数一起使用才有效。使用该参数时,必须指定VideoBufferSize参数 |
VideoBufferSize | String | 否 | 编码缓冲大小,和VideoMaxBitrate一起使用,如1000k |
Speed | Float | 否 | 加减速,范围 [0.5, 2] |
ScaleType | String | 否 | 缩放方式,可选值:CROP/STRETCH/FILL/FIT,分别为缩放并裁剪/拉伸以填满/缩放并保留黑边/缩放并不保留黑边。默认 STRETCH 。 |
Delogos | []Delogo(#数据类型Delogo) | 否 | 对视频上某矩形部分进行模糊,用于去 Logo / 台标等。 |
SubTitles | []SubTitle(#数据类型SubTitle) | 否 | 添加字幕。 |
数据类型Delogo
IMM 参数 | 类型 | 必填 | 描述 |
---|---|---|---|
Dx | Float | 否 | 默认值:0。值有两种形式:整数型代表偏移像素,范围:[1,4096],单位:px,小数型代表垂直偏移量与输出分辨率高的比率,范围:(0,1)。 |
Dy | Float | 否 | 默认值:0。值有两种形式:整数型代表偏移像素,范围:[1,4096],单位:px,小数型代表垂直偏移量与输出分辨率高的比率,范围:(0,1)。 |
Width | Float | 否 | 去 Logo 宽,值有两种形式:整数型代表去 Logo 宽的像素值,范围:(1,4096],单位:px。小数型代表相对输出视频分辨率宽的比率,范围:(0,1]。 |
Height | Float | 否 | 去 Logo 高,值有两种形式:整数型代表去 Logo 高的像素值,范围:(1,4096],单位:px。小数型代表相对输出视频分辨率宽的比率,范围:(0,1]。 |
Start | Integer | 否 | 去 Logo 开始时间,默认0为从头开始,单位秒 |
Duration | Integer | 否 | 去 Logo 持续时间,默认0为持续到视频结束,单位秒 |
ReferPos | String | 否 | 去 Logo 的位置。值范围:TopRight、TopLeft、BottomRight、BottomLeft。 默认 TopLeft |
数据类型SubTitle
IMM 参数 | 类型 | 必填 | 描述 |
---|---|---|---|
FileUri | String | 是 | 字幕文件的 OSS URI。支持 SRT、ASS 等格式。 |
Lang | String | 是 | 语言。参考 ISO-639-2 语言定义。 |
数据类型Watermarks
参数 | 类型 | 是否必选 | 描述 |
---|---|---|---|
Type | String | 是 | 类型:Text、File。Text为文字水印。File为png、mov水印 |
Dx | Float | 否 | 默认值:0。值有两种形式:整数型代表偏移像素,范围:[1,4096],单位:px,小数型代表垂直偏移量与输出分辨率高的比率,范围:(0,1)。 |
Dy | Float | 否 | 默认值:0。值有两种形式:整数型代表偏移像素,范围:[1,4096],单位:px,小数型代表垂直偏移量与输出分辨率高的比率,范围:(0,1)。 |
Start | Integer | 否 | 水印开始时间,默认0为从头开始,单位秒 |
Duration | Integer | 否 | 水印持续时间,默认0为持续到视频结束,单位秒 |
ReferPos | String | 否 | 水印的位置。值范围:TopRight、TopLeft、BottomRight、BottomLeft。 默认 TopLeft |
以下为 | Type=Text | 时的参数列表 | |
Content | String | 是 | 文字水印内容。 |
FontName | String | 否 | 字体名称。 |
FontSize | Integer | 否 | 字体大小。默认值:16。范围:(4, 120) |
FontColor | String | 否 | 字体颜色。#RRGGBB 格式。默认#000000 |
FontAlpha | Float | 否 | 字体透明度。范围:(0, 1],默认:1.0 |
BorderWidth | Integer | 否 | 描边宽度。默认:0。范围:[0,4096] |
BorderColor | String | 否 | 描边颜色。#RRGGBB 格式,默认#000000 |
以下为 | Type=File | 时的参数列表 | |
FileUri | String | 是 | 水印文件的 OSS URI。支持 PNG 和 MOV格式。 |
Width | Float | 否 | 水印图片宽,值有两种形式:整数型代水印图片宽的像素值,范围:(1,4096],单位:px。小数型代表相对输出视频分辨率宽的比率,范围:(0,1]。 |
Height | Float | 否 | 水印图片高,值有两种形式:整数型代水印图片高的像素值,范围:(1,4096],单位:px。小数型代表相对输出视频分辨率宽的比率,范围:(0,1]。 |
水印宽、高参数设置说明:
- 宽、高都不设置时,水印宽取输出视频分辨率宽的0.12倍,水印高按水印原图宽高比例等比缩放;
- 宽或高设置一边,另一边不设置时,则另一边按水印原图宽高比等比缩放;
- 宽、高两边都设时,按实际设置值设置水印图片。
水印位置坐标说明:
支持的字体列表
- SourceHanSans-Regular
- SourceHanSans-Bold
- SourceHanSerif-Regular
- SourceHanSerif-Bold
返回参数
名称 | 类型 | 描述 |
---|---|---|
RequestId | String | 用户发送的每次接口调用请求,无论成功与否,系统都会返回一个唯一识别码 RequestId 给用户 |
TaskId | String | 该任务对唯一 ID |
TaskType | String | Task 所属类型,固定值 CompressVideoTask |
示例
请求示例
POST https://imm.cn-shanghai.aliyuncs.com
?Action=CreateVideoCompressTask
&Project=test
&VideoUri=oss://xxx/test/res.m3u8
&TargetList=[]
成功返回示例
{
"RequestId": "10AFFE69-73BA-47C2-8A85-029AA9DA72A3",
"TaskId": "VideoCompressTask-ffcdec0c-73ba-451a-bec4-a9fe3f4cd765",
"TaskType": "VideoCompressTask"
}
订阅消息返回示例
返回参数
Parameter | Type | Comment |
---|---|---|
eventName | string | 任务类型,返回固定值 CompressVideoTask 。 |
imm.TaskId | string | 任务唯一 ID |
imm.Duration | string | 总视频时长 |
imm.CompressDuration | string | 总压缩时长 |
imm.CustomMessage | string | 用户自定义信息 |
imm.Results | json string | 视频转码结果 |
MNS 返回的消息格式如:
{
"events": [
{
"eventName": "CompressVideoTask",
"eventSource": "acs:imm",
"eventTime": "2019-02-20T11:06:25.264Z",
"eventVersion": "1.0",
"imm": {
"ErrorCode": "",
"JobId": "CompressVideoTask-9bab56e8-e596-421a-b1f5-9ad1ab875fe4",
"SourceDuration": "140",
"CompressDuration": "70",
"CustomMessage": "",
"Results": "[{\"TargetUri\":\"oss://abc/def.mp4\",\"Success\":\"true\",\"TargetDuration\": 140, \"TargetResolution\":\"640x480\"},{\"TargetUri\":\"oss://abc/def.mp4\",\"Success\":\"false\",\"Reason\":\"Invalid Parameters\"}]"
}
}
]
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。
评论