32bit Floating Point And Vsts

Having a discussion on another forum (believe it or not they do exist) about what level sample CDs should be normalised to. They were complaining about a certain person normalising to 0dB and said it should be either -6dB or -12dB (not even consistent there) to avoid clipping when entering the processing chain within you DAW (part of the reason for Renoise’s -6dB I believe.) Now I have voiced my opinion that it should be normalised to 0dB as every single DAW and software sampler gives you the opportunity to use either a pre-gain at the beginning of the channel or set sample volume.

So firstly I would be interested in other people’s opinions on this.

Secondly I mentioned that I know my host uses 32bit floating point processing through out, and thus any adjustments made from initial level are going to have the minimal degradation to the sound. They brought up the fact that many of the third party effects will not be operating as such. Now using many (well very nearly entirely, except PSP Nitro) freeware effects I wouldn’t be surprised if many of mine are working at 16bit. Any way to know what the effects are operating at and how much affect to people think it has on the sound?

Generally speaking, if you’re creating a sound that is intended for further processing in a host or sound editor, then normalising to 0dB is OK. You’re quite right in saying that the level can always be reduced later if necessary (and it will almost certainly have to be reduced if it’s going to be mixed with other material).

If you’re preparing the final mix of your audio that is intended for CD duplication, then it’s actually a very good idea to normalise to a level that is slightly below 0dB. The reasoning and theory behind this can get a little weird, but essentially it’s to do with how the audio signal is reconstructed by the DAC (digital to analogue converter) in certain players. In some situations, even though the digital sample data itself does not clip, the nature of the filtering that occurs during reconstruction can cause the audio signal to actually exceed 0dBFS (by as much as 6dB in the worse cases). These occurrences are referred to as “intersample peaks” and they can result in distorted audio output, depending on the design of the player and whether it has any kind of buffer/headroom to deal with such situations.

The problem mainly affects older or cheaper players, and isn’t really much of an issue these days as far as I know, but it’s still something worth keeping in mind. Working at -6dB or -12dB is a bit extreme, though. Normalising to something like -1dB is probably more than enough (but I’ve seen people say that -0.5dB or even -0.1dB is also fine).

More reading:
http://www.gearslutz.com/board/tips-techniques/334385-intersample-peaks.html

An interesting bit-depth analyser which also claims it can detect intersample peaks:
http://www.stillwellaudio.com/?page_id=33

I gave it a try in Renoise with everything set up so that my sample (white noise) played at exactly 0dB overall and rendered to a perfectly normalised .wav file (Soundforge detected no clipping at all). The Bitter analyser did in fact show that there were potential intersample peaks occuring there, despite the .wav file being OK.

It’s more to do with providing a kind of safety net for new users I guess. If everything was at 0dB, then as soon as you tried to play 2 samples together that were both normalised to 0dB, you would instantly suffer from clipping. The -6dB just provides a little bit of extra headroom for mixing and helps to prevent clipping in most situations. I would personally love the option to turn this feature off myself, or to have a preference for the default mixing level, since I understand what is going on and would know how to prevent clipping if it did occur. Anyway, this stuff has been discussed in other threads :)

It’s true that a plugin can pretty much process the audio in any way it wants/needs, but you’ll find that almost every single plugin out there is working with 32-bit floating point numbers. Without getting into too much detail, and without getting into the whole 32-bit/64-bit thing, 32-bit float is the standard and most sensible way to handle the audio from host to plugin and vice versa. 16-bit numbers can only represent a maximum of 65535 possible unique values, compared to the 4294967296 that 32-bit offers. For the vast majority of DSP-related functions such as filtering, 16-bit simply doesn’t provide enough resolution or numerical accuracy to be useful during complex DSP calculations.

Cheers for the detailed reply dblue.

Most of it is as I had thought/known. Didn’t know about the intersample peaking though, mind I had seen Soundforge say it was peaking on material which should of only been normalised 0dB. Have noticed a few sample packs at around -1dB to -1.5dB and always thought it an odd kind of number to choose but that explains it.

Didn’t know if a system was inherently 32bit in design (like the OS’s most of us are running) that would necessarily the that plug-ins designed for it would take account of 32bit audio or more likely be made to work with the more common 16 and/or 24 bit audio. Soundforge Audio Studio can only work with 16/24 bits but I have often suspected it works with 32 bit internally and oversampling (I know if you normalise to -12dB, back to 0dB, invert and mix with original you get no resulting noise if you don’t first save the -6dB file.)

@00.1: interesting video. seeing your posts around these parts makes me feel like you have seen the entirety of youtube. my main point of interest in this particular video was the fact that the guy’s moustache is growing out of his nose and down past his mouth over his chin, like chocolate-snorting gone wrong.

lol, yeah, good observation.

mute the video on the right or the left lol…youtubedoubler [might want to lower your volume before clicking on the link]