1 Star 0 Fork 58

小迷彩 / hlsjs-p2p-engine

forked from cdnbye / hlsjs-p2p-engine 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

English | 简体中文

cdnbye logo

Save Your Bandwidth using WebRTC.

视频网站省流量&加速神器.

npm jsdelivr License

P2P技术使观看相同内容的用户之间可以相互分享数据,不仅能效降低视频/直播网站的带宽成本,还可以提升用户的播放体验,降低卡顿、二次缓存的发生率。 另外,随着H5的普及,flash逐渐被淘汰已成为不可逆转的趋势。而在H5采用的视频传输格式中,hls由于兼容ios和android、可以穿过任何允许HTTP数据通过的防火墙、容易使用内容分发网络来传输媒体流和码率自适应等众多优势而在业界得到广泛使用。通过使用hls.js这个第三方库,几乎所有现代浏览器都可以播放hls视频。hls天生分片传输的优势,使其可以采用p2p的方式进行传输,从而减小服务器的负担。在web端,无插件化实现p2p传输能力的最好选择就是WebRTC技术,与hls.js类似,WebRTC也支持几乎所有现代浏览器。本项目是一个hls.js的插件,通过WebRTC datachannel技术,在不影响用户体验的前提下,最大化p2p率,是面向未来的Web P2P技术。
想知道P2P效果如何吗,登录后台管理系统并绑定域名就可以查看啦!

该插件的优势如下:

  • 浏览器原生支持,不需要安装任何插件,采用仿BT算法,在线人数越多效果越好
  • 支持基于HLS流媒体协议(m3u8)的直播和点播场景
  • 支持加密HLS传输
  • 不改动hls.js源码,并且可以与其无缝衔接,几行代码集成,便于在现有项目中快速集成
  • 浏览器不支持WebRTC时无缝切换到HTTP下载模式
  • 高可配置化,用户可以根据特定的使用环境调整各个参数
  • 支持video.js、Clappr、Flowplayer、DPlayer等第三方播放器
  • 通过有效的调度策略来保证用户的播放体验以及p2p率
  • Tracker服务器根据访问IP的ISP、地域等进行智能调度
  • API已经固化,新版本完全兼容旧版本代码

演示Demo

打开2个相同的网页:demo

快速入门

快速入门Demo

quick-start.html拷贝到您的网页中并运行。再打开另一个相同的网页。见证奇迹的时候到了!您已在两个网页之间建立了一个P2P连接,在不安装任何插件的情况下。如果在这个频道中(一个m3u8标识了一个频道)没有其它参与者,那么您打开的第一个网页将作为种子为第二个网页提供数据。

在现有的hls.js项目中集成

只需要将原有的引入hls.js的script标签如:

<script src="https://cdn.jsdelivr.net/npm/hls.js@latest"></script>

替换为

<script src="https://cdn.jsdelivr.net/npm/cdnbye@latest"></script>

就是这么简单!

集成到第三方HTML5播放器

参考demos

浏览器支持情况

由于WebRTC已成为HTML5标准,目前大部分主流浏览器都已经支持。CDNBye的浏览器兼容性取决于WebRTC和hls.js。需要注意的是iOS版Safari由于不支持MediaSource API,因此也不支持hls.js(不过Safari原生支持HLS播放)。

兼容性 Chrome Firefox macOS Safari 安卓微信/QQ Opera IE Edge iOS Safari
WebRTC Datachannel
Hls.js
CDNBye

集成

通过script标签引入已经和hls.js打包的最新版本(推荐):

<script src="https://cdn.jsdelivr.net/npm/cdnbye@latest"></script>

或者引入没有与hls.js打包的独立版本:

<script src="https://cdn.jsdelivr.net/npm/cdnbye@latest/dist/hlsjs-p2p-engine.min.js"></script>

使用方法

参考文档

播放器集成

API文档

参见 API.md

后台管理系统

在接入P2P插件后,访问https://oms.cdnbye.com,注册并绑定域名,即可查看该域名的P2P流量、在线人数、用户地理分布等信息。

相关项目

客户案例

FAQ

我们收集了一些常见问题。在报告issue之前请先查看一下。

联系我们

邮箱:service@cdnbye.com

MIT License Copyright (c) 2018 cdnbye Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

视频加速插件,通过WebRTC datachannel技术,在不影响用户体验的前提下,最大化p2p率,从而为CP节省流量成本。QQ群:746163014 展开 收起
JavaScript
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
JavaScript
1
https://gitee.com/ydg/hlsjs-p2p-engine.git
git@gitee.com:ydg/hlsjs-p2p-engine.git
ydg
hlsjs-p2p-engine
hlsjs-p2p-engine
master

搜索帮助