Opus is an internet audio codec suitable for music and voice, real time and distribution. RFC 6716. https://opus-codec.org/

Jean-Marc Valin f74ab71ec9 Fixes a minor CELT->SILK switching glitch in the decoder 12 years ago
celt c73ed6481d Resolve rewhitening description issues. 12 years ago
doc a69a6f8bc4 misc updates to RFC 12 years ago
include c73ed6481d Resolve rewhitening description issues. 12 years ago
silk f74ab71ec9 Fixes a minor CELT->SILK switching glitch in the decoder 11 years ago
src aa77e946b5 Fixes an out-of-bounds read issue with the padding handling code 11 years ago
tests c73ed6481d Resolve rewhitening description issues. 12 years ago
win32 c73ed6481d Resolve rewhitening description issues. 12 years ago
.gitignore c37499090b renames the libcelt/ directory to celt/ 13 years ago
AUTHORS 108b3b4a29 Misc updates for rfc-editor 12 years ago
COPYING c73ed6481d Resolve rewhitening description issues. 12 years ago
ChangeLog 63c325acf6 Build update 14 years ago
INSTALL 4468c75adb draft update, instructions 14 years ago
LICENSE_PLEASE_READ.txt 8891068b24 Update licensing file with current IPR disclosures; remove outdated Skype text. 13 years ago
Makefile.am 108b3b4a29 Misc updates for rfc-editor 12 years ago
Makefile.draft 7f7943d015 Replaced RFCXXXX with RFC6716 12 years ago
NEWS 63c325acf6 Build update 14 years ago
README 93b277c986 Nits before sending to RFC Editor. 12 years ago
README.draft c73ed6481d Resolve rewhitening description issues. 12 years ago
autogen.sh 2852cb1486 Tell automake to put object files in subdirectories. 13 years ago
celt_headers.txt 4923f3f80e Moves the main headers from src/ to include/ 13 years ago
celt_sources.mk 7f7943d015 Replaced RFCXXXX with RFC6716 12 years ago
configure.ac c73ed6481d Resolve rewhitening description issues. 12 years ago
opus-uninstalled.pc.in c37499090b renames the libcelt/ directory to celt/ 13 years ago
opus.pc.in 9f71309abe Add pkg-config support files. 13 years ago
opus.sln c37499090b renames the libcelt/ directory to celt/ 13 years ago
opus_headers.txt 4923f3f80e Moves the main headers from src/ to include/ 13 years ago
opus_sources.mk 7f7943d015 Replaced RFCXXXX with RFC6716 12 years ago
silk_headers.txt 1c2f5633d1 Removed all the silk_ prefixes in source file names (not symbols) 13 years ago
silk_sources.mk 7f7943d015 Replaced RFCXXXX with RFC6716 12 years ago

README

To build from a distribution tarball, you only need to do the following:

% ./configure
% make

To build from the git repository, the following steps are necessary:

1) Clone the repository:

% git clone git://git.opus-codec.org/opus.git
% cd opus

1) Compiling

% ./autogen.sh
% ./configure
% make


Once you have compiled the codec, there will be a opus_demo executable in
the top directory.

Usage: opus_demo [-e]
[options]
opus_demo -d [options]


mode: voip | audio | restricted-lowdelay
options:
-e : only runs the encoder (output the bit-stream)
-d : only runs the decoder (reads the bit-stream as input)
-cbr : enable constant bitrate; default: variable bitrate
-cvbr : enable constrained variable bitrate; default: unconstrained
-bandwidth : audio bandwidth (from narrowband to fullband);
default: sampling rate
-framesize <2.5|5|10|20|40|60> : frame size in ms; default: 20
-max_payload : maximum payload size in bytes, default: 1024
-complexity : complexity, 0 (lowest) ... 10 (highest); default: 10
-inbandfec : enable SILK inband FEC
-forcemono : force mono encoding, even for stereo input
-dtx : enable SILK DTX
-loss : simulate packet loss, in percent (0-100); default: 0

input and output are little-endian signed 16-bit PCM files or opus bitstreams
with simple opus_demo proprietary framing.