blob: 5387aeac0126686b275d8108914080f6ad36c2de [file] [log] [blame]
Jean-Marc Valin4468c752010-07-08 13:40:07 -04001This is a prototype codec and for now it has limited functionality.
Jean-Marc Valin7bab9a92010-06-29 23:59:04 -04002
Jean-Marc Valin4468c752010-07-08 13:40:07 -04003To build from a distribution tarball, you only need to do the following:
Jean-Marc Valin8ba2a772010-07-05 14:55:02 -04004
Jean-Marc Valinfe741252011-04-30 14:21:35 -04005% ./configure
Jean-Marc Valin8ba2a772010-07-05 14:55:02 -04006% make
7
Kat Walsh3269dce2011-08-15 22:43:51 -04008To build from the git repository, the following steps are necessary:
Jean-Marc Valin4468c752010-07-08 13:40:07 -04009
Jean-Marc Valinfe741252011-04-30 14:21:35 -0400101) Clone the repository:
Jean-Marc Valin4468c752010-07-08 13:40:07 -040011
Jean-Marc Valinfe741252011-04-30 14:21:35 -040012% git clone git://git.opus-codec.org/opus.git
13% cd opus
Jean-Marc Valin4468c752010-07-08 13:40:07 -040014
Jean-Marc Valinfe741252011-04-30 14:21:35 -0400151) Compiling
Jean-Marc Valin4468c752010-07-08 13:40:07 -040016
17% ./autogen.sh
Jean-Marc Valinfe741252011-04-30 14:21:35 -040018% ./configure
Jean-Marc Valin4468c752010-07-08 13:40:07 -040019% make
20
21
Gregory Maxwella5ff49e2011-10-26 19:56:00 -040022Once you have compiled the codec, there will be a opus_demo executable in
Gregory Maxwell3bcf3672011-09-09 17:11:43 -040023the top directory.
Jean-Marc Valin4468c752010-07-08 13:40:07 -040024
Gregory Maxwella5ff49e2011-10-26 19:56:00 -040025Usage: opus_demo [-e] <application> <sampling rate (Hz)> <channels (1/2)>
Gregory Maxwell3bcf3672011-09-09 17:11:43 -040026 <bits per second> [options] <input> <output>
Gregory Maxwella5ff49e2011-10-26 19:56:00 -040027 opus_demo -d <sampling rate (Hz)> <channels (1/2)> [options]
Gregory Maxwell3bcf3672011-09-09 17:11:43 -040028 <input> <output>
Jean-Marc Valin4468c752010-07-08 13:40:07 -040029
Gregory Maxwell3bcf3672011-09-09 17:11:43 -040030mode: voip | audio | restricted-lowdelay
Jean-Marc Valin08062002011-03-09 13:24:24 -050031options:
Kat Walsh3269dce2011-08-15 22:43:51 -040032-e : only runs the encoder (output the bit-stream)
33-d : only runs the decoder (reads the bit-stream as input)
34-cbr : enable constant bitrate; default: variable bitrate
Gregory Maxwella5ff49e2011-10-26 19:56:00 -040035-cvbr : enable constrained variable bitrate; default: unconstrained
Kat Walsh3269dce2011-08-15 22:43:51 -040036-bandwidth <NB|MB|WB|SWB|FB> : audio bandwidth (from narrowband to fullband);
37 default: sampling rate
38-framesize <2.5|5|10|20|40|60> : frame size in ms; default: 20
Jean-Marc Valin08062002011-03-09 13:24:24 -050039-max_payload <bytes> : maximum payload size in bytes, default: 1024
40-complexity <comp> : complexity, 0 (lowest) ... 10 (highest); default: 10
41-inbandfec : enable SILK inband FEC
Kat Walsh3269dce2011-08-15 22:43:51 -040042-forcemono : force mono encoding, even for stereo input
Jean-Marc Valin08062002011-03-09 13:24:24 -050043-dtx : enable SILK DTX
44-loss <perc> : simulate packet loss, in percent (0-100); default: 0
Jean-Marc Valin78a4b582010-07-08 15:51:49 -040045
Gregory Maxwell3bcf3672011-09-09 17:11:43 -040046input and output are 16-bit PCM files (machine endian) or opus bitstreams
Gregory Maxwella5ff49e2011-10-26 19:56:00 -040047with simple opus_demo propritary framing.