rockbox/lib/rbcodec/codecs/libopus/config.h
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

57 lines
913 B
C

#ifndef CONFIG_H
#define CONFIG_H
#include "rbcodecconfig.h"
#include "codeclib.h"
#include "ogg/ogg.h"
/* general stuff */
#define OPUS_BUILD
/* alloc stuff */
#define VAR_ARRAYS
#define NORM_ALIASING_HACK
#define OVERRIDE_OPUS_ALLOC
#define OVERRIDE_OPUS_FREE
#define OVERRIDE_OPUS_ALLOC_SCRATCH
#define opus_alloc _ogg_malloc
#define opus_free _ogg_free
#define opus_alloc_scratch _ogg_malloc
/* lrint */
#define HAVE_LRINTF 0
#define HAVE_LRINT 0
/* embedded stuff */
#define FIXED_POINT
#define DISABLE_FLOAT_API
#define EMBEDDED_ARM 1
/* undefinitions */
#ifdef ABS
#undef ABS
#endif
#ifdef MIN
#undef MIN
#endif
#ifdef MAX
#undef MAX
#endif
#if defined(CPU_ARM)
#define OPUS_ARM_ASM
#if ARM_ARCH == 4
#define OPUS_ARM_INLINE_ASM
#elif ARM_ARCH > 4
#define OPUS_ARM_INLINE_EDSP
#endif
#endif
#if defined(CPU_COLDFIRE)
#define OPUS_CF_INLINE_ASM
#endif
#endif /* CONFIG_H */