现在有很多人架设视频网站,要缓解视频网站服务器带宽的压力,最好的办法是使用p2p的方式。从头写一个p2p系统,要花费太多功夫,不如直接用第三方开发包。本文介绍开源的p2p直播系统PPeasy,并给出一些有用信息。
PPeasy是免费的P2P传输开发包(SDK),实现RTMP协议直播流的P2P传输。节点间传输采用UDP,能有效进行内网穿透。用C++开发,架构相对简单。P2P系统分以下三部分:
- P2P Signal Server:
负责维护Rtmp直播频道,节点分组,以及节点传输状态监控等工作。
- P2P Proxy Service:
在本地构建了rtmp服务器, 当第三方播放器(vlc, realplayer等)发起播放请求时, 通过p2p网络获取播放数据, 由该rtmp服务器传输给播放器。
- 内网(UDP)穿透组件
通过Signal Server获取对等节点信息,在用户节点间自动交换视频流数据,通过Proxy Service传输给播放器。
项目地址: https://github.com/SeaHaige/ppeasy