srs(simple-rtmp-server) written in go.
SRS(simple-rtmp-server) written by go language.
SRS主要是RTMP源站,外加HLS和转码,单线程(通过转码消耗系统能力)。
GO.SRS主要是流服务器,包括源站和边缘,支持RTMP/RTMPT/RTMPE/RTMPS/HLS/DASH/RTMFP/RTSP等,支持多线程。
如下图所示:
Step 1:下载GO
https://code.google.com/p/go/downloads/list
Step 2:解压GO
from https://github.com/huhaibo/go.srs
SRS(simple-rtmp-server) written by go language.
产品定位
GO.SRS和SRS的定位不太一样,可以互补。SRS主要是RTMP源站,外加HLS和转码,单线程(通过转码消耗系统能力)。
GO.SRS主要是流服务器,包括源站和边缘,支持RTMP/RTMPT/RTMPE/RTMPS/HLS/DASH/RTMFP/RTSP等,支持多线程。
如下图所示:
+---------------------------+ +------------------------------+ | GO.SRS(流服务器) +-->-+ SRS转码/Chnvideo编转码集群 | | (IPv4/IPv6/TCP/UDP) | +------------------------------+ | (源站/边缘/单线程/多线程) | | (RTMP/RTMPE/RTMPT/RTMPS) | +------------------------------+ | (HTTP/HLS/HDS/DASH) |-->-+ Chnvideo收录/时移/播放器 | | (RTSP,RTMFP) | +------------------------------+ +---------------------------+ IPv4/IPv6: 同时支持IPv4/IPv6。 TCP:支持基于TCP的协议,譬如RTMP和HTTP系列。 UDP:支持基于UDP的协议,譬如RTMFP等。 源站和边缘:支持集群,譬如RTMP系列的源站和边缘,HTTP只需要支持源站(边缘用NGINX等成熟方案)。 RTMP系列:流服务器的基础协议。 RTSP系列:支持RTSP流协议,支持一些摄像头。 RTMFP:Adobe的FlashP2P方案。 SRS转码:SRS可以用ffmpeg转码,为转码的开源方案。 Chnvideo:商业方案
GO开发环境
参考http://golang.org/doc/installStep 1:下载GO
https://code.google.com/p/go/downloads/list
Step 2:解压GO
tar xf go1.2.linux-amd64.tar.gz sudo ln -sf `pwd`/go /usr/local/goStep 3:设置环境变量
export GOROOT=/usr/local/go export PATH=$PATH:$GOROOT/bin注意:所有环境变量的设置可以编辑/etc/profile
编译方法(Build)
Step 1: set GOPATH if not setexport GOPATH=~/mygoStep 2: get and build srs
go get github.com/winlinvip/go.srs/go_srsStep 3: start SRS
$GOPATH/bin/go_srs注意:编译出来的go_srs不依赖于GO开发环境,可以独立部署。
from https://github.com/huhaibo/go.srs
No comments:
Post a Comment