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

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

步骤如下

  1. 注册一个腾讯云账户,搜产品 :云直播,他们应该会送你20G的流量包,测试的时候足够用了;
    设置推流域名和播放(拉流)域名;
    PHP关于实现腾讯云直播的推流和拉流_第1张图片
    推流域名腾讯会直接给你分配一个,播放域名需要你自己添加;设置播放域名的时候需要注意一点CNAME配置这块,举个例子:我的域名是在阿里云上买的,就用阿里云的举例吧,假设我有一个域名www.admin.com 登录我的阿里云,找到域名列表解析域名,点击添加记录
    PHP关于实现腾讯云直播的推流和拉流_第2张图片
    记录类型 选择 CNAME ,主机记录可以随便填下,假设输入个 aaa;解析线路设置为默认,记录值先按照示例随便设置一下就行 然后点击确定;
    返回腾讯云,在域名管理这块 点击添加域名,类型选择播放域名,域名就填刚才你解析的域名 aaa.admin.com,点击确定;这个时候你会发现你的列表里有一个播放域名的数据,它的CNAME字段下会有一个红色感叹号的域名链接,你复制这个链接
    PHP关于实现腾讯云直播的推流和拉流_第3张图片

打开阿里云 --域名解析 找到你刚才解析的那个记录类型为CNAME 的域名,点击修改,把复制的域名链接填到记录值里面就OK了,然后返回你的腾讯云,不过这个不会即时生效 需要等个几分钟;

  1. 这些准备工作配置好 就可以开始推流工作了,打开腾讯云直播的域名管理,找到那条推流域名,点击管理,推流配置里面有个主KEY,这个要用到;
    PHP关于实现腾讯云直播的推流和拉流_第4张图片

页面底部有一个示例的demo

			/**
      * 获取推流地址
      * 如果不传key和过期时间,将返回不含防盗链的url
      * @param domain 您用来推流的域名
      *        streamName 您用来区别不同推流地址的唯一流名称(这个你需要通过自己的业务逻辑,看传什么参数,房间号,用户标识ID什么的 都可以)
      *        key 安全密钥(就是上面说得那个主KEY)
      *        time 过期时间 sample 2016-11-12 12:00:00
      * @return String url
			*/
			function getPushUrl($domain, $streamName, $key = null, $time = null){
			      if($key && $time){
			            $txTime = strtoupper(base_convert(strtotime($time),10,16));
			            //txSecret = MD5( KEY + streamName + txTime )
			            $txSecret = md5($key.$streamName.$txTime);
			            $ext_str = "?".http_build_query(array(
			                  "txSecret"=> $txSecret,
			                  "txTime"=> $txTime
			            ));
			      }
			      return "rtmp://".$domain."/live/".$streamName . (isset($ext_str) ? $ext_str : "");
			}
			

你会获得一个rtmp开头的链接, 这个链接就是你的推流地址,把这个提供给客户端就OK了;
拉流:进入腾讯云直播 --域名管理 找到播放域名那条数据 点击管理,点击播放设置,里面会有四条不同类型对应的拉流链接地址,地址里面的StreamName参数 你要对应你设置推流时候那个streamName;
PHP关于实现腾讯云直播的推流和拉流_第5张图片

剩下的就是页面展示了,我当时做的是h5打包的App,参考这个
腾讯云的web播放器文档,可以看下

你可能感兴趣的:(腾讯云,云直播)