• 阿里云视频直播PHP-SDK接入教程


    阿里云视频直播PHP-SDK接入教程

        阿里云 视频直播 配置 及 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

  • 相关阅读:
    fastadmin+thinkphp,自定义编辑操作按钮修改数据
    fastadmin列表自动刷新功能
    【Linux】centos7安装nginx并配置web前端环境。
    一文精通HashMap灵魂七问,你学还是不学
    HttpServletRequest 的三个方法 request.getParameter()、request.getInputStream()、request.getReader()
    算法19可见的山峰对数量(单调栈)
    算法18最大值减去最小值小于或等于num的子数组数量
    自控力读书笔记20220704
    爬虫课程笔记02
    Python处理办公自动化的10大场景
  • 原文地址:https://www.cnblogs.com/lxwphp/p/10494063.html
Copyright © 2020-2023  润新知