快捷搜索:   nginx

PHP读取转发M3U8的方法 PHP解码转发M3U8

M3U8的原理我这里就不再累赘了,我们可以用PHP的CURL方法模拟访客获取到M3U8,然后继续往下解码出TS文件,然后传给DB,CK之类播放器播放

一份源码如下:

笨牛网原创的噢

<?php
header("ACCESS-CONTROL-ALLOW-ORIGIN:*");
$action = $_GET['action'];
 function getcurl($url){   
$user_agent = "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0)";       
    $ch = curl_init();      
    //curl_setopt ($ch, CURLOPT_PROXY, $proxy);      
    curl_setopt ($ch, CURLOPT_URL, $url);//设置要访问的IP      
    curl_setopt ($ch, CURLOPT_USERAGENT, $user_agent);//模拟用户使用的浏览器       
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1 ); // 使用自动跳转        
    curl_setopt ($ch, CURLOPT_TIMEOUT, 60); //设置超时时间      
    curl_setopt ($ch, CURLOPT_AUTOREFERER, 1 ); // 自动设置Referer        
    //curl_setopt ($ch, CURLOPT_COOKIEJAR, 'c:\cookie.txt');      
    curl_setopt ($ch, CURLOPT_HEADER,0); //显示返回的HEAD区域的内容      
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);      
    curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, 1);      
    curl_setopt ($ch, CURLOPT_TIMEOUT, 30);      
    $result = curl_exec($ch);      
    curl_close($ch);     
return $result;      
}
if(!$action){
$url='https://new.jsyunbf.com/20180727/QwSTlb89/index.m3u8';
$m3u8 =getcurl($url);  
preg_match_all('#/[^\s]*#i', $m3u8, $match);
echo preg_replace('#/[^\s]*#i','https://test2.bnxb.com/get.php?action=https://new.jsyunbf.com$0',$m3u8);
}
else{
$url2= $action;
$m3u8 =getcurl($url2);  
//print_r($m3u8);
echo preg_replace('#/[^\s]*#i','https://new.jsyunbf.com$0',$m3u8);
}
?>

播放方法,就是找个播放器

然后https://www.bnxb.com/dplayer.html?url=https://test2.bnxb.com/get.php

类似方法

顶(1)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论