Cog icon My foobar2000 components

Game Emu Player

foo_gep

Version 1.218, updated on Friday, 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.

https://g.losno.co/chris/foo_gep/commits/branch/vgmplay
https://g.losno.co/chris/Game_Music_Emu/commits/branch/vgmplay
https://g.losno.co/chris/vgmplay/commits/branch/master
https://g.losno.co/chris/File_Extractor/commits/branch/master

vgmstream plugin

foo_input_vgmstream

Version r1050-3205-g295e1874, updated on Friday, August 14, 2020; requires foobar2000 version 1.3.

This component decodes streamed formats from hundreds of game console, PC, and mobile game audio formats.

https://github.com/losnoco/vgmstream/commits/master

AdPlug

foo_input_adplug

Version 1.55, updated on Sunday, 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.

https://g.losno.co/chris/foo_input_adplug/commits/branch/master
https://g.losno.co/chris/foobar2000/src/branch/master/plugins/adplug

2SF Decoder

foo_input_vio2sf

Version 0.25.4, updated on Saturday, August 8, 2020; requires foobar2000 version 1.4.

This component decodes game music for the Nintendo DS console, as ripped in the .2SF or .MINI2SF formats.

https://g.losno.co/chris/foo_input_vio2sf/commits/branch/master
https://bitbucket.org/losnoco/2sf2wav/commits

NCSF Decoder

foo_input_ncsf

Version 1.17, updated on Wednesday, August 5, 2020; requires foobar2000 version 1.4.

Decodes .NCSF and .MININCSF files, containing Nintendo DS music based on the SDAT/SSEQ format.

https://g.losno.co/chris/foo_input_ncsf/commits/branch/master
https://g.losno.co/chris/SSEQPlayer/commits/branch/master
https://g.losno.co/chris/psflib/commits/branch/master

OpenMPT component (kode54 fork)

foo_openmpt54

Version 0.5.1, updated on Sunday, July 26, 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.

https://g.losno.co/chris/foo_openmpt/commits/branch/master
https://lib.openmpt.org/doc/changelog.html

MIDI Player

foo_midi

Version 2.3.5, updated on Friday, July 24, 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:

https://gist.github.com/kode54/a7bb01a0db3f2e996145b77f0ca510d5

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.

https://g.losno.co/chris/foo_midi/commits/branch/master
https://g.losno.co/chris/midi_processing/commits/branch/master
https://g.losno.co/chris/libADLMIDI/commits/branch/master
https://g.losno.co/chris/midisynth/commits/branch/master
https://g.losno.co/chris/scc/commits/branch/master
https://g.losno.co/chris/munt/commits/branch/master
https://g.losno.co/chris/foobar2000/src/branch/master/plugins/SCPipe

fdk-aac packet decoder

foo_pd_aac

Version 1.12, updated on Monday, June 15, 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.

GSF Decoder

foo_input_gsf

Version 3.0.19, updated on Friday, 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.

https://g.losno.co/chris/foo_input_gsf/commits/branch/master
https://g.losno.co/chris/mgba/commits/branch/gsfplayer
https://g.losno.co/chris/psflib/commits/branch/master

Pause on Lock

foo_lock

Version 0.8, updated on Friday, 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.

https://g.losno.co/chris/foobar2000/src/branch/master/plugins/foobar/foobar2000/foo_lock/foo_lock.cpp

SID Decoder

foo_sid

Version 1.50, updated on Friday, 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.

https://g.losno.co/chris/foo_sid/commits/branch/master
https://g.losno.co/chris/sidplay-residfp/commits/branch/master

TTA Audio Decoder

foo_input_tta

Version 3.6, updated on Friday, February 28, 2020; requires foobar2000 version 1.4.

This component decodes the True Audio / .TTA lossless compression format.

https://g.losno.co/chris/foobar2000/src/branch/master/plugins/foobar/foobar2000/foo_input_tta
https://g.losno.co/chris/foobar2000/src/branch/master/plugins/libtta

PSF Decoder

foo_psf

Version 2.2.5, updated on Sunday, 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.

https://g.losno.co/chris/foo_psf/commits/branch/master
https://g.losno.co/chris/Highly_Experimental/commits/branch/master
https://g.losno.co/chris/psflib/commits/branch/master

QSF Decoder

foo_input_qsf

Version 3.1.1, updated on Thursday, 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.

https://g.losno.co/chris/foo_input_qsf/commits/branch/master
https://g.losno.co/chris/Highly_Quixotic/commits/branch/master
https://g.losno.co/chris/psflib/commits/branch/master

SSF/DSF Decoder

foo_input_ht

Version 2.0.52, updated on Thursday, May 2, 2019; 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.

https://g.losno.co/chris/foo_input_ht/commits/branch/master
https://g.losno.co/chris/Highly_Theoretical/commits/branch/master
https://g.losno.co/chris/psflib/commits/branch/master

USF Decoder

foo_input_usf

Version 2.3.4, updated on Thursday, 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.

https://g.losno.co/chris/foo_input_usf/commits/branch/master
https://g.losno.co/chris/lazyusf2/commits/branch/master
https://g.losno.co/chris/psflib/commits/branch/master

DTS decoder

foo_input_dts

Version 0.6.8, updated on Wednesday, 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.

https://g.losno.co/chris/foo_input_dts/commits/branch/master
https://g.losno.co/chris/foo_input_dts/src/branch/master/dts.cpp

AC3 decoder

foo_ac3

Version 0.9.13, updated on Friday, 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.

https://g.losno.co/chris/foobar2000/src/branch/master/plugins/foobar/foobar2000/foo_ac3/ac3.cpp

Lunar 2 PCM decoder

foo_lunar2

Version 0.9, updated on Tuesday, 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.

https://g.losno.co/chris/foo_lunar2/commits/branch/master

SNESAPU input

foo_snesapu

Version 0.83, updated on Tuesday, 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.

https://g.losno.co/chris/foo_snesapu/commits/branch/master

TFMX decoder

foo_input_tfmx

Version 0.11, updated on Tuesday, 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.

https://g.losno.co/chris/foobar2000/src/branch/master/plugins/foobar/foobar2000/foo_input_tfmx/foo_input_tfmx.cpp

Hively Tracker decoder

foo_input_hvl

Version 1.19, updated on Sunday, 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.

https://g.losno.co/chris/foo_input_hvl/commits/branch/master

KDM Decoder

foo_input_kdm

Version 1.3, updated on Sunday, January 14, 2018; requires foobar2000 version 1.3.

Decodes Ken Silverman's .KDM music files.

7-ZIP Reader

foo_unpack_7z

Version 1.12, updated on Saturday, 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.

https://g.losno.co/chris/foo_unpack_7z/commits/branch/master
https://g.losno.co/chris/File_Extractor/commits/branch/master

EBU R128 Normalizer

foo_r128norm

Version 1.12, updated on Saturday, 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.

https://g.losno.co/chris/foobar2000/src/branch/master/plugins/foobar/foobar2000/foo_r128norm/foo_r128norm.cpp

HDCD decoder

foo_hdcd

Version 1.19, updated on Saturday, 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.

https://g.losno.co/chris/foo_hdcd/commits/branch/master

LHA reader

foo_unpack_lha

Version 1.13, updated on Saturday, 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.

https://g.losno.co/chris/foo_unpack_lha/commits/branch/master

On-Screen Display

foo_osd

Version 1.74, updated on Saturday, 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.

https://g.losno.co/chris/foo_osd/commits/branch/master

Unix archive reader

foo_unpack_unix

Version 1.10, updated on Saturday, 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.

https://g.losno.co/chris/foo_unpack_unix/commits/branch/master

Telnet Daemon

foo_telnetd

Version 1.0, updated on Tuesday, 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.

https://g.losno.co/chris/foobar2000/src/branch/master/plugins/foobar/foobar2000/foo_telnetd