Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Output data format: 24-bit vs. 32-bit (Read 11325 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Output data format: 24-bit vs. 32-bit

I wonder what 32-bit means in foobar2000 0.9. In version 0.8 there were two 32-bit modes: integer and floating point. Both modes work for me in Vista (using DirectSound). I guess that 32-bit floating point would be the best solution for me in Vista, which internally uses that format, too, before it is being quantized and sent to the sound hardware (24-bit in my case). If it is integer there still should be be a theoretical benefit from using 32-bit over 24-bit in terms of less loss through quantization, shouldn't it?

Output data format: 24-bit vs. 32-bit

Reply #1
Anyone?

Output data format: 24-bit vs. 32-bit

Reply #2
No.

If your soundcard is 24 bit. you get 24 bit. it will have to quantization anyway before output if you use 32 bit.

Output data format: 24-bit vs. 32-bit

Reply #3
Well, the thing is that Vista mixes all audio data in 32-bit floating point. So it would be unwise to let an application output data in a lower resolution if it processes data in 32-bit floating point anyway. So, in Vista there's always this type of signal flow:

source bit-depth (e.g. foobar2000's output) -> 32-bit floating point (Vista's mixer) -> target bit-depth (sound card)

And keep in mind that additional mixing might take place in the middle stage, like mixing the audio with other application's audio, volume adjustment and/or use of further DSP effects.

My point is that I think that it would be an unnecessary interim reduction of the bit-depth if I let foobar2000 reduce the bit-depth from its native 32-bit floating point to an integer format for audio output because it is converted back to 32-bit floating point by Vista, which means a double quantization in the whole signal flow.

Output data format: 24-bit vs. 32-bit

Reply #4
You don't lose anything when converting integer to 32bit float anyway.
I think that it makes sense to output 32 bit from foobar when you playback a lossy format file. But when you playback lossless file, it doesn't matter weather the foobar converts the samples to 32bit or Vista's mixer.
If age or weaknes doe prohibyte bloudletting you must use boxing

Output data format: 24-bit vs. 32-bit

Reply #5
You don't lose anything when converting integer to 32bit float anyway.
But when converting 32-bit floating point to integer.

I think that it makes sense to output 32 bit from foobar when you playback a lossy format file. But when you playback lossless file, it doesn't matter weather the foobar converts the samples to 32bit or Vista's mixer.
I use plenty of DSP plugins in foobar2000, so it is no difference whether the source material is lossy or not.

Output data format: 24-bit vs. 32-bit

Reply #6
In that case, you'll be better outputting in 32bit
If age or weaknes doe prohibyte bloudletting you must use boxing

Output data format: 24-bit vs. 32-bit

Reply #7
If it is integer there still should be be a theoretical benefit from using 32-bit over 24-bit in terms of less loss through quantization, shouldn't it?
24-bit quantization artifacts are at a level around -140 dBFS. AFAIK there are no audio systems that can reproduce signals that low. When your source is 16-bit (CD), probably with dither noise around -90 dBFS, I think storing 32 bits is a waste of space. Even with 24-bit sources the noise of the analog recording equipment will be  a lot higher than the quantization artifacts.

Output data format: 24-bit vs. 32-bit

Reply #8
That's why I wrote "theoretical" and even underlined it.