该接口用于获取用户已设置的某个模板的内容。
[GET] http://videodev-bj.ksyun.com:8091/livetran/getpresetdetail
参与计算签名的resource的指定关键参数:method,uniqname,app,preset,即:
{resource} = "app=xxx&method=getpresetdetail&preset=xxx&uniqname=xxx"
参数名 | 是否必须 | 描述 |
---|---|---|
app | 是 | 由2~32位字母、数字、下划线组成 |
preset | 是 | 模板名称,由2~32位字母、数字、下划线组成 |
返回的body是json格式
{
//int, 错误码
"errno":xxx,
//string, 处理状态错误描述
"errmsg":xxx
//array, 模板详情
"presetdetail":{
//模板描述
"description": "demo",
"output":[
{
//转码视频输出格式关键参数集合,必选
"format":{
//指定输出视频各项参数
"output_format":"xxx",
//自定义视频码率
"vbr":xxx,
//自定义音频码率
"abr":xxx,
//帧率,不大于30
"fr":xxx,
//音视频转码选项0,1,2,3
"remuxflag": 0
}
}
]
}
}
//接口api名称
$method = 'getpresetdetail';
//者业务类型标识
$uniqname = 'test';
//业务app名称
$app = 'live';
//开发者自定义模板名称
$preset = '9999';
//用于签名的参数,字典序排列
$arrrsrc = array(
'app' => $app,
'method' => $method,
'preset' => $preset,
'uniqname' => $uniqname,
);
$strrsrc = http_build_query($arrrsrc);
//开发者ak/sk,xxxx要替换成客户自己的ak和sk
$accesskey = 'xxxxxxxxxxx';
$secretkey = 'xxxxxxxxxxxxxxxxx';
//过期时间
$expire = time() + 600;
//拼接用于计算签名sign的源字符串
$strtosign = "GET\n$expire\n$strrsrc";
//计算签名
$sign = hash_hmac('sha1', $strtosign, $secretkey, true);
$signature = base64_encode($sign);
//拼接query
$params = array(
'accesskey' => $accesskey,
'expire' => $expire,
'signature' => $signature,
'preset' => $preset,
'app' => $app,
'uniqname' => $uniqname,
);
$qstr = http_build_query($params);
//设置并发送http get请求
$srvurl = "http://videodev-bj.ksyun.com:8091/livetran/$method?$qstr";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $srvurl);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$res = curl_exec($ch);
curl_close($ch);
//获取返回结果
$ret = json_decode($res, true);
if (!empty($ret) && $ret['errno'] == 0) {
echo $ret['errmsg'];
} else {
echo "$res\n";
}