[Ffmpeg-devel] Fixed vs. Floating Point AAC

Rich Felker dalias
Thu Mar 9 15:26:10 CET 2006


On Thu, Mar 09, 2006 at 12:48:28AM +0000, M?ns Rullg?rd wrote:
> Rich Felker <dalias at aerifal.cx> writes:
> 
> > On Thu, Mar 09, 2006 at 12:37:05AM +0100, Michael Niedermayer wrote:
> >> but what about the dynamic range? if all samples are 1.0 (max) then a
> >> dc component would have a value of N^0.5 which for lets say N=1024 would
> >> be 32, so we would need 21 bits, wheres the problem now, 21bits * 21bits=
> >> 42bits and that doesnt fit in 32bits so no fast 32*32->32bit muliplies 
> >
> > A 32*32 multiply gives a 64bit result. This is fast. If a cpu sucks
> > too much to give the full result, that's the particular platform's
> > problem and users who insist on using a broken cpu arch will have to
> > deal with it being somewhat slower. x86 does it correctly, and has
> > done so ever since the 8088...
> 
> Since when can the 8088 multiply 32-bit numbers natively?

It multipleies 8*8 and gets a 16bit result. The point was that the
result is full-width, not truncated at the source operand size. Sorry
I wasn't clear.

Rich





More information about the ffmpeg-devel mailing list