caiyun / vod
多驱动视频点播(阿里云 / 腾讯云 / 华为云),适配 Laravel 13+
v1.0.0
2026-09-03 08:42 UTC
Requires
- php: ^8.3
- alibabacloud/vod-20170321: ^3.3
- aliyuncs/oss-sdk-php: ^2.7
- huaweicloud/huaweicloud-sdk-php: ^3.1
- illuminate/contracts: ^13.0
- illuminate/support: ^13.0
- tencentcloud/tencentcloud-sdk-php: ^3.0
Requires (Dev)
- phpunit/phpunit: ^11.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
Laravel 13+ 多驱动视频点播包,统一封装阿里云 / 腾讯云 / 华为云 VOD。
安装
composer require caiyun/vod
发布配置:
php artisan vendor:publish --tag=vod-config
配置
.env 示例:
VOD_DRIVER=aliyun # 阿里云 VOD_ALIYUN_ACCESS_KEY_ID= VOD_ALIYUN_ACCESS_KEY_SECRET= VOD_ALIYUN_REGION=cn-shanghai # 腾讯云 VOD_TENCENT_APP_ID= VOD_TENCENT_SECRET_ID= VOD_TENCENT_SECRET_KEY= VOD_TENCENT_PLAY_KEY= # 华为云 VOD_HUAWEI_ACCESS_KEY= VOD_HUAWEI_SECRET_KEY= VOD_HUAWEI_PROJECT_ID= VOD_HUAWEI_REGION=cn-north-4
能力
| 方法 | 说明 |
|---|---|
createUploadCredential |
客户端直传上传凭证 |
refreshUploadCredential |
刷新上传凭证 |
getPlayCredential |
播放凭证(PlayAuth / psign / 鉴权 URL) |
getPlayInfo |
播放地址等信息 |
upload |
服务端本地文件上传 |
getMediaInfo |
媒资详情 |
deleteMedia |
删除媒资 |
updateMedia |
更新媒资信息 |
submitTranscode |
提交转码 / 任务流 |
getTranscodeJob |
查询任务 |
verifyCallback / parseCallback |
回调校验与解析 |
使用
use Caiyun\Vod\Facades\Vod; use Caiyun\Vod\Contracts\VodDriver; // 默认驱动 $credential = Vod::createUploadCredential('lesson.mp4', '课时视频', 1024000); $play = Vod::getPlayCredential($mediaId); // 指定驱动(历史媒资按 provider 回放) $play = Vod::driver('tencent')->getPlayCredential($mediaId); // 依赖注入 public function credential(VodDriver $vod) { return $vod->createUploadCredential(...); }
新增供应商时实现 Caiyun\Vod\Contracts\VodDriver,并在 VodManager 增加对应 createXxxDriver()。