Another thread about summing in scope

A place to talk about whatever Scope music/gear related stuff you want.

Moderators: valis, garyb

Warp69
Posts: 679
Joined: Sun Jun 17, 2001 4:00 pm
Location: Denmark
Contact:

Re: Another thread about summing in scope

Post by Warp69 »

ReD_MuZe wrote: besides what is 32bit float? it has the resolution of 24bit integer :>
Ehm what?

If you define that the 24bit int have the following range [-1 ; 1] (normal audio) then 32bit float exceed 24bit int many times in precision. Remember that 32bit float has 1 sign bit, 8bit exponent and 23bit mantissa.

The smallest number for 32bit float (Normalized) : 0/1 0000 0000 000 0000 0000 0000 0000 0000 = (+/-) 2^-126 = (+/-) 1,1754944*10^-38

The smallest number for 24bit int : 0/1 000 0000 0000 0000 0000 0001 = (+/-) 1,192093*10^-7
ReD_MuZe
Posts: 670
Joined: Sat Jun 15, 2002 4:00 pm
Contact:

Re: Another thread about summing in scope

Post by ReD_MuZe »

smallest and biggest numbers have no impact on the resolution of the audio chain.

when you convert float to integer you cannot take advantage of the extra headroom, and therefore you need to optimize the signal and then loose the 8 bits, else you will not retain even those 24 bits.
User avatar
siriusbliss
Posts: 3118
Joined: Fri Apr 06, 2001 4:00 pm
Location: Cupertino, California US
Contact:

Re: Another thread about summing in scope

Post by siriusbliss »

ReD_MuZe wrote:besides imho talking about summing is waste of time
I agree with you ReD_MuZe.

Greg
Xite rig - ADK laptop - i7 975 3.33 GHz Quad w/HT 8meg cache /MDR3-4G/1066SODIMM / VD-GGTX280M nVidia GeForce GTX 280M w/1GB DDR3
Warp69
Posts: 679
Joined: Sun Jun 17, 2001 4:00 pm
Location: Denmark
Contact:

Re: Another thread about summing in scope

Post by Warp69 »

ReD_MuZe wrote: besides what is 32bit float? it has the resolution of 24bit integer :>
Thats not correct.

The value of 3918 in 24bit int represents 0,00046706200 = FP : S/0 E/0111 0011 M/111 0100 1110 0000 0000 0000
The value of 3919 in 24bit int represents 0,00046718120 = FP : S/0 E/0111 0011 M/111 0100 1111 0000 0000 0000

The value of 0,00046712384 can not be represented in 24bit without rounding error, but 32bit float hasn't any problem = FP : S/0 E/0111 0011 M/111 0100 1110 1000 0100 1101

As you can see from the above the FP has 12bit (look at the mantissa) more precision (resolution) than int.
Mike Goodwin
Posts: 170
Joined: Sun Dec 02, 2007 8:42 am
Contact:

Re: Another thread about summing in scope

Post by Mike Goodwin »

Holly crap. Let me know when you figure that one out and then please explain it to me in a language I understand :-?

Stardust will you share that bag of popcorn with me?
ReD_MuZe
Posts: 670
Joined: Sat Jun 15, 2002 4:00 pm
Contact:

Re: Another thread about summing in scope

Post by ReD_MuZe »

when you convert to 32bits integer from 32bits float you don't get more than 24bits of resolution.
it has nothing to do with smallest or largest number. to do the conversion you have to drop the decimal point.

in 32bits headroom comes directly on the expense of resolution. especially since floating point deals with imaginary numbers.
Warp69
Posts: 679
Joined: Sun Jun 17, 2001 4:00 pm
Location: Denmark
Contact:

Re: Another thread about summing in scope

Post by Warp69 »

24bit int audio have 2^23 (8.388.608) possible steps between 0 and 1 which equals a contant precision of 1,1921*10^-7.

32bit int audio have 2^31 (2.147.483.648) possible steps between 0 and 1 which equals a constant precision of 4,6566*10^-10.

32bit float audio have the following steps between 0 and 1 :

0,5 - 1 : 2^23 possible steps (exponent : -1) - equals a precision of 5,9605*10^-8 (twice the precision/resolution of 24bit int)
0,25 - 0,5 : 2^23 possible steps (exponent : -2) - equals a precision of 2,9802*10^-8
0,125 - 0,25 : 2^23 possible steps (exponent : -3) - equals a precision of 1,4901*10^-8
0,0625 - 0,125 : 2^23 possible steps (exponent : -4) - equals a precision of 7,4506*10^-9
0,03125 - 0,0625 : 2^23 possible steps (exponent : -5) - equals a precision of 3,7253*10^-9
0,015625 - 0,03125 : 2^23 possible steps (exponent : -6) - equals a precision of 1,8626*10^-9
0,0078125 - 0,015625 : 2^23 possible steps (exponent : -7) - equals a precision of 9,3132*10^-10
0,00390625 - 0,0078125 : 2^23 possible steps (exponent : -8) - equals a precision of 4,6566*10^-10 (the exact same precision/resolution as 32bit int)
..
..
..
..
..

And it continues down to exponent : -126

If you convert 32bit float to 32bit int (audio range [-1;1]) you'll get :

(+/-) 0,00390625 - (+/-) 1 : no rounding errors
0 - (+/-) 0,00390625 : possible rounding errors

If you convert 32bit int to 32bit float (audio range [-1;1]) you'll get :

(+/-) 0,0078125 - (+/-) 1 : possible rounding errors
0 - (+/-) 0,0078125 : no rounding errors
Mike Goodwin
Posts: 170
Joined: Sun Dec 02, 2007 8:42 am
Contact:

Re: Another thread about summing in scope

Post by Mike Goodwin »

Warp69 wrote:
If you convert 32bit float to 32bit int (audio range [-1;1]) you'll get :

(+/-) 0,00390625 - (+/-) 1 : no rounding errors
0 - (+/-) 0,00390625 : possible rounding errors

If you convert 32bit int to 32bit float (audio range [-1;1]) you'll get :

(+/-) 0,0078125 - (+/-) 1 : possible rounding errors
0 - (+/-) 0,0078125 : no rounding errors
Thanks for the popcorn Stardust :P

Warp thank you for this very detailed post! I cant say that I completely understand the math mind you. Would you be willing to put this into a non mathematically sentence or two for me?

p.s. I am going to try and demo your verbs today :)
ReD_MuZe
Posts: 670
Joined: Sat Jun 15, 2002 4:00 pm
Contact:

Re: Another thread about summing in scope

Post by ReD_MuZe »

ola warp :>
ur math is slightly off. float doesnt have a range of 0-1 (it has a range of + - 3.4028234 x 10^38) and niether does integer (which ranges from -1 to 1 in scope's fractional int type).
we are using signed types for audio.
second of all the quiet bits don't have 23bits of resolution, as each range looses precision.

32 bits can give the same amount of combinations if its float or integer - it doesnt matter.

float doesnt have more resolution. it has more headroom. and maybe if you use fully normalized audio you can keep the 32bit precision. but thats not what sequencers and drivers do. you usually use just a small fraction of the headroom and the rest is just cut off on conversion.

just try and record something louder than 0db in scope in 32bits :>
Warp69
Posts: 679
Joined: Sun Jun 17, 2001 4:00 pm
Location: Denmark
Contact:

Re: Another thread about summing in scope

Post by Warp69 »

Ola ReD_MuZe - I respectfully disagree.
ReD_MuZe wrote:ur math is slightly off.
No! Please reread everything I wrote.

More information - http://en.wikipedia.org/wiki/IEEE_754-1985 & http://babbage.cs.qc.edu/courses/cs341/ ... ences.html
ReD_MuZe wrote:float doesnt have a range of 0-1 (it has a range of + - 3.4028234 x 10^38) and niether does integer (which ranges from -1 to 1 in scope's fractional int type).
we are using signed types for audio.
The range 0-1 was used for demonstration purpose only - which should be pretty clear. Please reread my posts.
ReD_MuZe wrote:Second of all the quiet bits don't have 23bits of resolution, as each range looses precision.
Yes it does. Floats lose precision only when you increase the exponent and gain precision when you decrease the exponent. Please read the links provided.

If you believe Im wrong then please prove me wrong :)
User avatar
Tau
Posts: 793
Joined: Mon Jun 26, 2006 4:00 pm
Location: Portugal
Contact:

Re: Another thread about summing in scope

Post by Tau »

What amazes (amuses) me is that while they don't agree on the math, both Red and Warp have proven to be excellent programmers - no one can deny that... I would say there's more than one way to skin a cat :)

T
MD69
Posts: 619
Joined: Mon Nov 07, 2005 4:00 pm
Location: France

Re: Another thread about summing in scope

Post by MD69 »

hi,

Taken the real dynamic range (about 101db at the converter and not the theorical 140db) you're just in the noise floor I guess!

cheers
User avatar
garyb
Moderator
Posts: 23364
Joined: Sun Apr 15, 2001 4:00 pm
Location: ghetto by the sea

Re: Another thread about summing in scope

Post by garyb »

:lol: darn real world noise floor...

all this theoretical discussion IS interesting.

i'll add another thought, or maybe the same thought expressed a little differently. i would expect cubase to sum MORE accurately and phase cancel more completely that a vintage Neve console. the real console has too many capacitors and resistors that have +- values for it to phase cancel perfectly. it's a matter of subjective opinion of course, but there are few who would prefer the sound of a mix done in cubase over the real console. most would find the cubase mix to be "less musical" and "sterile". "better summing" is not necessarily more accurate "summing". what happens in a real desk when tracks are combined is more than a two dimensional mathmatical model.
User avatar
valis
Posts: 7650
Joined: Sun Sep 23, 2001 4:00 pm
Location: West Coast USA
Contact:

Re: Another thread about summing in scope

Post by valis »

All of those electronics in a traditional console and their effect on time-response (transient/slew response), phase (NOT time domain shift but rotation), THD and so on were the beginnings of this whole 'summing' discussion years ago. Seems to me the idea was to reduce noisefloor in the mixer and improve the accuracy of tracking a waveform.

However it's interesting that as 'real' hardware mixers got more & more clinical, the 'vintage' consoles of the 40's, 50's & 60's have become more & more sought after. I know several people that would lust over a Studer 169 or 189, and if you google up discussions on prorec, recording.org etc you'll see plenty of references to their 'sweet vintage sound' and discussions of them being used as DAW 'summing mixers', and yet their THD, crosstalk etc figures are nowhere close to what modern gear gives. So it's the color of the inaccuracy that's sought after here, not the sterility.
User avatar
astroman
Posts: 8446
Joined: Fri Feb 08, 2002 4:00 pm
Location: Germany

Re: Another thread about summing in scope

Post by astroman »

yeah, that sh*t is pretty addictive :D
since I bought a part of such a console for bass input (curiosity in the first place), I want comp, eq and mic pre from the same generation of gear as well...

cheers, Tom
ReD_MuZe
Posts: 670
Joined: Sat Jun 15, 2002 4:00 pm
Contact:

Re: Another thread about summing in scope

Post by ReD_MuZe »

Warp69 wrote:Ola ReD_MuZe - I respectfully disagree.

Please reread everything I wrote.
Maybe i don't understand what you wrote. the syntax there is hard to follow...
what i understand from what you wrote is that 32bit float has more resolution than 32bit integer, and that conversion in the working range of float (-1 to 1?) to integer will yield no loss of data?
how is that logical?
Floats lose precision only when you increase the exponent and gain precision when you decrease the exponent. Please read the links provided.
arent we talking about single precision floating point?
http://en.wikipedia.org/wiki/Single_precision
this is what 32bit floating point audio uses for recording.
this means that each "bit" reprisents a number:
23rd bit is 1.0
22nd bit is .5
21st bit is .25
and so on
so 1.75
is the 23rd, 22nt and 21st bits turned on.
which means
that the lower the number, the less bits you have for it.
since its not a linear format but an exponential one, you have more range - which means less resolution for the same range.
the following 8 bits represent the "position of the decimal point" or the range, via exponent.

the range between -1 and 1 in 32bits is what's converted to the integer portion, anything above 1 or -1 gets clipped and lost.
If you believe Im wrong then please prove me wrong :)
you implemented some doubt in me, perhaps i don't understand what you say.
ReD_MuZe
Posts: 670
Joined: Sat Jun 15, 2002 4:00 pm
Contact:

Re: Another thread about summing in scope

Post by ReD_MuZe »

Tau wrote:What amazes (amuses) me is that while they don't agree on the math, both Red and Warp have proven to be excellent programmers - no one can deny that... I would say there's more than one way to skin a cat :)
T
Ola Tau, im not a programer , nor am i a mathematician.
math is absolute there is just one way it works.
however making filters and oscs is so easy (honest!), that one doesn't need to know much science and math to make a great sounding filter. most 90% of DSP math is 4th grade math (+-/*) 8% is 8th grade math (trigonometry, exponents , logs) and the rest of the 2% you can learn as you go along. the only problem is, that math doesn't have a definition of a great sounding filter. thats up to the algorithm designer to tweak.

which leads me to the earlier subject - v00d00 :>
User avatar
Tau
Posts: 793
Joined: Mon Jun 26, 2006 4:00 pm
Location: Portugal
Contact:

Re: Another thread about summing in scope

Post by Tau »

I stand corrected! What I meant is that you both make great sounding devices. :)
User avatar
astroman
Posts: 8446
Joined: Fri Feb 08, 2002 4:00 pm
Location: Germany

Re: Another thread about summing in scope

Post by astroman »

... and you both managed to establish some kind of 'signature' sound :)
would be interesting to hear a Red-Reverb and a Warp-Synth, wouldn't it ? :D

cheers, Tom
User avatar
sonicstrav
Posts: 459
Joined: Wed Jan 28, 2004 4:00 pm

Re: Another thread about summing in scope

Post by sonicstrav »

To make i.e a good filter - good algorithm design (as lean as possible without compromising the sound), superb musical ear, highly self-critical, doing it for the love of doing it.
I know this seems very simplistic and obvious, but there is such much stuff programmed for audio that doesn't follow these 4 simple (laws). None of them can be left out.


Tom - 'signature' sound - that's the art in the algorithm design
Post Reply