go-oryx-lib
go-oryx-lib copied to clipboard
The public multiple media library for https://github.com/ossrs/go-oryx.
go-oryx-lib
This library is exported by server go-oryx.
Requires
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
, useerrors
instead.
Other multiple media libraries in golang:
- [x] go-speex: A go binding for speex.
- [x] go-fdkaac: A go binding for fdk-aac.
- [x] go-aresample: Resample the audio PCM.
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:
- go-oryx-lib uses MIT License.
- pkg/errors uses BSD 2-clause "Simplified" License.
- acme uses MIT License.
- jose uses Apache License 2.0.
- letsencrypt uses BSD 3-clause "New" or "Revised" License.
- websocket uses BSD 2-clause "Simplified" License.
Winlin 2016