rockbox/lib/rbcodec/codecs/libopus
Nils Wallménius c7124b5520 Fix opus craches with large embedded album art
Use the tlsf malloc and friends instead of the silly
codec_malloc to get actually working free and saner
realloc that doesn't leak memory.
Makes files with moderately sized embedded AA play
on targets with large enough codec buffers and files
with too large AA are now skipped rather than crashing.
Fixes crash when playing example file in FS#12842.

Change-Id: I06562955c4d9a95bd90f55738214fba462092b71
2013-05-18 23:38:23 +02:00
..
celt ARMv5 optimized complex multiply function for libopus. 2013-01-21 01:51:38 +01:00
ogg Fix opus craches with large embedded album art 2013-05-18 23:38:23 +02:00
silk opus: #if 0 out some more unused code, delete unused file 2012-09-24 17:45:07 +02:00
libopus.make
opus.h
opus_config.h Fix opus craches with large embedded album art 2013-05-18 23:38:23 +02:00
opus_custom.h opus: #if 0 out some unused code 2012-09-24 15:20:21 +02:00
opus_decoder.c opus: statically allocate decoder state in iram 2012-09-29 10:36:48 +02:00
opus_defines.h
opus_header.c
opus_header.h
opus_private.h
opus_types.h
README.rockbox
SOURCES opus: #if 0 out some more unused code, delete unused file 2012-09-24 17:45:07 +02: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
* renamed opus config.h file to opus_config.h and replaced #include "config.h",
  for example
find . -name "*.h" -print | xargs sed -i 's/include "config.h"/include "opus_config.h"/g'
find . -name "*.c" -print | xargs sed -i 's/include "config.h"/include "opus_config.h"/g'

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