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

Jean-Marc Valin ddd0528ad4 version number bump vor 13 Jahren
celt 38fc0d59bc Fix some inconsequential file descriptor leaks in the demo tools to silence cppcheck warnings. vor 13 Jahren
doc 0fd87bedcb More last-minute typos vor 13 Jahren
include c81b510239 Fix a number of multistream decoder bugs; add some very basic multistream decoder tests. vor 13 Jahren
silk a44e95abd0 SILK encoder description vor 13 Jahren
src abaa348901 Adds -random_fec option to randomly add FEC to some frames. vor 13 Jahren
tests 57db6c55d0 Test vectors update vor 13 Jahren
win32 d6335abedc Adds many syntactically unnecessary parentheses to silence GCC -Wparentheses. vor 14 Jahren
.gitignore c37499090b renames the libcelt/ directory to celt/ vor 14 Jahren
AUTHORS e7a2a03170 missing files vor 14 Jahren
COPYING ebb1cd16d7 Addressing some comments about the draft and cleaning up COPYING vor 14 Jahren
ChangeLog 63c325acf6 Build update vor 15 Jahren
INSTALL 4468c75adb draft update, instructions vor 15 Jahren
LICENSE_PLEASE_READ.txt 8891068b24 Update licensing file with current IPR disclosures; remove outdated Skype text. vor 14 Jahren
Makefile.am 9652f81eb9 Test cleanups and renaming. vor 13 Jahren
Makefile.draft 66767ee837 Clean up whitespace in the draft makefile. vor 13 Jahren
NEWS 63c325acf6 Build update vor 15 Jahren
README a5ff49ecdc Renames test_opus to opus_demo and adds the test_opus_api, test_opus_encode, test_opus_decode test programs. vor 13 Jahren
README.draft a5ff49ecdc Renames test_opus to opus_demo and adds the test_opus_api, test_opus_encode, test_opus_decode test programs. vor 13 Jahren
autogen.sh 2852cb1486 Tell automake to put object files in subdirectories. vor 14 Jahren
celt_headers.txt 4923f3f80e Moves the main headers from src/ to include/ vor 13 Jahren
celt_sources.mk 2779df7ff6 Renaming the CELT plc.c file to celt_lpc.c to avoid MSVC conflicts with Skype's PLC.c vor 14 Jahren
configure.ac 38c6a15092 version number bump vor 13 Jahren
opus-uninstalled.pc.in c37499090b renames the libcelt/ directory to celt/ vor 14 Jahren
opus.pc.in 9f71309abe Add pkg-config support files. vor 14 Jahren
opus.sln c37499090b renames the libcelt/ directory to celt/ vor 14 Jahren
opus_headers.txt 4923f3f80e Moves the main headers from src/ to include/ vor 13 Jahren
opus_sources.mk d4e9340591 Adds support for multi-stream encoding/decoding vor 14 Jahren
silk_headers.txt 1c2f5633d1 Removed all the silk_ prefixes in source file names (not symbols) vor 14 Jahren
silk_sources.mk e1c3eac46b oops, forgot to update the source list vor 13 Jahren

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 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 16-bit PCM files (machine endian) or opus bitstreams
with simple opus_demo propritary framing.