1. PeerCast项目

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

2. Tribler项目

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

3. GoaltBit项目

2008年开始。GoalbitSolution公司推出的开源P2P流媒体直播系统。采用网状结构,节点间传输采用TCP协议(基于UPNP)。

把节点划分成以下三种:

  1. 广播节点:只提供数据给超级节点
  2. 超级节点:负责把数据分发给普通节点
  3. 普通节点:从P2P网络下载和上传数据

4. PeerStreamer项目

2009年开始。由欧洲NAPA WINE P2P-TV项目的开源流媒体引擎。支持视频的点播与直播。有高效的P2P算法,对网络适应性好,针对不同的网络情况能实现较好的播放效果。当然代码比较庞大和复杂。主要特性点如下:

  1. 支持几乎所有流媒体格式
  2. 可配置的组块算法
  3. 可配置的网络拓扑结构
  4. 支持多种流媒体协议(推模式/拉模式/协商)
  5. 可配置的数据块/节点策略
  6. 支持ALTO(应用层流量优化)

5. Myseelite项目

2007年开始。是Mysee公司曾经开源过的P2P流媒体项目。设计目标是支持大规模并发的视频直播系统。采用ACE+wxWidget的跨平台组件。节点间传输采用TCP协议(不支持双内网传输)。子系统包括以下几个部分:

  1. Capture Server:获取直播流。可以从Windows Media Server,Helix Server获取节目流。支持mmsh、mmst、rtsp
  2. Super Peer:接收Capture Server传输来的流,作为P2P网络的源节点,为Client提供数据
  3. Tracker Serevr:为Client提供请求数据所在的Super Peer地址及相关的所有Client节点信息
  4. Client:从Super Peer和其他Client节点获取直播流。然后提供GUI播放

6. P2PCenter项目

2008年一个国内团队发起的开源项目。支持各种格式的视频点播。节点间传输采用UDP,能有效穿透防火墙。用C++开发。架构相对简单,P2P系统分为以下三个部分:

  1. Tracker Server:负责维护频道信息、节点转发、以及节点传输状态监控等工作
  2. OrderClient节点发布客户端:发布本地视屏信息,把视频内容通过P2P网络分发到其他观看客户端
  3. P2PService接收客户端:在本地构建了http服务器,当第三方播放器(vlc、realplayer等)发起播放请求时,通过P2P网络获取播放数据,由http服务器传输给播放器。

P2P流媒体开源项目汇总与简述相关推荐

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

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

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

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

  3. 【P2P】【转载】P2P流媒体开源项目介绍

    大神的整理 P2P流媒体开源项目介绍 前言: 最近在做一个网站,发现p2p流媒体技术对于解决高流量高带宽问题真的很不错. 据说现在一些视频和直播公司在研究p2p+cdn,证明了p2p永不过时. 先记录 ...

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

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

  5. Golang优秀开源项目汇总(持续更新。。。)

    Golang优秀开源项目汇总(持续更新...) 我把这个汇总放在github上了, 后面更新也会在github上更新. https://github.com/hackstoic/golang-open ...

  6. Vue.js经典开源项目汇总

    Vue.js经典开源项目汇总   Vue是什么? Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计 ...

  7. Vue常用经典开源项目汇总参考-海量

    Vue常用经典开源项目汇总参考-海量 Vue是什么? Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的 ...

  8. GitHub中已开源项目汇总

    GitHub中已开源项目汇总 QT 端软件 输入法 串口工具 AI IOT 网络协议 安卓 音频工具 嵌入式端软件 协议类 引导升级类 音频类 USB组合设备 下载算法制作 串行数据驱动框架 边缘计算 ...

  9. Android开源项目汇总20150712更新

    Trinea (github)总结的Android开源项目汇总 转此记录研究 附一些内容 目前包括: Android开源项目第一篇--个性化控件(View)篇 包括ListView.ActionBar ...

最新文章

  1. ryu的防火墙功能 ryu.app.rest_firewall,配合mininet和open vswitch(OVS)
  2. centos 安装java1.7_centOs安装jdk1.7
  3. 安卓活动(Activity)和碎片(Fragment)的生命周期
  4. 电脑c语言怎么调出来的,c语言系统源代码_C语言判断系统版本的代码怎样将值调出来啊...
  5. python3自动化软件发布系统_基于python3做C/S端自动化测试可能用到的工具(不断更新中。。。。)...
  6. 源码分析Dubbo Invoker概述----服务发现、集群、负载均衡、路由体系
  7. 工作流(activiti7)-简单的介绍和使用(二)
  8. 金蝶kis专业版公网访问_金蝶KIS远程服务器端和远程客户端配置说明
  9. 福建等保测评五流程,收藏收藏
  10. 9. Enhancing Aspect Term Extraction with Soft Prototypes论文阅读笔记
  11. 电脑技术员联盟 GhostXp Sp3 装机版V5.1
  12. SHAP 可视化解释机器学习模型简介
  13. 戴尔启动修复无法自动修复此计算机,在 Dell 计算机上运行 Windows 启动修复
  14. [Android 9][markw] 红米4高配版 刷入Lineage OS 16与OpenGApps
  15. 第七篇 indicators(4)自建指标
  16. Nexus5刷Firefox OS 2.0
  17. ab压测_上传图片进行压测
  18. Thunar文件管理器新增一个使用root权限打开当前目录或者文件夹
  19. 微软远程桌面升级到RDP8的方法
  20. java程序员语录_java程序员励志说说26条

热门文章

  1. 编码器-解码器(seq2seq)
  2. 运行错误 terminate called without an active exception
  3. 一坨咸鱼怎么更上一层楼
  4. 计算机丢失ac1st.dll怎么找回,处理CAD系统错误win10中丢失ac1st16.dll的恢复方法
  5. 《墨菲定律》读书笔记(3)
  6. 无人机的微分平坦性详细推导+Mini snap
  7. 【无标题】Deep AVPpred:人工智能驱动的病毒感染多肽药物的发现
  8. Ubuntu 16.04安装ROS Kinetic
  9. win7无法通过网页登录ftp服务器,win7不能登录ftp服务器配置
  10. H5+CSS实现三级菜单(包括水平、垂直菜单和网页架构)