Whats with this 32-bit float and no clipping jibber jabber?

  • Thread starter Thread starter SouthSIDE Glen
  • Start date Start date
If you mean that 0dB is the last number convertible to integer (0dbFS SP), then yes the +750db is the limit of 32bFP.
 
If Im doing the math right, a 32 bit float has 1 sign bit, 23 bit mantissa and a 8 bit exponent, this could represent 8,388,607 to the 255th power

This works out to 1541dB, which I think signed would be +/-750dB

there are only so many numbers a given bit depth can represent, only so far an exponent can take you

There has to be a level at some point after which it becomes impossible to represent

no, normalized 32 bit FP range is e-44 to e34 and normalized double precision is e-323 to e308. you'll need to understand how the scaling works wrt to the mantissa and exponent on both sides of zero and as the number approaches zero.

for more look up IEEE Floating Point or IEEE Std 754

but that is really not relevant. the range that audio math will occupy is very small wrt to the range of FP

also, the benefit if double precision is not its magnitude range but its precision.
 
OK I do understand the no clipping thing now, in that they mean that *locally* or *in the internal math* there is no clipping.

But it remains kinda meaningless in the big picture - and by big picture I mean in the context of overall gain structure. Pushing a 32FP signal past 0dBFS, while it may be mathematically possible, will still ultimately result in clipping and/or analog distortion in the rest of the chain.
it's not meaningless any more than using double precision is. FP removes scaling issues until the very end. that's far from meaningless.
 
for IEEE 754 32 bit float I see an 8 bit exponent

Are you saying that you could use some of the other 24 bits as an exponent as well?

Even if so, at some point you run out of available numbers you could possibly represent.
 
it's not meaningless any more than using double precision is. FP removes scaling issues until the very end. that's far from meaningless.
That may be true, but what I'm saying is that the whole "no clipping" part of it is fairly irrelevant under good practice, because there's really no good reason to take things up that far to begin with.

Like you said (paraphrased) in your last reply to pipe, volume range is one thing, scalable resolution is another. I was asking about the constant references to "no clipping in 32FP".

True on paper, perhaps, but virtually irrelevant to the reality surrounding it. In fact, it's rather misleading if one generalizes that the wrong way. A "no clipping" signal equal to a hypothetical +4dBFS inside the math *will* lead to real clipping in the real world surrounding that math.

G.
 
for IEEE 754 32 bit float I see an 8 bit exponent

Are you saying that you could use some of the other 24 bits as an exponent as well?

Even if so, at some point you run out of available numbers you could possibly represent.

I don't get your point. Single precision FP represents numbers between +/- e-44 to +/- e34 there abouts. I don't understand what "run out of numbers" means other than in the context of overflows and underflows. there are issues with FP such as denormalized numbers and converging to zero that have to be handled by the coder, but that's another day.
 
But this is where the misunderstand lies, I think. You still have an integral (and real-life in the converter) wall at 0dBFS that's going to clip off whatever you have going on "above that" sooner or later.

OK, so I think I see where the problem is with that Cubase startement. They say there is no clipping "in the recorded file" if the file ins in 32FP format. True enough in the the math holds. But fairly irrelevant in the big picture.

No, not really, you can save at 32 bit float with levels over 0dBFS and it works fine. Yes, it sounds like crap on playback, but you can fix that at any time with the master fader.
 
That may be true, but what I'm saying is that the whole "no clipping" part of it is fairly irrelevant under good practice, because there's really no good reason to take things up that far to begin with.

nope... intermediate calcs can go way beyond "0db" and also peaks can far exceed "0db". not clipping these matters and having to manage these is removed with FP. you're discounting this as though it's irrelevant... it's not.

it's like having infinite headroom.

yes, gain scaling still needs to be managed, but ceilings do not until the final output to the DAC.
 
yes, gain scaling still needs to be managed, but ceilings do not until the final output to the DAC.
Exactly. Anything happening above 0dBFS will be lopped off by the DAC anyway. And even if one hypothetically had a FP-based DAC, that still would convert to a real life voltage too hot for it's own good.

EDIT: And, yes, one could compesate by throttling back on the gain before hitting the DAC, but the point still remains that there's really no good reason to get the intermediate levels that high to begin with. If one is pushing things that high by summing or plug gain, they probably have their upstream gain set too hot somewhere along the line.

G.
 
Last edited:
there is a benefit to that headroom though, say intermediate stages between plugins

In some systems you have to dither or truncate to a lower number to get in and out of plugs...in a floating point system, you would only have to do that once, at the final output.
 
EDIT: And, yes, one could compesate by throttling back on the gain before hitting the DAC, but the point still remains that there's really no good reason to get the intermediate levels that high to begin with. If one is pushing things that high by summing or plug gain, they probably have their upstream gain set too hot somewhere along the line.

G.

you've made my point... why compensate (just another multiplication) when it's not required. why work with an artificial ceiling when there's no reason. scale reasonably and use the headroom available.
 
there is a benefit to that headroom though, say intermediate stages between plugins

In some systems you have to dither or truncate to a lower number to get in and out of plugs...in a floating point system, you would only have to do that once, at the final output.
Sonixx said:
you've made my point... why compensate (just another multiplication) when it's not required. why work with an artificial ceiling when there's no reason. scale reasonably and use the headroom available.
Yeah, I was thinking about all that almost immediately after I made my last post. I'm still trying to reason it through as to whether it really matters. Maybe it does; I'm perfectly willing to accept and lean and throw out where I was wrong. Especially since all this stuff is going into a thing on gain structure (which is why the question originally came up.)

Even if I put aside the idea that very rarely should plug gain or summing take me that far into the red to begin with...let's say there's a situation where I have a dozen channels of high-crest factor stuff to mix, so even with good levels coming into the software I have peaks on all tracks approaching 0dBFS even with per-track RMSs in the high-teens to low-twenties. Basically, if not a-worse-case, at least a pretty-bad-case scenario for gain staging and level control in the software, finding the best balance of S/N without clipping (assuming standard 24-bit integral, of course.)

Even then, if I had to drop 6dB off of every track to get the summing to "fit" under 0dBFS - which is itslef pretty extreme - I'm still only losing one integral bit of precison per track, meaning the precison at the top is dropping from <~1.3 million steps per dB to ~700K steps per dB per track. We're still talking differences inaudible even to the NSA :). I just don't get any real advantage to dropping that kind of gain structure in favor of just letting it all go over. There may be a mathematical difference, but it's like the difference between the width of a proton and the width of an electron when measuring the distance from New York to Philadelphia. Inconsequential.

Additioanlly, with floating point, isn't the precision scalable, so that with a 6 or even a 12 dB drop in value, the precision still remains the same as it does if we let it over?

I'm probably off somewhere in that reasoning. I just don't know where.

G.
 
Additioanlly, with floating point, isn't the precision scalable, so that with a 6 or even a 12 dB drop in value, the precision still remains the same as it does if we let it over?

I'm probably off somewhere in that reasoning. I just don't know where.

G.
I would say that the conclusion is that gain staging inside floating point doesn´t really matter. You just have to be sure that all the summing busses and plugins are also floating point capable and don´t do bad things to the audio.
 
6 dB per track sounds nuts for summing unless you're doing something like doubling tracks - matched frequency content everywhere, all your transients landing in the same place, perfect phase coherency...

I don't see how floating point could eliminate the evil of the DAW, but it might make it a little more forgiving during processing.


sl
 
6 dB per track sounds nuts for summing
It is! :) That's the point I was trying to question. I specified an EXTREME situation to show that even then the difference in letting the extra headroom do it's thing in FP versus riding the gain in integral math just doeesn't seem to be worth writing home about, because even under that stretch of an example, the loss of precision and loss of dynamic range at 24-bit is nothing to worry about. Combine that with...
kubeek said:
I would say that the conclusion is that gain staging inside floating point doesn´t really matter. You just have to be sure that all the summing busses and plugins are also floating point capable and don´t do bad things to the audio.
...and it seems to me that following a whole different staging paradigm - i.e. let you numbers get hot, it doesn't matter just because 32FP lets you do so - winds up being unnecessarily different and counterintuitive (e.g. the meters no longer mean what they normally do, the general gain structure game plan suddenly changes from how it is everywhere else for no real solid reson, etc.).

That's why I'm asking (because I just don't understand yet):

- since when one follows good gain procedure up until the 32FP kicks in, the chances and amount of clipping even on the integral side is minimal, and

- since - as far as I can tell so far - controlling the gain to keep what clipping does show up in check doesn't really cost anything worth mentioning in precision or range, and

- since there is apparently no advantage to running 32FP extra hot versus running 32FP at "nominal" levels, ....

then what's the point of changing up and doing it any different than classic staging procedure that keeps stuff within classic ranges? Just because 32FP lets you? It seems to me that if one sticks to classic procedure, the whole extra headroom above 0dBFS issue is a pretty academic point that can serve more to confuse than anything else.

Again, I'm not saying that's gospel. If I'm wrong about any or all of that, that's exactly what I need explained to me by someone so I can correct it and know why it's important to stress the whole 32FP no clipping difference.

G.
 
Again, I'm not saying that's gospel. If I'm wrong about any or all of that, that's exactly what I need explained to me by someone so I can correct it and know why it's important to stress the whole 32FP no clipping difference.

What's the point of having an automatic transmission in a car? If people learned to drive, they wouldn't be necessary ;)

And I used to drive 2 hours a day through some of the worst traffic in the country, so no excuses! :p


Look at it from the programmers' point of view. They added a feature that gives their customers a CYA. If their customers are smart enough not to need it, it doesn't hurt anything.

It also serves the purpose of laziness. Just leave the master fader down 6dB while you are futzing with plugs. When you grab the para EQ and crank the boost and sweep the range to find that offending frequency, you won't internally clip in the meantime. Then when you find it and restore normal settings, you never have to bother with resetting the EQ input or output level--if it has them. Otherwise, you've have to alter plugs before or after it, and if neither of those plugs had a gain control, you've have to insert a gain change plug.

When you are ready for mixdown, raise that master fader back to zero, and if for some reason that still causes overs, blast it with a limiter!!!! :mad: :D :p

In that sense, it restores a more analog-like workflow to a DAW in that a good console has sufficient headroom to really not be thought about that often.
 
...They added a feature that gives their customers a CYA. If their customers are smart enough not to need it, it doesn't hurt anything...It also serves the purpose of laziness.
It's a good thing you got into engineering instead of sales, MS ;) :D . That doesn't exactly endear a lot of people to 32FP...except of course the dumb and the lazy, who have no business doing this stuff to begin with ;)
When you grab the para EQ and crank the boost and sweep the range to find that offending frequency, you won't internally clip in the meantime.
I gotta say, I do the ParaSweep about as often as Willie Nelson inhales, and the fact that it occasionally clips when I sweep has *never* been an issue. So what? It still IDs the problem freqs just as well and still gets the job done just as well. I never even thought twice about it, to be honest.
you never have to bother with resetting the EQ input or output level--if it has them. Otherwise, you've have to alter plugs before or after it, and if neither of those plugs had a gain control, you've have to insert a gain change plug.
OK, I can see where it might make large plug chains (I get that sick feeling under my tongue just saying "large plug chains" ;)) easier to string together without having to worry about gain staging every plug. I can understand that.

But that does kind of go back to the "laziness" factor, It's not like gain staging the plugs - which is something I do by rote regardless of the plug math - has been an issue this far.
In that sense, it restores a more analog-like workflow to a DAW in that a good console has sufficient headroom to really not be thought about that often.
I guess it depends upon how you look at that. From my POV (which is only one POV, I know), properly gain staging every device is key to getting the best out of my analog gear and even my converters. It seems perfectly natural to continue that structure throughout the chain, and very un-analog-like and unnatural to have one intermediate section within the DAW throw all gain structure rules out the window.

The impression in the literature is that one of the the great things about 32FP is that you can't clip with it. Now, if there were some real *sonic* advantage to that feature, I'll sign on immediately. That's what I'm looking for here.

But if the best anyone can do is say that it allows one to ignore normal gain structure for a couple of steps in the chain, my reply is, "And that's a good thing?" :)

G.
 
The impression in the literature is that one of the the great things about 32FP is that you can't clip with it. Now, if there were some real *sonic* advantage to that feature, I'll sign on immediately. That's what I'm looking for here.

But if the best anyone can do is say that it allows one to ignore normal gain structure for a couple of steps in the chain, my reply is, "And that's a good thing?" :)

G.

Well, for 32 bit float to have great advantages, it would have to mean that 24 bit was somehow broken, and it isn't . . . I go back to my early days of DAW, that was seven years ago with a 32 bit fixed system, Yamaha hardware. I didn't really understand digital audio, so I used to bring things in at peak -40dBFS :rolleyes: then I'd normalize before mixing :o That would have been fine with a 32 bit converter, if such a thing existed (or could exist), but I had somewhat noisy 20 bit converters instead. So I probably clipped the mix bus AND had 50dB SNR. Hey, it was still a step up from my Portastudio :p

So I didn't always get the best sounding mixes, but the mix engine itself worked great. Yamaha still uses it in their digital mixers, to my knowledge.

And hey! I resent that you think I can't sell! You should see my latest product, MIDI control software for pipe organs! Yeah, that's right a pipe organ, because Buxtehude is the next hot thing! Best of all, I'm not even charging any money for it! It drops tomorrow :D
 
Back
Top