1 Star 1 Fork 58

haigege204 / hlsjs-p2p-engine

forked from cdnbye / hlsjs-p2p-engine 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

English | 简体中文

cdnbye logo

Save Your Bandwidth using WebRTC.

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

npm jsdelivr

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技术。

该插件的优势如下:

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

演示Demo

打开2个相同的网页:demo

浏览器支持情况

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

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

使用方法

参考文档

播放器集成

支持几乎所有主流播放器,请点击这里

API文档

参见 API.md

后台管理系统

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

相关项目

FAQ

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

联系我们

邮箱:service@cdnbye.com QQ:849433499

空文件

简介

本项目的目标是开发一个hls.js的插件,通过WebRTC datachannel技术,在不影响用户体验的前提下,最大化p2p率,从而为CP节省流量成本。QQ群:746163014 展开 收起
JavaScript
取消

发行版

暂无发行版

贡献者

全部

近期动态

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

搜索帮助