Pure Go implementation of Opus. Fork of https://github.com/pion/opus
Go to file
2022-10-04 10:43:29 +02:00
examples Support decoding into Float 2022-10-04 10:43:29 +02:00
internal Implement bitdepth conversion and upsampling 2022-09-30 21:56:49 -06:00
pkg/oggreader Upgrade oggreader to be segment aware 2022-09-20 22:29:27 -04:00
decoder.go Support decoding into Float 2022-10-04 10:43:29 +02:00
errors.go Only support CELT for now 2022-06-12 16:02:47 -04:00
go.mod Initial commit 2022-06-02 19:14:23 -04:00
README.md Add blogpost to README 2022-10-03 00:03:54 -04:00
table_of_contents_header.go Continue work on Silk decoder 2022-07-16 00:31:59 -04:00


Opus

Pure Go implementation of the Opus Codec

Opus Slack Widget
GoDoc Coverage Status Go Report Card License: MIT


This package provides a Pure Go implementation of the Opus Codec

Why Opus?

  • open and royalty-free - No license fees or restrictions. Use it as you wish!
  • versatile - Wide bitrate support. Can be used in constrained networks and high quality stereo.
  • ubiquitous - Used in video streaming, gaming, storing music and video conferencing.

Why a Go implementation?

  • empower interesting use cases - This project also exports the internals of the Encoder and Decoder. Allowing for things like analysis of a Opus bitstream without decoding the entire thing.
  • learning - This project was written to be read by others. It includes excerpts and links to RFC 6716
  • safety - Go provides memory safety. Avoids a class of bugs that are devastating in sensitive environments.
  • maintainability - Go was designed to build simple, reliable, and efficient software.
  • inspire - Go is a power language, but lacking in media libraries. We hope this project inspires the next generation to build
  •           more media libraries for Go.
    

You can read more here

Running

See our examples for demonstrations of how to use this package.

Get Involved!

We would love to have you involved! This project needs a lot of help before it can be useful to everyone. See the Roadmap for open issues and join us on Slack

Roadmap

See Issue 9