[MEncoder-users] [mpeg4 @ 0x86f46cc]Error: 2pass curve failed to converge

Corey Hickey bugfood-ml at fatooh.org
Tue Oct 24 19:12:42 CEST 2006


Alejandro Vargas wrote:
> 2006/10/23, Pepe <rvm3000 at ya.com>:
>> -    if(fabs(expected_bits/all_available_bits - 1.0) > 0.01 ){
>> +    if(abs(expected_bits/all_available_bits - 1.0) > 0.01 ){
> 
> But fabs are very different from abs. For the first, the result of abs
> is int, then you shouldn't compare it with 0.01, it should be 0. And
> the parameters of abs should be integer also. Then, I think probably
> the if will be always evaluated as false.

If (expected_bits/all_available_bits-1.0 >= 1), the abs() test would be 
true. In any case, don't worry about it.

A while ago Michael changed abs() to fabs()[1]. That was a correct 
change, but it flushed out the bug you found. For a while, reversing 
that change was the most expedient way to work around the bug, but 
eventually I came to understand it correctly and made the proper fix[2].

[1] http://lists.mplayerhq.hu/pipermail/ffmpeg-cvslog/2006-May/002344.html
[2] 
http://lists.mplayerhq.hu/pipermail/ffmpeg-cvslog/2006-September/003471.html

Build mplayer from SVN or 1.0rc1 source and all your troubles will go away.


-Corey



More information about the MEncoder-users mailing list