Array Name |
Usage |
Size in LIBMAD |
Min. Size for with Prop |
| InputBuffer | MP3 file input buffer | 40 kB | perhaps 512 B since using flash |
| OutputBuffer | PCM sample output buffer | 8 kB | 2.4 kB {word [2*576] half this for mono} |
| Main_Data | buffer for main data of stream | 2.5 kB | ~2 kB {maybe a bit less for mono} |
| xr | decode frequency domain data | 9.2 kB | 2.4 kB {word [2*576] half this for mono} |
| rq_table | requantization tables | 32.8 kB | 1.0 kB {maybe half this for 16 bits?} |
| Layer3 data | ~4 kB | 906 B {much less if only supporting 44100 Hz} | |
| Huffman tables | info to uncompress main data | ~8 kB | 4.4 kB |
| t | temp storage for DCT32 | 1 kB | 354 B |
| D | constants for synthesis | 2.2 kB | 1.1 kB {made word sized with no loss} |
| pcm_samples | output samples | 9.2 kB | 0 {use outputBuffer instead} |
| sideinfo | frame sideinfo storage | 234 B | |
| frame_sbsample | buffer for time domain data | 9.2 kB | 1.2 kB {doing one channel at a time with words} |
| frame_overlap | time domain overlapping data | 4.6 kB | 2.3 kB (half for mono) |
| window_l | windowing constants | 144 B | 72 B |
| synth_filter | data for synthesis | 4 kB | 2 kB (half for mono) |
| TOTAL | a lot ! | 21 kB | |
![]()
Here's a look at the big procedure sizes
![]()
Function
SPIN Size (B)
III_huffdecode
1500
synth_full
1411
dct32
4308
imdct36
2894
total
8.6 kB