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

Jean-Marc Valin 68e7ec9420 Adds padding code to fill up SILK frames to CBR %!s(int64=13) %!d(string=hai) anos
celt f7bf43b3e9 Some fixes for C89 builds. %!s(int64=13) %!d(string=hai) anos
doc bd628ab633 Use fold instead of passing a wrap length to base64. %!s(int64=13) %!d(string=hai) anos
silk f0220c2278 Making it possible for SILK to be CBR or work with a VBR ceiling %!s(int64=13) %!d(string=hai) anos
src 68e7ec9420 Adds padding code to fill up SILK frames to CBR %!s(int64=13) %!d(string=hai) anos
win32 d6335abedc Adds many syntactically unnecessary parentheses to silence GCC -Wparentheses. %!s(int64=13) %!d(string=hai) anos
.gitignore c37499090b renames the libcelt/ directory to celt/ %!s(int64=13) %!d(string=hai) anos
AUTHORS e7a2a03170 missing files %!s(int64=14) %!d(string=hai) anos
COPYING a0653ed1e7 Fixes a bunch of valgrind errors when decoding random junk %!s(int64=13) %!d(string=hai) anos
ChangeLog 63c325acf6 Build update %!s(int64=14) %!d(string=hai) anos
INSTALL 4468c75adb draft update, instructions %!s(int64=14) %!d(string=hai) anos
LICENSE_PLEASE_READ.txt 8891068b24 Update licensing file with current IPR disclosures; remove outdated Skype text. %!s(int64=13) %!d(string=hai) anos
Makefile.am c4ca21fcde Moves opus_compare to the same base64 tar.gz as the rest of the code %!s(int64=13) %!d(string=hai) anos
Makefile.draft f7bf43b3e9 Some fixes for C89 builds. %!s(int64=13) %!d(string=hai) anos
NEWS 63c325acf6 Build update %!s(int64=14) %!d(string=hai) anos
README 3bcf367898 Documentation updates. %!s(int64=13) %!d(string=hai) anos
README.draft 3269dcec2f Updated README files to reflect current output of tool and tweaked punctuation and wording. Corrected typo in test_opus ("constraint"->"constrained"). %!s(int64=13) %!d(string=hai) anos
autogen.sh 2852cb1486 Tell automake to put object files in subdirectories. %!s(int64=13) %!d(string=hai) anos
celt_headers.txt c37499090b renames the libcelt/ directory to celt/ %!s(int64=13) %!d(string=hai) anos
celt_sources.mk c37499090b renames the libcelt/ directory to celt/ %!s(int64=13) %!d(string=hai) anos
configure.ac 48069bf9bd Documentation and build script updates. %!s(int64=13) %!d(string=hai) anos
opus-uninstalled.pc.in c37499090b renames the libcelt/ directory to celt/ %!s(int64=13) %!d(string=hai) anos
opus.pc.in 9f71309abe Add pkg-config support files. %!s(int64=13) %!d(string=hai) anos
opus.sln c37499090b renames the libcelt/ directory to celt/ %!s(int64=13) %!d(string=hai) anos
opus_headers.txt d4e9340591 Adds support for multi-stream encoding/decoding %!s(int64=13) %!d(string=hai) anos
opus_sources.mk d4e9340591 Adds support for multi-stream encoding/decoding %!s(int64=13) %!d(string=hai) anos
silk_headers.txt 1c2f5633d1 Removed all the silk_ prefixes in source file names (not symbols) %!s(int64=13) %!d(string=hai) anos
silk_sources.mk 1c2f5633d1 Removed all the silk_ prefixes in source file names (not symbols) %!s(int64=13) %!d(string=hai) anos

README

This is a prototype codec and for now it has limited functionality.

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 test_opus executable in
the top directory.

Usage: test_opus [-e]
[options]
test_opus -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 16-bit PCM files (machine endian) or opus bitstreams
with simple test_opus propritary framing.