[Speex-dev] Average Bit Rate in UWB mode question

John Ridges jridges at masque.com
Thu Jan 8 14:47:14 PST 2009

Hi list!

There seem to be some oddities in using ABR. The first thing I notice is 
that because "abr_count" increases without bound, after a while the 
weight of the bitrate history will completely swamp any change in the 
current bitrate and the ABR adjustment will essentially stop happening. 
This seems to be true in any mode (not just UWB) and perhaps a solution 
is to cap "abr_count" at some value.

The other thing is that the ABR calculations are only done for the 
highest submode, and in UWB that is a problem in that the ABR code 
adjusts the bitrate by changing that submode's quality. This really 
doesn't work well in UWB because that submode has very little freedom in 
it's bitrate (only 4 or 36 bits/frame). A possible kludgy solution would 
be to only perform ABR adjustments in the WB submode for both UWB and WB 
modes. Although that would leave open the strange possibility that the 
WB submode could be zero while the UWB submode was not, I don't think 
that would hurt anything.

Let me know if I'm just reading this wrong, or if there's some better 
solution. Thanks,


More information about the Speex-dev mailing list