mpeghdec ~ Fraunhofer MPEG-H Audio Decoder


The Fraunhofer MPEG-H decoder (mpeghdec) is a C/C++ implementation of the MPEG-H Audio standard as defined in ISO/IEC 23008-3:2022. MPEG-H Audio is the Next Generation Audio (NGA) codec for personalized and immersive sound. Please visit www.mpegh.com to learn more about MPEG-H Audio.

github.com/Fraunhofer-IIS/mpeghdec
en.wikipedia.org/wiki/MPEG-H
en.wikipedia.org/wiki/MPEG-H_3D_Audio

jamailmar ~ Multi-threaded Ogg Vorbis Decoder


Linux code to decode Ogg Vorbis files with multi-thread support

sourceforge.net/projects/jamailmar

Wigware Ambisonic Decoder (WAD)


Wigware Ambisonic Decoder (WAD)

This program now comes in two flavours, as a Direct Show filter and a VST plugin. The Direct Show Filter allows any Direct Show capable audio player software (such as Windows Media Player) the ability to read and decode B-format wave files (the format of which is specified here on Richard Dobson’s web page – details on the Waveformat extensible file format used can be found on Microsofts web site here – details on Ambisonics can be found here).

The VST version comes in 1st and 2nd order versions (3rd and 4th order versions to follow) and allows you to alter the polar patterns of the speaker feeds either across the whole frequency range or using ‘Shelf Filters’ with a variable cut-off. Both of the VST plugins will derive outputs for a standard ITU 5 speaker array, with higher orders giving better frontal resolution.

web.archive.org/web/20070806013036/http://sparg.derby.ac.uk/SPARG/Staff_BW

wma2wav ~ Convert WMA To Wave Audio


WMA to Wave Audio command-line converter / decompressor.

http://muldersoft.com/#wma2wav

FFmpeg ~ Open Source Audio Video Toolset


A complete, cross-platform solution to record, convert and stream audio and video. FFmpeg is the leading multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. It supports the most obscure ancient formats up to the cutting edge. No matter if they were designed by some standards committee, the community or a corporation. It is also highly portable: FFmpeg compiles, runs, and passes our testing infrastructure FATE across Linux, Mac OS X, Microsoft Windows, the BSDs, Solaris, etc. under a wide variety of build environments, machine architectures, and configurations.

ffmpeg.org

Frontends:

Resources:

foo_input_dvda ~ Foobar2000 DVD-Audio Decoder


DVD-Audio Decoder input plugin and Watermark Detector / Neutralizer DSP plugins for Foobar2000. Decoder is capable of playing back DVD-Audio discs, ISO images, AOB, MLP and Dolby TrueHD files in full resolution. Dedicated plugin for DTS-HD playback. APT-x100 plugin for *.AUD and *.AUE files from DTS movie / trailer discs.

sourceforge.net/projects/dvdadecoder

References:

wiki.hydrogenaudio.org/Foobar2000 Components DVD_Audio_Decoder_foo_input_dvda

FAAD2 ~ Freeware AAC Decoder


FAAD2 is an open source MPEG-4 and MPEG-2 AAC decoder, it is licensed under the GPLv2 license.

www.audiocoding.com/faad2
github.com/knik0/faad2
faac.sourceforge.net
rarewares.org/aac-decoders
en.wikipedia.org/wiki/FAAC#FAAD2_decoder

foo_input_sacd ~ Foobar2000 Super Audio CD Decoder


The Super Audio CD Decoder adds SACD ISO, DSF, DSDIFF/DFF and DSD WavPack support to foobar2000. It can play DSD as PCM or send DSD to compatible output hardware. Related components provide DSD processing and conversion.

Current project: Super Audio CD Decoder on SourceForge

Version checked: foo_input_sacd 2.0.25, released June 22, 2026, with a separate package for foobar2000 1.6.x dated June 24, 2026. SourceForge labels the project Inactive, although its archive lists these June 2026 packages. Its prominent “Download Latest Version” button currently points to 2.0.24, so use the versioned 2.0.25 download links below or inspect the complete file archive. Recent files do not guarantee ongoing maintenance or support.

Installation

  1. Download the package matching your foobar2000 version: foo_input_sacd 2.0.25 for current foobar2000 versions, or the separate package for foobar2000 1.6.x.
  2. In foobar2000, open File → Preferences → Components, install the downloaded component package, and restart foobar2000 if prompted.
  3. Open a supported DSF, DFF/DSDIFF or SACD ISO file to confirm that it is recognized.

Keep a copy of your existing foobar2000 configuration before changing components or output settings. Component packages and compatibility can differ between foobar2000 versions.

Choose an output method

The right configuration depends on whether you want conventional PCM playback or DSD output to a compatible DAC. Start with PCM if your immediate goal is simply to play your files.

Option 1: PCM playback

PCM conversion is the straightforward choice when you want broad output compatibility or need foobar2000 DSPs, meters and visualizations to operate on the decoded audio.

  1. Open File → Preferences → Tools → SACD.
  2. Under Output (per device), select the PCM output mode.
  3. Choose a PCM sample rate supported by your output device. Do not assume 384 kHz is necessary or supported.
  4. If the decoder offers DSD-to-PCM converter settings, begin with the default settings. Change the conversion mode or filter only when you have a reason to do so.
  5. Apply the settings and play a track.

The original article used DSD+PCM, 384000 Hz and Direct (64fp, 30kHz lowpass). Those are settings from one particular setup, not universal requirements. The appropriate mode and sample rate depend on the decoder version, output device and desired processing.

Option 2: DSD output

Direct DSD playback requires a compatible output path and DAC. Support for DSD files by the decoder does not, by itself, guarantee native DSD output to your hardware.

  1. Confirm that your DAC supports the DSD rates and output method you intend to use.
  2. In the SACD decoder’s Output (per device) settings, select DSD where appropriate.
  3. Select an output device and driver that support the intended DSD path.
  4. Play a known DSD track and verify the format reported by the DAC or its control software.

The standard foobar2000 ASIO Output component is not universally required for SACD playback. foobar2000’s own documentation recommends its default output modes unless ASIO is needed for a particular device or driver.

For a compatible DAC requiring an alternative native-DSD path, see foo_out_asio+dsd. Its project documentation describes it as a substitute for the standard ASIO Output component and identifies native DSD playback as its purpose. Do not install multiple output components merely because they are available; choose the path appropriate to your hardware.

DSD, DoP and PCM are different output paths. DoP transports DSD data within a PCM-framed stream; it is not the same as converting the audio to PCM. Actual support depends on the component, driver and DAC. If you need native DSD, verify what your DAC reports rather than relying on a foobar2000 setting alone.

Stereo, multichannel and SACD tags

SACD ISO images may contain stereo and multichannel areas. In the decoder’s SACD input settings:

  • Choose the preferred area according to what you want to play. Selecting Stereo limits playback to the stereo area where available.
  • Enable editable tags if you intend to edit metadata.
  • If using the decoder’s ISO-associated tag storage, understand where those tags are stored and back them up.
  • Linked stereo/multichannel tags can help share metadata between the two versions of an album, but choose this according to your tagging workflow.

Do not assume that every SACD contains both stereo and multichannel material, or that all tag options behave identically across versions. Check the available areas and test tag changes on a copy or a non-critical file first.

Extracting tracks to DSF or other DSD formats

For conversion or extraction, use the separate foo_dsd_converter component. Version 1.0.1 was released June 23, 2026. The project’s readme states that this converter is for non-commercial use only; review the current terms before using it in a commercial context.

  1. Download and install the converter component using foobar2000’s Components preferences.
  2. If needed for the source type or sample rate, install and configure foo_dsd_processor. Consult the converter’s current readme for its requirements.
  3. Select the tracks you want to convert.
  4. Open the Convert context-menu options and choose the DSD conversion function.
  5. Select DSF or another offered output format, set the destination and naming pattern, and run the conversion.
  6. Check the resulting files for correct track boundaries, channel count, tags and playback.

Conversion options can vary with the installed component versions and source material. Keep the original ISO or DSD files until the extracted files have been checked.

About DSD

DSD stands for Direct Stream Digital. Unlike conventional PCM, which represents audio as multibit samples, DSD uses a one-bit stream at a much higher sampling rate. The commonly encountered DSD64 rate is 2.8224 MHz; higher DSD rates also exist. DSD files are not automatically better-sounding than PCM files: mastering, source quality, conversion and playback equipment all matter.

Further reading and downloads

Personal note: I originally followed an earlier version of this procedure to play DSF files and SACD ISO images on an S.M.S.L M500 DAC. That successful setup is useful historical context, but the instructions above distinguish the available output paths rather than assume that one device’s settings will work for everyone.

Last reviewed: October 23, 2026. Component versions and supported output configurations can change; consult the linked project readmes before installing or changing a working system.

Foobar2000 ~ Encoder & Input List


Additional encoding/decoding and input components expand the range of audio file formats that can be played by Foobar2000. Not all of these components are official or officially recommended. Listed alphabetically by component name.

  • foo_ac3 ~ Decodes ATSC A-52 bitstream files (.AC3). Also includes a packet decoder for Matroska files containing AC3 streams.
  • foo_asap ~ Decodes Atari 8-bit chiptunes in the following formats: SAP, CMC, CM3, CMR, CMS, DMC, DLT, MPT, MPD, RMT, TMC, TM8, TM2, FC. Also plays files in all foobar2000-supported formats from ATR disk images.
  • foo_gep ~ Decodes several game console music formats: AY, GBS, GYM, HES, KSS, NSF, SAP, SGC, SPC, and VGM.
  • foo_input_adplug ~ Decodes all Adlib FM chip formats supported by the AdPlug library.
  • foo_input_adplug_mac ~ Decodes the AdLib / OPL2 sound chip formats on MacOS
  • foo_input_amr ~ Plays Adaptive Multi-Rate audio (AMR or AMR-NB).
  • foo_input_avs ~ Decodes AviSynth scripts (.AVS), audio only. Requires AviSynth 2.5 or newer.
  • foo_input_dsdiff ~ Adds decoding support for DSDIFF files (.DFF).
  • foo_input_dts ~ Decodes DTS Coherent Acoustics files (.DTS) and DTS WAV files (.DTSWAV). Also includes a packet decoder for Matroska files containing DTS streams, and a decode post-processor which supports decoding DTS streams from 44100Hz or 48KHz 16-bit lossless PCM streams.
  • foo_input_dvda ~ Decoder is capable of playing back DVD-Audio discs, ISO images, AOB, MLP and Dolby TrueHD files in full resolution. Dedicated plugin for DTS-HD playback.
  • foo_input_gsf ~ Decodes .GSF/.MINIGSF files.
  • foo_input_ht ~ Decodes Sega Dreamcast Sound Format (.DSF/.MINIDSF) files and Sega Saturn Sound Format (.SSF/.MINISSF) files.
  • foo_input_hvl ~ Decodes Hively Tracker files (.HVL) as well as Abyss’ Highest eXperience files (.ahx)
  • foo_input_kdm ~ Decodes Ken Silverman’s Digital Music format files. (.kdm)
  • foo_input_monkey ~ Decodes Monkey’s Audio files (.APE) as well as APE Link files (.APL).
  • foo_input_ncsf ~ Decodes Nitro Composer Sound Format files (.NCSF/.MININCSF).
  • foo_input_org ~ Decodes Organya (.ORG) files.
  • foo_input_qsf ~ Decodes Capcom QSound Sound Format files (.QSF/.MINIQSF).
  • foo_input_shorten ~ Adds support for decoding Shorten files and tagging them through external APEv2 tags.
  • foo_input_sacd ~ Decoder is capable of playing Super Audio CD ISO images, DSDIFF, DSF and DSD WavPack files. Direct DSD playback for compatible devices.
  • foo_input_spotify ~ Spotify support for foobar2000. Requires a Spotify premium account.
  • foo_input_syntrax ~ Supports playback of the Syntrax or Jaytrax module format. (.JXS)
  • foo_input_tak ~ Alternative TAK decoder component. Bundles TAK 2.3.1 beta 1 decoder library.
  • foo_input_tfmx ~ Decodes TFMX files (MDAT., TFMX., .MDAT, .TFM, .TFMX, .TFX).
  • foo_input_tta ~ Decoder for the TTA Lossless Audio Codec. Decodes .tta files.
  • foo_input_usf ~ This is a decoder which adds support for playing (Ultra) Nintendo 64 Sound format (.USF/.MINIUSF) files.
  • foo_input_v2m ~ Farbrausch V2 module (V2M) decoder
  • foo_input_vgmstream ~ Decodes dozens of streamed ADPCM or other compressed format files extracted from various console and PC games.
  • foo_input_vio2sf ~ Decodes Nintendo DS Sound Format files (.2SF/.MINI2SF).
  • foo_input_zxtune ~ Decodes ZX Spectrum, Amiga, PC, Atari, Acorn chip / digital / fm tunes.
  • foo_luner2 ~ Decodes Lunar:  Eternal Blue disc for Sega CD.
  • foo_midi ~ Decodes General MIDI files (.MID, .KAR) and RIFF MIDI files (.RMI) as well as several proprietary MIDI formats (.MIDS, .MDS, .HMI, .HMP, .MUS, .XMI, .LDS).
  • foo_openmpt54 ~ This component aims to replace the DUMB module decoder, or foo_dumb, as it is much faster, and also in some ways more accurate than DUMB. It also supports more features internally, such as MO3 decoding, and unpacking xpk, ppm, and mmcmp formats.  It also supports .MPTM/.MPTMZ, .MO3, .UMX, .MOD/.MDZ/.MDR/.M15, .S3M/.S3Z, .XM/.XMZ, .IT/.ITZ, .STM, .PT36, .NST, .M15, .STK, .ST26, .ICE, .WOW, .ULT, .669, .MTM, .MED, .FAR, .MDL, .AMS, .DSM, .AMF, .OKT, .DMF, .PTM, .PSM, .MT2, .DBM, .DIGI, .IMF (Imago Orpheus), .J2B, .PLM, .SFX, .SFX2, .MMS, .STP, .C67, .GDM, and .DTM.
  • foo_pd_aac ~ 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.
  • foo_psf ~ Decodes Sony Playstation Sound Format files (.PSF/.MINIPSF) as well as Playstation 2 Sound Format files (.PSF2/.MINIPSF2).
  • foo_sid ~ Decodes Commodore 64 SID sound files (.SID, .MUS). Based on resid-fp.
  • foo_snesapu ~ An alternative decoder for Super Nintendo SPC Sound Format files (.SPC).
  • foo_youtube ~ Play Youtube videos and playlists directly from their URLs.
Additional Input Resources:

foo_hdcd ~ This post processing service component will decode HDCD data in any 16-bit PCM stream passed through it by supporting inputs, such as CDDA, WAV, FLAC, and WavPack.

Command-Line Decoder Wrapper ~ This component allows foobar2000 to play or convert any audio format with a standalone command-line decoder available, including various exotic formats that do not have native foobar2000 decoder components. (foo_input_exe)

FFmpeg Decoder Wrapper ~ This component allows foobar2000 to read arbitrary file formats via user-supplied ffmpeg.exe and ffprobe.exe. (foo_input_ffmpeg)

foo_dyndec ~ Exposes the decoded sample rate, number of channels and bit depth to components that can only use static information natively.

foo_input_dummy ~ a pseudo input

How to install a foobar component.

Free CODECS ~ Online Repository


http://www.free-codecs.com
http://www.free-codecs.com/audio_codecs

FLAC Frontend ~ Lossless Encoding GUI


FLAC Frontend is a convenient way for Windows users not used to working with command lines to use the official FLAC tools. It accepts WAVE, W64, AIFF and RAW files for encoding and outputs FLAC or OGG-FLAC files. It is able to decode FLAC files, test them, fingerprint them and re-encode them. It has drag-and-drop support too. It is tested on Windows XP SP3 and Windows 7, but should work with Windows XP SP2 or newer. It requires .NET 2.0 or later.

sourceforge.net/projects/flacfrontend