• 大神的整理

P2P流媒体开源项目介绍

前言:
最近在做一个网站,发现p2p流媒体技术对于解决高流量高带宽问题真的很不错。
据说现在一些视频和直播公司在研究p2p+cdn,证明了p2p永不过时。
先记录先来,有时间慢慢研究

PeerCast

2002年成立,最早的开源P2P流媒体项目。PeerCast把节点按树结构组织起来, 每个频道都是一个树, 直播源是根节点,父节点只给子节点提供数据。节点离根节点越远,传输时延就越大,所以树的深度应该尽可能短,但节点有限的上行带宽限制了节点的宽度。

Tribler

2008年开始的项目,既能实现BT下载,还能播放视频的点播和直播。最大的特点是完全去中心化的设计,把传统的Tracker Server的工作分散了每个节点中去。开发语言是Python。

GoalBit

2008年开始。GoalbitSolution公司推出的开源P2P流媒体直播系统。采用网状结构,节点间传输采用TCP协议(基于UPNP)。
把节点划分为以下三种:
广播节点:只提供数据给超级节点
超级节点:负责把数据分发给普通节点
普通节点: 从P2P网络下载和上传数据

PeerStreamer

2009年开始。是欧洲NAPA WINE P2P-TV项目的开源流媒体引擎。 支持视频的点播和直播。有高效的P2P算法, 对网络的适应性好, 针对不同网络情况都能实现较好的播放效果。当然,代码比较庞大和复杂。主要特点如下:
支持几乎所有媒体格式
可配置的组块算法
可配置的网络拓扑结构
支持多种流媒体协议(推模式/拉模式/协商)
可配置的数据块/节点策略
可配置的数据块/节点策略
支持ALTO(应用层流量优化)

Myseelite

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节点信息。
Client: 从Super Peer和其他Client节点获取直播流。然后提供给GUI播放

P2Pcenter

2008年一个国内团队发起的开源项目。支持各种格式的视频点播。节点间传输采用UDP,能有效穿越防火墙。用C++开发。架构相对简单,P2P系统分以下三部分:
Tracker Server:
负责维护频道信息,以及节点转发,以及节点传输状态监控等工作。
OrderClient节目发布客户端:
发布本地视频信息, 把视频内容通过P2P网络分发到其他观看客户端。
P2PService 接收客户端:
在本地构建了http服务器, 当第三方播放器(vlc, realplayer等)发起播放请求时, 通过p2p网络获取播放数据, 由http服务器传输给播放器。

【P2P】【转载】P2P流媒体开源项目介绍相关推荐

  1. 几种P2P流媒体开源项目介绍

    P2P流媒体开源项目介绍 1. PeerCast 2002年成立,最早的开源P2P流媒体项目.PeerCast把节点按树结构组织起来, 每个频道都是一个树, 直播源是根节点,父节点只给子节点提供数据. ...

  2. P2P流媒体开源项目介绍

    P2P流媒体开源项目介绍 1. PeerCast 2002年成立,最早的开源P2P流媒体项目.PeerCast把节点按树结构组织起来, 每个频道都是一个树, 直播源是根节点,父节点只给子节点提供数据. ...

  3. 6个P2P流媒体开源项目介绍

    P2P流媒体开源项目介绍  1. PeerCast 2002年成立,最早的开源P2P流媒体项目.PeerCast把节点按树结构组织起来, 每个频道都是一个树, 直播源是根节点,父节点只给子节点提供数据 ...

  4. 揭开webRTC媒体服务器的神秘面纱——WebRTC媒体服务器开源项目介绍

    揭开webRTC媒体服务器的神秘面纱--WebRTC媒体服务器&开源项目介绍 WebRTC生态系统是非常庞大的.当我第一次尝试理解WebRTC时,网络资源之多让人难以置信.本文针对webRTC ...

  5. windows下nodejs express安装及入门网站,视频资料,开源项目介绍

    windows下nodejs express安装及入门网站,视频资料,开源项目介绍,pm2,supervisor,npm,Pomelo,Grunt安装使用注意事项等总结 第一步:下载安装文件 下载地址 ...

  6. php html小项目,使用PHP把HTML生成PDF文件的几个开源项目介绍

    这篇文章主要介绍了使用PHP把HTML生成PDF文件的几个开源项目介绍,本文罗列了FPDF.DomPDF.TCPDF等项目的特点,需要的朋友可以参考下 利用PHP编码生成PDF文件是一个非常耗时的工作 ...

  7. imageJ二次开发之旅 – imageJ开源项目介绍

    imageJ二次开发之旅 – imageJ开源项目介绍 imageJ起源: imageJ项目最初是由NIH(NationalInstitutes of Health,美国国家卫生研究院)在1997发起 ...

  8. 优秀的 Verilog/FPGA开源项目介绍(七)- CAN通信

    优秀的 Verilog/FPGA开源项目介绍(七)- CAN 0.CAN总线介绍 <[科普]CAN总线介绍及FPGA实现方案简介> 1.CAN权威文档 CAN总线有两个ISO国际标准:IS ...

  9. 优秀的 Verilog/FPGA开源项目介绍(十二)- 玩FPGA不乏味

    优秀的 Verilog/FPGA开源项目介绍(十二)- 玩FPGA不乏味 Hello,大家好,之前给大家分享了大约一百多个关于FPGA的开源项目,涉及PCIe.网络.RISC-V.视频编码等等,这次给 ...

最新文章

  1. 利用流水线改进代码中的if处理流程
  2. PHP正则表达式入门教程[转]
  3. Gil Zilberfeld问答:敏捷产品的规划与管理
  4. OpenCv:Mat矩阵的初始化
  5. mysql5.7 修改密码
  6. LPTHW 笨方法学习python 16章
  7. python模块_python模块
  8. java接收post文件_java – 如何发送POST请求并获取文件响应?
  9. 深入理解BFC和Margin Collapse
  10. win10怎么弄c语言,win10系统下搭建C语言开发环境方法步骤
  11. 2022考研数二解答题规范给分(17,18,19,22)
  12. opencv:基于凹点匹配的重叠分割
  13. 程序员加油站 -- 懂电脑更要懂人脑!继“书呆子”后又一呆子现世!
  14. 大学的计算机证书,大学必拿的几个证书是什么?
  15. Kafka扩分区和分区副本重分配之后消费组会自动均衡吗?
  16. 小乌龟html5小游戏,晨会互动小游戏之《抓乌龟》
  17. 2012淘宝关键字优化淘宝关键字SEO优化助手|淘宝关键字SEO优化
  18. DDoS 保护、缓解和防御:8 个基本技巧
  19. 云之梦php免费教学视频下载_2017年8月云知梦php入门到精通全栈开发全套教程+laravel商城...
  20. 7-12 珍珠项链 (10 分)

热门文章

  1. CC2530学习(一)CC2530微控制器介绍
  2. 说说 Redis pipeline
  3. SMBLoris windows拒绝服务漏洞
  4. Dijkstra算法总结
  5. type接口和class的区别(类型和类)
  6. 2020-12-17
  7. 泛娱乐 | 2020人才市场洞察及薪酬指南
  8. 算法刷题重温(九): 排序算法来啦
  9. Android优化篇之APK体积优化
  10. css 如何控制文字换行、省略