6个P2P流媒体开源项目介绍
P2P流媒体开源项目介绍
1. PeerCast
2002年成立,最早的开源P2P流媒体项目。PeerCast把节点按树结构组织起来, 每个频道都是一个树, 直播源是根节点,父节点只给子节点提供数据。节点离根节点越远,传输时延就越大,所以树的深度应该尽可能短,但节点有限的上行带宽限制了节点的宽度。
2. Tribler
2008年开始的项目,既能实现BT下载,还能播放视频的点播和直播。最大的特点是完全去中心化的设计,把传统的Tracker Server的工作分散了每个节点中去。开发语言是Python。
3. GoalBit
2008年开始。GoalbitSolution公司推出的开源P2P流媒体直播系统。采用网状结构,节点间传输采用TCP协议(基于UPNP)。
把节点划分为以下三种:
- 广播节点:只提供数据给超级节点
- 超级节点:负责把数据分发给普通节点
-
4. PeerStreamer
2009年开始。是欧洲NAPA WINE P2P-TV项目的开源流媒体引擎。 支持视频的点播和直播。有高效的P2P算法, 对网络的适应性好, 针对不同网络情况都能实现较好的播放效果。当然,代码比较庞大和复杂。主要特点如下:
- 支持几乎所有媒体格式
- 可配置的组块算法
- 可配置的网络拓扑结构
- 支持多种流媒体协议(推模式/拉模式/协商)
- 可配置的数据块/节点策略
- 可配置的数据块/节点策略
- 支持ALTO(应用层流量优化)
5.
2007年开始。 是Mysee公司曾经开源过的P2P流媒体项目。设计目标是支持大规模并发的视频直播系统。采用ACE+wxWidget的跨平台开发组件。节点间传输采用TCP协议(不支持双内网传输)。 子系统包括以下几个部分:
- Capture Server: 获取直播流。可以从Windows Media Server, Helix Server获取节目流。支持mmsh,mmst, rtsp
- Super Peer: 接收Capture Server传输来的流,作为P2P网络的源节点,为Client提供数据。
- Tracker Server: 为Client提供请求数据所在的Super Peer地址及相关的所有Client节点信息。
-
6. P2Pcenter
2008年一个国内团队发起的开源项目。支持各种格式的视频点播。节点间传输采用UDP,能有效穿越防火墙。用C++开发。架构相对简单,P2P系统分以下三部分:
- Tracker Server:
负责维护频道信息,以及节点转发,以及节点传输状态监控等工作。
- OrderClient节目发布客户端:
发布本地视频信息, 把视频内容通过P2P网络分发到其他观看客户端。
- P2PService 接收客户端:
在本地构建了http服务器, 当第三方播放器(vlc, realplayer等)发起播放请求时, 通过p2p网络获取播放数据, 由http服务器传输给播放器。
6个P2P流媒体开源项目介绍相关推荐
- 几种P2P流媒体开源项目介绍
P2P流媒体开源项目介绍 1. PeerCast 2002年成立,最早的开源P2P流媒体项目.PeerCast把节点按树结构组织起来, 每个频道都是一个树, 直播源是根节点,父节点只给子节点提供数据. ...
- P2P流媒体开源项目介绍
P2P流媒体开源项目介绍 1. PeerCast 2002年成立,最早的开源P2P流媒体项目.PeerCast把节点按树结构组织起来, 每个频道都是一个树, 直播源是根节点,父节点只给子节点提供数据. ...
- 【P2P】【转载】P2P流媒体开源项目介绍
大神的整理 P2P流媒体开源项目介绍 前言: 最近在做一个网站,发现p2p流媒体技术对于解决高流量高带宽问题真的很不错. 据说现在一些视频和直播公司在研究p2p+cdn,证明了p2p永不过时. 先记录 ...
- P2P流媒体开源项目汇总与简述
1. PeerCast项目 2002年成立,最早的开源P2P流媒体项目.PeerCast把节点按树结构组织起来,每个频道都是一颗树,直播源是根节点,父节点只给子节点提供数据.节点离根节点越远,传输时延 ...
- 揭开webRTC媒体服务器的神秘面纱——WebRTC媒体服务器开源项目介绍
揭开webRTC媒体服务器的神秘面纱--WebRTC媒体服务器&开源项目介绍 WebRTC生态系统是非常庞大的.当我第一次尝试理解WebRTC时,网络资源之多让人难以置信.本文针对webRTC ...
- windows下nodejs express安装及入门网站,视频资料,开源项目介绍
windows下nodejs express安装及入门网站,视频资料,开源项目介绍,pm2,supervisor,npm,Pomelo,Grunt安装使用注意事项等总结 第一步:下载安装文件 下载地址 ...
- php html小项目,使用PHP把HTML生成PDF文件的几个开源项目介绍
这篇文章主要介绍了使用PHP把HTML生成PDF文件的几个开源项目介绍,本文罗列了FPDF.DomPDF.TCPDF等项目的特点,需要的朋友可以参考下 利用PHP编码生成PDF文件是一个非常耗时的工作 ...
- imageJ二次开发之旅 – imageJ开源项目介绍
imageJ二次开发之旅 – imageJ开源项目介绍 imageJ起源: imageJ项目最初是由NIH(NationalInstitutes of Health,美国国家卫生研究院)在1997发起 ...
- 优秀的 Verilog/FPGA开源项目介绍(七)- CAN通信
优秀的 Verilog/FPGA开源项目介绍(七)- CAN 0.CAN总线介绍 <[科普]CAN总线介绍及FPGA实现方案简介> 1.CAN权威文档 CAN总线有两个ISO国际标准:IS ...
最新文章
- 使用Python,OpenCV进行涂鸦(绘制文字、线、圆、矩形、椭圆、多边形轮廓、多边形填充、箭头~)
- 【数字信号处理】傅里叶变换性质 ( 序列傅里叶变换共轭对称性质 | x(n) 分解为实部序列与虚部序列 | 实部傅里叶变换 | 虚部傅里叶变换 | 共轭对称傅里叶变换 | 共轭反对称傅里叶变换 )
- CTFshow 反序列化 web270
- 5.2 matlab多项式计算(多项式的四则运算、求导、求值、求根)
- cbc cryptojs 前后端_前端CryptoJS AES/DES加解密与后端PHP AES/DES加解密
- (LeetCode 141/142)Linked List Cycle
- the title and note has maintained the same text type
- 让你的div可拖动(手机端)
- 用计算机求函数公式,计算机常用的函数公式有哪些?
- android+动画完成后不可点击,动画后,TranslateAnimated ImageView无法点击[Android]
- 1.1 版本控管与Git
- 了解SQL Server数据管理生命周期
- 安装CCS时提示路径中含有非法字符
- 响应式电脑修理公司织梦网站模板,DedeCMS自适应手机版蓝色HTML5电脑修理维修店网站源码下载
- 图片转excel方法
- 远程桌面无法复制粘贴传输文件解决办法
- SVG_37_六一儿童节快乐-路径移动-火焰文字
- hadoopsnappy解压_Hadoop安装配置snappy压缩
- 人人都道RAZ好,我读了400多本之后,才明白哪里好
- Visual Studio Code修改HTML Snippets插件中默认模板内容