Skip to content

QilongZhang/go-oryx

 
 

Repository files navigation

go-oryx

GoDoc [![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/ossrs/go-oryx?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)

The go-oryx is SRS++, focus on real-time live streaming cluster.

Usage

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.

IDE

GO SDK: download

JetBrains IntelliJ IDEA: download

IntelliJ IDEA Golang Plugin: repository, download

SRS vs go-oryx

Why rewrite the SRS to go-oryx:

  1. 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.
  2. 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.
  3. 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.

Features

  1. v0.1.0 Supports Multiple Processes.
  2. v0.1.0 Supports Linux, Unix-like and Windows.
  3. v0.1.1 Supports JSON style config file.
  4. v0.1.2 Supports Reload config file.
  5. v0.1.3 Standard godoc, gofmt, gotest and TravisCI.
  6. v0.1.4 Support daemon over ossrs/go-daemon(fork from sevlyar/go-daemon).
  7. v0.1.5 Extend JSON with c++ style comments.
  8. v0.1.6 Support heartbeat to report for ARM.
  9. v0.1.7 Use agent(source+channel+sink) to build complex stream river.
  10. v0.1.8 Supports Publish and Play VP6 RTMP stream.
  11. v0.1.9 Supports Delivery VP6/H.264 and Speex/AAC/MP3/Nellymoser codec.
  12. v0.1.10 Supports 10k(8CPUs) for RTMP players.
  13. v0.1.11 Supports 10k(4CPUs) for RTMP players.
  14. v0.1.12 Supports 10k(3CPUs) for RTMP players.
  15. v0.1.13 Supports 10k(2CPUs) for RTMP players.
  16. v0.1.14 Supports SRS style config file.
  17. [dev] Supports gop-cache and drop frame strategy.
  18. [dev] Supports Connection Oriented Traceable log.

Winlin 2015.10

About

The go-oryx is SRS++, focus on real-time live streaming cluster.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 100.0%