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: Bitperfect audio in v2.x? (Read 798 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Bitperfect audio in v2.x?

Back from gone for a long time without having followed any of the evolutions, developments etc. so forgive me if this has already been asked, discussed and buried under a tag I didn't think of searching for.

I've been using Foobar2000 for years as the main driver on an old netbook that's perfect as an audio source for the AV amp in my stereo system. I use wasapi to send the raw, unconverted bit stream into the amp over HDMI, and then let the amp do its DAC magic.
I was still running v1.5, and thought I'd update.

After an initial scare about the UI (the "Columns UI" component wasn't transferred automatically), installing the other components I used to use and going over the settings I did a test with one of my files from 2L Recording (5:1 96kHz) and was disappointed to see the amp indicating 48kHz stereo instead. That's with the "non-exclusive" HDMI output.

I don't see a specific "wasapi" output device in the list.

Is the kind of playback I'm looking for still possible in FB2000 v2.x and if so, how do I set it up? I haven't exhausted the various combinations of non-exclusive vs exclusive with or without using events that can be configured (via 2 different subpanels in the prefs ... practical :-/) but I never understood the difference between those in v1.x (they all still do what I'm looking for).

Thanks in advance!

PS: not looking for discussion about whether or not I could hear a difference in the results; I know I probably can't as long as the poor old netbook CPU can keep up ;)

Re: Bitperfect audio in v2.x?

Reply #1
All default outputs in foobar2000 since v1.6 are WASAPI. The bitperfect output you want requires WASAPI exclusive, also supported natively. Just select an output that has "[exclusive]" at the end of the name.

Re: Bitperfect audio in v2.x?

Reply #2
Thanks, I'll try that!

Re: Bitperfect audio in v2.x?

Reply #3
The bitperfect output you want requires WASAPI exclusive, also supported natively. Just select an output that has "[exclusive]" at the end of the name.

Why does the non-exclusive output have an "auto" setting for the bit-depth, while the exclusive output requires you to make a choice?

(And while I'm at it, when would you chose to use the event-based mode, IIRC now in the advanced settings panel?)

Re: Bitperfect audio in v2.x?

Reply #4
It allows you to make a choice. The non-exclusive output is always 32-bit floating point as that's the native format of the mixer. For those bit-perfect outputs you should select the highest supported by your hardware.

You should always use event based mode. That is the most efficient and "correct" way: playback thread sleeps and consumes zero resources while it waits for the audio interface to play its buffer. Once the device needs more data, it signals the thread to give more data. The other option is to constantly poll the device and ask "are you done yet, are you done yet, are you done yet...".
But you should never need to touch the settings, defaults should work. And if they don't, Peter wants you to report what kind of device you have and what kind of workarounds it needs to not glitch. Then such settings will be added to a workaround list and applied automatically for all users of said setup.

Re: Bitperfect audio in v2.x?

Reply #5
It allows you to make a choice. The non-exclusive output is always 32-bit floating point as that's the native format of the mixer. For those bit-perfect outputs you should select the highest supported by your hardware.

Interestingly my AV amp only goes up to 24 bit, and so I have to guess that the "auto" setting in the non-exclusive mode picks the highest format that is accepted. I can confirm that selecting a 32bit depth will cause playback to be aborted with an error, so yeah, sure I'm allowed to make a choice but I'm also obliged to make one (if 32bit is the default; I think it was).

Out of curiosity, how much overhead would there be in decoding to a higher bit depth than the one the content provides? (And how much to bypassing the mixer completely if no filters or other processing is/are to be applied? ;) )