1 #include "ffmpeg_bitstream.h"
2 #include "../librm/rm.h"
4 #if (CONFIG_CPU == PP5022) || (CONFIG_CPU == PP5024) || (CONFIG_CPU == MCF5250)
5 /* PP5022/24 and MCF5250 have larger IRAM */
6 #define IBSS_ATTR_LARGE_IRAM IBSS_ATTR
8 /* other CPUs IRAM is not large enough */
9 #define IBSS_ATTR_LARGE_IRAM
12 /* These structures are needed to store the parsed gain control data. */
32 tonal_component components
[64];
33 int32_t prevFrame
[1024];
35 gain_block gainBlock
[2];
37 int32_t spectrum
[1024] __attribute__((aligned(16)));
38 int32_t IMDCT_buf
[1024] __attribute__((aligned(16)));
40 int32_t delayBuf1
[46]; ///<qmf delay buffers
41 int32_t delayBuf2
[46];
42 int32_t delayBuf3
[46];
53 int samples_per_channel
;
54 int samples_per_frame
;
62 /** joint-stereo related variables */
63 int matrix_coeff_index_prev
[4];
64 int matrix_coeff_index_now
[4];
65 int matrix_coeff_index_next
[4];
66 int weighting_delay
[6];
70 int32_t outSamples
[2048];
71 uint8_t decoded_bytes_buffer
[1024];
72 int32_t tempBuf
[1070];
83 int atrac3_decode_init(ATRAC3Context
*q
, RMContext
*rmctx
);
85 int atrac3_decode_frame(RMContext
*rmctx
, ATRAC3Context
*q
,
86 int *data_size
, const uint8_t *buf
, int buf_size
);