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 13 years ago
celt f7bf43b3e9 Some fixes for C89 builds. 13 years ago
doc bd628ab633 Use fold instead of passing a wrap length to base64. 13 years ago
silk f0220c2278 Making it possible for SILK to be CBR or work with a VBR ceiling 13 years ago
src 68e7ec9420 Adds padding code to fill up SILK frames to CBR 13 years ago
win32 d6335abedc Adds many syntactically unnecessary parentheses to silence GCC -Wparentheses. 13 years ago
.gitignore c37499090b renames the libcelt/ directory to celt/ 13 years ago
AUTHORS e7a2a03170 missing files 14 years ago
COPYING a0653ed1e7 Fixes a bunch of valgrind errors when decoding random junk 13 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 c4ca21fcde Moves opus_compare to the same base64 tar.gz as the rest of the code 13 years ago
Makefile.draft f7bf43b3e9 Some fixes for C89 builds. 13 years ago
NEWS 63c325acf6 Build update 14 years ago
README 3bcf367898 Documentation updates. 13 years ago
README.draft 3269dcec2f Updated README files to reflect current output of tool and tweaked punctuation and wording. Corrected typo in test_opus ("constraint"->"constrained"). 13 years ago
autogen.sh 2852cb1486 Tell automake to put object files in subdirectories. 13 years ago
celt_headers.txt c37499090b renames the libcelt/ directory to celt/ 13 years ago
celt_sources.mk c37499090b renames the libcelt/ directory to celt/ 13 years ago
configure.ac 48069bf9bd Documentation and build script updates. 13 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 d4e9340591 Adds support for multi-stream encoding/decoding 13 years ago
opus_sources.mk d4e9340591 Adds support for multi-stream encoding/decoding 13 years ago
silk_headers.txt 1c2f5633d1 Removed all the silk_ prefixes in source file names (not symbols) 13 years ago
silk_sources.mk 1c2f5633d1 Removed all the silk_ prefixes in source file names (not symbols) 13 years ago

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.