go-oryx-lib icon indicating copy to clipboard operation
go-oryx-lib copied to clipboard

The public multiple media library for https://github.com/ossrs/go-oryx.

go-oryx-lib

Build Status codecov

This library is exported by server go-oryx.

Requires

GO1.4+

Packages

The library provides packages about network and multiple media processing:

  • [x] logger: Connection-Oriented logger for application server.
  • [x] json: Json+ supports c and c++ style comments.
  • [x] options: Frequently used service options with config file.
  • [x] http: For http response with error, jsonp and std reponse.
  • [x] asprocess: The associate-process, for SRS/BMS to work with external process.
  • [x] kxps: The k-some-ps, for example, kbps, krps.
  • [x] https: For https server over lego/acme of letsencrypt.
  • [x] gmoryx: A gomobile API for go-oryx-lib.
  • [x] flv: The FLV muxer and demuxer, for oryx.
  • [x] errors: Fork from pkg/errors, a complex error with message and stack, read article.
  • [x] aac: The AAC utilities to demux and mux AAC RAW data, for oryx.
  • [x] websocket: Fork from websocket.
  • [x] rtmp: The RTMP protocol stack, for oryx.
  • [x] avc: The AVC utilities to demux and mux AVC RAW data, for oryx.
  • [ ] sip: A sip RFC3261 library for WebRTC signaling.
  • [ ] turn: A turn RFC5766 library for WebRTC and SFU.

Remark: For library, please never use logger, use errors instead.

Other multiple media libraries in golang:

License

This library just depends on golang standard library, we do this by copying the code of other libraries, while all the licenses are liberal:

  1. go-oryx-lib uses MIT License.
  2. pkg/errors uses BSD 2-clause "Simplified" License.
  3. acme uses MIT License.
  4. jose uses Apache License 2.0.
  5. letsencrypt uses BSD 3-clause "New" or "Revised" License.
  6. websocket uses BSD 2-clause "Simplified" License.

Winlin 2016