API列表:

https://help.aliyun.com/document_detail/87396.html?spm=a2c4g.11186623.6.609.19d83dd2Uejwx7

引入alibaba sdk for php SDK:

git:https://github.com/aliyun/openapi-sdk-php

介绍:

阿里云直播提供的是触发式的推流与播放,您无需提前创建资源,只要添加经过备案的推流域名和播流域名,并完成域名解析、鉴权等操作,即可根据地址拼接规则手动拼接,以快速获取对应的推流地址和播流地址。本文介绍未设置转码的直播活动的推流地址和播流地址的拼接万法。 阿里云直播提供的是触发式的推流与播放,您无需提前创建资源,只要添加经过备案的推流域名和播流域名,并完成域名解析、鉴权等操作,即可根据地址拼接规则手动拼接,以快速获取对应的推流地址和播流地址.本文介绍未设置转码的直播活动的推流地址和播流地址的拼接办法.

【按步骤先配置域名、鉴权,直播地址随便你怎么生成都是有效的,直接拿到能录制直播和观看直播的组件中进行使用就可以了】

测试推荐:OBS推流工具和LVS播流工具

代码参考:

<?phpnamespace App\Service;use AlibabaCloud\Client\AlibabaCloud;
use AlibabaCloud\Client\Exception\ClientException;
use AlibabaCloud\Client\Exception\ServerException;class AliyunLive
{private $error;const DOMAIN_NAME='alive.i***h.cn';  //你的加速域名,和推流域名一致。const REGION_ID='cn-shanghai';      //区域const ACCESS_KEY_ID='LTAI4*****ibc';  //阿里云秘钥const ACCESS_KEY_SECRET='HPg2*****gnNOK';  //阿里云秘钥const LIVE_HOST='live.aliyuncs.com';  //写死,阿里云直播CDN域名const ALIVE_URL='alive.i***h.cn';    //推域名const ALIVE_KEY='oR11sd***';        //推流鉴权KEY,后台拿const TLIVE_URL='tlive.i***h.cn';    //关联的播域名const TLIVE_KEY='jdU1d***op';    //播流鉴权KEY,后台拿/*** 创建签名* @param $path 播放地址 域名后面所有* @param $exp //结束时间* @param $key* @return string*/private static function createSign($path,$exp,$key){$rand=0;$uid=0;$str=sprintf("%s-%s-%s-%s-%s",$path,(string)$exp,(string)$rand,(string)$uid,$key);$hashValue=md5($str);$authKey=sprintf("%s-%s-%s-%s",(string)$exp,(string)$rand,(string)$uid,$hashValue);return "auth_key=$authKey";}/*** 创建是直播地址* @param $appName 应用名称 ,自定义* @param $streamName 房间名称,自定义,该应用下唯一* @param $endTime 结束时间* @return array|bool  播放流(观看者):alive_url,推流(直播者):tlive_url*/public static function createdLive($appName,$streamName,$endTime){if(!$appName || !$streamName || !$endTime || $endTime < time()){return false;}//创建播流$path="/$appName/$streamName";$aliveUrl='rtmp://'.self::ALIVE_URL."$path?".self::createSign($path,$endTime,self::ALIVE_KEY);//创建推流$tliveUrlRTMP= 'rtmp://'.self::TLIVE_URL."$path?".self::createSign($path,$endTime,self::TLIVE_KEY);// $tliveUrlFLV ='http://'.self::TLIVE_URL."$path.flv?".self::createSign($path,$endTime,self::TLIVE_KEY);// $tliveUrlM3U8='http://'.self::TLIVE_URL."$path.m3u8?".self::createSign($path,$endTime,self::TLIVE_KEY);return ['alive_url'=>$aliveUrl,'tlive_url'=>$tliveUrlRTMP,];}//停止直播public static function stopLive($appName,$streamName){$query=['RegionId' => self::REGION_ID,'AppName' => $appName,'StreamName' => $streamName,'LiveStreamType' => "publisher",'DomainName' => self::DOMAIN_NAME,// 'ResumeTime'=>'',];$_this=new static();$result=$_this->request('ForbidLiveStream',$query);return true;}//恢复直播public static function resumeLive($appName,$streamName){$query=['RegionId' => self::REGION_ID,'LiveStreamType' => "publisher",'AppName' => $appName,'StreamName' => $streamName,'DomainName' => self::DOMAIN_NAME,];$_this=new static();$result=$_this->request('ResumeLiveStream',$query);return true;}//获取直播在线人数public static function getOnlineUserNum($appName,$streamNma){$query=['RegionId' => self::REGION_ID,'DomainName' => self::DOMAIN_NAME,'AppName'=>$appName,'StreamName' =>$streamNma,];$_this=new static();$result=$_this->request('DescribeLiveStreamOnlineUserNum',$query);return $result;}//日志public function log($msg,$info='info'){$msg='直播接口:'.$msg.($info !='info'?var_export($info,1):'');log_write($msg);}//获取错误public static function getError(){return (new static())->error;}//请求private function request($action,Array $query){AlibabaCloud::accessKeyClient(self::ACCESS_KEY_ID, self::ACCESS_KEY_SECRET)->regionId(self::REGION_ID)->asDefaultClient();try {$result = AlibabaCloud::rpc()->product('live')// ->scheme('https') // https | http->version('2016-11-01')->action($action)->method('POST')->host(self::LIVE_HOST)->options(['query' => $query,])->request();return $result->toArray();} catch (ClientException $e) {$this->error=$e->getMessage();return false;} catch (ServerException $e) {$this->error=$e->getMessage();return false;}}
}

阿里云直播生成推流和播流地址类相关推荐

  1. java 阿里云直播配置及推拉流地址获取

    一.开通阿里云直播 首先进入阿里云直播产品主页:https://www.aliyun.com/product/live . 点击下方的"立即开通". 如果是还未注册的用户请按照页面 ...

  2. PHP关于实现腾讯云直播的推流和拉流

    PHP关于实现腾讯云直播的推流和拉流 步骤如下 注册一个腾讯云账户,搜产品 :云直播,他们应该会送你20G的流量包,测试的时候足够用了: 设置推流域名和播放(拉流)域名: 推流域名腾讯会直接给你分配一 ...

  3. 阿里云视频直播推流和播流地址生成

    记录学习阿里云视频直播 准备环境: 1.已开通阿里云视频直播服务. 2.2个域名:一个用于推流,一个用于播流. 3.在视频直播服务里面找到域名配置,配置好播流和推流域名之间的关系. 4.下载Vlc和o ...

  4. 推流地址 java_Java实现腾讯云直播生成推流地址和播放地址

    最近在做小程序直播,用到了腾讯云直播,下面为相关文档和程序 URL规则:https://cloud.tencent.com/document/product/267/13457 防盗链计算:https ...

  5. Java实现腾讯云直播生成推流地址和播放地址

    最近在做小程序直播,用到了腾讯云直播,下面为相关文档和程序 URL规则:https://cloud.tencent.com/document/product/267/13457 防盗链计算:https ...

  6. iOS直播集成和问题总结(阿里云直播)

    https://www.jianshu.com/p/714ce954e628 最近接手公司的直播项目,对以前遗留的问题做处理和优化, 于是顺便看了下阿里云直播的文档,在下面写下对直播的理解和遇到的问题 ...

  7. 【Android】使用阿里云直播实现手机直播功能

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.阿里云视频直播流程 二.录制直播推流步骤 1. 集成说明 通过本地依赖方式集成SDK 通过Maven依赖方式集成S ...

  8. 怎么使用阿里云直播服务应用到现在主流直播平台中

    一.业务场景 现在直播APP和直播业务非常火爆,越来越多的人玩直播. 早期直播:直播界定为"广播电视节目的后期(haobc)合成.播出同时进行的播出方式" .主要是电视综艺节目直播 ...

  9. Java 实现阿里云直播

    阿里云播放器直接在线点播视频以及直播技术,此处记录直播实现过程 更多精彩 更多技术博客,请移步 IT人才终生实训与职业进阶平台 官网 阿里云直播-快速入门 准备步骤 创建 阿里云账号 根据 流程 完成 ...

  10. 如何使用PHP对接阿里云直播?

    配置阿里云直播的推流地址和播放地址 使用阿里云直播功能前,首先需要在阿里云控制台中创建直播应用,然后获取推流地址和播放地址. 推流地址一般格式为: rtmp://{Domain}/{AppName}/ ...

最新文章

  1. 2020腾讯广告算法大赛:赛题理解与解题思路
  2. java 正则 任意字符_Java正则表达式 去掉括号内任意字符
  3. python列表添加元素的三种方法定义集合数据对象_(1) List,tuple,dictionary,Python语法基础集,一,之,列表,元组,字典,集合...
  4. 掌门教育微服务体系Solar第3弹:Nacos企业级落地下篇
  5. atitit. applet 浏览器插件 控件 的环境,开发,提示总结o9o
  6. 起步 - 安装 Git
  7. 修改文件名与删除文件
  8. 应用机器学习(八):线性模型
  9. php用按钮导出到excel,PHP导出Excel,PHP输入Excel
  10. Maven的打包命令
  11. 数学顶级期刊- 数学纪事,数学年刊,数学进展,数学杂志
  12. Spectrum采集卡在飞行时间质谱中的应用案例
  13. 三阶魔方大中小魔公式_三阶魔方还原图文教程-番茄魔方
  14. ctf解密图片得到flag_图片隐藏flag怎么找
  15. Visual Studio .Net团队开发(Visual SourceSave6.0 在C#中的应用)
  16. GNU.texi文件转换成.HTML文件
  17. 有无孔孟之道,太阳照常升起
  18. 数据结构与算法——23. 用嵌套列表与链表实现树结构
  19. 锂电池电量百分比计算_锂电池充放电理论及电量计算方法详解
  20. 有图书馆有计算机教室的英语,以my school为题的英语作文有图书馆,办公室,音乐室,教室,体育馆...

热门文章

  1. 手机浏览器进化论:工具到入口再到内容服务
  2. w ndows系统启动日志ID,WIN7日志总能看到 特殊登陆 事件ID 4672,是怎么回事?
  3. A - Browsing History
  4. vue form表单验证清除
  5. 开源的驰骋工作流程引擎,工作流程管理系统,表结构与运行机制。
  6. 【多多情报通】看完让人焕然大悟的6种拼多多店铺玩法
  7. 【数学】从鸡兔同笼谈数学思维
  8. Unity中零基础实现人物控制摇杆(下篇)
  9. 荣耀4a鸿蒙,华为荣耀4A上手评测:599元也可以很拉轰
  10. 【观察】易捷行云EasyStack:以可进化的新一代云平台,攀登云计算的“卡瓦格博峰”...