My Project In 2009 : Xrni High Quality ?


In December 2008, I began a new project for Renoise 2 that is to say for ripping high quality .WAV samples to converting in .XRNI Format. I need your help please for HIGH quality of all samples :

Can I use, without remorse, the option following for each sample : “Maximize the volume of the sample” in Renoise 2 ? In fact, I would like to know if there will be a saturation in the music using a lot of samples using this option…

For example, in the same row : bass + clap + open hihat + rimshot + snare + synth + string + voice + etc.

Thank you for your help,


i’ve been under the impression that any processing done to a sample would introduce rounding errors. it may be better to do such processing with Renoise internal effects (gainer), and leave the original samples intact if you’re unsure.

I am also curious to hear from someone knowledgeable, what sort of damage normalizing samples can do.

Don’t normalize. Ever.

and why not…?If it is to loud you can always adjust the volume afterwards

If it is too quiet you can always adjust the volume afterwards.

Normalizing doesn’t add any information, but it adds a bit of noise…

There’s always a funny trick you can do to find out the bad side of normalizing or generally raising the gain.

  1. Take a sine wave that lasts a couple of seconds (so you can hear its note).
  2. Make it as quiet as possible. But don’t mute it. Just keep it very very quiet.
  3. Save this as a 16Bit sample.
  4. Now normalize it.

You’ll hear some artifacts because in 16 Bits there was not enough information to save values between zero and the peak of your sine wave. Now that you normalized the volume, the sine peaks got raised to 0db, the zero x-ings were kept as zero and anything in between is just a big and sudden step (to peak and to zero). That causes the noise which Johann mentioned already.

If you use a gainer in Renoise instead, then your edit is non destructive at least so one can still use the sample in its original nature.
But honestly - make music for ears, not for maths or physics. So if you feel like normalizing the master of a song by a couple of dB…I don’t belive anyone could ever note the loss of quality (even though there is some loss).

what about float data,
i hear somethere that renoise saves data not as integer but float
so sine wave cant be affected in such way (if saves in float)

Right, Renoise has a 32Bit float engine. Given a sample which was originally saved as 32Bit float and most preferably generated on the PC (so there’s no ambient or circuit noise), you’ll have the liberty to reduce and raise the volume almost as much as you like.


Whaou !? I didn’t know that Renoise 2 could save samples as 32Bit float ? I have got a better motivation to continue my project about my .XRNI instruments for all composers & renoisers in 2009 :slight_smile:

I hope that you will be patient and I will see if I will raise the volume or not…

Thank you & Greetings,



it’s good for the soul sometimes…

Now on an actual serious note…

what do you mean by 32Bit float engine? I’ve heard them reference to floating in logic, flstudio, etc. What does all that rubbish mean?

Vizion, Renoise always had a 32Bit float engine. It saved samples like that since version 1.8 already.
Edit: and earlier versions saved as a 32Bit WAV as far as I remember…

Oh, so you do breakcore? jk

It’s quite new to me, too and my knowledge is quite limited about it but I’ll write down what I know. Put simple the advantage of 32Bit float no loss of audio data on editing. When we used 16Bit integer values to save samples, we had 65535 values for the information, which was very good for listening but you’d have some loss on mixing and using DSPs. The more mixing and DSPs, the more loss you’d have. And since we compose with Renoise, we mix and use DSPs a lot. Now 32Bit float puts the sound in a 24Bit mantissa and an 8Bit exponent. That way you can save values like 127.5 (the half of 255). And the floating point also allows us values like 3.14 or 3.141. It somehow enables us to save any value within the limits of the 32Bit range but I don’t know how exactly. Now if you’d want to save the half of 255 with 16Bit Integer, you’d save 127, you’d loose anything behind the point - that’s the loss on editing. Not so bad you might say. But what about a value like 1 divided by 2? It results in 0. Lost forever.

I got some basic informationon wiki and here but don’t understand how it shall be impossible to exceed the given range.

edit: corrected a sentence

…maybe B)

Thanks, that explained it to me (for the most part).