> 
> Could someone just post an explanation of the differences between ABR and VBR. I 
>still don't understand the previous explanations completely.
> 
> Thanx

Here's yet more thoughts on all the different modes.  They are based on
two different ideas about bit allocation:

1. Allocate bits based on the quantization error and psycho acoustic masking.

   Both VBR modes do this.  There are two different VBR modes,
   old and new.  The old mode called the CBR algorithm many times,
   with different amounts of bits, until it found the smallest
   number of bits which would produce quantization error < allowed masking.
   This approach is expensive because it requires quantization, 
   noise calculations and bit counting to be done every iterataion.

   The new VBR mode achieves the same goal 
   but uses a more logial approach:  It first computes the amount of
   scaling needed in each band so that the quantization error < 
   allowed masking.  It then computes the scalefactors needed to achieve
   this scaling, and finally computes the number of bits needed.
   The bit counting only has to be done once, and the number of
   noise calculations and quantizations are substantially reduced.

   If the psycho acoustics was perfect, these methods would give
   best possible compression (in MP3).  


2. Allocate bits based on the perceptual entropy (PE).

   Both CBR and ABR modes do this.  Each mode has a target amount 
   of bits (90% of the specified bitrate).  

   CBR: When the PE is small, the 10% unused bits are added to the
   reservoir (unless the reservoir is full).  When the PE is large,
   the frame will be encoded with more than the normal amount of bits
   with the extra bits taken from the reservoir (if the reservoir happens
   to not be empty)

   ABR just replaces the reservoir with a variable bitrate.  It
   computes the number of bits needed based on the PE, and then uses
   the smallest bitrate which can handle the disired number of bits.
   This has the advantage that it will never want to use extra bits,
   but not be able to because the reservoir was drained by the previous
   frame.  ABR also does things like reduce the needed bits if it
   detects analog silence.


Just as a point of comparison: AAC VBR mode is what we call ABR.
Vorbis is also closer to ABR than VBR.  The number of bits used in
Vorbis is determined by the choice of code book.  The code books are
chosen in advance, and are not based on the quantization noise in the
.wav file being encoded.  If I understand correctly, a .ogg file can
be encoded without ever calculating the actual quantization error.

Mark










--
MP3 ENCODER mailing list ( http://geek.rcc.se/mp3encoder/ )

Reply via email to