Foobar is an advanced media player that
offers a lot of functionality usually not found in other
players, for that same reason it’s a very popular choice
among PC audio enthusiasts. Unlike your standard media
player, Foobar is not the easiest program to learn, once you
understand it however, it’s probably the best player you can
use quality-wise.
The first step will be downloading Foobar
from the
official site. There are a few different versions
available, depending on what components are included on the
install package. I would recommend downloading the Special
version, although you could also find most of the additional
components available individually if you want to get them at
a later time.
For convenience sake, a Full install
would be best, but if you are picky like me then you will
want to select and choose the components you actually want
in a custom installation. Regardless of what components you
want installed though, make sure you do select the following
from the Optional components list:
Output
DirectSound v2.0
Kernel Streaming
General
ReplayGain Scanner
DSP
Standard DSP array
Crossfeed
If you want to add ASIO support you can find a regularly
updated
ASIO plugin available here (just copy
foo_output_asio(dll).dll into the components
directory where Foobar is installed). Also at time of
writing, a newer Crossfeed plugin was available separately
here.
Playback Settings
Load Foobar2000, click on Foobar 2000,
select Preferences, then the Playback tab.
Buffer files up to X.
X determines the threshold, in KB, beneath which files
are fully buffered in order to avoid playback hitches.
If you are playing audio from your hard drive only you can
leave this set to 0. If you use non-local storage
devices for playback then setting this to whatever the
average file size of such files are ought to ensure
smooth playback. That said, don't set it excessively high.
Playback thread priority.
This slider determines thread priority level, and as stated,
it’s recommended to leave this set to max for smooth
playback. You might find it useful to lower the
priority level if you have more critical processes running,
as long as this doesn’t skip playback.
Replaygain.
Detailed information on Replaygain can be
found here, but basically it allows for a gain
adjustment to be stored in a track, the point being to
reduce the need to adjust the volume level during music
playback due to varying loudness levels in different
tracks/albums. Some of the benefits to using Replaygain are
that the Replaygain information doesn’t actually alter the
track itself, unlike, say, normalizing a track while
encoding.
Replaygain info can be removed or changed as needed (Similar
to ID3 tags). Additionally, this also tends to resolve
clipping issues with many tracks.
To use Replaygain open Foobar2000 and
select the tracks you wish to apply it to. In this case I’ve
selected The Bourne Identity soundtrack (192 Kbps MP3).
Right click on the selection and select Replaygain,
three options are available:
Scan per-file
track gain. Selecting this
option will scan the selected tracks and calculate
Replaygain information individually. This is recommended
where you have tracks from different albums. This way
intended loudness differences in an album won’t be
accounted for.
Scan selection
as album. Selecting this
option will scan the selected tracks and calculate
Replaygain information as an album, which will maintain
intended loudness differences between tracks – something
which Scan per-file track gain does not.
Scan selection
as multiple albums. This
performs same as above but uses file tag information to
distinguish between albums. As such this is perhaps best
used initially to Replaygain your music collection –
assuming your music files have proper album tags.
Further options regarding Replaygain can
be found in the Components, ReplayGain Scanner
tab in the Foobar2000 Preferences menu.
Remove Replaygain info from files.
This option is pretty self-explanatory.
Edit replaygain info (advanced).
Selecting this option allows you to view and edit Replaygain
information stored in a file, as illustrated beneath:
You shouldn’t need to do this
however.
Replaygain Mode.
ReplayGain stores information on track and album
gain adjustments, using the drop-down menu you can select
which value is to be applied during playback. 3 options are
available:
Use album gain.
This selects the album gain adjustment which is
recommended to maintain the intended loudness variation
between tracks, particularly if playing from a single
album.
Use track gain.
This selects the track gain adjustment which is
recommended for maintaining a constant volume level
between tracks, regardless of any intended loudness
variation between tracks. This may function best when
playing tracks from a variety of albums.
Disabled.
Select this option to disable applying ReplayGain
adjustments in tracks. This isn’t particularly
recommended as it can exaggerate volume differences
between tracks and increases the chances of
clipping.
Use peak info… applying replaygain.
This option performs exactly as described and should be
selected to further reduce the chance of ReplayGain
scanned tracks from clipping. Unselect this option if
you’d rather have a DSP provide further clipping protection,
or simply don’t feel it necessary.
Preamp - Files with RG info.
A preamp is used to boost/reduce signal strength before it
is sent to an amplifier. As previously discussed ReplayGain
scanned tracks will set to a level whereby clipping issues
should have been resolved, or at least minimised. As such,
it would be counterproductive to apply a signal boost to
such tracks, and you’d be best served leaving this set to
0.0dB or if you must, a negative value.
Preamp - Files without RG info.
This functions as per the previous option, albeit applies to
tracks which have not been ReplayGain scanned. Given
most ReplayGain adjustments will be of a negative value, you
should similarly give this a negative value for a more
consistent volume level between ReplayGain scanned and
un-scanned tracks (& of course as it may reduce clipping
issues in those tracks). Personally I’ve set this to
-6.0dB, for a more accurate value, try calculating the
average Replaygain adjustment of your collection and
entering that in.
Output data format.
The drop-down menu here specifies the output bit depth to be
used during playback. Generally speaking this limits us to
16bit – 24bit options and should of course be
determined by the Audio device used. For 24-Bit Soundcards (Audigy
2 ZS,
Revolution 7.1) 24bit fixed-point padded to 32bit
is recommended as the preferred mode to select as the CPU
works with 32-bits of data. Similarly for 16-Bit Soundcards
try 16bit fixed-point padded to 32bit. Should these
fail to work you should resort to 24bit fixed-point
or 16bit fixed-point (Alternatively you may need to
try selecting a different Output method, as discussed
later).
Dither. Dithering is a process for adding noise to audio in order to
improve sound quality. This might seem like a contradiction but it isn’t. If you’re using
16bit fixed-point output format then it’s recommended
selecting this option for optimal sound quality. If you’re using a higher bit-depth output format (24bit fixed-point padded to 32bit, for example) leave this
unselected, it’s not necessary, nor will you notice any difference in playback quality – you’ll just increase CPU use.
Noise shaping further
optimizes the dithering process by distributing the noise
across the frequency range. For best quality results select
strong ATH noise shaping. Other options may yield
lower CPU use (With no noise shaping providing the
lowest of course) but may result in more audible dithering
artefacts.