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)
- 最新评论