Comment by nok22kon

4 days ago

you have 22 bits for the typical audio voltage level, which you call 1.0 float

but what if you "allow" double that voltage and call it 2.0 float? a strong pressure into the microphone generates a stronger voltage

thermal noise limits you on the quiet signals, but not on the powerfull ones

so 22 bit for typical -1.0 -> 1.0 range and you can add a few more bits on top of that for stronger audio pressures (voltages) which you would traditionally clip

Sorry, but this not how AD works. If your idea was valid, we'd have new generations of ADCs in our hands.

  • > In a 32-bit float recorder, you have two ADCs working in tandem to create a single audio file. One “low gain” ADC is optimized for high-level audio, and the other “high gain” ADC is optimized for low-level audio. If the high gain ADC clips due to loud sounds, the low gain ADC does not. And if sounds are too quiet for the low gain ADC to capture clearly above its noise floor, the high gain ADC still has plenty of headroom above its noise floor. Said another way, the low-level ADC handles the quieter sections, and the high-level ADC handles loud sections.

    https://tascam.jp/int/feature/32-bit_float

  • It's discontinuous.

    You have some low noise amplifier. There is a signal. You split it. The result on each side has >=1 bit worse noise floor, probably somewhat worse as we're not using superconductors :P-- as you expect: there is no free lunch.

    Now: take one copy and attenuate it 48dB, further degrading its noise floor. Sample both. The attenuated copy is mostly useless, except when the input goes high enough that it would have hard clipped the other ADC.

    So the tradeoff is that you lose a small amount of noise floor constantly-- out at the 20th bit, that you probably didn't care about (microphone self-noise is limiting you out there anyways at normal volume levels), in exchange for never clipping.

    To turn this into a better ADC generally, you'd need the splitting stage to not hurt the noise floor, but it does.

    The reason it's not the same as just lowering the gain so that you won't ever clip is that to get the same dynamic range you'd have to lower it by 48dB and now your ADC doesn't achieve its potential for typical signals. You could lower the gain by 3dB (or whatever the splitting cost you) and get the same results for the low gain signal and a little more headroom, but you would not get the massive headroom increase of this approach.

    For this to work one must also have amplifiers with much wider dynamic range and SNR than ADCs, but we do.

    The natural output for this approach is a float-- the most natural would be a weird float where instead of an exponent one bit tells you which ADC is in use and represents a factor of 256 or whatever, but in practice these recorders just output 32-bit floats. I haven't looked but I wouldn't be surprised if there were only two exponent values ever used in their output.

    • > So the tradeoff is that you lose a small amount of noise floor constantly-- out at the 20th bit

      So, basically, no better than the best AD converters we already have?

      My understanding of the fundamental limit to AD performance is that the brownian noise level is around the 22nd bit level. So even if you come up with techniques to successfully measure down to that level, you're basically picking up .. inevitable, irremovable, irrelevant noise.

      Possibly there are gains to be made by not worrying about the noise floor and caring more about the lack of clipping, but I'm not seeing people screaming about that. The "noise" seems to be "N bits of dynamic range", not "slightly less dynamic range but it will never clip!"

      1 reply →