又拍云视频预处理 PHP-SDK
目录
安装说明
[通过composer安装](#composer install)
[github下载压缩包安装](#download zip and install)
安装说明
要求
php 5.3+
1.安装composer
curl -s https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
2.在你的项目根目录下创建composer.json,并添加如下内容
{
"repositories": [
{
"type": "vcs",
"url": "https://github.com/upyun/av-pretreatment-php-sdk.git"
}
],
"require":{
"upyun/sugar-php-sdk":"dev-master"
}
}
3.运行 composer install
4.在项目中添加如下代码
//注意修改项目根目录
include '/your/project/root/path/vendor/autoload.php'
github下载压缩包安装
通过github直接下载最新稳定版,在项目中添加以下代码
include "Sugar/AvPretreatment.php";
include "Sugar/CallbackValidation.php";
include "Sugar/Tasks.php";
示例
AvPretreatment 类提交视频预处理请求
use Sugar\AvPretreatment;
use Sugar\CallbackValidation;
$sugar = new AvPretreatment('operator_name', 'operator_password');//操作员的帐号密码
$data = array(
'bucket_name' => 'your_bucket_name', //空间名
'source' => '/video/20130514_190031.mp4', //空间视频地址
'notify_url' => 'http://callback/', //回调通知地址
'tasks' => array( //针对一个视频,可以有多种处理任务
array(
'type' => 'hls',
'hls_time' => 6,
'bitrate' => '500',
'rotate' => 'auto',
'thumb_format' => 'mp4',
),
array(
'type' => 'thumbnail',
'thumb_single' => false,
'thumb_amount' => 100,
'thumb_format' => 'png'
),
)
);
try {
//返回对应的任务ids
$ids = $sugar->request($data);
} catch(\Exception $e) {
echo "request failed:", $e->getMessage();
}
Tasks 类 批量处理同一个空间的多个视频
当需要对同一个空间多个视频做相同的任务处理时,可以使用Tasks类
use Sugar\AvPretreatment;
use Sugar\Tasks;
use Sugar\CallbackValidation;
//需要将 operator_name opeartor_pwd your_bucket_name替换成自己的操作员帐号密码和空间名
$avPretreatment = new AvPretreatment('operator_name', 'operator_pwd');
$tasks = new Tasks('your_bucket_name', 'http://callback/', $avPretreatment);
$data =array(
array(
'type' => 'hls',
'hls_time' => 6,
'bitrate' => '500',
'rotate' => 'auto',
'thumb_format' => 'mp4',
),
array(
'type' => 'thumbnail',
'thumb_single' => false,
'thumb_amount' => 100,
'thumb_format' => 'png'
),
);
$tasks->addTasks($data);
//待处理的多个视频
$videoFiles = array('/video/path1', '/video/path2', '/video/path3')
foreach($videoFiles as $url) {
$tasks->setSource($url);
$ids[$url] = $tasks->run();
}
回调地址验证示例:
在回调代码中,添加如下验证
use Sugar\AvPretreatment;
use Sugar\CallbackValidation;
//需要将 operator_name opeartor_pwd 替换成自己的操作员帐号密码
$av = new AvPretreatment('operator_name', 'operator_pwd');
$validation = new CallbackValidation($av);
if($validation->verifySign()) {
echo '验证成功';
} else {
echo '验证失败';
}
贡献代码
Fork
为新特性创建一个新的分支
发送一个 pull request 到 develop 分支
社区
许可证
UPYUN 视频处理PHP-SDK基于 MIT 开源协议