LAME Official Logo

LAME - Constant Bit Rate

Suggested usage:

lame -b 128 input.wav output.mp3

CBR encoding is the basic encoding mode of MP3: The bitrate is kept constant across the entire file, which means the same number of bits is allocated to encode each second of audio, and internally, frames of audio data occur at regular, predictable intervals, given a predictable file size for a given duration. CBR is therefore the "opposite" of VBR.

That said, in some formats there may be some variability in the number of bits that contain actual audio information from frame to frame. This concept manifests in the bit reservoir of MP3s. In a CBR MP3, even though the frames are of a fixed size, the audio data is not necessarily distributed consistently between them; audio for one frame might use fewer bits than the frame has, so that frame adds the spare bits to a reservoir that can supplement the bits allocated to the next frame. Thus, the effective bitrate is allowed to vary somewhat in a CBR MP3, even though there is a fixed number of frames for the duration of audio. For example, for a 256kbps file, the bitrate of a single frame can be up to 320 kbps, but the frame immediately before and/or after that one would have to use fewer bits, whereas in VBR, there would be no such restriction. Consequently, the amount of variability across the entire MP3 is not as great as that afforded by VBR, but it is not insignificant; a CBR encoder that does not efficiently use the reservoir will likely produce a lower quality file than one that does.

ABR is a more flexible way to encode where filesize is important, but still giving some flexibility to choose frame sizes.

Who should use CBR

CBR is useful for people who are concerned about maintaining maximum compatibility, especially with certain streaming applications and some hardware-based decoders that don't reliably support VBR.

CBR is also useful for people who desire the ability to obtain accurate estimates of the bitrate or approximate duration of a file's decoded audio without scanning and partially decoding the entire file.