zoukankan      html  css  js  c++  java
  • 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服务器传输给播放器。

  • 相关阅读:
    dedecms 权重排序问题
    HTML5学习笔记简明版(1):HTML5介绍与语法
    通过jquery 获取文本框的聚焦和失焦方法
    14种网页图片和文字特效的jQuery插件代码
    input文本框实现宽度自适应代码实例,input文本框
    html5,html5教程
    css的#和.的区别
    css style与class之间的区别,cssclass
    网页点击按钮弹出遮罩层,拖动和关闭效果
    基于CSS+dIV的网页层,点击后隐藏或显示
  • 原文地址:https://www.cnblogs.com/lidabo/p/7418523.html
Copyright © 2011-2022 走看看