本篇文档提供了PHP SDK转码模板模块相关功能的API调用示例。包含添加转码模板组、修改转码模板组、删除转码模板组、查询转码模板组、设置默认转码模板组等。
初始化客户端
使用前请先初始化客户端,请参见初始化。
添加转码模板组
调用AddTranscodeTemplateGroup接口,完成添加转码模板组功能。
接口参数和返回字段请参见AddTranscodeTemplateGroup。调用示例如下:
/**
* 构建转码模板配置数据
* @return
*/
function buildTranscodeTemplateList() {
$transcodeTemplateList = array();
$transcodeTemplate = array();
//视频流转码配置
$video = array();
$video["Width"] = 640;
$video["Bitrate"] = 400;
$video["Fps"] = 25;
$video["Remove"] = false;
$video["Codec"] = "H.264";
$video["Gop"] = 250;
$transcodeTemplate["Video"] = $video;
//音频流转码配置
$audio = array();
$audio["Codec"] = "AAC";
$audio["Bitrate"] = 64;
$audio["Channels"] = 2;
$audio["Samplerate"] = 32000;
$transcodeTemplate["Audio"] = $audio;
//封装容器
$container = array();
$container["Format"] = "mp4";
$transcodeTemplate["Container"] = $container;
//条件转码配置
$transconfig = array();
$transconfig["IsCheckReso"] = false;
$transconfig["IsCheckResoFail"] = false;
$transconfig["IsCheckVideoBitrate"] = false;
$transconfig["IsCheckVideoBitrateFail"] = false;
$transconfig["IsCheckAudioBitrate"] = false;
$transconfig["IsCheckAudioBitrateFail"] = false;
$transcodeTemplate["TransConfig"] = $transconfig;
//加密配置(只支持m3u8)
//$encryptSetting= array();
//$encryptSetting["EncryptType"] = "Private";
//$transcodeTemplate["EncryptSetting"] = $encryptSetting;
//清晰度
$transcodeTemplate["Definition"] = "LD";
//模板名称
$transcodeTemplate["TemplateName"] = "testtemplate";
//水印ID(多水印关联)
$watermarkIdList= array();
$watermarkIdList[] = "263261bdc1ff65782f8995c6dd52****";
//USER_DEFAULT_WATERMARK 代表默认水印ID
$watermarkIdList[] = "USER_DEFAULT_WATERMARK";
$transcodeTemplate["WatermarkIds"] = $watermarkIdList;
$transcodeTemplateList[] = $transcodeTemplate;
return json_encode($transcodeTemplateList);
}
/**
* 添加转码模板组配置
*/
function addTranscodeTemplateGroup($client) {
$request = new vod\AddTranscodeTemplateGroupRequest();
// 转码模板组名称
$request->setName("grouptest");
// 转码模板组信息
$request->setTranscodeTemplateList(buildTranscodeTemplateList());
return $client->getAcsResponse($request);
}
/**
* 以下为调用示例
*/
try {
$client = initVodClient('<AccessKeyId>', '<AccessKeySecret>');
$result = addTranscodeTemplateGroup($client);
var_dump($result);
} catch (Exception $e) {
print $e->getMessage()."\n";
}
修改转码模板组
调用UpdateTranscodeTemplateGroup接口,完成修改转码模板组功能。
接口参数和返回字段请参见UpdateTranscodeTemplateGroup。调用示例如下:
/**
* 构建转码模板配置数据
* @return
*/
function buildTranscodeTemplateList() {
$transcodeTemplateList = array();
$transcodeTemplate = array();
//视频流转码配置
$video = array();
$video["Width"] = 960;
$video["Bitrate"] = 900;
$video["Fps"] = 25;
$video["Remove"] = false;
$video["Codec"] = "H.264";
$video["Gop"] = 250;
$transcodeTemplate["Video"] = $video;
//音频流转码配置
$audio = array();
$audio["Codec"] = "AAC";
$audio["Bitrate"] = 96;
$audio["Channels"] = 2;
$audio["Samplerate"] = 32000;
$transcodeTemplate["Audio"] = $audio;
//封装容器
$container = array();
$container["Format"] = "mp4";
$transcodeTemplate["Container"] = $container;
//条件转码配置
$transconfig = array();
$transconfig["IsCheckReso"] = false;
$transconfig["IsCheckResoFail"] = false;
$transconfig["IsCheckVideoBitrate"] = false;
$transconfig["IsCheckVideoBitrateFail"] = false;
$transconfig["IsCheckAudioBitrate"] = false;
$transconfig["IsCheckAudioBitrateFail"] = false;
$transcodeTemplate["TransConfig"] = $transconfig;
//加密配置(只支持m3u8)
//$encryptSetting= array();
//$encryptSetting["EncryptType"] = "Private";
//$transcodeTemplate["EncryptSetting"] = $encryptSetting;
//清晰度
$transcodeTemplate["Definition"] = "SD";
//模板名称
$transcodeTemplate["TemplateName"] = "testtemplate";
//模板ID
$transcodeTemplate["TranscodeTemplateId"] = "214a67fab9fdf920f486faa7752****";
//水印ID(多水印关联)
$watermarkIdList= array();
$watermarkIdList[] = "263261bdc1ff65782f8995c6dd52****";
//USER_DEFAULT_WATERMARK 代表默认水印ID
$watermarkIdList[] = "USER_DEFAULT_WATERMARK";
$transcodeTemplate["WatermarkIds"] = $watermarkIdList;
$transcodeTemplateList[] = $transcodeTemplate;
return json_encode($transcodeTemplateList);
}
/**
* 修改转码模板组配置
*/
function updateTranscodeTemplateGroup($client) {
$request = new vod\UpdateTranscodeTemplateGroupRequest();
// 转码模板组名称
$request->setName("grouptest1");
// 转码模板组ID
$request->setTranscodeTemplateGroupId("014a67fab9fdf920f486faa7752****");
// 转码模板组信息
$request->setTranscodeTemplateList(buildTranscodeTemplateList());
return $client->getAcsResponse($request);
}
/**
* 以下为调用示例
*/
try {
$client = initVodClient('<AccessKeyId>', '<AccessKeySecret>');
$result = updateTranscodeTemplateGroup($client);
var_dump($result);
} catch (Exception $e) {
print $e->getMessage()."\n";
}
查询转码模板组列表
调用ListTranscodeTemplateGroup接口,完成查询转码模板组列表功能。
接口参数和返回字段请参见ListTranscodeTemplateGroup。调用示例如下:
/**
* 查询转码模板组列表
*/
function listTranscodeTemplateGroup($client) {
$request = new vod\ListTranscodeTemplateGroupRequest();
return $client->getAcsResponse($request);
}
/**
* 以下为调用示例
*/
try {
$client = initVodClient('<AccessKeyId>', '<AccessKeySecret>');
$result = listTranscodeTemplateGroup($client);
var_dump($result);
} catch (Exception $e) {
print $e->getMessage()."\n";
}
查询单个转码模板组
调用GetTranscodeTemplateGroup接口,完成查询单个转码模板组功能。
接口参数和返回字段请参见GetTranscodeTemplateGroup。调用示例如下:
/**
* 查询单个转码模板组
*/
function getTranscodeTemplateGroup($client) {
$request = new vod\GetTranscodeTemplateGroupRequest();
// 转码模板组ID
$request->setTranscodeTemplateGroupId("014a67fab9fdf920f486faa7752****");
return $client->getAcsResponse($request);
}
/**
* 以下为调用示例
*/
try {
$client = initVodClient('<AccessKeyId>', '<AccessKeySecret>');
$result = getTranscodeTemplateGroup($client);
var_dump($result);
} catch (Exception $e) {
print $e->getMessage()."\n";
}
设置默认转码模板组
调用SetDefaultTranscodeTemplateGroup接口,完成设置默认转码模板组功能。
接口参数和返回字段请参见SetDefaultTranscodeTemplateGroup。调用示例如下:
/**
* 设置默认转码模板组
*/
function setDefaultTranscodeTemplateGroup($client) {
$request = new vod\SetDefaultTranscodeTemplateGroupRequest();
// 转码模板组ID
$request->setTranscodeTemplateGroupId("014a67fab9fdf920f486faa7752****");
return $client->getAcsResponse($request);
}
/**
* 以下为调用示例
*/
try {
$client = initVodClient('<AccessKeyId>', '<AccessKeySecret>');
$result = setDefaultTranscodeTemplateGroup($client);
var_dump($result);
} catch (Exception $e) {
print $e->getMessage()."\n";
}
删除转码模板组
调用DeleteTranscodeTemplateGroup接口,完成删除转码模板组功能。
接口参数和返回字段请参见DeleteTranscodeTemplateGroup。调用示例如下:
/**
* 删除转码模板组配置
*/
function deleteTranscodeTemplateGroup($client) {
$request = new vod\DeleteTranscodeTemplateGroupRequest();
// 转码模板组ID
$request->setTranscodeTemplateGroupId("014a67fab9fdf920f486faa77352****");
return $client->getAcsResponse($request);
}
/**
* 以下为调用示例
*/
try {
$client = initVodClient('<AccessKeyId>', '<AccessKeySecret>');
$result = deleteTranscodeTemplateGroup($client);
var_dump($result);
} catch (Exception $e) {
print $e->getMessage()."\n";
}
在文档使用中是否遇到以下问题
更多建议
匿名提交