有奖捉虫:云通信与企业服务文档专题,速来> HOT

简介

本文档提供关于提交视频增强任务的 API 概览和 SDK 示例代码。
API
操作描述
提交一个视频增强任务

提交视频增强任务

功能说明

用于提交一个视频增强任务。

方法原型

public Guzzle\\Service\\Resource\\Model createMediaVideoProcessJobs(array $args = array());

请求示例

示例一: 使用模板

<?php

require dirname(__FILE__) . '/../vendor/autoload.php';

$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的 region 可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\\Cos\\Client(
array(
'region' => $region,
'scheme' => 'https', //协议头部,默认为 http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
$result = $cosClient->createMediaVideoProcessJobs(array(
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由 BucketName-Appid 组成,可以在 COS 控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Tag' => 'VideoProcess',
// 'QueueId' => 'p81e648afxxxxxxxxxxxxxxxxx',
'Input' => array(
'Object' => 'video01.mp4'
),
'Operation' => array(
'TemplateId' => 't13466f1ea41a14c0xxxxxxxxxxxxx', // 视频增强模板 ID
'TranscodeTemplateId' => 't0b6a845f5e42847bd81xxxxxxxxxxxxx', // 转码模板 ID
'WatermarkTemplateId' => 't185e2e24551b24259a0xxxxxxxxxxxxx', // 水印模板 ID
'Output' => array(
'Region' => $region,
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由 BucketName-Appid 组成,可以在 COS 控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Object' => 'VideoProcess.flv',
),
// 'UserData' => 'xxx', // 透传用户信息
// 'JobLevel' => '0', // 任务优先级,级别限制:0 、1 、2。级别越大任务优先级越高,默认为0
),
'CallBack' => '',
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

示例二: 自定义参数

<?php

require dirname(__FILE__) . '/../vendor/autoload.php';

$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的 region 可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\\Cos\\Client(
array(
'region' => $region,
'scheme' => 'https', //协议头部,默认为 http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
$result = $cosClient->createMediaVideoProcessJobs(array(
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由 BucketName-Appid 组成,可以在 COS 控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Tag' => 'VideoProcess',
// 'QueueId' => 'p81e648afxxxxxxxxxxxxxxxxx',
'Input' => array(
'Object' => 'video01.mp4'
),
'Operation' => array(
'VideoProcess' => array(
'ColorEnhance' => array(
'Enable' => '',
'Contrast' => '',
'Correction' => '',
'Saturation' => '',
),
'MsSharpen' => array(
'Enable' => '',
'SharpenLevel' => '',
),
),
'Transcode' => array(
'Tag' => '',
'Name' => '',
'Container' => array(
'Format' => '',
),
'Video' => array(
'Codec' => '',
'Width' => '',
'Height' => '',
'Fps' => '',
'Remove' => '',
'Profile' => '',
'Bitrate' => '',
'Crf' => '',
'Gop' => '',
'Preset' => '',
'Bufsize' => '',
'Maxrate' => '',
'HlsTsTime' => '',
'Pixfmt' => '',
'LongShortMode' => '',
),
'TimeInterval' => array(
'Start' => '',
'Duration' => '',
),
'Audio' => array(
'Codec' => '',
'Samplerate' => '',
'Bitrate' => '',
'Channels' => '',
'Remove' => '',
'KeepTwoTracks' => '',
'SwitchTrack' => '',
'SampleFormat' => '',
),
'TransConfig' => array(
'AdjDarMethod' => '',
'IsCheckReso' => '',
'ResoAdjMethod' => '',
'IsCheckVideoBitrate' => '',
'VideoBitrateAdjMethod' => '',
'IsCheckAudioBitrate' => '',
'AudioBitrateAdjMethod' => '',
'DeleteMetadata' => '',
'IsHdr2Sdr' => '',
'HlsEncrypt' => array(
'IsHlsEncrypt' => '',
'UriKey' => '',
),
),
),
'Watermark' => array(
'Type' => '',
'Pos' => '',
'LocMode' => '',
'Dx' => '',
'Dy' => '',
'StartTime' => '',
'EndTime' => '',
'Image' => array(
'Url' => '',
'Mode' => '',
'Width' => '',
'Height' => '',
'Transparency' => '',
'Background' => '',
),
'Text' => array(
'FontSize' => '',
'FontType' => '',
'FontColor' => '',
'Transparency' => '',
'Text' => '',
),
),
'Output' => array(
'Region' => $region,
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由 BucketName-Appid 组成,可以在 COS 控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Object' => 'VideoProcess.flv',
),
// 'UserData' => 'xxx', // 透传用户信息
// 'JobLevel' => '0', // 任务优先级,级别限制:0 、1 、2。级别越大任务优先级越高,默认为0
),
'CallBack' => '',
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

Request 中的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Tag
Request
创建任务的 Tag:VideoProcess
String
Input
Request
待操作的媒体信息
Container
Operation
Request
操作规则
Container
QueueId
Request
任务所在的 队列 ID
String
CallBackFormat
Request
任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式
String
CallBackType
Request
任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型
String
CallBack
Request
任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调
String
CallBackMqConfig
Request
任务回调 TDMQ 配置,当 CallBackType 为 TDMQ 时必填。详情见 CallBackMqConfig
Container
Container 类型 Input 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Object
Request.Input
媒体文件名
String
Container 类型 Operation 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
VideoProcess
Request.Operation
指定视频增强模板参数,不能与 TemplateId 同时为空
Container
TemplateId
Request.Operation
指定的模板 ID ,不能与 VideoProcess 同时为空
String
Transcode
Request.Operation
指定转码模板参数,不能与 TranscodeTemplateId 同时为空
Container
TranscodeTemplateId
Request.Operation
指定的转码模板 ID,优先使用模板 ID,不能与 Transcode 同时为空
String 数组
Watermark
Request.Operation
指定水印模板参数,同创建水印模板 CreateMediaTemplate 接口的 Request.Watermark,最多传3个
Container 数组
WatermarkTemplateId
Request.Operation
指定的水印模板 ID,可以传多个水印模板 ID,最多传3个,优先使用模板 ID
String
DigitalWatermark
Request.Operation
指定数字水印参数
Container
Output
Request.Operation
结果输出地址
Container
JobLevel
Request.Operation
任务优先级,级别限制:0 、1 、2。级别越大任务优先级越高,默认为0
String
说明:
提交视频增强任务必须传入转码参数。对于视频增强参数,优先使用 TemplateId,无 TemplateId 时使用 VideoProcess;对于转码参数,优先使用 TranscodeTemplateId,无 TranscodeTemplateId 时使用 Transcode;对于水印参数,可以使用 WatermarkTemplateId 或 Watermark 设置,WatermarkTemplateId 优先级更高。
Container 类型 VideoProcess 的具体数据描述如下:
节点名称(关键字)
父节点
描述
ColorEnhance
Request.Operation.VideoProcess
同创建视频增强模板 CreateMediaTemplate 接口中的 Request.ColorEnhance
MsSharpen
Request.Operation.VideoProcess
同创建视频增强模板 CreateMediaTemplate 接口中的 Request.MsSharpen
Container 类型 Transcode 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
必选
TimeInterval
Request.Operation.Transcode
同创建转码模板 CreateMediaTemplate 接口中的 Request.TimeInterval
Container
Container
Request.Operation.Transcode
同创建转码模板 CreateMediaTemplate 接口中的 Request.Container
Container
Video
Request.Operation.Transcode
同创建转码模板 CreateMediaTemplate 接口中的 Request.Video
Container
Audio
Request.Operation.Transcode
同创建转码模板 CreateMediaTemplate 接口中的 Request.Audio
Container
TransConfig
Request.Operation.Transcode
同创建转码模板 CreateMediaTemplate 接口中的 Request.TransConfig
Container
AudioMix
Request.Operation.Transcode
混音参数,详情见 AudioMix
Container 数组
Container 类型 DigitalWatermark 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
必选
Message
Request.Operation.DigitalWatermark
数字水印嵌入的字符串信息,长度不超过64个字符,仅支持中文、英文、数字、_、-和*
string
Type
Request.Operation.DigitalWatermark
水印类型,当前仅可设置为 Text
String
Version
Request.Operation.DigitalWatermark
水印版本,当前仅可设置为 V1
String
IgnoreError
Request.Operation.DigitalWatermark
当添加水印失败是否忽略错误继续执行任务,限制为 true/false,默认为 false
string
Container 类型 Output 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Region
Request.Operation.Output
存储桶的地域
String
Bucket
Request.Operation.Output
存储结果的存储桶
String
Object
Request.Operation.Output
输出结果的文件名
String

返回结果示例

GuzzleHttp\\Command\\Result Object
(
[Body] => GuzzleHttp\\Psr7\\Stream Object
(
[stream:GuzzleHttp\\Psr7\\Stream:private] => Resource id #88
[size:GuzzleHttp\\Psr7\\Stream:private] =>
[seekable:GuzzleHttp\\Psr7\\Stream:private] => 1
[readable:GuzzleHttp\\Psr7\\Stream:private] => 1
[writable:GuzzleHttp\\Psr7\\Stream:private] => 1
[uri:GuzzleHttp\\Psr7\\Stream:private] => php://temp
[customMetadata:GuzzleHttp\\Psr7\\Stream:private] => Array
(
)

)

[RequestId] => NjI2MjNjYHAOIHDOIADJHOIA18yMjFlMWE=
[ContentType] => application/xml
[ContentLength] => 965
[Bucket] => examplebucket-1250000000
[Location] => examplebucket-1250000000.ci.ap-beijing.myqcloud.com/jobs
[Response] => Array
(
[JobsDetail] => Array
(
[Code] => Success
[CreationTime] => 2022-04-22T11:19:15+0800
[EndTime] => -
[Input] => Array
(
[BucketId] => examplebucket-1250000000
[Object] => video01.mp4
[Region] => ap-beijing
)

[JobId] => jfd27519z8zx90c8z90c7809z9f35eb
[Message] =>
[Operation] => Array
(
[Output] => Array
(
[Bucket] => examplebucket-1250000000
[Object] => VideoProcess.flv
[Region] => ap-beijing
)

[TemplateId] => t13466f1eazx08c09zx8c09zx8e9cd
[TemplateName] => video-process-1
[TranscodeTemplateId] => t0b612860z087xc09zx8c09xz8c095dca38
[WatermarkTemplateId] => t185e2e24zxc780z8c0z98c323c6428a19c
[UserData] => xxx
[JobLevel] => 0
)

[QueueId] => p81e648af2aee496885zx098c09z8xc09zxc086
[StartTime] => -
[State] => Submitted
[Tag] => VideoProcess
)

)

)