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

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

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.