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

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.