苹果CMS V10 DPlayer播放器集成P2P加速、记忆播放与自动下集功能教程
发布时间:2024-09-04共18人阅读
一、功能介绍
原生苹果CMS播放器缺少进度记忆、P2P分发加速、自动连播等实用功能,本次改造基于DPlayer播放器开发,可无缝适配V10程序。改造后支持实时保存播放进度、P2P节点加速加载、视频播放结束自动跳转下一集,有效提升观影体验与站点加载速度。
教程采用远程JS资源加载方式,无需本地频繁更新脚本,保证播放器功能持续适配最新规则,稳定性更强。
二、完整播放器部署代码
直接替换程序 static/player 目录下的 dplayer.html 文件全部内容即可生效,无需额外修改程序配置。
<html>
<head>
<title>dplayer播放器p2p加速+记忆播放</title>
<meta http-equiv="content-type" content="text/html;charset=UTF-8"/>
<meta http-equiv="content-language" content="zh-CN"/>
<meta http-equiv="X-UA-Compatible" content="chrome=1"/>
<meta http-equiv="pragma" content="no-cache"/>
<meta http-equiv="expires" content="0"/>
<meta name="referrer" content="never"/>
<meta name="renderer" content="webkit"/>
<meta name="msapplication-tap-highlight" content="no"/>
<meta name="HandheldFriendly" content="true"/>
<meta name="x5-page-mode" content="app"/>
<meta name="Viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0"/>
<link rel="stylesheet" href="//www.seeso.cc/dplayerp2p/DPlayer.min.css" type="text/css"/>
<style type="text/css">
body,html{width:100%;height:100%;background:#000;padding:0;margin:0;overflow-x:hidden;overflow-y:hidden}
*{margin:0;border:0;padding:0;text-decoration:none}
#stats{position:fixed;top:5px;left:8px;font-size:12px;color:#fdfdfd;text-shadow:1px 1px 1px #000, 1px 1px 1px #000}
#dplayer{position:inherit}
</style>
</head>
<body style="background:#000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" oncontextmenu=window.event.returnValue=false>
<div id="dplayer"></div>
<div id="stats"></div>
<script language="Javascript">
document.oncontextmenu=new Function("event.returnValue=false");
document.onselectstart=new Function("event.returnValue=false");
</script>
<script type="text/javascript" src="//www.seeso.cc/dplayerp2p/hls.min.js"></script>
<script type="text/javascript" src="//www.seeso.cc/dplayerp2p/flv.min.js"></script>
<script type="text/javascript" src="//www.seeso.cc/dplayerp2p/DPlayer.min.js"></script>
<script type="text/javascript" src="//www.seeso.cc/dplayerp2p/jquery.min.js"></script>
<script type="text/javascript" src="//www.seeso.cc/dplayerp2p/p2p.js"></script>
<script>
var webdata = {
set:function(key,val){
window.sessionStorage.setItem(key,val);
},
get:function(key){
return window.sessionStorage.getItem(key);
},
del:function(key){
window.sessionStorage.removeItem(key);
},
clear:function(key){
window.sessionStorage.clear();
}
};
var dp = new DPlayer({
autoplay: true,
container: document.getElementById('dplayer'),
video: {
url: parent.MacPlayer.PlayUrl,
type: 'hls',
pic: 'https://www.seeso.cc/webp2p/loading_wap.jpg',
},
volume: 1.0,
preload: 'auto',
screenshot: true,
theme: '#28FF28',
hlsjsConfig: {
p2pConfig: {
logLevel: true,
live: false,
announce: "https://tracker.cdnbye.com:8090/v1",
}
}
});
dp.seek(webdata.get('pay'+parent.MacPlayer.PlayUrl));
setInterval(function(){
webdata.set('pay'+parent.MacPlayer.PlayUrl,dp.video.currentTime);
},1000);
var _peerId = '', _peerNum = 0, _totalP2PDownloaded = 0, _totalP2PUploaded = 0;
dp.on('stats', function (stats) {
_totalP2PDownloaded = stats.totalP2PDownloaded;
_totalP2PUploaded = stats.totalP2PUploaded;
updateStats();
});
dp.on('peerId', function (peerId) {
_peerId = peerId;
});
dp.on('peers', function (peers) {
_peerNum = peers.length;
updateStats();
});
dp.on('ended', function () {
if(parent.MacPlayer.PlayLinkNext!=''){
top.location.href = parent.MacPlayer.PlayLinkNext;
}
});
function updateStats() {
var text = 'P2P已开启 共享' + (_totalP2PUploaded/1024).toFixed(2) + 'MB' + ' 已加速' + (_totalP2PDownloaded/1024).toFixed(2)
+ 'MB' + ' 此片有 ' + _peerNum + ' 位影迷正在观看';
document.getElementById('stats').innerText = text
}
</script>
<span style="display: none;">
<script src="https://s19.cnzz.com/z_stat.php?id=1275012176&web_id=1275012176" language="JavaScript"></script>
</span>
</body>
</html>三、功能核心原理说明
1. 播放记忆功能
通过本地 sessionStorage 实时每秒记录视频播放进度,再次打开对应视频链接时,播放器自动跳转至上次退出的播放位置,实现无缝续看效果。
2. P2P视频加速功能
接入公共P2P节点服务地址 https://tracker.cdnbye.com:8090/v1,开启点对点分发加速。页面实时展示P2P共享流量、加速流量、在线观影节点人数,有效降低服务器带宽消耗,提升视频加载速度。
3. 自动下集功能
监听视频播放结束事件,读取系统自带下一集链接参数,视频播放完毕后自动跳转下一剧集,实现连续观影体验。
四、部署操作步骤
1. 进入苹果CMS V10程序根目录,打开 static/player 文件夹;
2. 找到目录内 dplayer.html 文件,清空原有全部代码;
3. 复制上方完整代码粘贴保存,清空浏览器缓存刷新站点即可生效。
五、部署注意事项
方案全程使用远程官方JS、CSS资源,无需本地部署脚本,自动同步最新版本,兼容性更好。代码自带右键禁止、选中禁止功能,简单保护视频资源。播放器默认主题色为绿色,可自行修改代码中 theme 参数值自定义配色。
