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: Foobar2000 v2.* playback sound quality lower than v1.X (Read 3216 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Foobar2000 v2.* playback sound quality lower than v1.X

The sound quality of Foobar2000 2.X is lower than version 1.X.

Right now I'm comparing versions 1.6.16 and 2.1.4, but in the past I downloaded one of the early versions of Foobar2000 2.X for evaluation and the noticed the same problem.
I've checked both 32 and 64 bit versions of f2k 2.X. Both play worse than v1.6.

Problem is easily hearable while using the ASIO drivers (and plugin), for "standard" drivers v1.6 probably still keeps an edge, but I'm not  really sure about it, since general sound quality with non-ASIO drivers is lower, what makes comparison more difficult, anyway I'd rather blame the f2k 2.X core than the asio plugin.

All tests were done using Windows 10, 64 bit. I used 2 DACs with their proprietary ASIO drivers, The results were consistent.
The most noticeable difference is the soundstage degradation, so jitter would be my primary suspect.

I'd be grateful for a fix, since only v2.X is available in 64 bits, what is required for PGGB-RT plugin, and PGGB-RT upsampling is really good.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #1

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #2
Not really my place to say, but there's a big no-no against sound quality claims without substantive proof.  How about uploading 30s samples demonstrating your point, so that other ears can do an ABX?
It's your privilege to disagree, but that doesn't make you right and me wrong.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #3
Not really my place to say, but there's a big no-no against sound quality claims without substantive proof.  How about uploading 30s samples demonstrating your point, so that other ears can do an ABX?
Unfortunately, I’ve got no high quality microphones nor the ears audio model to make such recording, but everyone can quickly make a test installing the second version of Foobar “portably” – 2 Foobar versions can be run parallelly – which should allow you to quickly switch between them. Just make sure to use a decent DAC and heaphones to hear the soundstage changes.
A portable installation of Foobar2000 can be easily removed when not needed.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #4
I have not run into this issue, and have not heard of anyone else running into a similar issue during the entire development of foobar2000 2.x.  One thing to note is that ASIO tends to bypass Windows Audio Mixer settings, so make sure that the max volume levels for fb2k in the mixer are at the same level (100%) for both installations.  Also ensure that you have the latest audio drivers for your system.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #5
...it's also worth noting that the benefit of ASIO is decreased audio latency, not increased sound quality.  If there is a degradation in sound quality with ASIO output, it is either a driver issue or something else in the audio pipeline that is causing an issue.

 

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #6
...it's also worth noting that the benefit of ASIO is decreased audio latency, not increased sound quality.  If there is a degradation in sound quality with ASIO output, it is either a driver issue or something else in the audio pipeline that is causing an issue.
The ASIO drivers "sound" better, it doesn't mean that the bits are different - I assume that both pipelines are "bit-perfect", but latency, jitter or generally timing is crucial for spatial effect, i.e. the soundstage. They also impact other sound parameters. Windows Audio Mixer is to be avoided. It degrades the sound quality; "exclusive mode" improves things when properly implemented. Generally, no upsampling is much better than a bad one.
The v1 v2 difference is not big, so the question is how may people did A/B comparisons and what did they listen to. Acoustic songs are the best for this. Busy, rock tracks masks this issue, too. Is this Windows-only problem? I have no iOS to test it.
I’ve got no big hopes for a fix. Real-time stream profiling is a tedious task and first a developer (or the Developer 😊, don’t know if there’s a team), needs to reproduce the problem, however there’s a small chance that this “problem report” will trigger some ideas about changes in the data stream processing that could negatively affect the jitter when compared to version 1.X. We’ll see.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #7
You don't need a microphone to record the output of your DAC. Just plug cable from the output to input and record.
Though it will be a mostly useless exercise as player can't add jitter. A player can only keep the audio interface's buffers filled, the audio interface is responsible for timing the signal and actually making it audible. If the player fails to keep buffers filled you don't need a specialist to notice it. It will cause very audible glitching.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #8
I have not run into this issue, and have not heard of anyone else running into a similar issue during the entire development of foobar2000 2.x.  One thing to note is that ASIO tends to bypass Windows Audio Mixer settings, so make sure that the max volume levels for fb2k in the mixer are at the same level (100%) for both installations.  Also ensure that you have the latest audio drivers for your system.

If you use ASIO why would you need audio drivers for?
Everything is converted in your DAC specially if you output via USB.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #9
everyone can quickly make a test installing the second version of Foobar “portably” – 2 Foobar versions can be run parallelly – which should allow you to quickly switch between them.
But that wouldn't reproduce what you claim to be hearing.  It should only be necessary to capture the output from the PC (not the output from the speakers)... either electrically, or perhaps simply using Audacity to grab the output.  If you aren't up for that, then forget trying to convince the powers-that-be you have a valid point.

The principle of ABX is blind testing.  If you know what source you're listening to at the time you're listening, then psychological biases are in play and differences can be imagined most convincingly.
It's your privilege to disagree, but that doesn't make you right and me wrong.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #10
If you use ASIO why would you need audio drivers for?
ASIO doesn't work without drivers. No matter the used API the sound device will need drivers to be usable by the operating system. Some devices use standard interfaces that are supported natively by the OS, like Intel HD Audio or USB Audio Class 1 and 2. Those will allow basic output to work with the built-in drivers. But proper ASIO always needs manufacturer provided drivers. There are also ASIO wrappers that translate ASIO calls to Microsoft's API calls, like to WASAPI or KS. But these are not quite as direct as ASIO allows with proper drivers.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #11
You don't need a microphone to record the output of your DAC. Just plug cable from the output to input and record.
Though it will be a mostly useless exercise as player can't add jitter. A player can only keep the audio interface's buffers filled, the audio interface is responsible for timing the signal and actually making it audible. If the player fails to keep buffers filled you don't need a specialist to notice it. It will cause very audible glitching.
That’s possible, of course. I agree that it would be a useless exercise since the analog-to-digital converter would be the built-in one, i.e. low quality and working in a noisy motherboard environment. Maybe this setup would be good enough to measure jitter provided a special signal, e.g. short beeps every second. I may try this next week; however higher probability of success would be provided by some kind of sound device emulator running on another PC connected via USB to the player’s PC and logging the input packets. Does anyone know such software?
Is there any chance for 64-bit build of Foobar2000 v1.X? 

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #12
If you use ASIO why would you need audio drivers for?
ASIO doesn't work without drivers. No matter the used API the sound device will need drivers to be usable by the operating system. Some devices use standard interfaces that are supported natively by the OS, like Intel HD Audio or USB Audio Class 1 and 2. Those will allow basic output to work with the built-in drivers. But proper ASIO always needs manufacturer provided drivers. There are also ASIO wrappers that translate ASIO calls to Microsoft's API calls, like to WASAPI or KS. But these are not quite as direct as ASIO allows with proper drivers.

You do need the ASIO driver from your manufacturer, but you don't need any Windows Audio Driver e.g. Realtek, Intel or any other.
I know since I never installed any Windows driver, so I won't hear any beeps from the OS during music playback and everything goes via USB to my amplifier (which has a DAC).

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #13
The sound quality of Foobar2000 2.X is lower than version 1.X.
I confirm. I have noticed the sound is quite different in v2 then in v1.6. It is not a subtle difference it is a big difference.
v1.6 is much softer, v2 sounds like there was some kind of limiter in the signal chain.

Windows 10/64 bit, ESI Juli@ ASIO, no bells and whistles just pure Foobar.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #14
Sorry to say but unless configured differently they produce 100% identical output.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #15
Sorry to say but unless configured differently they produce 100% identical output.
I've compared both versions with the same output device/driver, Playback->Processing set to "none" (that's my change, since "apply gain" is the default value, this change did not affect the differences I heard, - just wanted to eliminate any "extra" factor), and no DSP processing. Is there any other options which impact the sound? The "Advanced" settings look almost identical for both versions.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #16
The sound quality of Foobar2000 2.X is lower than version 1.X.
I confirm. I have noticed the sound is quite different in v2 then in v1.6. It is not a subtle difference it is a big difference.
v1.6 is much softer, v2 sounds like there was some kind of limiter in the signal chain.

Windows 10/64 bit, ESI Juli@ ASIO, no bells and whistles just pure Foobar.
I wouldn't call the differences big, but it looks like you're writing about similar impressions to mine. I'd say that the v2 sound is "lighter", has shorter sound decay and worse sound stage (size is similar, but precision is worse). The differences may be driver related. If that's the reason you hear big difference you can try ASIO4ALL driver with 64bit v2. It used to be a very good driver, generally I don't recommend it today, but 64-bit version works quite good with f2k v2.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #17
I've compared both versions with the same output device/driver, Playback->Processing set to "none" (that's my change, since "apply gain" is the default value, this change did not affect the differences I heard, - just wanted to eliminate any "extra" factor), and no DSP processing. Is there any other options which impact the sound?
If we entertain for a moment the idea that there is a difference, 2.x includes different decoders and supports more formats out-of-the-box. If your use case was for example that you didn't use your sound device as a DAC but bitstreamed data to external receiver for decoding, DTS-in-PCM container could produce differences. New foobar2000 decodes the audio data by default which could be done differently than receiver does it, receiver could do some dynamics processing or other alterations. And if the connection has limited bandwidth, like toslink, the receiver will only get stereo output instead of the proper multichannel audio.

Lossy formats will be decoded differently with different decoders. I just compared a random vorbis file between 1.6.17 and 2.1.5 and there were differences -128 dB below digital fullscale. Such things are inaudible even to bats, but in theory a broken system might react differently to a different signal.

Another difference is the output device bitdepth support. In old foobar2000 exclusive outputs had a single bitdepth configuration box in the main output device selection screen. It defaulted to 16 bits. New foobar2000 allows configuring bitdepths (and DSP chains) for each device separately and defaults to highest bitdepth supported by the device. If these settings are not touched it's possible there is a difference. Though it should be that the v1.6 output with 16 bits would be worse, it could not be enough if one uses incorrect volume levels and the lowered signal is amplified in receiver/speakers. Or the defaulted highest bitdepth in 2.x might not work, perhaps your audio device drivers lie to support 32-bits but produce noise instead.

And then there's the new 2.x feature where each output device volume setting is remembered. If you set volume to max 0.0 dB in foobar2000 v1.6.x, it stayed there no matter what output you picked. In foobar2000 v2.x you can control volume of each device separately, so if you aren't careful, you may be comparing playback at different volume levels.

You people haven't mentioned anything about what kind of stuff you even play. Only very crazy claims that there is a difference in quality.

I have recorded the digital output of foobar2000 v1.6.17 WASAPI output against 2.x WASAPI when playing lossless material and they are bit-perfectly identical. There is no jitter, there is no difference in decay, there is no difference in soudstage. The signal is the exact same.
You people claiming to have a difference can very easily prove it. For example @misio's ESI Juli@ has nice high quality analog inputs. Just connect cables from outputs to inputs, play a demo track in both foobars while recording the output and share the recordings here. I at least would love to examine the claimed differences.
Doing the recording digitally would make comparison easier, but that would require getting a device that can record the digital output of the card. And you probably don't trust recording done inside the computer on driver level.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #18
You people claiming to have a difference can very easily prove it. For example @misio's ESI Juli@ has nice high quality analog inputs. Just connect cables from outputs to inputs, play a demo track in both foobars while recording the output and share the recordings here. I at least would love to examine the claimed differences.
Doing the recording digitally would make comparison easier, but that would require getting a device that can record the digital output of the card. And you probably don't trust recording done inside the computer on driver level.
I do not use WASAPI at all, so I can tell nothing about this protocol.
Of course I can make an analog recording. Just give me a bit of time.
It will be Foobar -> ASIO -> Juli@ digital optical out -> DAC optical input -> DAC analog output -> Juli@ analog input

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #19
Please do. Would be curious to know what kind of DAC you have or if you have measured its performance. Pretty hard to beat the quality of that ESI card, which goes to waste in such use.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #20
Hi Case,
First of all thank you for some details regarding the v2/v1 differences. I really appreciate it.
I’ve installed the WASAPI plugin to try this option and I’m happy to say that we have the first thing we can agree on 😉. F2k v1 and v2 sound the same to me thru WASAPI. Unfortunately it means “really bad” when using the WASAPI shared output 0.6.24 plugin, which is the only one supporting 64 bits (sound seems to miss a micro-period from time to time). The old WASAPI output support 3.4 doesn’t have such problem, but it works on f2k v1, only, and it’s quality is worse than ASIO.
All my tests are done using the WAV files, “CD quality”, i.e. 44.1khz/16 bit, or Codec: PCM, 1411kbps, 16 bit, 2 channel, as reported by Foobar.

The bit depth cannot be set for ASIO drivers (the only available option is “Automatic”). As far as I can see Foobar2 v1.6 supports the same depth - just the interface is different (Playback->Output->Output data format). Interestingly, 32 bits provide better sound quality than 16 bits, even if I use 16 bits sources.
Running f2k v2 with output set to “Default – exclusive” and 32 bits depth provides the highest quality I can get from v2, better than v2 ASIO, but still behind v1 ASIO.

Small note - binary output comparison on a driver level is a mandatory quality test – if bits differ there’s an obvious difference, but it doesn’t cover timing and more subtle differences.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #21
WASAPI is supported natively in both foobar2000 v1.6.x and 2.x. All the default outputs are WASAPI. The ones without extra marking use shared mode, the ones with [exclusive] in the name use WASAPI exclusive mode. Thus the old component is obsolete. It has been kept online mainly for people with older foobar2000 versions.

The separate WASAPI Shared mode component you downloaded is my first attempt of making an output component. It was created in the time when default foobar2000 output used DirectSound and had poorly working smoothing for sudden sound changes. For it to work correctly the sound card drivers need to support event based reporting when buffers need filling - something that has been WHQL requirement for drivers since Windows Vista days.

The ASIO output picks best supported sample format automatically, you are correct. You should probably know that the ASIO output is done completely in the output component. It's the exact same code doing all the heavy work in all foobar2000 versions. There can be no audible differences.

Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #22
Please do. Would be curious to know what kind of DAC you have or if you have measured its performance. Pretty hard to beat the quality of that ESI card, which goes to waste in such use.

Ok, here we go.
Foobar 1.6 vs Foobar 2.1.5 (64 bit) - both in portable mode. Pure Foobar, no DSP or plugins, only ASIO component v2.2.2.
Both player configured in the same way, ASIO, ESI Juli@, Windows 10/64 bit.
DAC = old good E-MU 0404 USB in stand alone mode (in stand alone mode E-MU can work with no USB connection)
Sound chain:
Foobar 1.6/Foobar 2.1.5 -> ASIO component -> Juli@ digital optical out -> DAC optical input / DAC analog output -> Juli@ analog input (44.1kHz/24bit).
Playing samples were in 44.1khz/16bit.
Of course I can use another DAC if someone would like to repeat the experiment - I have got Xiang Sheng, Behringer DEQ2496, Behringer SRC2496, Sony SDP-EP90ES, Sony SDP-EP9ES, Advance Acoustic MDX-600, Denon DA-500, AMC US 24192i.

Take 1 / Take 1a = Foobar 1.6
Take 2 / Take 2a = Foobar 2.1.5



Re: Foobar2000 v2.* playback sound quality lower than v1.X

Reply #24
Thanks for the recordings, and thanks for time aligning them. Made comparison faster.

I see no signs of playback issues, the samples have retained perfect time alignment and only differ slightly in amplitude. Which is expected since there are two analog-digital conversions with two different devices involved. I'd bet there would be identical differences visible simply by recording the same piece with the exact same setup again.

With the fist track the record timings didn't align as closely between the players as hugely boosted inverse mix allows hearing some music. With the second track sample alignment happened to get very close - inverse mix spectrum even shows moire patterns.