tencent cloud

对象存储

拼接任务接口

下载
聚焦模式
字号
最后更新时间: 2024-01-22 11:59:43

简介

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

提交拼接任务

功能说明

用于提交一个拼接任务。

方法原型

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

请求示例

示例一: 使用模板

<?php

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

$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.tencentcloud.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.tencentcloud.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的 region 可以在控制台查看,https://console.tencentcloud.com/cos5/bucket
$cosClient = new Qcloud\\Cos\\Client(
array(
'region' => $region,
'schema' => 'https', //协议头部,默认为 http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
$result = $cosClient->createMediaConcatJobs(array(
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由 BucketName-Appid 组成,可以在 COS 控制台查看 https://console.tencentcloud.com/cos5/bucket
'Tag' => 'Concat',
'QueueId' => 'asdadadfafsdkjhfjghdfjg',
'CallBack' => 'https://example.com/callback',
'Input' => array(
'Object' => 'video01.mp4'
),
'Operation' => array(
'TemplateId' => 'asdfafiahfiushdfisdhfuis',
'Output' => array(
'Region' => $region,
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由 BucketName-Appid 组成,可以在 COS 控制台查看 https://console.tencentcloud.com/cos5/bucket
'Object' => 'concat-video02.mp4',
),
// 'UserData' => 'xxx', // 透传用户信息
// 'JobLevel' => '0', // 任务优先级,级别限制:0 、1 、2。级别越大任务优先级越高,默认为0
),
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

示例二: 自定义参数

<?php

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

$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.tencentcloud.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.tencentcloud.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的 region 可以在控制台查看,https://console.tencentcloud.com/cos5/bucket
$cosClient = new Qcloud\\Cos\\Client(
array(
'region' => $region,
'schema' => 'https', //协议头部,默认为 http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
$result = $cosClient->createMediaConcatJobs(array(
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由 BucketName-Appid 组成,可以在 COS 控制台查看 https://console.tencentcloud.com/cos5/bucket
'Tag' => 'Concat',
'QueueId' => 'asdadadfafsdkjhfjghdfjg',
'CallBack' => 'https://example.com/callback',
'Input' => array(
'Object' => 'video01.mp4'
),
'Operation' => array(
// 'UserData' => 'xxx', // 透传用户信息
// 'JobLevel' => '0', // 任务优先级,级别限制:0 、1 、2。级别越大任务优先级越高,默认为0
'Output' => array(
'Region' => $region,
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由 BucketName-Appid 组成,可以在 COS 控制台查看 https://console.tencentcloud.com/cos5/bucket
'Object' => 'concat-video03.mp4',
),
'ConcatTemplate' => array(
'ConcatFragments' => array(
array(
'Url' => 'https://example.com/video01.mp4',
'Mode' => 'Start',
// 'StartTime' => '0',
// 'EndTime' => '7',
),
array(
'Url' => 'https://example.com/video02.mp4',
'Mode' => 'Start',
// 'StartTime' => '0',
// 'EndTime' => '10',
),
// ... repeated
),
'Index' => 1,
'Container' => array(
'Format' => 'mp4'
),
'Audio' => array(
'Codec' => 'mp3',
'Samplerate' => '',
'Bitrate' => '',
'Channels' => '',
),
'Video' => array(
'Codec' => 'H.264',
'Bitrate' => '1000',
'Width' => '1280',
'Height' => '',
'Fps' => '30',
),
),
),
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

Request 中的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Tag
Request
创建任务的 Tag:Concat
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 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
ConcatTemplate
Request.Operation
指定拼接参数
Container
否
TemplateId
Request.Operation
指定的模板 ID
String
否
Output
Request.Operation
结果输出地址
Container
是
JobLevel
Request.Operation
任务优先级,级别限制:0 、1 、2。级别越大任务优先级越高,默认为0
String
否
注意
优先使用 TemplateId,无 TemplateId 时使用 ConcatTemplate。
Container 类型 ConcatTemplate 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
默认值
限制
ConcatFragment
Request.Operation. ConcatTemplate
拼接节点
Container 数组
否
无
支持多个文件,按照文件顺序拼接
Audio
Request.Operation. ConcatTemplate
音频参数,同创建拼接模板 CreateMediaTemplate 接口中的 Request.ConcatTemplate.Audio
Container
否
无
无
Video
Request.Operation. ConcatTemplate
视频参数,同创建拼接模板 CreateMediaTemplate 接口中的 Request.ConcatTemplate.Video
Container
否
无
无
Container
Request.Operation. ConcatTemplate
封装格式,同创建拼接模板 CreateMediaTemplate 接口中的 Request.ConcatTemplate.Container
Container
是
无
无
AudioMix
Request.Operation. ConcatTemplate
混音参数, 详情见 AudioMix
Container数组
否
无
仅在 Audio.Remove 为 false 时生效
Index
Request.Operation. ConcatTemplate
Input 节点位于 ConcatFragment 序列索引
String
否
0
不能大于 ConcatFragment 长度
DirectConcat
Request.Operation. ConcatTemplate
简单拼接方式(不转码直接拼接),其他的视频和音频参数失效
String
否
false
true、false
Container 类型 ConcatFragment 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
默认值
限制
Url
Request.Operation. ConcatTemplate. ConcatFragment
拼接对象地址
String
是
无
同 bucket 对象文件
FragmentIndex
Request.Operation. ConcatTemplate. ConcatFragment
拼接对象的索引位置
String
否
0
大于等于0的整数
StartTime
Request.Operation. ConcatTemplate. ConcatFragment
开始时间
String
否
视频开始
[0 视频时长]单位为秒
EndTime
Request.Operation. ConcatTemplate. ConcatFragment
结束时间
String
否
视频结束
[0 视频时长]单位为秒
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] => NjI2MjFhOTHASIUDHAUISDHl8yMjMxNmE=
[ContentType] => application/xml
[ContentLength] => 792
[Bucket] => examplebucket-1250000000
[Location] => examplebucket-1250000000.ci.ap-beijing.myqcloud.com/jobs
[Response] => Array
(
[JobsDetail] => Array
(
[Code] => Success
[CreationTime] => 2022-04-22T11:01:42+0800
[EndTime] => -
[Input] => Array
(
[BucketId] => examplebucket-1250000000
[Object] => video01.mp4
[Region] => ap-beijing
)

[JobId] => j898f573asd780a8sd90a8sd09e30cf31f
[Message] =>
[Operation] => Array
(
[Output] => Array
(
[Bucket] => examplebucket-1250000000
[Object] => concat-video01.mp4
[Region] => ap-beijing
)

[TemplateId] => t17b9c2e7a0s8d0a8d0a9d43552f648e
[TemplateName] => concat-1
[UserData] => xxx
[TemplateName] => 0
)

[QueueId] => p81e648af2aeas78d0a8d09a8d09757be086
[StartTime] => -
[State] => Submitted
[Tag] => Concat
)

)

)

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈