yy神曲url解析php_单文件PHP版视频解析源码(中间件)

说明:

1 首先这个中间件是我自己写的,它是一个单独的PHP文件。

2 初次运行后会生成一个JSON的文件作为保存内容所用

3 它的原理是比如你在该文件后面添加上播放路径,它会利用识别码,也就是你路径里的如域名或者最后的后缀进行匹配,然后进行直接播放,如果有几个相同的满足条件的解析,会直接在下面以按钮方式切换。

第一次会初始化操作,生成config.json文件

这个文件我顶部已经带了注释了自己看,你们自己保存下面的源码为PHP文件即可。

注意:默认登录的账号密码都是admin,进去后分别在解析管理和识别管理内选择导入列表操作

代码在最底部,自行保存为PHP文件测试。

/*

PHP全自动视频解析

软件说明:

1 首先需要添加识别,比如一个视频播放连接,必然有域名存在,识别就是对播放连接进行搜索匹配,如果连接内的网站地址某段字符串和识别相同,就能获得这个播放连接是那个网站的.

2 当获取的比如某个网站的识别后,我们把这个识别去匹配播放解析组,获取到的任何支持该网站视频的解析放在播放页的下面,方便用户切换.

3 好处是下面的解析地址根据播放网站发生变化,不支持的肯定不会显示出来.

4 本文件名字没有任何限制,你可以变更为index.php

软件流程:

播放地址为:http://v.youku.com/v_show/id_XMjk1NTMwMjk4MA==.html

解析地址为:http://域名/player.php?url=http://v.youku.com/v_show/id_XMjk1NTMwMjk4MA==.html

开始识别:识别关键字为youku,查到播放连接里有youku,匹配为优酷的播放连接.

解析匹配:搜索解析标签里是否有youku这个字样的支持解析.

开始播放:匹配完毕,自动把匹配后的所有支持该网站的解析路径放在播放页面底部供用户切换使用.

使用说明:

1、本程序为单文件程序

2、账号、密码(md5加密)、解析源、识别源都存放在 $json_name ='config.json'; 内,你可以自己重命名这个文件的名字。

3、config.json 文件为自动生成文件。

4、第一次使用初始账号和密码都为:admin

路径页面说明:

1 解析管理:player.php (不加任何参数可进入管理)

2 解析播放:player.php?url=视频地址

3 自由播放:player.php?url= 后面不加视频地址

管理页面

1 player.php?type=1 解析添加,修改,删除管理

2 player.php?type=2 识别添加,修改,删除管理

3 player.php?type=3 修改账号密码管理

备注:本地视频格式识别后缀修改请在本源码第--65列---修改(说明:没有显示的本地后缀你也可以手动添加到列表内,照样可以识别不影响使用)

*/

error_reporting(0);

session_start();

//函数

//判断JSON内容并输出

function go_json($json_name,$i=1){

$json_api = file_get_contents($json_name); //读取索引

$json_api=trim($json_api,chr(239).chr(187).chr(191)); //处理JSON

$jsondata = json_decode($json_api, true); //转换JSON为数组

if($i==1){

return $jsondata; //默认输出数组格式

}else{

return $json_api; //输出JSON格式

}

}

//取文件后缀名

function getExt($url)

{

$path=parse_url($url);

$str=explode('.',$path['path']);

return $str[1];

}

//函数结束

//访问终端判断

$agent = $_SERVER['HTTP_USER_AGENT'];

if(strpos($agent,"comFront") || strpos($agent,"iPhone") || strpos($agent,"MIDP-2.0") || strpos($agent,"Opera Mini") || strpos($agent,"UCWEB") || strpos($agent,"Android") || strpos($agent,"Windows CE") || strpos($agent,"SymbianOS")){

$terminal="wap"; //手机端

}else{

$terminal="pc";//电脑端

}

$localplay = 'm3u8|mp4|flv|avi|asf|rmvb|rm|asf|divx|mpg|mpeg|mpe|wmv|mkv|vob|swf|mp3 '; //添加修改本地视频格式识别后缀请在这里添加

$localarr = explode('|',$localplay);

$i=1001;

foreach($localarr as $value){ //本地播放器配置

$localTags=$localTags. ''.$value.'  ';

++$i;

}

//读取JSON文件

$json_name ='config.json';

$jsondata = go_json($json_name);

if(is_array($jsondata)){

$userall = $jsondata['user'];

$parse = $jsondata['parse'];

$discern = $jsondata['discern'];

}else{

$userall = array("id"=>"1","username"=>"admin","password"=>md5("admin"));

$parse =array();

$discern =array();

$jsonarr = array(

'time' => date('y-m-d h:i:s',time()),

'user' => $userall,

'parse' => $parse,

'discern' => $discern

);

file_put_contents($json_name,json_encode($jsonarr));

}

//----------------------------------------------

$play_url = $_GET['url']; //播放解析接口

if(empty($play_url)== FALSE){

//播放器的前期设置

$level=0;

$play_url = strtolower($play_url); //避免连接大写转换成小写字母

$play_suffix = getExt($play_url); //获取后缀

$play_type=''; //播放器识别字符

$play_Name=''; //播放器识别名称

$play_Arry=array(); //播放器数组

$_SESSION['ok']=0;

}

//解析结束进行跳转

//----------------------------------------------

//管理登录开始

if($_GET['out']==1){$_SESSION['ok']=0;}

$time =date('y-m-d h:i:s',time());

$username = $_POST['username'];

$password = $_POST['password'];

$alter = $_POST['alter'];

if($alter ==1 && $_SESSION['ok']==1){

$userTT = array("id"=>"1","username"=>$_POST['username'],"password"=>md5($_POST['password']));

$jsonarr = array(

'time' => date('y-m-d h:i:s',time()),

'user' => $userTT,

'parse' => $parse,

'discern' => $discern

);

file_put_contents($json_name,json_encode($jsonarr));

echo "";

session_destroy();

}

//if(isset($username) && empty($_POST['alter'])!== FALSE){

if(isset($username) && empty($_POST['alter'])!== FALSE){

if($username !== $userall['username'])echo "";

elseif(md5($password)!==$userall['password'])echo "";

elseif($username == $userall['username'] && md5($password)==$userall['password']){$_SESSION['ok'] = 1;$_SESSION['username']=$userall['username'];$_SESSION['password']=$userall['password']; header('location:?');}

}

if(!isset($_SESSION['ok']) && !isset($play_url)== true){

exit('

管理登录

服务器时间:'.$time.'

管理账号

管理密码

管理登录      转到播放地址页

');

}

if($_SESSION['ok'] == 1){

//管理登录结束

//开始后台管理

$all =$_GET['all'];

$save = $_GET['save']; //操作 0=读取 1=添加,2=修改,3=删除 (Add, delete, modify)

//判断项目

$type =$_GET['type']; //分类 1=添加删除解析连接地址 或 2 =添加删除识别字段

//数据项目

$sbid = $_GET['sbid']; //识别ID,修改和删除使用的

$sbname = $_GET['sbname']; //识别名称

$sburl = $_GET['sburl']; //识别字段

$sbkey = $_GET['sbkey']; //识别字段

$jxid = $_GET['jxid']; //解析ID,修改和删除使用的

$jxname = $_GET['jxname']; //解析名称

$jxurl = $_GET['jxurl']; //解析字段

$jxtags = $_GET['tags']; //解析标签

$md5 = $_GET['md5'];

$level = $_GET['level'];

$yd = $_GET['yd'];

$copy = $_GET['copy'];

if(empty($level))$level=0;

if(empty($type))$type=1;

if(empty($save))$save=1;

if(empty($yd))$yd=0;

if($save==1){$an ='添加';$fg='btn-danger';}elseif($save==2 ){$an ='修改';$fg='btn-primary';}elseif($save==3){$an ='删除'; $fg='btn-danger'; }

//处理和保存数组

//添加删除数据

if($level==1){

if($type==1){

if($save==1){$md5 = md5($jxurl);}

$saveall='';

for ($i=0;$i

$ID=$parse[$i]['ID'];

$Name=$parse[$i]['Name'];

$Url=$parse[$i]['Url'];

$Tags=$parse[$i]['Tags'];

$MD5

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
概述: iShow是一套基于P2P技术的在线视频直播系统,iShow依存于web网页,无需下载插件,可实现低延时高清的视频语音直播体验。现已广泛应用于教育、娱乐、客服等各个行业,随着国内带宽的提升和各类新技术的加入,视频直播技术已经逐渐成为下一代互联网的主流,多媒体在线直播体验势必将会涵盖各类终端,成为全民参与的新一代互联网主旋律。 随着国家网络带宽的升级,民用宽带的价格逐渐降低以及微博等即时交流的网络媒体的兴盛,视频多媒体将将成为下一代网络的主流力量,iShow作为国内第一个也是唯一一个使用点对点视频技术开发的网站应用,正在引领一股新的流媒体平民化浪潮。 功能列表: 1、即时视频语音直播 2、视频状态检测 3、局域网内的P2P直播,不消耗任何外网带宽 4、可设置的视频清晰度和缓冲时间 5、无延时的即时文字和表情传输 6、礼物/消费/主播结算/房间类型等功能 7、播放录像功能 iShow的技术优势: 1、直播低延时、文本数据即时传输 2、多媒体直播不耗费任何服务器资,对服务器无负载 3、带宽占用低 4、视频高清,采用高清编码,影响更清晰,传输更流畅 5、无需架设额外的视频流媒体服务器,节省60%~90%的运营开支 6、可扩展,可跨平台同步直播 7、兼容任何开发语言,简几步可与任何网站进行对接整合 8、智能识别用户的在线状态 9、可脱离动态程序和数据库独立运行,如:无需任何架设,即可直接集成到任何网站,进行直播或文字沟通 目前同行业唯一一款成熟产品,处于行业绝对领跑者

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值