Home | Linux | Sound | Guestbook | Me

CBR, VBR or ABR?

To further muddy the waters, not even bitrate alone will tell the whole story. Early mp3 encoders (and most to this day) used what is called an "average bit rate" (ABR). If, for example, we encode a file at 128 kbps, then the encoder will use 128 kilobits to encode each second of the song, no matter what. So the first measure (consisting of perhaps two drum clicks) will use 128 kilobits and will represent that second nearly exactly. On the other hand, halfway through the song, where the lead guitar is ripping into a solo, the drummer is going crazy on the cymbals and the bass guitar is playing a funky groove, the encoder will still have to use 128 kilobits to encode that second, where it could have used, say 300. Thus that second will be represented rather poorly.

Newer mp3 encoders (like Lame) support what is called "variable bit rate" mode (VBR). This gives the encoder the freedom to save bits on simple sections that don't need as many bits to represent them well and thus have some "extra" bits left over to use for sections that really need them. This usually results in files which are slightly smaller than ABR files even at the same target bitrate, but which sound much better in the busy sections.

Occasionally you may see mp3s referred to as CBR, for "constant bit rate". This would mean that every sample of the encoded file must use exactly the same amount of bits. In reality, mp3 uses a bit reservoir to average bit rates over a small period of time, so technically ABR is being used. It is unlikely that any compressed audio formats use true CBR.

Unfortunately, though some newer mp3 encoders do support VBR, some portable hardware mp3 players can't play such mp3s. And even when their encoders and players support this mode, many people don't use it for whatever reason. (Habit? Ignorance?)

Almost every lossy audio compression codec newer than mp3 supports VBR, though some don't turn it on by default.

  Wasted space