home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
AmigActive 13
/
AACD13.ISO
/
AACD
/
Sound
/
LAME
/
src
/
HACKING
< prev
next >
Wrap
Text File
|
2000-04-11
|
1KB
|
55 lines
************************************************************************
LAME API
For a general outline of the code, see the file API.
Also, main.c is a simple front end to libmp3lame.a
The guts of the code are called from lame_encode_buffer().
lame_encode_buffer() handles buffering, resampling, filtering, and
then calls lame_encode_frame() for each frame:
lame_encode_frame():
l3psycho_anal() compute masking thresholds
mdct_sub() compute MDCT coefficients
iteration_loop() choose scalefactors (via iteration)
which determine noise shapping, and
choose best huffman tables for lossless compression
format_bitstream format the bitstream. when data+headers are complete,
output to internal bit buffer.
copy_buffer() copy internal bit buffer into user's mp3 buffer
************************************************************************
Avoid using float or double, and instead use: (defined in machine.h).
FLOAT default: 4 byte floating point.
FLOAT8 default: 8 byte floating point.
On some machines, FLOAT8 is actually faster than FLOAT.
On some machines, the math routines require FLOAT8, so using FLOAT
results in a lot of conversions.