3 ms·
Professional tools even for audio use floating point engines (Ableton has done this for well over a decade [1]). While fixed point may be ok for input/output fo
by SideQuark 2y ago
Professional tools even for audio use floating point engines (Ableton has done this for well over a decade [1]). While fixed point may be ok for input/output formats, it is certainly not suitable for complex audio processing needs, where errors accumulate far too fast for any fixed point system at equivalent bit depth.
And fixed point is an order of magnitude slower.
> Decoding a JPEG for example is a bunch of fixed point math
It can be done that way, but modern decoders use float for accuracy and speed when available. Search libjpeg-turbo [2] codebase for float and surprise yourself. Even the ancient libjpeg [3] uses float when possible.
Why not simply used fixed-point? Because it's worse in nearly every way, and an artifact of computing from the 1970s-1980s when JPEG pieces were designed (DCT, lots of work culminating in the final JPEG spec in 1992). When JPEG was designed, computers generally didn't have floating-point hardware. The world of computing has changed a bit since then.
[1] https://cdn-resources.ableton.com/80bA26cPQ1hEJDFjpUKntxfqdmG3ZykO/static/manual/pdf/L9Manual_EN.0f97a0bd6041.pdf https://cdn-resources.ableton.com/80bA26cPQ1hEJDFjpUKntxfqdm...
[2] https://github.com/libjpeg-turbo/libjpeg-turbo https://github.com/libjpeg-turbo/libjpeg-turbo
[3] https://www.ijg.org/files/ https://www.ijg.org/files/