# GPSYCHO - Average Bit Rate (ABR)

### A variable bit-rate algorithm which uses GPsycho's time tested CBR noise shaping code

Suggested usage:

lame --abr 128 input.wav output.mp3

ABR mode is like CBR, but with an unlimited bit reservoir. When using ABR, GPSYCHO will use the CBR algorithm to compute the number of bits needed to encode each frame. If the number of bits is greater than the target bitrate, the CBR algorithm has to use bits from the bit reservoir, and we just have to hope that the bitreservoir has enought bits!

With ABR, GPSYCHO does not rely on the bit reservoir at all, but each frame just uses the smallest possible bitrate which can encode the frame with the desired number of bits.

The difference between ABR and true VBR is in how the desired number of bits is chosen. The true VBR mode determines the number of bits based on the quantization noise. VBR figures out how many bits are needed so that the quantization noise is less than the allowed masking.

ABR mode uses the CBR formula to determine the desired number of bits. This formulas is based on the perceptual entropy, which is a rough measure of how difficult the frame is to encode.