[Ffmpeg-devel] llrint() in Cygwin

Michael Niedermayer michaelni
Fri Jan 26 15:46:25 CET 2007


On Fri, Jan 26, 2007 at 02:10:16PM -0000, M?ns Rullg?rd wrote:
> Thomas Raivio said:
> > Hi,
> >
> > llrint() is not defined in Cygwin and the function is used in
> > libavcodec/mpegaudiodec.c. I propose changing llrint() to rint() in this
> > case.
> This needs to be fixed, but using rint() is not the correct solution.
> Could someone please investigate the actual range of the values involved?
> Also, what is the correct rounding for these numbers?  The rint() family of
> functions will round differently depending on application settings.
> It is quite possible that a simple (uint32_t)(x + 0.5) will do the right thing.

no, not alone the current code rounds values up to 2241526806663124992.000000
these entries in the LUT are likely never accessed but i dont have the time
nor interrest to check which is the last which might be accessed by a valid
(or even invalid) mp3 file

also note someone now thinking of finding the max for his mp3 collection no
it wont be accepted this has to be checked by figuring out which values can
be reached by looking at the code and or mp3 spec


Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

The misfortune of the wise is better than the prosperity of the fool.
-- Epicurus
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20070126/c2874b3f/attachment.pgp>

More information about the ffmpeg-devel mailing list