PHP获取腾讯云直播推流地址

前言

有做过腾讯云直播的伙伴,都应该清楚,直播这段的SDK只有IOS,Android,微信小程序这方面的demo,说是说有服务器端的,我看了找了半天,找了一段,好像也没什么大的用处,但是想想有些参数客户端肯定不可以写死,一旦更改的时候,就很麻烦,所以有些东西还是要服务器传输,于是有了这篇文章,内容纯属个人想法,若有不对的地方欢迎指正!

1、腾讯云标准的推流URL格式:
PHP获取腾讯云直播推流地址_第1张图片
  • StreamName(流 ID):推荐用随机数字或者用户 ID。
  • txTime(地址有效期):何时该 URL 会过期,格式支持十六进制的 UNIX 时间戳。
  • txSecret(防盗链签名):防止攻击者伪造您的后台生成推流 URL
2、函数(因为使用全局模式,此处用一个函数举例)
function get_push_url($streamName)
{
    $domain = PUBLISH_HOST;
    $key    = PLAY_KEY;
    //时间这块坑很大,千万别设为当前时间,建议是当前时间加上你的过期时间
    $time   = date('Y-m-d H:i:s',strtotime('+1 day'));
    $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 : "");
}
  • domain:自有已备案播放域名或者腾讯云分配的域名。
  • key:在域名管理=>推流配置=>鉴权配置下的主KEY。(见下图)
  • StreamName:流名称,用户自定义,用以标识直播流。
  • txSecret:开启播放鉴权后生成的鉴权串。
  • txTime:播放地址设置的时间戳,用以控制台播放地址的有效时间。
PHP获取腾讯云直播推流地址_第2张图片

你可能感兴趣的:(PHP获取腾讯云直播推流地址)