Skip to content
Snippets Groups Projects
Commit 635b5f2f authored by Gregory Maxwell's avatar Gregory Maxwell
Browse files

Revise README, update AUTHORS emails.

parent 11dd5522
No related branches found
No related tags found
No related merge requests found
Jean-Marc Valin (jean-marc.valin@octasic.com)
Jean-Marc Valin (jmvalin@jmvalin.ca)
Koen Vos (koen.vos@skype.net)
Timothy Terriberry (tterribe@xiph.org)
Karsten Vandborg Sorensen (karsten.vandborg.sorensen@skype.net)
Soren Skak Jensen (ssjensen@gn.com)
Gregory Maxwell (gmaxwell@juniper.net)
Gregory Maxwell (greg@xiph.org)
== Opus audio codec ==
Opus is a codec for interactive speech and audio transmission over the Internet.
Opus can handle a wide range of interactive audio applications, including
......@@ -5,11 +7,16 @@ Voice over IP, videoconferencing, in-game chat, and even remote live music
performances. It can scale from low bit-rate narrowband speech to very high
quality stereo music.
The IETF draft covering Opus can be found at:
http://tools.ietf.org/id/draft-ietf-codec-opus
Opus, when coupled with an appropriate container format, is also suitable
for non-realtime stored-file applications such as music distribution, game
soundtracks, portable music players, jukeboxes, and other applications that
have historically used high latency formats such as MP3, AAC, or Vorbis.
Opus is specified by IETF RFC 6716:
http://tools.ietf.org/html/rfc6716
Opus is subject to the royalty-free patent and copyright licenses specified
in the file COPYING.
The Opus format and this implementation of it are subject to the royalty-
free patent and copyright licenses specified in the file COPYING.
This package implements a shared library for encoding and decoding raw Opus
bitstreams. Raw Opus bitstreams should be used over RTP according to
......@@ -26,10 +33,14 @@ described at:
An opus-tools package is available which provides encoding and decoding of
Ogg encapsulated Opus files and includes a number of useful features.
Opus-tools can be found at:
http://git.xiph.org/?p=users/greg/opus-tools.git
https://git.xiph.org/?p=opus-tools.git
or on the main Opus website:
http://opus-codec.org/
== Compiling libopus ==
To build from a distribution tarball, you only need to do the following:
% ./configure
......@@ -42,14 +53,14 @@ To build from the git repository, the following steps are necessary:
% git clone git://git.opus-codec.org/opus.git
% cd opus
1) Compiling
2) Compiling the source
% ./autogen.sh
% ./configure
% make
Once you have compiled the codec, there will be a opus_demo executable in
the top directory.
Once you have compiled the codec, there will be a opus_demo executable
in the top directory.
Usage: opus_demo [-e] <application> <sampling rate (Hz)> <channels (1/2)>
<bits per second> [options] <input> <output>
......@@ -58,27 +69,32 @@ Usage: opus_demo [-e] <application> <sampling rate (Hz)> <channels (1/2)>
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 <NB|MB|WB|SWB|FB> : 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 <bytes> : maximum payload size in bytes, default: 1024
-complexity <comp> : 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 <perc> : 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.
-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 <NB|MB|WB|SWB|FB>
: 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 <bytes>
: maximum payload size in bytes, default: 1024
-complexity <comp>
: 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 <perc> : 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.
== Testing ==
This package includes a collection of automated unit and system tests
which should be run after compiling the package especially the first
which SHOULD be run after compiling the package especially the first
time it is run on a new platform.
To run the integrated tests:
......@@ -89,6 +105,8 @@ included in this package for size reasons but can be obtained from:
http://opus-codec.org/testvectors/opus_testvectors-draft11.tar.gz
To run compare the code to these test vectors:
% curl -O http://opus-codec.org/testvectors/opus_testvectors-draft11.tar.gz
% tar -zxf opus_testvectors-draft11.tar.gz
% ./tests/run_vectors.sh ./ opus_testvectors 48000
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment