Skip to content

Commit df6e869

Browse files
author
justinlguo
committed
update watermark&add playlist
1 parent 1150fef commit df6e869

12 files changed

+991
-0
lines changed
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
<?php
2+
3+
require dirname(__FILE__, 2) . '/vendor/autoload.php';
4+
5+
$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
6+
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
7+
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
8+
$cosClient = new Qcloud\Cos\Client(
9+
array(
10+
'region' => $region,
11+
'scheme' => 'https', // 审核时必须为https
12+
'credentials'=> array(
13+
'secretId' => $secretId ,
14+
'secretKey' => $secretKey)));
15+
try {
16+
//创建明水印模板
17+
$result = $cosClient->CreateWatermarkTemplate(array(
18+
'Bucket' => '###bucketName###', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
19+
'Headers' => array(
20+
'Content-Type' => 'application/xml',
21+
),
22+
'Tag'=> 'undefined', // 模板类型: Watermark;是否必传:否
23+
'Name'=> 'undefined', // 模板名称,仅支持中文、英文、数字、_、-和*,长度不超过 64;是否必传:否
24+
// 水印信息;是否必传:否
25+
'Watermark'=> array(
26+
'Type'=> 'undefined', // 水印类型Text:文字水印Image:图片水印;是否必传:是
27+
'Pos'=> 'undefined', // 基准位置TopRightTopLeftBottomRightBottomLeftLeftRightTopBottomCenter;是否必传:是
28+
'LocMode'=> 'undefined', // 偏移方式Relativity:按比例Absolute:固定位置;是否必传:是
29+
'Dx'=> 'undefined', // 水平偏移在图片水印中,如果 Background 为 true,当 locMode 为 Relativity 时,为%,值范围:[-300 0];当 locMode 为 Absolute 时,为 px,值范围:[-4096 0]。在图片水印中,如果 Background 为 false,当 locMode 为 Relativity 时,为%,值范围:[0 100];当 locMode 为 Absolute 时,为 px,值范围:[0 4096]。在文字水印中,当 locMode 为 Relativity 时,为%,值范围:[0 100];当 locMode 为 Absolute 时,为 px,值范围:[0 4096]。当Pos为Top、Bottom和Center时,该参数无效。;是否必传:是
30+
'Dy'=> 'undefined', // 垂直偏移在图片水印中,如果 Background 为 true,当 locMode 为 Relativity 时,为%,值范围:[-300 0];当 locMode 为 Absolute 时,为 px,值范围:[-4096 0]。在图片水印中,如果 Background 为 false,当 locMode 为 Relativity 时,为%,值范围:[0 100];当 locMode 为 Absolute 时,为 px,值范围:[0 4096]。在文字水印中,当 locMode 为 Relativity 时,为%,值范围:[0 100];当 locMode 为 Absolute 时,为 px,值范围:[0 4096]。当Pos为Left、Right和Center时,该参数无效。;是否必传:是
31+
'StartTime'=> 'undefined', // 水印开始时间[0,视频时长] 单位为秒 支持 float 格式,执行精度精确到毫秒;是否必传:否
32+
'EndTime'=> 'undefined', // 水印结束时间[0,视频时长] 单位为秒 支持 float 格式,执行精度精确到毫秒;是否必传:否
33+
),
34+
35+
));
36+
// 请求成功
37+
print_r($result);
38+
} catch (\Exception $e) {
39+
// 请求失败
40+
echo($e);
41+
}

sample/GeneratePlayListDemo.php

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
<?php
2+
3+
require dirname(__FILE__, 2) . '/vendor/autoload.php';
4+
5+
$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
6+
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
7+
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
8+
$cosClient = new Qcloud\Cos\Client(
9+
array(
10+
'region' => $region,
11+
'scheme' => 'https', // 审核时必须为https
12+
'credentials'=> array(
13+
'secretId' => $secretId ,
14+
'secretKey' => $secretKey)));
15+
try {
16+
//生成边转边播的播放列表能够分析视频文件产出 m3u8 文件。生成播放列表后即时播放,并根据播放进度实施按需转码,相比离线转码能极大减少了转码等待时间并大幅度降低了转码和存储开销
17+
$result = $cosClient->GeneratePlayList(array(
18+
'Bucket' => '###bucketName###', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
19+
'Headers' => array(
20+
'Content-Type' => 'application/xml',
21+
),
22+
'Tag'=> 'undefined', // 创建任务的Tag:GeneratePlayList;是否必传:是
23+
// 待操作的文件信息;是否必传:是
24+
'Input'=> array(
25+
'Object'=> 'undefined', // 文件路径;是否必传:否
26+
),
27+
// 操作规则;是否必传:是
28+
'Operation'=> array(
29+
'UserData'=> 'undefined', // 透传用户信息, 可打印的 ASCII 码, 长度不超过1024;是否必传:否
30+
'JobLevel'=> 'undefined', // 任务优先级,级别限制:0 、1 、2 。级别越大任务优先级越高,默认为0;是否必传:否
31+
),
32+
'CallBack'=> 'undefined', // 任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调;是否必传:否
33+
'CallBackFormat'=> 'undefined', // 任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式;是否必传:否
34+
'QueueType'=> 'undefined', // 任务所在的队列类型,限制为 SpeedTranscoding, 表示为开启倍速转码;是否必传:否
35+
'CallBackType'=> 'undefined', // 任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型;是否必传:否
36+
// 任务回调TDMQ配置,当 CallBackType 为 TDMQ 时必填。详情见 CallBackMqConfig;是否必传:否
37+
'CallBackMqConfig'=> array(
38+
'MqRegion'=> 'undefined', // 消息队列所属园区,目前支持园区 sh(上海)、bj(北京)、gz(广州)、cd(成都)、hk(中国香港);是否必传:是
39+
'MqMode'=> 'undefined', // 消息队列使用模式,默认 Queue :主题订阅:Topic队列服务: Queue;是否必传:是
40+
'MqName'=> 'undefined', // TDMQ 主题名称;是否必传:是
41+
),
42+
43+
));
44+
// 请求成功
45+
print_r($result);
46+
} catch (\Exception $e) {
47+
// 请求失败
48+
echo($e);
49+
}

sample/GetHLSPlayKeyDemo.php

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
<?php
2+
3+
require dirname(__FILE__, 2) . '/vendor/autoload.php';
4+
5+
$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
6+
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
7+
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
8+
$cosClient = new Qcloud\Cos\Client(
9+
array(
10+
'region' => $region,
11+
'scheme' => 'https', // 审核时必须为https
12+
'credentials'=> array(
13+
'secretId' => $secretId ,
14+
'secretKey' => $secretKey)));
15+
try {
16+
//该接口用于获取hls播放密钥。
17+
$result = $cosClient->GetHLSPlayKey(array(
18+
'Bucket' => '###bucketName###', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
19+
'Headers' => array(
20+
'Content-Type' => 'application/xml',
21+
),
22+
23+
));
24+
// 请求成功
25+
print_r($result);
26+
} catch (\Exception $e) {
27+
// 请求失败
28+
echo($e);
29+
}

sample/PostWatermarkJobsDemo.php

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
<?php
2+
3+
require dirname(__FILE__, 2) . '/vendor/autoload.php';
4+
5+
$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
6+
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
7+
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
8+
$cosClient = new Qcloud\Cos\Client(
9+
array(
10+
'region' => $region,
11+
'scheme' => 'https', // 审核时必须为https
12+
'credentials'=> array(
13+
'secretId' => $secretId ,
14+
'secretKey' => $secretKey)));
15+
try {
16+
//提交一个视频明水印任务
17+
$result = $cosClient->PostWatermarkJobs(array(
18+
'Bucket' => '###bucketName###', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
19+
'Headers' => array(
20+
'Content-Type' => 'application/xml',
21+
),
22+
'Tag'=> 'undefined', // 创建任务的Tag:Watermark;是否必传:是
23+
// 待操作的文件信息;是否必传:是
24+
'Input'=> array(
25+
'Object'=> 'undefined', // 待处理的文件路径;是否必传:是
26+
),
27+
// 操作规则;是否必传:是
28+
'Operation'=> array(
29+
'WatermarkTemplateId'=> 'undefined', // 水印模板 ID,可以传多个水印模板 ID ,最多传3个;是否必传:否
30+
'UserData'=> 'undefined', // 透传用户信息,可打印的 ASCII 码,长度不超过1024。;是否必传:否
31+
'JobLevel'=> 'undefined', // 任务优先级,级别限制:0 、1 、2 。级别越大任务优先级越高,默认为0;是否必传:否
32+
),
33+
'CallBackFormat'=> 'undefined', // 任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式;是否必传:否
34+
'CallBackType'=> 'undefined', // 任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型;是否必传:否
35+
'CallBack'=> 'undefined', // 任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调;是否必传:否
36+
37+
));
38+
// 请求成功
39+
print_r($result);
40+
} catch (\Exception $e) {
41+
// 请求失败
42+
echo($e);
43+
}

sample/ZipFilePreviewDemo.php

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
<?php
2+
3+
require dirname(__FILE__, 2) . '/vendor/autoload.php';
4+
5+
$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
6+
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
7+
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
8+
$cosClient = new Qcloud\Cos\Client(
9+
array(
10+
'region' => $region,
11+
'scheme' => 'https', // 审核时必须为https
12+
'credentials'=> array(
13+
'secretId' => $secretId ,
14+
'secretKey' => $secretKey)));
15+
try {
16+
//该接口可以在不解压文件的情况下预览压缩包内的内容,包含文件数量、名称、文件时间等,接口为同步请求方式
17+
$result = $cosClient->ZipFilePreview(array(
18+
'Bucket' => '###bucketName###', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
19+
'ObjectKey' => 'undefined' // {ObjectKey}
20+
'Headers' => array(
21+
'Content-Type' => 'application/xml',
22+
),
23+
'ciProcess' => 'null', // 操作类型,压缩包预览计算固定为:zippreview
24+
25+
));
26+
// 请求成功
27+
print_r($result);
28+
} catch (\Exception $e) {
29+
// 请求失败
30+
echo($e);
31+
}

sample/blindWatermark.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
$blindWatermarkTemplate->setImage("http://examplebucket-125000000.cos.ap-beijing.myqcloud.com/shuiyin.jpeg");
1818
$blindWatermarkTemplate->setType(2);
1919
$blindWatermarkTemplate->setLevel(3);
20+
$blindWatermarkTemplate->setVersion("2.0");
2021

2122
// -------------------- 1. 下载时处理 -------------------- //
2223
$result = $cosClient->getObject(array(

sample/imageProcessWatermarkImage.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
$imageWatermarkRule->setSpcent(200); // 与 scatype 搭配使用
2626
$imageWatermarkRule->setDissolve(70); // 图片水印的透明度
2727
$imageWatermarkRule->setBatch(1); // 平铺水印功能,可将图片水印平铺至整张图片
28+
$imageWatermarkRule->setSpacing(10); // 平铺模式下的水平、垂直间距相对文字水印贴图的宽高百分比,范围为[0,100],默认10
2829
$imageWatermarkRule->setDegree(90); // 当 batch 值为1时生效。图片水印的旋转角度设置
2930

3031
$picOperations = new Qcloud\Cos\ImageParamTemplate\PicOperationsTransformation();

src/Client.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -272,6 +272,11 @@
272272
* @method object SearchImage(array $args) 图像检索
273273
* @method object UpdateDataset(array $args) 更新数据集
274274
* @method object UpdateFileMetaIndex(array $args) 更新元数据索引
275+
* @method object ZipFilePreview(array $args) // 压缩包预览同步请求
276+
* @method object GetHLSPlayKey(array $args) // 获取hls播放密钥
277+
* @method object PostWatermarkJobs(array $args) // 视频明水印-提交任务
278+
* @method object GeneratePlayList(array $args) // 生成播放列表
279+
* @method object CreateWatermarkTemplate(array $args) // 创建明水印模板
275280
* @see \Qcloud\Cos\Service::getService()
276281
*/
277282
class Client extends GuzzleClient {

src/CommandToRequestTransformer.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -434,6 +434,10 @@ public function cosDomain2CiTransformer(CommandInterface $command, $request) {
434434
'UpdateMediaNoiseReductionTemplate' => 1,
435435
'CreateVoiceSoundHoundJobs' => 1,
436436
'CreateVoiceVocalScoreJobs' => 1,
437+
'GetHLSPlayKey' => 1,
438+
'PostWatermarkJobs' => 1,
439+
'GeneratePlayList' => 1,
440+
'CreateWatermarkTemplate' => 1,
437441
);
438442
if (key_exists($action, $ciActions)) {
439443
// 万象接口需要https,http方式报错

0 commit comments

Comments
 (0)