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.
Recent Posts
5
Support - (fb2k) / Re: Foobar2000 v2.* playback sound quality lower than v1.X
Last post by Case -
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.
7
Support - (fb2k) / Re: Foobar2000 v2.* playback sound quality lower than v1.X
Last post by Globares -
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.
9
3rd Party Plugins - (fb2k) / Re: Resampler plugin
Last post by Case -
ardftsrc filter have superior quality & speed compared to sox resamplers.
I compiled librempeg, I think there is a bug in the code as it keeps insisting on using CLAP audio stuff even though documentation claims it doesn't do dependencies by default.
Anyway, with default settings and commandline
Code: [Select]
ffmpeg -i source.wav -af "ardftsrc=48000" -acodec pcm_f32le out.wav
my binary was slower than existing ffmpeg with '-af "aresample=48000:resampler=soxr"'. And it produced worse quality and the file length changed.
10
3rd Party Plugins - (fb2k) / Re: foo_skip: skip tracks that match a specified search query
Last post by Case -
Audio format shouldn't matter at all, the component does its work as a decoder shim and can work with everything. Note that M4A doesn't tell me what audio format your file actually is, M4A is just a name for MP4 container that contains audio. It can be AAC anything, MP3, ALAC, FLAC, probably more. I tried with typical AAC in MP4 container and couldn't replicate any issues.

Do you see on the console a message "Skip Track found partial skip info from tags"? The component prints that when it is enabled and  detects a SKIP tag present.