Version 0.25.5, updated on September 7, 2020; requires foobar2000 version 1.4.
This component decodes game music for the Nintendo DS console, as ripped in the .2SF or .MINI2SF formats.
Version 1.12, updated on February 4, 2017; requires foobar2000 version 1.3.
This component is made obsolete by foobar2000 version 1.6, which includes 7-zip support in its bundled Archive Support component.
This component unpacks 7-Zip archives (.7z) for use with any format supported by the player. It is not advised for use with large solid archives of equally large sound files, as they probably won't compress well, and will likely take ages to unpack, every single time you play the file.
Version 0.9.13, updated on February 1, 2019; requires foobar2000 version 1.3.
This component decodes .AC3 audio files, and streams containing .AC3 format audio in other container formats supported by the player or other components.
Version 1.55, updated on August 9, 2020; requires foobar2000 version 1.3.
This component decodes several old MSDOS and game formats specific to the AdLib / OPL2 sound chip. This includes .HSC, .SNG, .IMF/.WLF/.ADLIB, .A2M, .AMD, .BAM, .CMF, .D00, .DFM, .HSP, .KSM, .MAD, .LAA, .MKJ, .CFF, .DMO, .S3M, .DTM, .MTK, .RAD, .RAW, .SAT, .XAD, .LDS, .M, .ROL, .XSM, .DRO, .MSC, and .RIX.
Version 0.6.8, updated on February 20, 2019; requires foobar2000 version 1.4.
This component decodes .DTS and .DTSWAV files, and also decodes DTS and DTS-derived bitstreams in other raw PCM stream containers, including .WAV, .FLAC, .WV, and .TAK. It also decodes DTS packets in several stream container formats, including .MP4 and .MKA.
Version 1.12, updated on February 4, 2017; requires foobar2000 version 1.3.
This component provides a simple DSP for normalizing audio tracks using a running windowed calculation of the EBU R-128 standard, targeting the same average volume level as the player's stock ReplayGain component. This is not the same as proper ReplayGain, however, as it is shifting over time, rather than applying a constant level across an entire track.
Version 1.13, updated on August 30, 2020; requires foobar2000 version 1.4.
This component replaces the stock input component's AAC decoder with the one from FDK-AAC v2.0.1, to support AAC formats not supported by FFmpeg, such as xHE-AAC / USAC.
Version 1.218, updated on August 14, 2020; requires foobar2000 version 1.3.
This component plays emulated console music formats and logged console music formats. It supports .AY, .GBS, .GYM, .HES, .KSS, .NSF/.NSFE, .SAP, .SGC, .SPC, .SFM, and .VGM. It also supports the compressed formats .RSN (renamed RAR), .VGZ (gzipped .VGM), and .VGM7Z (renamed 7-Zip), without any extra archive components.
Version 3.0.19, updated on February 28, 2020; requires foobar2000 version 1.4.
This component decodes Gameboy Advance music in the .GSF or .MINIGSF format. The .MINIGSF format requires its accompanying .GSFLIB files to be present in the same form as they were packaged by the ripper, usually the same directory.
Version 1.19, updated on February 4, 2017; requires foobar2000 version 1.3.
This component automatically decodes HDCD streams contained in several supported lossless containers, including .WAV, .FLAC, .WV, and .TAK. It also supports scanning files for HDCD features in use to report in a list.
Version 1.19, updated on January 14, 2018; requires foobar2000 version 1.3.
This component decodes .AHX format files, and the advanced derivative format, .HVL. It also came to my attention that this player library was derived from leaked source code without permission. It is not my intention to stir up trouble, just to support these relatively obscure file formats. This library just happens to be the cleanest way to support .AHX files on any platform that can support compiled C/C++ code, and is way less of a mess than the old AHX replayer, and its mix of assembly code.
Version 1.3, updated on January 14, 2018; requires foobar2000 version 1.3.
Decodes Ken Silverman's .KDM music files.
Version 1.13, updated on February 4, 2017; requires foobar2000 version 1.3.
This component unpacks archives in the LHARC/LHA .LHA format, using source code from an old Unix utility, somewhat cleaned up to prevent crashing on malformed files.
Version 0.9, updated on January 30, 2018; requires foobar2000 version 1.3.
Decodes the RP*.PCM files from the Lunar: Eternal Blue disc for the Sega CD console. Includes bundled metadata for both US and Japanese releases.
Version 2.4.1, updated on October 18, 2020; requires foobar2000 version 1.4.
This component decodes General MIDI files (.MID, .MIDI, .RMI, .KAR) and several MIDI based formats. (.MIDS, .MDS, .HMI, .HMP, .MUS, .XMI, .LDS)
It supports several synthesizers, several of which do not require any additional files to play back music. The bundled synthesizers which do not require additional files may sound rather basic, though.
It also supports Ian Luck's wonderful BASSMIDI SoundFont (.sf2) based synthesizer, including bundled support for his .sf2pack format, which is nearly identical to the basic .sf2 format, except the file identifier is "sfpk" instead of "sfbk", and the audio section of the file is a compressed format supported by BASS that also supports seeking, as it decodes the samples as they are referenced by the MIDI files. The compressed format is identified only by its bitstream properties. BASS includes support for MP3 and Ogg Vorbis samples, while plugins are bundled to support FLAC, WavPack, Musepack, and Opus format samples.
FLAC is the suggested format for saving space and fast decoding, while Opus is suggested for "preview" type downloads, as it provides a relatively stable waveform for loops in this format, while compressing quite a bit. However, I cannot recommend using lossy compression of SoundFonts as a final distribution format, as loops could still show errors.
SoundFonts may be loaded in a simple, or even complex setup, using either basic .sflist text files encoded in UTF-8 format, or .sflist.json files, also encoded in UTF-8 format. A description for the SFLIST JSON format, as well as a parser capable of handling both the original and JSON formats, may be found here:
Please note that the VST instrument and Secret Sauce support executables are bundled, and are invoked using named pipes for communication with standard input and output devices on the executable end. The full source code is also published, in case anyone wants to replicate them, or use them for another purpose. They are built with the same compiler as this component, but since they are not themselves components, they require the Microsoft Visual Studio 2015 C++ runtimes. Both 32 and 64 bit versions, to be precise.
Version 1.1.2, updated on June 1, 2017; requires foobar2000 version 1.0.
This component contains multiple low latency resamplers, designed for experimental purposes, but may prove useful for some users. Included are:
* Zero Order Hold: No interpolation, no anti-aliasing.
* Band-Limited Synthesis: No interpolation, anti-aliased using bandwidth limiting.
* Linear Interpolation: Simple linear interpolation filter, no anti-aliasing.
* BLAM - Band-Limited Linear Interpolation: Linear interpolation, with a bandwidth limiting filter applied.
* Cubic interpolation: Quadratic/Cubic interpolation filter, no bandwidth limiting.
* Sinc Interpolation: High quality windowed sinc interpolation, with basic bandwidth limiting for downsampling modes. Not as high quality as the resamplers provided by the core, but guaranteed lower latency, and mostly indistinguishable quality at 16 bits per sample or less.
Version 1.17, updated on August 5, 2020; requires foobar2000 version 1.4.
Decodes .NCSF and .MININCSF files, containing Nintendo DS music based on the SDAT/SSEQ format.
Version 1.74, updated on February 4, 2017; requires foobar2000 version 1.3.
This component provides configurable screen overlays which may be opened with hotkeys, or appear on specific events. Each overlay is configured separately, and has its own set of events.
Version 0.5.3, updated on October 25, 2020; requires foobar2000 version 1.4.
This component decodes modules, or music files combining both samples and sequence data and effects, using libopenmpt. Its version number is usually derived from the associated libopenmpt version, with a plus sign and trailing number if I add any extra commits following a library update. It supports files in the following formats: .MPTM, .MOD, .S3M, .XM, .IT, .669, .AMF, .AMS, .C67, .DBM, .DIGI, .DMF, .DSM, .DTM, .FAR, .IMF, .ICE, .J2B, .M15, .MDL, .MED, .MMS, .MT2, .MTM, .NST, .OKT, .PLM, .PSM, .PT36, .PTM, .SFX, .SFX2, .ST26, .STK, .STM, .STP, .ULT, .WOW, and .GDM. It also supports Ian Luck's .MO3 compressed format with MP3, Ogg Vorbis, or ADPCM samples, and it also supports arbitrary archive formats with the extensions of .MDZ, .MDR, .S3Z, .S3R, .XMZ, .ITZ, or .MPTMZ, assuming foobar2000's Archive Support plugin is installed, or any other archive plugin.
Note: The included "sinc" resampler is equivalent to the OpenMPT software's "sinc + lowpass", aka sinc plus anti-aliasing filter. The option to disable this filter is not currently exposed in the libOpenMPT API, and even if it were, it would be an implementation detail only relevant to the "sinc" resampling filter size.
Version 0.8, updated on February 28, 2020; requires foobar2000 version 1.4.
This component adds the ability to optionally pause or stop on display lock, and also optionally unpause or restart playback upon unlock if an action was taken on lock.
To use this component, you must first enable it in the Playback menu. Then you must open Preferences, locate Advanced, and navigate through the Playback category to Lock Actions, and configure it to do something.
Version 1.3, updated on February 3, 2017; requires foobar2000 version 1.0.
This component is loosely based on the Sony PlayStation 1 and 2 reverb engine, based on code from the P.E.Op.S. SPU emulator software. It includes presets from the PlayStation SDK, and is fully configurable to an insane degree. Probably more than adequate for most reverb needs.
Its reverb system is roughly monaural, pushing both input samples from stereo into different offsets of the same ring buffer, and sampling the left and right outputs from different offsets again. Mono input will be promoted to stereo.
Quad front/rear inputs will apply the reverb on the average of the front and rear inputs, and re-apply the difference between the two to the output, so it's also usable with the included upmix DSP which promotes the input from stereo to quad, while filling the rear channels with silence. Just add this upmix DSP before the reverb DSP, and it should produce a handy upmix effect.
Two flavors of the DSP are provided. One attempts to scale the buffer sizes and coefficient sampling and writing offsets relative to the given sample rate, since the original offsets were tuned for a reverb engine running at 22050Hz. The other reverb DSP resamples the input audio down to 22050Hz, processes it, then upsamples it again before mixing it into the output.
Version 2.2.5, updated on February 16, 2020; requires foobar2000 version 1.4.
This component decodes music files for the Sony Playstation and Playstation 2 game consoles, as ripped in the .PSF/.MINIPSF or .PSF2/.MINIPSF2 formats.
Version 3.1.1, updated on May 2, 2019; requires foobar2000 version 1.4.
Decodes game music for arcade machines featuring the QSound sound hardware, in the .QSF or .MINIQSF formats.
Version 1.50, updated on February 28, 2020; requires foobar2000 version 1.4.
This component decodes music files for the Commodore 64 or 128 computers, ripped in the .SID or .MUS or .MUS+.STR formats. It supports up to 3SID rips, and supports the latest High Voltage SID Collection song length database.
Version 0.83, updated on January 30, 2018; requires foobar2000 version 1.3.
This component provides a faster, if slightly less faithful, SNES music format player, based on the SNESAPU.dll library. It plays SNES .SPC files. It also supports a huge level of tweaking, including the mixing sample rate, the sample depth, and effects control.
Version 2.0.53, updated on September 2, 2020; requires foobar2000 version 1.4.
This component decodes music from the Sega Saturn or Dreamcast consoles, in the .SSF/.MINISSF or .DSF/.MINIDSF formats. It is not to be confused with the .DSF format which contains DSD audio.
Version 1.0, updated on November 15, 2016; requires foobar2000 version 1.3.
This component provides an unsecure Telnet based remote control interface for the player. It should not be possible to actually affect the player in any way more than the intended playback or playlist manipulation commands.
Version 0.11, updated on January 30, 2018; requires foobar2000 version 1.3.
This component decodes Amiga music in the .TFMX format, optionally with .MDAT or .TFM or .TFX extensions, or Amiga style file names with MDAT.* or TFMX.* names. Original decoder by Peter Pawlowski from way too long ago, but somewhat cleaned up, and using band limited synthesis now.
Version 3.6, updated on February 28, 2020; requires foobar2000 version 1.4.
This component decodes the True Audio / .TTA lossless compression format.
Version 1.10, updated on February 4, 2017; requires foobar2000 version 1.3.
This component unpacks archives in several Unix formats, including GZIP .gz, Bzip2 .bz2, and the Tape Archive container, .TAR.
Version 2.3.4, updated on May 2, 2019; requires foobar2000 version 1.4.
This component decodes game music from the Nintendo 64 console, as ripped in the .USF or .MINIUSF formats.
Version r1050-3324-gde953729, updated on October 19, 2020; requires foobar2000 version 1.3.
This component decodes streamed formats from hundreds of game console, PC, and mobile game audio formats.