Which export setting preserve the absolute same sound without truncation?

Just got into a rabbit hole about exporting audio from Cubase,
I have this question,
if my project is 48-32 bit (float), but processing precision is 64 bit (float),

which option would perfectly null…?!

Am I hearing, inside the DAW, 64 bit float processed sound then re-converted to 32 bit (float) SOUND…? or 64 bit (float) SOUND…? haha… sorry if it makes sense!

  1. 48-32 bit (float) WAV

or

  1. 48-64 bit (float) WAV

or they would be the same…?!

I read one of the comment inside the forum, where, if any, bit-depth change occurs, then there would be ‘TRUNCATION’ automatically by Cubase… so I would like to do SRC and dithering on Izotope RX,

After exporting the same sound from my project.

Thanks in advance and sorry if it has been answered before.

Set your export to the same bit resolution as Cubase’s audio engine. (64 float in your example)
The project bit resolution determines the format for audio that you record.

1 Like

Oh…oh… ok ok, so I am facing another big issue… haha…
(So what I speculated was right… somehow, both 32bit float render & 64bit float render ‘null’ perfectly)

Um, the issue is, RX 10 I believe cannot process 64 bit (float)… can it?
What shall I do?

I came to a decision that I render ‘as it is, as the same sonically’ and do all conversion and dithering outside :slight_smile:

But now I realized RX cannot process 64 bit (float) so I am worried that the file may get degraded in some technical way…?

So I successfully rendered 48-64 bit (float) WAV file and that is good,
but now I need to change the bit-depth which is the most crucial part…
Any tips would be so much appreciated.

(I’ve read almost all threads on the internet about SRC and dithering just to educate myself! haha…)

Then render to 48/32f in Cubase. The dynamic information that you will lose are neglectible.
You are overthinking this matter.

1 Like

Yeah, I think so. Thank you so much :slight_smile:

For final exports, that should not get processed again, 24bit is enough.
Compatibility wins over sound quality, since the differences are marginal.

24bit provides approximately 144dB dynamic range.

It makes sense to use 32bit-float for recordings and during mixing or prior to mastering.
The change from 32bit float to 64bit float is no hearable resolution change, but it doubles the storage amount.
The quality in the AD converters will limit the resolution in these cases.

And of course it depends on the signal, if the highest dynamic range is useful.
Popular music with an over all dynamic range from about 30dB would not suffer from the change between 32bit float to 24bit fixed.
If you do that change carefully, as the last step before export, it’s most likely inaudible.
RX10 should provide some tools for it. If not suitable to your workflow, you can use the lately introduced dither algorithm in Cubase.

True.
In regards to 24int vs. 32f: Windows can play back 32f files without any issues nowadays. So as long as you are not delivering the final product to a client who requests 24int or 16int there is no need to move from floating point to integer.

So, what I intended to do was:

  1. Export without any audio truncation/degrading (even inaudible)
  2. Do sample rate conversion + bit depth change with dither outside Cubase
  3. Prepare for streaming platform (4824, 4416, 9624 (wav/flac), mp3)

My project was 48/32 float :slight_smile: and always unsure how to preserve the quality before exporting the final and only add dither at last ‘once’

So… actually what I did:
Prepared two different ones-

  1. WaveLab _ LinDither (perceptually low presets) ‘with’ 64 bit float files
  2. RX 10 _ Ultra, low, when silence, limi peaks option dither ‘with’ 32 bit float files

And, I just cannot differentiate …! :slight_smile:

So I asked about truncation, but yeah I think… the difference, I should not worry about too much…
(yeah I guess I was overthinking!)

LinDither is also available in Cubase Pro.

The bit resolution conversion of samples is not a secret recipe, that every company hides. As far as I know there are one, perhaps two standard algorithms to convert files between integer and floating point and for 64f → 32f. Most likely Cubase uses the same algorithm as WaveLab and as Izotope.
This really is nothing to worry about even for a second.

As far as sample rate conversion is concerned, I am not well informed. However, it does not seem to be a big topic anymore compared to 25 years ago. It looks like a good algorithm was found and is being used.

The biggest change of sound happens when you compress the audio signal, e.g. with MP3, MP2, and such (not FLAC though). Maybe you should investigate in this direction.

Thank you so much! Do you think I should least worry about,

Flat dither vs. Noise-Shaping (ultra) dither vs. LinDither

So many engineers recommend flat dither, but I cannot find much difference,
some say ultra noise shaping provides even lower noise floor,
I checked the ultra noise shaping dithered masters with mediocre earbuds and though true peaks slightly overed… it is not breaking in any way… I am still searching for that ‘sweet spot’ dither setting… hmm.

Check out this video:

As far as I know if you’re going to go down to 24-bit fixed in the end and then for sure add dither then I see no reason to bother with exporting anything other than 24-bit fixed. I don’t really see how you gain anything by picking either 32 or 64-bit float. Any truncation error surely would be the lowest bit or two which means around -138dBFS. Completely inaudible.

That’s my take on it.

If one works in different softwares, like Cubase to iZotope, then a floating point format is the best way of transfering audio. You won’t have any quantization noise whatsoever. The conversion to integer should be the second last step in the last application, only succeeded by dithering.

It’s not going to make a difference though if the only thing iZotope/Wavelab is going to do is SRC and dither. The file is going to be truncated either way and the LSB is going to be replaced with that dither. As far as I can see it won’t matter if you’re truncating on export or truncating in the other application.

Cubase native format: floating point
User exports it to integer
File gets opened and processed in audio editor, again converted to floating point
User exports to integer

I don’t see why one would advocate to convert to integer twice. There is no benefit of changing from floating point to integer before the very end other than saving some 25% space on the hard drive.

If it’s 32-bit float then 24 of those bits is going to be the resolution of the signal and the rest the dynamic range which floats, so not a lot of problems there. If it’s 64-bit float then the saving isn’t 25% but 62.5%, unless my math is wrong, which is possible.

Either way, truncation happens at the LSB, correct? And it’s 138-144dB down at 24 bits, yes? And it’s getting replaced by dither, yes? So converting to and from integer won’t really matter.

But whatever. I’m not the one doing this and I voiced my opinion so…

So just to clear, what I want is,

Export from DAW (cubase 12 Pro) as is, as my setting: 32 bit (float) 48k project ‘BUT’ with 64 bit (float) ‘PROCESSING’ turned on.

So what I am hearing is 64 bit (float) precision.

When exporting it, I believe (to make it exactly the same, sonically) export it 48k - 64 bit (float)

I am talking about, zero difference, even inaudible…?

THEN I work on resampling and dithering inside RX or WaveLab, you know?

Even though inaudible, I just wanted to find the best way to preserve what I’ve been hearing and making decisions on, then make compromises inside other app, such as RX or WaveLab with upsampling/downsampling + dithering.

I think I made my conclusion and rendered everything ok and like what I am hearing :slight_smile:

Thanks though! I’ve been overlooking about this matter, and perhaps, even inaudible, along the way, I think I did make some small mistakes… but yeah, it is part of learning process I guess :slight_smile:

*I believe, as WaveLab tutorial video states, 64 bit float processing means, what we are hearing while mixing is 64 bit (float) indeed.

Oh, because Streaming services they, want those formats, so… I am the one who is responsible to resample and dither… (so I know the end result will sound the same you know hehe)

I did not want to over-think about this matter, but now I sort of get my sweet spot…! (I guess?) haha…

Oh… how foolish…! I did not know LinDither was also inside Cubase 12 Pro…
Sorry, this area, is definitely my weakest…

Thanks again…

Is your Digital-To-Analog using fixed point or floating point?

Because if your converter is using fixed point (it probably is) then what you’ve been hearing is not floating point, right? It’s your converted X-bit float signal that now is 24-bit fixed (if that’s what you’ve set it all to).

So if you want to export what you heard then that’s it.

1 Like

Um, hold on… haha…
so, I will answer as precise as possible because I am no expert at this matter! haha bear with me!

UFX ii
sample rate: 48k
daw: Cubase Pro 12 48-32bit (float), processiong precision 64 bit (float)
D-A: Genelec 8330a +7350 through AES (digital connection)

Where can I find, whether fixed or floating…?

Anyways, I’ve been mixing with 64 bit (float) processing on all times…
Am I getting it wrong?! I thought I got it right… haha… like inaudibility aside?