rockbox/lib/rbcodec/codecs/libopus
Nils Wallménius 9b7ec42403 Sync to upstream libopus
Sync to commit bb4b6885a139644cf3ac14e7deda9f633ec2d93c

This brings in a bunch of optimizations to decode speed
and memory usage. Allocations are switched from using
the pseudostack to using the real stack. Enabled hacks
to reduce stack usage.

This should fix crashes on sansa clip, although some
files will not play due to failing allocations in the
codec buffer.

Speeds up decoding of the following test files:

                 H300 (cf)   C200 (arm7tdmi)  ipod classic (arm9e)
16 kbps (silk)   14.28 MHz   4.00 MHz         2.61 MHz
64 kbps (celt)   4.09 MHz    8.08 MHz         6.24 MHz
128 kbps (celt)  1.93 MHz    8.83 MHz         6.53 MHz

Change-Id: I851733a8a5824b61feb363a173091bc7e6629b58
2014-07-13 11:12:40 +02:00
..
celt Sync to upstream libopus 2014-07-13 11:12:40 +02:00
ogg
silk Sync to upstream libopus 2014-07-13 11:12:40 +02:00
config.h Sync to upstream libopus 2014-07-13 11:12:40 +02:00
libopus.make Change CODECFLAGS to a "simply-expanded" var to give the individual 2013-08-23 18:34:30 +02:00
opus.c Sync to upstream libopus 2014-07-13 11:12:40 +02:00
opus.h Sync libopus to upstream release 1.1 2013-12-16 21:13:23 +01:00
opus_custom.h Sync libopus to upstream release 1.1 2013-12-16 21:13:23 +01:00
opus_decoder.c Sync to upstream libopus 2014-07-13 11:12:40 +02:00
opus_defines.h Sync to upstream libopus 2014-07-13 11:12:40 +02:00
opus_header.c Sync opus codec to upstream git 2013-08-31 08:30:51 +02:00
opus_header.h
opus_private.h Sync to upstream libopus 2014-07-13 11:12:40 +02:00
opus_types.h
README.rockbox Sync opus codec to upstream git 2013-08-31 08:30:51 +02:00
SOURCES Sync libopus to upstream release 1.1 2013-12-16 21:13:23 +01:00

Libraries:  Opus (snapshot) / Opus-tools (snapshot) / libogg 1.3
Imported:   September 15th, 2012

Steps taken to adapt original opus/opus-tool/ogg source files to rockbox
(useful when for example syncing a new snapshot)

Opus:
* copied .c/.h files from opus/src lib/rbcodec/codecs/libopus
* copied .h files from opus/include to lib/rbcodec/codecs/libopus
* copied .c/.h files from opus/celt to lib/rbcodec/codecs/libopus/celt
* copied .c/.h files from opus/silk to lib/rbcodec/codecs/libopus/silk

Opus-tools:
* copied src/opus_header.h and src/opus_header.c to lib/rbcodec/codecs/libopus
* changed #include <ogg/ogg.h> to #include "ogg/ogg.h" in opus_header.c

Ogg:
* copied libogg/src/framing.c to lib/rbcodec/codecs/libopus/ogg
* copied libogg/include/ogg.h to lib/rbcodec/codecs/libopus/ogg
* changed #include "ogg/ogg.h" to #include "ogg.h" in framing.c
* added os_config.h to lib/rbcodec/codecs/libopus/ogg