[FFmpeg-devel] AAC-Main (round 2)
Måns Rullgård
mans
Thu Nov 20 11:51:28 CET 2008
Michael Niedermayer wrote:
> On Thu, Nov 20, 2008 at 10:25:51AM -0000, M?ns Rullg?rd wrote:
>>
>> Michael Niedermayer wrote:
>> > On Wed, Nov 19, 2008 at 01:42:55PM -0500, Alex Converse wrote:
>> > [...]
>> >> diff --git a/libavcodec/aac.c b/libavcodec/aac.c
>> >> index 1ad0a58..9fb242b 100644
>> >> --- a/libavcodec/aac.c
>> >> +++ b/libavcodec/aac.c
>> >> @@ -91,6 +91,11 @@
>> >> #include <math.h>
>> >> #include <string.h>
>> >>
>> >> +#ifdef ARCH_X86
>> >> +#define USE_754_PUNS
>> >> +union float754 { float f; uint32_t i; };
>> >> +#endif
>> >
>> > The correctness of the USE_754_PUNS code could be tested by configure
>>
>> Not easily. The best we could do is set it based on architecture.
>
> hmm, is there a problem i miss with just compiling a
> float a[]= {1.23456789, PI, E, -23.456789}
> and checking if the IEEE expected byte sequence (for matching integer
> endianness) is in the object file?
That's checking 4 out of 4 billion possible float values. Even if these
look like IEEE754 numbers, there could be differences elsewhere, e.g.
in the representation non-finite numbers. Floating-point is weird enough
that I wouldn't trust a simple check like that.
--
M?ns Rullg?rd
mans at mansr.com
More information about the ffmpeg-devel
mailing list