阿里云 视频直播 配置 及 PHP-SDK 接入教程
准备工作
域名管理
配置鉴权
地址生成器及DEMO演示-熟悉鉴权
接入SDK
阿里云 视频直播 配置 及 PHP-SDK 接入教程
个人感觉,阿里的文档比微信的要坑很多…
微信最多是有些比较重要的东西放到比较不起眼、比较难发现的地方.
阿里的文档就是要么就是sdk已经更新了,但是文档还没更新,导致文档与SDK不匹配.在关键点卡我一下…
要么是同样的功能有好几个版本的SDK以及文档,却不告诉你哪个是最新的…
吐槽结束~
准备工作
1.最重要的,先仔细看下视频直播文档!
2. 购买阿里云的视频直播服务 ,用量不大的时候建议使用按量收费的方式结算,接通之后消耗了流量才扣钱;
3. 准备好备案的域名,到时候需要解析两个二级域名(推流域名与拉流域名);
4. 如果需要存储直播视频文件的话,需要使用对象存储OSS服务,因为直播录制的视频都会到这里面.这也是可以先使用后收费的(按量收费).
域名管理
首先进入视频直播的控制台>>域名管理>>添加域名
添加两次,分别是播流域名和推流域名,
添加完成之后进行域名解析配置这两个域名的CDN加速指向分配的CNAME.
然后配置将它们两个域名(一个推流,一个播流)关联起来.
配置鉴权
推流与播流的链接都是以一定的规则自己拼起来的,首先要在域名配置
地址生成器及DEMO演示-熟悉鉴权
AppName:随意理解,或者理解为分组吧;
StreamName:理解为直播的id,一个StreamName同时只能推一个直播流.可以开始直播-终止直播-开始直播-终止直播…
有关鉴权的规则是这样的:鉴权规则
代码如下:
<?php $AppName = 'AppName'; //app名称 ,随意设定 $StreamName = "StreamName"; //直播流名称 ,随意设定 $now = time(); //------------------- 阿里云视频直播控制台 地址生成器 鉴权设置 ----------- //加密key,即直播后台鉴权里面自行设置 $pull_key = 'oCudfghYGM'; //播流 主key $push_key = '0hgggfjAhT'; //推流 主key $time = $now + 60*60*3; //URL的有效期 180分钟 随意设定 //------------------------ end --------------------------------------------- $strpush = "/{ $AppName}/{ $StreamName}-{ $time}-0-0-{ $push_key}"; $push_cdn = 'push.paxy365.com'; $pull_cdn = 'pull.paxy365.com'; //推流地址 一个 $pushurl = "rtmp://{ $push_cdn}/{ $AppName}/{ $StreamName}?auth_key={ $time}-0-0-".md5($strpush); //播流地址 $strviewrtmp = "/{ $AppName}/{ $StreamName}-{ $time}-0-0-{ $pull_key}"; $strviewflv = "/{ $AppName}/{ $StreamName}.flv-{ $time}-0-0-{ $pull_key}"; $strviewm3u8 = "/{ $AppName}/{ $StreamName}.m3u8-{ $time}-0-0-{ $pull_key}"; $rtmpurl = "rtmp://{ $pull_cdn}/{ $AppName}/{ $StreamName}?auth_key={ $time}-0-0-".md5($strviewrtmp); //播流地址 $flvurl = "http://{ $pull_cdn}/{ $AppName}/{ $StreamName}.flv?auth_key={ $time}-0-0-".md5($strviewflv); //播流地址 $m3u8url = "http://{ $pull_cdn}/{ $AppName}/{ $StreamName}.m3u8?auth_key={ $time}-0-0-".md5($strviewm3u8); //播流地址
获取到推流URL和播流URL就可以愉快地玩直播啦,可以下载阿里的DEMO(APP)到手机上,测试这URL是否有用~
接入SDK
阿里是将所有的SDK打包一起下载,里面不仅有视频直播的SDK,还有别的业务的SDK…T_T
PHP SDK 下载地址
我的项目是TP框架(还是3.2的)
在一开始拿到SDK代码的时候很懵逼,无从下手…
度娘了下才知道要引入的是这两个文件 ! ! !
<?php include_once LIB_PATH . 'Vendor/aliyun-openapi/aliyun-php-sdk-core/Config.php'; include_once LIB_PATH . 'Vendor/aliyun-oss-php/autoload.php'; //接下来就可以为所欲为了~~~
原文:https://blog.csdn.net/qq_41976646/article/details/88317894
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/112490.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...