V-DAT Quality

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

Moderators: valis, garyb

Music Manic
Posts: 1743
Joined: Wed May 15, 2002 4:00 pm
Contact:

Post by Music Manic »

No worries by going off topic.Could you please expand more or direct us to more information about processing and sound quality.
Thanks
blazesboylan
Posts: 777
Joined: Sat May 25, 2002 4:00 pm
Location: The Great White North
Contact:

Post by blazesboylan »

First of all, my humble apologies to Marcuspocus. I completely misread your posts. I agree with everything you wrote. I inadvertently started a debate thinking that you were talking about "24 bit floats" and wasted bits on the ASIO "bus"... :oops: :oops: :oops:

A few links for anyone who's interested in the concept of "floating points":

http://www.wordiq.com/definition/Floating_point
http://research.microsoft.com/~hollasch ... float.html

Incidentally in searching for these definitions I came across a link to the Sun .au audio file format:

http://astronomy.swin.edu.au/~pbourke/dataformats/au/

Interesting that it provides 32 and 64 bit floating point representations. (According to the link on the same site, WAV files do not.)


Music Manic: Let me stress that, as far as my ears are concerned, there is no difference in audio quality switching from 24 bit integer to 32 bit float etc. For that matter my ears are not "tuned" enough to hear differences between 44.1 kHz sample rate and 96 kHz. Some people can apparently hear the difference in sampling rates, but not me.

However computer geeks have spent the last 40 years tweaking and improving math algorithms for computers. The only thing computers were ever meant to do, in the early days, was calculate solutions to math problems quickly. These days floating point math functions are darned fast.

Audio is very much about math problems. Basic operations like adding, multiplying and subtracting are efficient and precise even using integers. Division is a bit more challenging.

Logarithms, sines and cosines, square roots, and so on, are all floating point operations. And they are all very much a part of audio processing. For example, if you want to calculate the dbFS amplitude ("volume") of an audio signal, the equation is:

Code: Select all

db = 20 log ( <signal level> / <full scale level> )
Therefore if, for argument's sake only, your signal amplitude is 1,000,000,000 and your full scale is 2,147,483,648, then the dbFS amplitude of your signal is -6.638597312 db.

Now of course I can't speak for CWA or sequencer software makers, who may use shortcuts to calculate the levels shown in peak meters. (*) But this calculation is certainly one way to do it; and it requires floating point math!

But again: nothing to do with "sound quality" exactly. It all has much more to do with processing efficiency. There is a performance hit every time you cast an integer to a floating point for math function calculations, and another one when you cast the floating point back to an integer. You lose precision, too, but that's not something I would worry too much about.

As far as more info about sound processing: Petal and BingoTheClowno recently brought up a couple of interesting audio processing "toolkits" in the Announcements forum. Having only cracked the manuals (I haven't started using 'em yet, mind you) I'd recommend 'em to anyone who's interested in exploring the wonderful and not-quite-as-arcane-as-it-sounds :smile: world of audio processing.

I suspect I've thoroughly bored everyone to tears by now. My apologies for being a floating point firebrand! I'll end with a couple of words (32 bit words, of course -- groan!) on VDAT:

1) I recently switched to 24 bit recordings and am now getting nasty jitter as long as my Nuendo window is open and not minimized. When I record to VDAT I don't get any jitter at all. I could buy a $500 USD word clock... Or I could use VDAT! :smile:

2) For those who are used to working in VST: don't you find working in SFP easier? I'm quite pleased with the single-window recording, myself. In particular the routing is infinitely more flexible than anything I've seen in the VST world. Thoughts?

3) Buy VDAT. It's good!

OK I'll shut up now,

Johann



(*) An old trick for certain types of math problems is to store a giant lookup table in memory, and retrieve math function values from memory. This works especially well for sine, cosine, etc. -- any function that repeats itself over the domain.


<font size=-1>[ This Message was edited by: blazesboylan on 2004-07-22 02:10 ]</font>
Counterparts
Posts: 1963
Joined: Tue Aug 19, 2003 4:00 pm
Location: Bath, England

Post by Counterparts »

My thoughts:

There's only 2^32 discrete values that can be represented by 32 bits, period. Whether it's interpreted as an integer or a floating point or a fixed point number is irrelevant.

You're generally dealing with an approximation when representing a number which has a decimal point in it - i.e. there's a precision factor involved, but the trade-off is that you can represent a much wider range of numbers. At the end of the day though, it's a 32-bit sample word.

edit: sorry, I also meant to say thanks for all the ASIO-module info!

Royston




<font size=-1>[ This Message was edited by: Counterparts on 2004-07-22 04:28 ]</font>
samplaire
Posts: 2464
Joined: Tue Jun 05, 2001 4:00 pm
Location: Warsaw to Szczecin, Poland
Contact:

Post by samplaire »

On 2004-07-20 12:32, Shayne White wrote:
OK guys, thanks for the info, but I don't have VDAT! I *do* have the STS though, which does the same 32-bit recording; does it use the same algorithms as VDAT? I'll check it out for recording.
Unlike VDAT, STS records to RAM, I belive which makes it limited. However having lots of RAM and recording several minutes is ok. VDAT is a multitracker, isn't it? SO it can't be replaced with STS :smile:
Stige
Posts: 260
Joined: Sun May 25, 2003 4:00 pm
Location: Finland

Post by Stige »

Good points given about floating point math.

Still I wonder why everything that uses integer math, sounds better to me. I mean mixing engines. Previously I had Yamaha DSP Factory, before moved on to pulsar. That card uses 32-bit integer. I used to route my tracks from cubase to Yamaha's mixer. It definitely improved the sound.

SFP sounds better than software engines.

SAW studio sounds better than others

It might be just a strange chance that things I hear sounding good also uses integer.

What comes to hearing difference between 44.1KHz and 96KHz or higher, I think the best way to evaluate it, is to use an EQ that uses oversampling. There is a free VST plugin called 'nyquist eq'. To my ears that eq sounds excellent through whole frequency range.
spiderman
Posts: 189
Joined: Thu Jun 13, 2002 4:00 pm
Location: the web indeed !!

Post by spiderman »

someone speak about no-jitter conserning the recording with Vdat . is there a tool for mesuring the jitter ? how does it sounds .
I think a bad transport cd with jitter sound harsh . actually I don't know where listen to to identify the jitter .
Music Manic
Posts: 1743
Joined: Wed May 15, 2002 4:00 pm
Contact:

Post by Music Manic »

Thanks guys.
So STS records to RAM.I thought VDAT would have to do this also.So how does it bypass RAM?
Also,if we record to 24 bit in VDAT,for example,then output through phono outs how does Scope deal with dither?
Could someone explain recording(maths)processes of recording,then running through effects,mixers,and how it affects signal please?)
Thakns blazesboylan for maths pointers.
Music Manic
Posts: 1743
Joined: Wed May 15, 2002 4:00 pm
Contact:

Post by Music Manic »

Just on the subject,how is 3dat coming on?Will that allow 24 bit and work on XP in the future?
Counterparts
Posts: 1963
Joined: Tue Aug 19, 2003 4:00 pm
Location: Bath, England

Post by Counterparts »

blazesboylan wrote:

Yes, you lose 8 bits of whole number precision.

If you can find me a number that IS represented by a 32 bit integer but ISN'T represented in the 32 bit floating point domain then I'll send ya a Coke and a bag of chips, on the house.
Your first sentence above explains why, in fact, you cannot represent every 32-bit integer value with a 32-bit floating point.

BTW, I don't think that it's necessarily 8-bits that you lose - it depends on the implementation (although perhaps in the 'digital audio domain', it's always an 8-bit exponent which is used).

Salt 'n' vinegar, please! :smile:

An interesting article on fixed-point vs. floating-point arithmetic for DAW systems:

http://www.seneschal.net/papers/bitstre ... eam035.htm

...mentioning SHARC DSPs no less!

Royston

p.s. you can represent any 24-bit integer value with 32-bit floating point, of course!
AndreD
Posts: 716
Joined: Tue May 28, 2002 4:00 pm
Location: hamburg-audio.de
Contact:

Post by AndreD »

Could it be a matter of "pan law" ?
..Just a thought :wink:
blazesboylan
Posts: 777
Joined: Sat May 25, 2002 4:00 pm
Location: The Great White North
Contact:

Post by blazesboylan »

I started a reply to this a couple of days ago and then got into a wrestling match with Mozilla. Needless to say Mozilla won. You can all thank it for the relative brevity of this message...! :evil:

@Smartypants: (Errr, I mean Counterparts... :razz:) IEEE is the standard floating point format these days. There are in fact less numbers represented by 32 bit floating point than by 32 bit integer, because of the duplicates (e.g. 1 x 2 ^ 1 == 2 x 2 ^ 0).

You haven't named a specific number so no salt'n'vinegar for you yet. Give me a number! :cool:

Incidentally of all the numbers represented by 32 bit signed int that are NOT represented by 32 bit float, the biggest rounding difference is 64. We're talking about numbers that are all over 16 million, so not a huge %. For example, the 32 bit integer:

2,147,483,584

Is rounded in 32 bit floating point to:

2,147,483,648.000000

On the other hand if you were to represent this number as an integer:

-174,128,847,165,414,375,698,728,300,949,473,853,440.000000

It would come out as:

-2,147,483,648

That's a pretty big rounding error!!!

Anyway the precision is not all that important IMHO. It's the fact that the floating point coprocessor on your CPU is there to do floating point math. Digital signal processing is all about logarithms, sines, cosines, etc. So floating point is good. Use the floating point Luke.

BTW that article you linked to is great! The only thing I thought funny was that some crackpot decided to compare 48 bit integer audio to 32 bit floating point. I'd be willing to bet that 24 bit integer works a heckuva lot better than 8 bit floating point... I wonder if anyone will invite me to a conference to discuss.

Anyway thanks for the link!


@Music Manic: I could be wrong, but I had the impression the upcoming CutMaster was to replace TripleDat. I think GaryB has the inside scoop, maybe he can give us one of his long dreary monologues on CutMaster? :razz:

(Jus' teasing GaryB. :smile:)


@spiderman: I was the one talking about jitter. Now I'm not sure. *Sigh*. It could be PCI latency I'm suffering from. I think the symptoms are both the same: lots of blurps, splats, narfs, egads, boinks, etc. Dunno if there's any real way to measure either one except with your ears. For me it started when I moved to 24 bit, but minimizing Nuendo alleviates the problem somewhat. I'm considering buying a wordclock anyway, since I figure it will at the very least look cool and provide extra flashing lights.


OK I'm off my floating point soapbox. For real this time. :smile: Counterparts if you want your crisps + Coke you gotta come up with an actual number!

Cheers,

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

Post by garyb »

don't know anything definite...
afaik, there will be a few versions of cutmaster, one of which is the tdat successor. cwa has made no final announcement on the subject so it's all speculation at this point.

i'm just a poor typist(really!) or i'd go on and on like y'all wish i would....

:wink:
hubird

Post by hubird »

no
Music Manic
Posts: 1743
Joined: Wed May 15, 2002 4:00 pm
Contact:

Post by Music Manic »

On 2004-07-25 04:12, garyb wrote:
don't know anything definite...
afaik, there will be a few versions of cutmaster, one of which is the tdat successor. .

:wink:
So will they allow upgrades from 3dat?
User avatar
astroman
Posts: 8455
Joined: Fri Feb 08, 2002 4:00 pm
Location: Germany

Post by astroman »

such a possibility was mentioned in one of Frank Hund's announcements.

cheers, Tom
blazesboylan
Posts: 777
Joined: Sat May 25, 2002 4:00 pm
Location: The Great White North
Contact:

Post by blazesboylan »

On 2004-07-25 08:29, hubird wrote:
no
come soon
User avatar
astroman
Posts: 8455
Joined: Fri Feb 08, 2002 4:00 pm
Location: Germany

Post by astroman »

I'm very humble in math, but nevertheless the discussion about number precision misses the subject :wink:

It's not about how precise you can represent or divide one or the other value - it's about a continuous flow of processing.
And what are the programmer's most favourable building blocks ?

Yes - loops and iterations.

Without special caution almost anything turns in to random values after enough loop passes - so careless programming IS bound to fail.
That's why there are differences (obviously) in sound quality even if people use the same basic tools.

I have a faint memory from the 80s when we discussed a customer's problems with bookkeeping apps. They dealt with projects usually in the 3 figure million range, but had to be precise to the penny.
Only special 'BCD-math' packages could do the trick. That 'binary coded decimal' was some sophisticated integer math if memory serves me right.

Another point is the demand for absolute precision in audion processing.
It's completely different from a scientific calculation about (say) the acceleration needed to hit a certain planet's orbit, like the thing they recently did when passing between the rings of Saturn :eek:

The audio calculation preferably should keep the integrity of the waveform's SHAPE, which is much easier to detect than a similiar (in values) deviation of it's amplitude.

just another 2 cents, Tom
Immanuel
Posts: 3018
Joined: Thu Oct 25, 2001 4:00 pm
Location: Aalborg, Denmark

Post by Immanuel »

Johann here goes in integer bits:

1111 1111 1111 1111 1111 1111 1111 1111
1111 1111 1111 1111 1111 1111 1111 1110
1111 1111 1111 1111 1111 1111 1111 1101

you've got to find something in there, wich you can not do in 32bit floating point.
blazesboylan
Posts: 777
Joined: Sat May 25, 2002 4:00 pm
Location: The Great White North
Contact:

Post by blazesboylan »

1111 1111 1111 1111 1111 1111 1111 1111 = -1
1111 1111 1111 1111 1111 1111 1111 1110 = -2
1111 1111 1111 1111 1111 1111 1111 1101 = -3

Cast as floating points:

-1 = -1.0
-2 = -2.0
-3 = -3.0

This bag of crisps + can of Coke are really lonely. Come on, someone wants 'em.
hubird

Post by hubird »

Image.............' 8*4*1=...-1...Image '
Post Reply