非CDNBYE p2p加速服务,同一个资源观看人越多效果越好,加速视频播放服务
以下是一个完整的视频解析页面的DEMO,保存为:m3u8.php 即可,使用方式为http(s)://您的网址/m3u8.php?url=xxxxx.m3u8,当然了,m3u8的地址需要写入h5跨域头,代码如下,细节请自行修改 :
<script src="https://api.xct.pw/p2p.js"></script> <script src="https://api.xct.pw/dplayer.js"></script> <link rel="stylesheet" > <script> var hlsjsConfig = { debug: false, maxBufferHole: 3, p2pConfig: { logLevel: 'warn', announce: "https://tracker.xct.pw", wsSignalerAddr: 'wss://signal.xct.pw', } }; var hls; var dp = new DPlayer({ container: document.getElementById('dplayer'), autoplay:true, loop:true, screenshot:true, hotkey:true, preload:'auto', video: { url: '<?php echo($_REQUEST['url']);?>', type: 'customHls', customType: { 'customHls': function (video, player) { var isMobile = navigator.userAgent.match(/iPad|iPhone|Linux|Android|iPod/i) != null; if (isMobile) { var html = '<video src="'+video.src+'" controls="controls" autoplay="autoplay" width="100%" height="100%"></video>'; document.getElementById('dplayer').innerHTML = html; }else{ hls = new Hls(hlsjsConfig); hls.loadSource(video.src); hls.attachMedia(video); hls.engine.on('stats', function (data) { var size = hls.engine.fetcher.totalP2PDownloaded; hls.engine.fetcher.totalP2PDownloaded=0; if(size>0){ hls.engine.signaler.signalerWs.send({action:'stat',size:size}); } }) } } } } }); </script>