Fader Math test please sign in software users

  • Thread starter Thread starter pipelineaudio
  • Start date Start date
pipelineaudio

pipelineaudio

Well-known member
In the other threas were all talking about fader math errors. Lets all do a simple test, with each person's particular type of software.

1. Generate a square wave at 1khz, -12dBFS
2. Generate a sine wave at 1 khz, -12dBFS
3. Generate white noise at -12dBFS

for each of these individualy, do the following:

make SURE any sort of dither in the app is turned off

1. Turn the file down 6dB in the software, using the channel fader
2. Using some part of the app's routing, turn that same wave back up 6dB
3. Render it to a track
4.Play the original and the rebered file back at the same time( lining up in case of a delay on render), with one of the files flipped 180 degrees out of phase
5. Render this track

if this new track contains ANYTHING, then we got a problem
 
I need to hind out how to disable the dither -(Sonar rev. u571 in this case.:)
Is keeping dither off just to remove a variable?
Wayne
 
pipelineaudio said:
if this new track contains ANYTHING, then we got a problem

...HOLLY ZETTIAN !!!

Your test absolutely make sens to me. Both files should cancle phase each other right ? I did everything explained, and find the new track STILL contains something... It's trusty Cool Edit Pro 2. I thought it shouldn't have anything to do with latency thingie, but seems like it has... I dunno. Now I worry...
 
I just did it in Cakewalk9 and rendered all six waveforms. The product was total phase cancellation. Nada.
 
Mixsit, yeah getting rid of the dither is to get rid of a variable. Dither is ( or should be ) random, so it would skew the results

Not sure how to turn it off in sonar...SOnusman seems to have found something funny on the mix buss, but lets try to knock off the dither first

James Argo, Im betting that in CEP it may be more of a timing thing, just a slight delay caused by the render...its hard in CEP to REALLY line waveforms up, maybe take it to sound forge in stereo and see if they really are lined up?

Track Rat, great work

Now for the interesting part, for those of you who might not know, the " industry leader" PT TDM cant do this! I am interested to know if PT native can though

a LOT of the complaints about digital mixing are based on results with PT, and carried as gospel for ALL apps...I think thats backwards. If PT cant do math correctly, we ought not to base our techniques on it

Ok, so :

Cakewalk 9: passed
COoledit: James Argo's working on it
Sonar ( 1 or 2?): Mixsits working on it
Ill try to do Vegas 3 and 4 today
PT native?
N-Trax?
Cubase SX?
Cubase VST?
Acid 4 ?
Nuendo ?
Logic?
what else are we missing?
 
Track Rat said:
I just did it in Cakewalk9 and rendered all six waveforms. The product was total phase cancellation. Nada.

Man you'r fast! (I can't even run my DAW and the internet p/c at the same time...:p
Very interesting.
And to put this into perspective, if a simple gain change is bad, and then we're also doing comps, eq, ect, ect...?
 
I`m kinda dumb at this engineering tech talk, but I have a question if yall will allow me.

If there is not a complete cancellation, you said "we have a problem". What would you name this problem and would it be exclusive to non-exact math done in the fader section or could the issue arise somewhere else in the routing?

Which in turn leads to another question. Is it the software thats buggy, or random issues with the processor fucking up the math?
 
ambi, sound forge or wavelab for sure can generate them, otherwise they are probably available for download on the net

maybe even a better source, might be brian tannkersley's smpte files instead:

http://www.purgatorycreek.com/smpte.html

Toki, if they dont cancel, all we know is we got a problem :) not sure where...and in fact depending on how you route you might even get different results, but the point is, it OUGHT to be right everywhere
 
Ok, I did it in u571, sort of. I didn't follow the rules. (my Typical MO.)
I imported a two track mix, dropped it 6, bounced to a new track, raised that +6 and inverted. Brought Trk-1 back to 0, and dragged it onto Trk-2. (I'm using project 'zero-time' for alignment)
Now the track looks exactly like Trk-1, but it plays back at -50 or 60. (the display shows only the 'top' track?)
Did it again, this time with 'Bounce to tracks' (an internal mix-down).
Now I have a nice flat line, but it still plays back (and meters now at -70 or so).
If it means anything, the track sounds fine. Same stereo placement, nice crisp 'shaker' still dead center, (a ton of hiss as every knob on my mixer is 'dimed!)

I'll try it again. The only place I can find to turn off dither is if I 'export' instead of 'bounce'. Either method also goes out through the main buss FWIW, except maybe the 'drag and drop'.
The square-wave would be better for checking alignment?
Wayne
 
...it's getting weird now.
I tried again in CEP2. This time, I free up all PC's activity but the CEP2. It acts different now. The pic should tell you more than my words to describe the result on square wave test...
Anyway, it's quite tiny noises, about -55dB, I zoom it to get better pic...
 

Attachments

  • square.webp
    square.webp
    27.4 KB · Views: 224
ProTools LE 5.1
Total phase cancellation.


So what's may excuse now?:D
 
I just closed ProTools.
Be careful! Those math errors sure kick in as the application is shutting down! Ouch!!!
 
I have a question along these lines:

When you bring the main fader down on a track, is it removing bits from the bottom end, or is it scaling every sample value so that the lowest volume samples still remain in the mix?

To get total phase cancellation, I'm assuming it's the latter?

And, on the other end, if you raise the gain is it just adding zero's to the low end and "sliding" all the values up the scale, or does it linearly scale all values and therefore increase the dynamic range?

Total phase cancellation probably isn't possible if you lose bits when lowering the fader, but it should be if you go in the positive direction. However, if it's scaling the values, then you would have to have a completely reversible algorithm for scaling to get total cancellation.

Even in theory, I'm not sure that is possible. When you reduce the dynamic range (lower the faders) you lose precision, and thereby lose information. If the software was really ignoring the "original" waveform and instead using just the information contained in this "reduced dynamic range" waveform when you increase faders back to 0dbfs, then I think it's theoretically impossible to restore the information that was there.

Now, with a sqare or sine wave, the mathematics (I think, I'm having trouble doing the calculations in my head) should allow restoration of the original wave. White noise, being random, should also restore an "equivalent" waveform.

However, for complex waveforms with non-random and non-cyclical multi-frequency sound components, I don't think it's possible to get exactly the same waveform after the -6 +6 restoration process.

I'm almost sure this is why mixsit got the results he did. There is some residual information there left over from the interpolation error, which is unavoidable.






Try doing this test:

(1) Take a real clip from some song, track, or whatever, and save it as a .wav with no dithering.
(2) Import the .wav back at it's native resolution (don't up convert for processing). Lower the gain -6db and save it as a .wav with no dither as another .wav.
(3) Import the .wav created in step (2) and raise the gain +6db. Save as a third .wav.

Use a file compare (either old school DOS or some utility like in CEP) to do a bit for bit comparison of the .wav's. DOS would be the easiest way to do this.

You should find a significant difference between the files.
 
James Argo said:
...it's getting weird now.
I tried again in CEP2. This time, I free up all PC's activity but the CEP2. It acts different now. The pic should tell you more than my words to describe the result on square wave test...
Anyway, it's quite tiny noises, about -55dB, I zoom it to get better pic...

Just curious. Was it look 'square' befor the cancelling.

Track Rat, did you happen to play it and check the meters?
I had what looked like a flat line.
 
I just did it in CEP2 and got complete cancellation. In order to make sure everything is lined up in CEP, right click on the wave block and go to wave properties and check the offsets. Just put the same offsets on both waves and theyll be lined up. Its pretty straightforward. Make sure your routing is exactly the same for both waves.
 
2nd time on u571, w/ square wave in @-12, in a new 16 bit project, 'exporting' w/ no dither.
Got an almost flat line, reads -55 on the meter. The simmilar to the going internal-through-the buss 'bounce'.

Since the other test with music sounded so good at -70, I tried something different.
Put a volume envelope on one of the two tracks (the inverted one), put the start node a '0', the end node at -0.1 db. (20 second clip) Recombined them.
Now, the meter starts at -55ish, progresses down off the scale at -90, then comes back up to -55.

Any chance that the remnants I'm seeing are just inaccurate vlaues for what '6 db' is? Like when it says -6 it's actually -6.001?
Wayne
 
could be...this stuff is getting interesting...I really need to bone up on some math, but the basic precision errors would probably be truncated to el zippo in any 32 bit float mix engine, or even most fixed ones. I would think it could only return a whole number, and with 8 or so extra bits in most apps, the rounding would come out to the closest CORRECT whole number. I have a very hard time thinking that 8 extra bits of precision is not enough to round correctly...we need to think of some numbers, do multiplication on them at a higher precision then return them to their correct precision and see if we cant do a mind experiment that yields an error
 
Back
Top