The go-oryx is SRS++, focus on real-time live streaming cluster.
For linux/unix-like os:
go get github.com/ossrs/go-oryx &&
cd $GOPATH/src/github.com/ossrs/go-oryx &&
$GOPATH/bin/go-oryx -c conf/oryx.json
Or, for windows:
go get github.com/ossrs/go-oryx &&
cd %GOPATH%\src\github.com\ossrs\go-oryx &&
%GOPATH%\bin\go-oryx.exe -c conf\oryx.json
About how to build and run at current directory:
cd $GOPATH/src/github.com/ossrs/go-oryx &&
go build . && ./go-oryx -c conf/oryx.json
About how to set $GOPATH, read prepare go.
GO SDK: download
JetBrains IntelliJ IDEA: download
IntelliJ IDEA Golang Plugin: repository, download
Why rewrite the SRS to go-oryx:
- Coroutine Or Goroutine: SRS base on ST, it’s more important than c/c++ language for streaming server; while golang support goroutine, which is actually what ST do.
- Multiple Processes: SRS is single process. It’s too weak for modern server with 16 or 64 CPUs and 2 or 4 10Gbps network. Multiple cpus and network interfaces requires multiple processes server.
- New Arch: New arch for HTTP/RTMP/FLV/HLS/RTSP or other protocol, it’s better to support many protocol especially private protocol, which will provides realtime streaming.
- v0.1.0 Supports Multiple Processes.
- v0.1.0 Supports Linux, Unix-like and Windows.
- v0.1.1 Supports JSON style config file.
- v0.1.2 Supports Reload config file.
- v0.1.3 Standard godoc, gofmt, gotest and TravisCI.
- v0.1.4 Support daemon over ossrs/go-daemon(fork from sevlyar/go-daemon).
- v0.1.5 Extend JSON with c++ style comments.
- v0.1.6 Support heartbeat to report for ARM.
- v0.1.7 Use agent(source+channel+sink) to build complex stream river.
- v0.1.8 Supports Publish and Play VP6 RTMP stream.
- v0.1.9 Supports Delivery VP6/H.264 and Speex/AAC/MP3/Nellymoser codec.
- v0.1.10 Supports 10k(8CPUs) for RTMP players.
- v0.1.11 Supports 10k(4CPUs) for RTMP players.
- v0.1.12 Supports 10k(3CPUs) for RTMP players.
- v0.1.13 Supports 10k(2CPUs) for RTMP players.
- v0.1.14 Supports SRS style config file.
- [dev] Supports gop-cache and drop frame strategy.
- [dev] Supports Connection Oriented Traceable log.
Winlin 2015.10