Wow, I never expected VLC to be mentioned. I didn't know it was good. I have a question: how do I set it up to output a bit perfect signal? That is, with the same sample rate as the file and without changing the sound.
Just play music with it. At least on Linux (and i am pretty sure its the same on Windows), thats supposed to be the default settings. Everything else have to be enabled.
I mean its not wrong to look into the advanced settings of it, there are tons of them, but most of them are supposed to enable things, even the EQ is completely disabled per default.
I know that lot of things heavily rely on Drivers and stuff, so VLC tries to not be in the way of the Audio File and your hardware as much as technically possible. So if something sounds strange, you can be pretty sure that its not VLC.
The only thing that is enabled by default, is resampling, but its not really enabled, its set on automatic which "should" do nothing with flac music files, but you can disable it to be sure.
At least for me (on Linux) i did not have to do anything in the settings, it just play music with it and it sounds perfect, exactly it should be.
But the highest quality i do have is 24bit/96KHz, and with that, i did not experience any issues yet.
And if you don't trust me that the sound is perfect, just look at the SourceCode and see for yourself. Its Free Software, no need to trust, you can just make sure.
VLC itself really is just a Graphic User interface. If you play a FLAC it uses the FLAC Library from the inventors and Developers of FLAC from Xiph.org (
https://xiph.org/flac/)
If they don't know how to play a FLAC correct, nobody does. As said before, they try to be as less as possible in the way of the audio file and the hardware as it is technically possible.
On Linux you can actually see that VLC is just a graphical interface and doesn't do much on its own, just look at the dependencies, there you can see it just uses the original flac to play flac and doesn't play it on its own
Code:
Name : vlc
Version : 3.0.8-10
Description : Multi-platform MPEG, VCD/DVD, and DivX player
Architecture : x86_64
URL : https://www.videolan.org/vlc/
Licenses : LGPL2.1 GPL2
Groups : None
Provides : None
Depends On : a52dec libdvbpsi libxpm libdca libproxy lua libidn
libmatroska taglib libmpcdec ffmpeg faad2 libupnp libmad libmpeg2
xcb-util-keysyms libtar libxinerama
libsecret libarchive qt5-base qt5-x11extras qt5-svg freetype2 fribidi
harfbuzz fontconfig libxml2 gnutls wayland-protocols aribb24
Optional Deps : avahi: service discovery using bonjour protocol [installed]
aom: AOM AV1 codec [installed]
gst-plugins-base-libs: for libgst plugins [installed]
dav1d: dav1d AV1 decoder [installed]
libdvdcss: decoding encrypted DVDs [installed]
libavc1394: devices using the 1394ta AV/C [installed]
libdc1394: IEEE 1394 access plugin [installed]
kwallet: kwallet keystore [installed]
libva-vdpau-driver: vdpau backend nvidia
libva-intel-driver: video backend intel
libbluray: Blu-Ray video input [installed]
flac: Free Lossless Audio Codec plugin [installed]
twolame: TwoLAME mpeg2 encoder plugin [installed]
libgme: Game Music Emu plugin [installed]
vcdimager: navigate VCD with libvcdinfo
libmtp: MTP devices discovery [installed]
systemd-libs: udev services discovery [installed]
smbclient: SMB access plugin [installed]
libcdio: audio CD playback [installed]
gnu-free-fonts: subtitle font [installed]
ttf-dejavu: subtitle font
libssh2: sftp access [installed]
libnfs: NFS access
mpg123: mpg123 codec [installed]
protobuf: chromecast streaming [installed]
libmicrodns: mDNS services discovery (chromecast etc)
lua-socket: http interface
live-media: RTSP input
libdvdread: DVD input module [installed]
libdvdnav: DVD with navigation input module [installed]
libogg: Ogg and OggSpots codec [installed]
libshout: shoutcast/icecast output plugin [installed]
libmodplug: MOD output plugin [installed]
libvpx: VP8 and VP9 codec [installed]
libvorbis: Vorbis decoder/encoder [installed]
speex: Speex codec [installed]
opus: opus codec [installed]
libtheora: theora codec [installed]
libpng: PNG support [installed]
libjpeg-turbo: JPEG support [installed]
librsvg: SVG plugin [installed]
x264: H264 encoding [installed]
x265: HEVC/H.265 encoder [installed]
zvbi: VBI/Teletext/webcam/v4l2 capture/decoding [installed]
libass: Subtitle support [installed]
libkate: Kate codec [installed]
libtiger: Tiger rendering for Kate streams [installed]
sdl_image: SDL image support
srt: SRT input/output plugin [installed]
aalib: ASCII art video output [installed]
libcaca: colored ASCII art video output [installed]
libpulse: PulseAudio audio output [installed]
alsa-lib: ALSA audio output [installed]
jack: jack audio server [installed]
libsamplerate: audio Resampler [installed]
libsoxr: SoX audio Resampler [installed]
chromaprint: Chromaprint audio fingerprinter [installed]
lirc: lirc control
libgoom2: Goom visualization
projectm: ProjectM visualisation
ncurses: ncurses interface [installed]
libnotify: notification plugin [installed]
gtk3: notification plugin [installed]
Required By : elisa phonon-qt5-vlc
Optional For : kdenlive youtube-viewer
Conflicts With : vlc-plugin
Replaces : vlc-plugin
Installed Size : 58.72 MiB
Packager : Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
Build Date : Sat Feb 22 12:47:05 2020
Install Date : Tue Mar 17 19:49:38 2020
Install Reason : Explicitly installed
Install Script : No
Validated By : Signature
Because things are different and more complicated in the Windows World, they ship all these codecs with their software in a package bundle. But the FLAC shipped with VLC on Windows is still the original FLAC from xiph.org, they just bundle it for your convinience.