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服务器传输给播放器。

时间: 2024-10-30 09:29:51

6个P2P流媒体开源项目介绍的相关文章

P2P流媒体开源项目介绍

P2P流媒体开源项目介绍1. PeerCast 2002年成立,最早的开源P2P流媒体项目.PeerCast把节点按树结构组织起来, 每个频道都是一个树, 直播源是根节点,父节点只给子节点提供数据.节点离根节点越远,传输时延就越大,所以树的深度应该尽可能短,但节点有限的上行带宽限制了节点的宽度.   2. Tribler 2008年开始的项目,既能实现BT下载,还能播放视频的点播和直播.最大的特点是完全去中心化的设计,把传统的Tracker Server的工作分散了每个节点中去.开发语言是Pyt

N-Tier Entity Framework开源项目介绍

N-Tier Entity Framework开源项目介绍 http://www.cnblogs.com/wintersun/p/3982276.html https://visualstudiogallery.msdn.microsoft.com/09026591-96c4-4a9d-a07a-d70972294e0a?SRC=VSIDE http://www.cnblogs.com/jes_shaw/archive/2009/06/22/1508698.html http://ntieref

使用PHP把HTML生成PDF文件的几个开源项目介绍_php技巧

利用PHP编码生成PDF文件是一个非常耗时的工作.在早期,开发者使用PHP并借助FPDF来生成PDF文件.但是如今,已经有很多函数库可以使用了,并且能够从你提供的HTML文件生成PDF文档.这让原先耗时的工作变得非常简单了. FPDF是很早就被使用的,其特点如下: FPDF FPDF是一个允许使用纯PHP生成PDF文档的PHP类,换句话说,没有使用PDFlib 函数库.FPDF中的F代表免费和自由:你可以在任何情况下使用,并且支持自定义,来满足你特定的需求 特点: 1.可以选择单元.页面格式和边

Ruby微信开发的几个开源项目介绍_ruby专题

最近陆续有不少用Rails开发微信项目的朋友在Github上开始使用weixin_rails_middleware.weixin_authorize,也不少人谈到Ratchet,春节开始到现在,一直有做微信的开发,现在在论坛上发布出来,希望让更多人知道这些gem的存在,更快速的完成你们手中的任务. 1.一(两)条命令搭建Rails微信版本 按照最简洁的速度,10分钟可以跑起一个微信的项目: https://github.com/lanrion/weixin_rails_middleware 自动

视频会议及流媒体十大开源项目

在视频会议领域,有许多可以值得参考的开源项目,这些开源项目有的是协议栈.有的是编码器或者是传输协议,由于视频会议系统是一个综合性的应用系统,里面包含功能较多,如能把这些开源项目选择性的加入我们的视频会议开发当中,我们的开发效率肯定会事半功倍,下面我们列举一下视频会议相关的十大开源项目,并对其重要性及优缺点做一个全面的评价与排名. 1. OpenH323项目        () 上榜理由:最著名的H.323开源协议栈,视频会议开发必备协议栈,强烈推荐 最著名的H.323开源协议栈,包含了全部的H.

视频会议十大开源项目排行

在http://www.aliyun.com/zixun/aggregation/18237.html">视频会议领域,有许多可以值得参考的开源项目,这些开源项目有的是协议栈.有的是编码器或者是传输协议,由于视频会议系统是一个综合性的应用系统,里面包含功能较多,如能把这些开源项目选择性的加入我们的视频会议开发当中,我们的开发效率肯定会事半功倍,下面我们列举一下视频会议相关的十大开源项目,并对其重要性及优缺点做一个全面的评价与排名. 1. OpenH323项目 (★★★★★) 上榜理由:最著

WebRTC开源项目一览之二

.Kurento视频直播系统4.1  应用实例搞视频会议就会涉及一对多.多对多.广播.转码.混音.合屏.录制,这就需要用到流媒体服务器,而kurento就具有这些功能.他主要用来作为webrtc的流媒体服务器,因为BUG多,目前不适于商用,不过前景可期, 图1:说明:1.看到这里您可不要讲他的功能和ICE服务器的功能给搞混了哦,后者主要用来做NAT穿透和转发的. 4.1.1 .kurento架构图2: 说明:1.客户端对音视频数据的采集和播放等是通过webrtc来处理的,传输模块就是kurent

atlas-怎么学习正在孵化中的Apache开源项目?

问题描述 怎么学习正在孵化中的Apache开源项目? 最近需要学习一个apache的开源项目atlas,目前还在孵化中,才刚有0.7版本,但是资料特别少,不知如何学习 也看了官方的一些文档(http://atlas.apache.org/),但是特别少,很多东西说得不明不白 同时也上了 incubator.apahce.org/projects/atlas.html, 也说得不明不白的 有人说可以去开源社区,但开源社区在哪呢? 有人说可以用mail list,这个怎么用呢? 有人说在github

一个P2P点播直播开源项目:P2PCenter

最近跟着公司的项目走,我也研究了不少东西,尤其是在P2P方面,广泛涉猎各种开源项目,尤其是国外的开源项目,意外的发现了一个国内的项目,做的还不错,推荐一下.---------------------使用平台:客户端:Windows 平台服务器:Windows & Linux框架图例: 项目简介: P2P点播直播开源项目是一个由Kevin发起,多人参与开发并不断更新,符合GPL开源协议的开源项目. 项目成员: 系统架构及初期开发: 符文科(Kevin), 马军(Mark), 张威, 高成, 王亮