[MPlayer-users] [BUG] lavc error - 2pass curve failed to converge

Corey Hickey bugfood-ml at fatooh.org
Sun Jul 16 04:49:41 CEST 2006


Loren Merritt wrote:
> On Fri, 14 Jul 2006, Corey Hickey wrote:
>> If I recall correctly, simply changing fabs() back to abs() isn't really the 
>> right solution, since fabs() is doing what it's supposed to. Changing the 
>> 0.01 threshold might be in order, or perhaps it might be better to find why 
>> the threshold is being exceeded.
> 
> Just in case it helps anyone debugging:
> x264 uses the same ratecontrol framework with the same threshold 
> (including fabs), and it works (i.e. complains if and only if bitrate 
> can't be satisfied given the qp_min or qp_max).
> The only fix related to convergence I remember making is:
> Instead of an absolute search range for ratefactor
> 
>      for(step=256*256; step>0.0000001; step*=0.5){
>          rate_factor+= step;
> 
> to initialize it based on a closed-form solution
> 
>      step_mult= available_bits / expected_bits;
>      for(step=256*256; step>0.0000001; step*=0.5){
>          rate_factor+= step*step_mult;
> 
> because different rc_eq's need very different search ranges.

Thanks, Loren. This is out of my area of expertise, but I'll point out
your message when I start pestering Michael about this again. That will
happen once someone sends in a good sample.

-Corey



More information about the MPlayer-users mailing list