foobar2000 Components

For foobar2000 v1.5 and newer

List foobar2000 v1.4+ components (last versions with Windows XP support)

List older foobar2000 v1.1+ components

These components are designed for foobar2000 v2.0.

They are compatible with foobar2000 v1.5 and newer but require at least Windows 7 and CPU with SSE2 instruction set.

The components support both 32-bit and 64-bit versions of the player and they handle dark mode.

ComponentDescriptionLast Updated
Amplifier DSP v1.0.4A simple volume adjustment DSP allowing the signal amplitude to be both boosted and lowered.
  • 1.0.4 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.0.3 (2022-02-05): Added dark mode support.
  • 1.0.2 (2018-04-07): Fixed rounding issue on the configuration screen. Dynamic C runtime compile for foobar2000 v1.4+
  • 1.0.1 (2017-02-06): Fixed crash when attempting to open About
  • 1.0 (2017-02-06): Initial version.
2023-03-16 12:06
Audio MD5 v0.6.5A tool for generating and verifying MD5 checksum of audio data. Uses ffmpeg.exe and supports all formats FFmpeg supports.
  • 0.6.5 (2023-09-08): Changed the error message for missing ffmpeg to be more clear. Altered some wording.
  • 0.6.4 (2023-03-16): Changed lossless output checksumming to use raw decoder output when supported. This allows the 32-bit version to handle some extra formats it otherwise couldn't losslessly process. Returned foobar2000 v1.5 compatibility for the 32-bit version of the component.
  • 0.6.3 (2022-09-25): Fixed internal lossless hasher's handling of 32-bit integer PCM data. 32-bit foobar2000 shows an error message and 64-bit foobar2000 calculates correct checksum.
  • 0.6.2 (2022-02-04): Added dark mode support.
  • 0.6.1 (2022-01-19): Fixed text truncation in the result dialog statusbar.
  • 0.6 (2021-12-21): Fixed track naming in result dialog to use the configured setting.
  • 0.5 (2021-12-20): Added option to compute the hash from the decoded PCM data with lossless formats.
  • 0.4 (2020-11-15): Made the name of the AudioMD5 tag field configurable.
  • 0.3 (2020-10-17): Made default checksum scan skip tracks with existing AudioMD5 tag. Added a new hidden-by-default context menu command to force scan tracks with existing checksum tag. Removed OK button from the result dialog when there's no need to tag any files. Changed tagging not to touch the files if tag content didn't change. Improved status texts.
  • 0.2 (2020-10-09): Added multithreaded scanning. Moved tagging to background thread.
  • 0.1 (2020-10-07): Initial version.
2023-09-08 18:21
BPM AnalyserRecompile of foo_bpm by Michael Balzer/Holger Stenger. Added support for dark mode and 64-bit foobar2000. 2023-10-06 08:00
Crossmix DSP v0.4Mixes the beginning of the next track over the ending of the previous track without any fading.
  • 0.4 (2023-10-13): Fixed a possible crash with audio format change.
  • 0.3 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.2 (2022-02-05): Added dark mode support
  • 0.1 (2019-09-01): First version
2023-10-13 19:09
Cuesheet Creator v0.4.6dRecompile of foo_cuesheet_creator by Synthetic Soul. Adjusted for the latest SDK and added 64-bit support.
  • 0.4.6d (2023-08-29): Fixed a crash when ALBUM tag field was missing. Added some more sanity and error checks.
  • 0.4.6c (2022-09-04): Recompile with latest SDK and added 64-bit support.
2023-08-29 10:09
Downmixer DSP v1.2Downmixes source to the selected output format.
  • 1.2 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.1 (2022-02-05): Added dark mode support
  • 1.0 (2020-08-15): Initial version
2023-03-16 12:05
External Tags v1.5.14Adds tagging support for non-taggable file formats.
  • 1.5.14 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.5.13 (2022-02-14): Changed the component to use SQLite bundled by the player.
  • 1.5.12 (2021-11-08): Added option to prevent automatic external tag creation for read-only files. Removed folder tag path parsing failure messages for unknown protocols.
  • 1.5.11 (2020-09-20): Fixed fallback album art writer to only create external tag when the art isn't blank. Fixed album art fallback writer to create external tag for all subsongs of the file and not just hardcoded subsong 0.
  • 1.5.10 (2020-04-10): Fixed external APEv2 reading.
  • 1.5.9 (2020-03-16): External APEv2 with nothing but ReplayGain data was ignored.
  • 1.5.8 (2019-10-21): Made external tag commit able to use the optional file timestamp preservation feature introduced in foobar2000 v1.5.
  • 1.5.7 (2019-10-16): Changed the filesystem wrapper to only be used for file based paths.
  • 1.5.6 (2019-08-27): Added filesystem wrapper for the custom protocols so optional file timestamp preservation works when editing file tags.
  • 1.5.5 (2019-08-22): Fallback album art writer will now create an external tag from current metadata instead of adding art to a blank tag.
  • 1.5.4 (2019-08-22): The previous two components were incorrectly compiled with foobar2000 v1.3 API compability and didn't function properly. Fixed real file access so editing file tags and committing external tags to files works. Added real file access support to album art handlers so "Edit file tags" can show embedded art in a track even if external tag contains different art.
  • 1.5.3 (2019-08-15): Removed redirect flags from decoders to improve compatibility with foobar2000 v1.4.6
  • 1.5.2 (2019-08-13): Updated to new filter API with album art and dynamic info support.
  • 1.5.1 (2019-08-09): Made the writer component reject anything but the component's internal protocols on foobar2000 v1.5. Restored foo_tube blacklist on older foobar2000 version. Youtube links are now taggable on latest foobar2000 and Youtube playlist loading should work again.
  • 1.5 (2019-08-07): Added support for a new metadata filter API on foobar2000 v1.5 beta 8. On the new foobar2000 version the "External Tags (reader)" decoder is hidden and won't be used. External Tag support currently requires manually enabling the component under Preferences -> Tools -> Track Info Filters. The "External Tags (writer)" decoder is still present for certain features, make sure it has the lowest priority so it can't interfere with normal operation.
  • 1.0.34 (2019-07-23): Made component init more robust.
  • 1.0.33 (2019-07-19): Made the component able to handle new decoder-based Skip Track component. Removed unnecessary file opening.
  • 1.0.32 (2019-06-17): Fixed a rare crash.
  • 1.0.31 (2019-06-16): Added the content type of YouTube Source component to blacklist to unbreak its playlist loading feature.
  • 1.0.30 (2019-04-12): Fixed bug with empty tag value handling in SQLite. Updated SQLite to latest version and changed its compile settings to multithreaded. Enabled using "Create external tags" command on already externally tagged tracks when the component is configured to use another tagging format. Fixed external tag removal when configured to always write to preferred format. Fixed the component changing any custom file open exception to a generic exception. Added option to disable album art support.
  • 1.0.29 (2019-04-07): Added option force writing external tags in chosen format. This can be used to convert from one external tag type to another directly without committing tags.
  • 1.0.28 (2019-03-21): Fixed a rare crash. Changed tag commit to use a background thread so it no longer blocks the UI.
  • 1.0.27 (2019-03-16): Changed component to use C++ mutexes. Fixed a problem causing memory copy of folder tag to contain invalid data if tag writing failed.
  • 1.0.26 (2019-02-24): Added option to disable properties dialog opening when external tags are created.
  • 1.0.25 (2019-02-15): Fixed possible crash if multiple threads accessed APEv2 tagged streams simultaneously.
  • 1.0.24 (2019-02-11): Added workaround for tag commit breaking Matroska tags.
  • 1.0.23 (2019-02-09): Fixed folder tag moving with multi-subsong files.
  • 1.0.22 (2019-02-08): Fixed freeze when moving folder tag within same directory.
  • 1.0.21 (2019-01-30): The metadata refresh fix in previous build broke subsong-enabled track tagging. Fixed the fix.
  • 1.0.20 (2019-01-29): Fixed automatic metadata refresh when using "Edit file tags" with files that had no external tags. Added external tag copying from the source file to the copy when using File Operations (only used for folder and APE tags).
  • 1.0.19 (2019-01-05): Fixed SQLite database storing wrong number of tag fields when a field had multiple values.
  • 1.0.18 (2018-12-16): Fixed reading ReplayGain info from APE tags. Added context menu command for finding files that have been edited since External Tag was last modified.
  • 1.0.17 (2018-12-15): Changed 'Edit External Tags' context menu entry to only open properties dialog without doing any tag creation - any tag edits will get saved to external tags. Added new explicit 'Create External Tags' menu entry for old behavior. Added 'Edit file tags' context menu entry that always edits native tags of the target file directly. Fixed moving external tag entries from old files to new ones for APEv2 and folder tags when their directories change.
  • 1.0.16 (2018-12-10): Fixed crash if component is accessed after decoder has finished.
  • 1.0.15 (2018-12-09): Added decoder event logger support. Made non-tagged stream opening faster. More mime-type fixes.
  • 1.0.14 (2018-12-08): Fixed crash.
  • 1.0.13 (2018-12-08): Fixed stream opening to find decoder based on mime-type.
  • 1.0.12 (2018-12-07): Fixed ability to "remove" existing tags with APE tags from a subsong-enabled file.
  • 1.0.11 (2018-12-06): Fixed APE tag subsong handling. Changed SQLite database to be initialized only if it's accessed.
  • 1.0.10 (2018-12-04): Fixed fallback tag writing. Added some (temporary) extra error reporting for folder tag writing.
  • 1.0.9 (2018-11-29): Added support for album art priority control coming in foobar2000 v1.4.2. Changed track wrapping to only be available for files with existing external tags.
  • 1.0.8 (2018-11-19): Fixed converter not getting metadata from external tags.
  • 1.0.7 (2018-11-16): Fixed slow context menu opening if multiple tracks were selected. Fixed external tag editing after tag contains album art. Fixed some tag commit failure conditions. Made tag commit working for playing track.
  • 1.0.6 (2018-11-14): Fixed tag committing to subsong-enabled files. Changed pre tag creation sorting to slower function that works correctly with subsongs.
  • 1.0.5 (2018-11-13): Editing external tags no longer needs to reload info from the tracks.
  • 1.0.4 (2018-11-13): Fixed tag committing crashing on large workload.
  • 1.0.3 (2018-11-12): Art loading didn't work correctly when reading multiple tag formats.
  • 1.0.2 (2018-11-12): Fixed empty APE tag being rejected when tag contained album art.
  • 1.0.1 (2018-11-12): Fixed folder tag data being missing for random tracks.
  • 1.0 (2018-11-11): Fixed ReplayGain info saving in folder tags file. Fixed APEv2 and folder tags being unable to store blank tags for a file. Added cover art support to folder tags file. Made album art tagging on new file save current tags as external tags. Added ability to customize folder tags filename.
  • 0.9.9 (2018-11-09): Added option to use APE tags, SQLite tagging, or to use a combined folder.tags file for all tracks in a directory. Album art support isn't implemented for folder tags. Made external tag creation and removal use background thread to not block UI. Added exception handling to all filesystem access functions to prevent crashing on error situations. Rewrote subsong handling to hopefully be less buggy. Removed support for reading filename.subsong.tag multitrack tag files. Changed path wrapping to allow wrapping local files to take over album art handling.
  • (2018-10-25): Reloads info for tracks immediately after creating External Tags
  • 0.9.8 (2018-10-22): Made the component merge static metadata to dynamic metadata. Changed external tag removal to unwrap tracks. Changed the default wrapper to just exttag://, using parenthesis is only needed when manually adding HLS streams with Add Location.
  • 0.9.7 (2018-10-21): Fixed a crash with malformed tag file.
  • 0.9.6 (2018-10-21): Made external tags follow file renames, moves and deletions. Fixed inability to tag unknown urls. Added exttag://() wrapper handler which allows tagging streams with album art - existing stream links can be converted to wrapped format from context menu.
  • 0.9.5 (2018-10-20): Worked around inability to play HLS streams with the component active. Made non-stream tag modifications refresh instantly.
  • 0.9.4 (2018-10-20): Fixed buggy tag committing.
  • 0.9.3 (2018-10-20): Adding external alternate data stream tag for taggable format didn't work. Added a new context menu command to move external tag contents into native tags.
  • 0.9.2 (2018-09-22): Fixed inability to read tag files embedded in archives. Changed the component to reject file extensions not recognized by foobar2000 inputs - this leaves out all unwanted non-audio files when dragging and dropping folders to foobar2000 playlist.
  • 0.9.1 (2018-08-02): Fixed tag writing when using properties dialog to do the initial tagging.
  • 0.9 (2018-08-01): Option to store tags in NTFS Alternate Data Streams. Setting can be toggled in advanced preferences under Tagging.
  • 0.8 (2018-07-15): Native album art writing works again. Tag reader now also supports tag writing for tracks that have external tags present. That way editing tags for such files forces the edits to go to external tags. Fixed external tagging of cue sheets.
  • 0.7 (2018-07-04): Bugfixes. Tag reader made everything report tagtype as External APEv2. Album art writer will now only activate for files that have external tag file present.
  • 0.6 (2018-06-30): Added album art support and ability to tag streams. Made the component prefer external tags outside archives over the ones stored in archives. Changed reported tag type to "External APEv2". Added context menu command for removing external tags from files. Note that stream tagging requires using "Edit External Tags" context menu command - regular properties dialog doesn't call tag writing functions on streams
  • 0.5 (2018-06-17): Removed error message when trying to remove a non-existing tag file. External tag now allows "removing" existing tags from a file
  • 0.4 (2018-06-17): Changed subsong tagging to not write separate file for each subsong. Added ability to tag files in archives
  • 0.3 (2018-06-16): Fixed a bug that prevented tagging some files
  • 0.2 (2018-06-16): Added support for subsongs
  • 0.1 (2018-06-14): Initial version
2023-03-16 12:05
Fade In/Out DSP v1.0.7Allows adding linear, sine, cosine, or logarithmic shaped fade-in and fade-out effects.
  • 1.0.7 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.0.6 (2022-02-05): Added dark mode support
  • 1.0.5 (2019-10-06): Added option to disable track change detection
  • 1.0.4 (2019-09-19): Fixed buffering with Converter
  • 1.0.3 (2018-11-07): Fixed buffer resize bug when channel count changed
  • 1.0.2 (2018-06-04): Changed buffering logic to be more robust. Added rejection for invalid audio chunks
  • 1.0.1 (2018-01-06): Added logarithmic fade option where volume adjusts linearly from -100 db to 0dB. Compiled with dynamic C runtime for foobar2000 v1.4
  • 1.0 (2017-11-27): Initial version
2023-03-16 12:05
Fake Gapless DSP v0.6Briefly fades track changes to silence to avoid glitches with gapless tracks when encoded with lossy codecs. Meant to be used with the Converter component when creating files for portable players.
  • 0.6 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.5 (2022-02-05): Added dark mode support
  • 0.4 (2018-01-06): No changes in functionality. Dynamic C runtime version for foobar2000 v1.4
  • 0.3 (2014-11-22): Changed fade to cosine shape and made fade length adjustable
  • 0.2 (2010-07-30): First public version
2023-03-16 12:05
fdk-aac packet decoderRecompile of foo_pd_aac by kode54. Added 64-bit support. 2022-09-06 06:45
Gap Killer DSP v0.4.6Removes silence from track transitions.
  • 0.4.6 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.4.5 (2022-09-05): Added foobar2000 v2.0 dark mode and 64-bit support.
  • 0.4.4 (2020-02-22): Fixed a crash with sample rate change.
  • 0.4.3 (2020-02-16): Re-added silence threshold slider. Changed -100 dB silence threshold to only touch digital silence. Currently all automation and smoothing fades are off
  • 0.4.2 (2019-01-26): Added configuration for maximum gap length to remove
  • 0.4.1 (2018-01-06): No changes in functionality. Dynamic C runtime version for foobar2000 v1.4
  • 0.4 (2017-02-26): Tries to find best interpolation length on track change automatically. Added short fades to track transitions when sample rate or channel count changes
  • 0.3 (2017-02-18): Converted to work with foobar2000 v1.1+. Removed configuration
  • 0.2.1 (2003-07-26): Added silence removing to the end of playback
  • 0.2.0 (2003-07-17): Major improvements in silence detection code
  • 0.1.5 (2003-05-26): Fixes
  • 0.1.4 (2003-05-23): Console only reports total number of samples skipped at the beginning
  • 0.1.3 (2003-05-21): Added support to smooth cut position, improved unintended silence detector, added config
2023-03-16 12:06
Hard Clip DSP v1.0.3Clips peaks forcing foobar2000 output to match players that don't support floating point output.
  • 1.0.3 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.0.2 (2022-02-05): Recompile for x64
  • 1.0.1 (2018-01-06): Changed the dll name to include _dsp_. Dynamic C runtime version for foobar2000 v1.4
  • 1.0 (2011-06-05): Initial version
2023-03-16 12:06
mda Dither DSP v0.3Range of dither types for word-length reduction. Almost direct conversion of Paul Kellett's VST plug-in.
  • 0.3 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.2 (2022-02-05): Added dark mode support
  • 0.1 (2018-07-25): Initial version
2023-03-16 12:05
No Display Standby v1.1.4Disables monitor power saving feature while music is playing.
  • 1.1.4 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.1.3 (2022-09-05): Added foobar2000 v2.0 64-bit support
  • 1.1.2 (2018-01-06): No changes in functionality. Dynamic C runtime version for foobar2000 v1.4
  • 1.1.1 (2017-04-23): Recompile with dynamic CRT
  • 1.1 (2013-03-22): Added a menu option to disable the component. Uses PowerSetRequest instead of SetThreadExecutionState on supported OSes (Windows 7 and newer).
  • 1.0 (2013-03-08): First version
2023-03-16 12:05
No Sleep v1.2Prevents system from entering standby mode while foobar2000 is running.
  • 1.2 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.1 (2022-09-05): Added foobar2000 v2.0 64-bit support
  • 1.0 (2018-03-06): First version
2023-03-16 12:05
Play NextAdds the selected track to the beginning of the playback queue to be played next. 2023-03-16 12:05
Pregap DSP v1.0.7Inserts silence before real playback begins. For use with slowly initializing digital receivers.
  • 1.0.7 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.0.6 (2022-09-05): Added foobar2000 v2.0 dark mode and 64-bit support.
  • 1.0.5 (2019-12-15): Added some playback callback functionality back to be able to detect manual track changes and skip adding silence when DSP is activated mid-playback. Separated seek and manual track change options.
  • 1.0.4 (2019-04-11): Removed playback callback hacks and the function now works as a plain DSP. Config is still under Tools menu.
  • 1.0.3 (2019-03-23): Removed silence on pause as output buffer prevents it from working correctly.
  • 1.0.2 (2018-01-19): Added option for inserting silence on stream format changes
  • 1.0.1 (2018-01-06): No changes in functionality. Dynamic C runtime version for foobar2000 v1.4
  • 1.0 (2016-05-08): Moved config to Tools menu. Added option to insert noise instead of silence. Now adds silence after pause and optionally after seek and manual track change.
  • 0.2 (2010-01-18): Added configuration
  • 0.1 (2010-01-17): First version. A test to deal with slow wakeup of external decoders when using digital connection.
2023-03-16 12:06
Recorder v0.2.3Record audio from selected sound card input.
  • 0.2.3 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.2.2 (2022-02-05): Added dark mode support.
  • 0.2.1 (2019-04-11): Added back ability to record more than two channels.
  • 0.2 (2019-04-07): Moved configuration to a proper preferences page. Added ability to select specific recording device.
  • 0.1.2 (2018-01-11): Fixed crash on error.
  • 0.1.1 (2018-01-06): No changes in functionality. Dynamic C runtime version for foobar2000 v1.4
  • 0.1 (2010-01-23): First version converted from old sources. Only usable with record:// playlist entry syntax.
2023-03-16 12:05
Renamer v0.3.4An alternative file renamer for people who wish to configure reserved character replacement rules manually.
  • 0.3.4 (2023-09-15): Previous version didn't fix playlist entries correctly. Updated to the latest SDK.
  • 0.3.3 (2023-09-10): Now detects filesystems that don't let rename alter just case and uses workaround to rename these paths.
  • 0.3.2 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.3.1 (2022-02-04): Added dark mode support.
  • 0.3.0 (2020-04-19): Fixed crash when Unicode Normalization Form KC turned characters into illegal filesystem characters. Made the component skip normalizing its own replacement characters. The component now moves files from the source dir to target dir if target directory already exists and source can't be renamed to it.
  • 0.2.9 (2019-02-10): Separate quote treating was buggy so the change was backed out. Changed subsong check to not rely on subsong indexes but query the decoder to get real subsong count. Added ability to exclude tracks matching specified search query. Fixed preferences page group layout
  • 0.2.8 (2019-02-09): Added prevention against trying to rename tracks with subsong index above 0. Made quote replacing treat each tag field separately
  • 0.2.7 (2019-02-03): Fixed character replacement rule configuration saving
  • 0.2.6 (2018-05-25): Fixed $directory functions not working. Added character replacement rule for solo double quote
  • 0.2.5 (2018-03-30): Smarter metadata refresh after rename
  • 0.2.4 (2018-03-28): Reloads metadata after rename
  • 0.2.3 (2018-03-25): Allows changing just case
  • 0.2.2 (2018-03-24): Playlist modifications now skip autoplaylists. Reserved names like NUL are now handled. Path components are truncated to maximum length supported by the target filesystem. Status is reported on the same dialog that shows previews of name changes.
  • 0.2.1 (2018-03-20): Fixed preferences page
  • 0.2 (2018-03-19): Removed "allow dot at the end of a name" option
  • 0.1 (2018-03-19): Initial version
2023-09-15 06:01
ReplayGain DSP v0.2.10Alternative RG implementation with smart RG mode selection based on playback mode and playlist contents, automatic loudness estimation for tracks with missing RG info and different methods for clipping prevention.
  • 0.2.10 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.2.9 (2022-02-05): Added dark mode support.
  • 0.2.8 (2021-07-26): Added protection against apparent invalid gain values.
  • 0.2.7 (2021-07-23): Returned to older SDK to restore Windows XP compatibility. Blacklisted incompatible protocols so they won't be attempted to be decoded.
  • 0.2.6 (2021-03-27): Opening configuration window reverted -14 LUFS target loudness to default because of incorrect range check. Replaced "experimental" in the name with "alternative"
  • 0.2.5 (2020-09-23): Changed decoder initialization flags to allow inaccurate seeking to improve subsong scanning speed
  • 0.2.4 (2019-08-03): Added option to disable automatic replaygain scanning of streams
  • 0.2.3 (2019-07-26): Compression use check had incorrect logic and the feature was off when it was supposed to be on, and vice versa
  • 0.2.2 (2019-01-08): Only calls ReplayGain scanner on valid audio chunks to prevent lock-ups
  • 0.2.1 (2018-11-14): Uses previous scale if RG data is missing and can't be scanned
  • 0.2 (2018-10-27): Altered compression routine. Made the component attempt to scan gain values from unreplaygained tracks.
  • 0.1 (2018-10-24): Initial version
2023-03-16 12:05
Seek to Time v0.5Allows defining timestamps to directly seek to with keyboard shortcuts.
  • 0.5 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.4 (2022-09-05): Added foobar2000 v2.0 64-bit support
  • 0.3 (2019-12-03): Added support for setting target positions as percentage points and changed default positions to percentages
  • 0.2 (2019-10-08): Made timestamps configurable
  • 0.1 (2019-09-30): Initial version
2023-03-16 12:05
Skip Silence DSP v1.0.5Automatically fast forwards over extended periods of silence. Now a built-in feature but this component allows leaving in longer silence.
  • 1.0.5 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.0.4 (2022-02-05): Added dark mode support
  • 1.0.3 (2018-01-06): No changes in functionality. Dynamic C runtime version for foobar2000 v1.4
  • 1.0.2 (2014-10-21): Now fades the audio signal around skipped parts
  • 1.0.1 (2014-02-22): Adjusted various limits and defaults. Length is now ajustable between 0.5 seconds and 2 minutes
  • 1.0 (2011-06-26): Ported to foobar2000 v1.1
  • 0.0.2 (2003-06-12): Added config to specify minimum length of silence needed to start skipping
  • 0.0.1 (2003-05-28): First version
2023-03-16 12:05
Skip Track v1.38Skips tracks that match user configurable title formatting string. By default skips over each track with Rating set to 1.
  • 1.38 (2023-09-15): Changed skip_count title format field name to skip_track_skip_count. Updated to latest SDK.
  • 1.37 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.36 (2022-08-27): Added dark mode support.
  • 1.35 (2022-07-01): Fixed incorrect time parsing when millisecond accuracy was used.
  • 1.34 (2021-08-05): Fixed converter DSP not resetting partial skip list after each track. Reverted to older SDK to restore Windows XP compatibility.
  • 1.33 (2021-03-21): Fixed playlist length not changing when changing playback to another playlists.
  • 1.32 (2020-11-29): Added support for skipping streams. This requires enabling the setting "treat query as titleformat string" and writing the skip string as a regular titleformat string. If the string evaluates to anything but empty string or 0 the track will be skipped.
  • 1.31 (2020-10-17): Added Columns UI button state support.
  • 1.30 (2020-09-13): Removed all restrictions from bookmarking code that limited it to function only with local files and changed bookmarks to use foobar's metadb index store instead of file tags.
  • 1.29 (2020-07-10): Improved performance of playlist length computation.
  • 1.28 (2020-06-22): Changed behavior with "Repeat (track)" playback order. Now manually selecting a skippable track will allow the track to play once but not continue looping.
  • 1.27 (2020-06-21): Fixed skipping not working with "Repeat (track)" playback order. Added tracking of skip counts - visible in the properties dialog and accessible with title format field %skip_count%. Added rounding to playlist_length functionality and made $playlist_length() function return one as a minimum value instead of zero.
  • 1.26 (2020-05-16): Fixed playback resume to be treated like manual track selection. Added new titleformat variable %playlist_length% which returns the total duration of the playing playlist in minutes. Added new function $playlist_length(unit, percentage) which returns the wanted percentage of the total duration of the playlist in chosen unit.
  • 1.25 (2020-04-09): Fixed the timestamp skip check.
  • 1.24 (2020-04-09): Reverted the change introduced in version 1.17. Instead SKIP isn't treated as a timestamp if it doesn't include colon or decimal dot.
  • 1.23 (2020-03-28): Automatic bookmarking will ignore the playing track if the bookmark is manually removed. Adjusted autobookmarking behavior with seeking. Added new titleformat variable %playback_reason% to further control skip behavior.
  • 1.22 (2020-03-25): Fixed autobookmarking of tracks outside media library to also require 10 seconds of playback before being triggered. Added 10 second playback requirement after forward seek until new position is used for autobookmarking. Renamed bookmark menu entries to include mention of Skip Track.
  • 1.21 (2020-03-24): Added setting to allow automatically bookmarking tracks outside media library too. Added option to restrict bookmarking to tracks that match a query string.
  • 1.20 (2020-03-14): Made %playlist_name% and %playback_order% checks case insensitive. Fixed %playlist_name% to reflect playing playlist and not active playlist.
  • 1.19 (2020-03-07): Fixed dynamic_assert failure with repeated skip.
  • 1.18 (2020-02-24): Switching component on or off unintentionally triggered the bookmarking command.
  • 1.17 (2020-02-10): Doesn't use %SKIP% tag for time based partial skipping if it's used in the skip query.
  • 1.16 (2019-10-04): Reintroduced bookmarking support (requires foobar2000 v1.5 series).
  • 1.15 (2019-08-24): The DSP is automatically enabled when playback is started on foobar2000 v1.5 series and disabled on foobar2000 v1.4 series.
  • 1.15beta2 (2019-08-20): Restored the ability to force play a skippable track that got broken in beta 1. Made the component not skip the playing track mid-playback if the decoder gets reinitialized for any reason.
  • 1.15beta1 (2019-08-07): Added support for arbitrary number of skip positions. Added support for new APIs introduced with foobar2000 v1.5. The new interface makes the component fully compatible with External Tags and partial skipping works without altering track lengths and remains compatible with DSP effects. The component needs to be inserted into the DSP chain on foobar2000 v1.5.
  • 1.10.3 (2019-07-29): Removed the restrictions added for 1.10 that excluded the component from streams and prevented it from using input redirectors
  • 1.10.2 (2019-07-19): Removed External Tags exclusion when new-enough version of the component is installed. Restored partial skip support for tracks that would normally be skipped
  • 1.10.1 (2019-07-17): Fixed delay insertion when continuously skipping tracks. Fixed "stop playback after repeated skips" to work when looping backwards. Fixed manual skip override to work with m-TAGS
  • 1.10 (2019-07-16): Added configuration to select if full track skipping should be active outside normal playback. Fixed queue not being able to force play tracks that would normally be skipped. Fixed Previous button being able to jump backwards in history over skipped tracks. Removed bookmark support
  • 1.10 beta 2 (2019-07-14): Made "Skip even manually selected tracks" setting work. Prevented the component from being able to freeze the player on continuous track skipping.
  • 1.10 beta 1 (2019-07-14): Removed DSPs and made the skip component work as an input decoder. Added option to stop playback on repeated skips
  • 1.9.10 (2018-01-06): Skip timestamp parser doesn't overflow from decimals so easily anymore. Dynamic C runtime version for foobar2000 v1.4
  • 1.9.9 (2017-08-15): Skipping the end of a track prevented Stop after current from working. Now playback is stopped in this case. Unfortunately cursor won't advance to the next track like it normally would
  • 1.9.8 (2016-04-17): Fixed incorrect behavior when using Previous-command after skipping a track
  • 1.9.7 (2015-01-05): Fixed conflicts between SKIP tag and other components that try to seek
  • 1.9.6 (2014-12-03): Fixed DSP part playing silence if component was enabled while playing a track that should be skipped
  • 1.9.5 (2014-11-06): Fixed to work with other DSPs that request track change marks
  • 1.9.4 (2014-10-13): Added safety checks to callbacks to stop all action after on_quit is called
  • 1.9.3 (2014-09-30): Fixed query string length limit
  • 1.9.2 (2014-09-29): Moved settings from advanced preferences to main preferences
  • 1.9.1 (2014-09-20): Bugfixes
  • 1.9 (2014-08-05): Fixed muted output when resuming in paused state. SKIP and BOOKMARK fields no longer override playback resume position. Allows other components to seek to any position on track start regardless of SKIP field's presence.
  • 1.8.9 (2014-07-19): Changed not to skip tracks if skip query is empty.
  • 1.8.8 (2014-07-06): Fixed %playlist_name% handling.
  • 1.8.7 (2014-05-01): Fixed playback skipping not always working.
  • 1.8.6 (2014-04-28): Properly fixed Converter DSP failing to skip parts. Fixed playback failing to skip ending of track if SKIP tag specified also beginning of track.
  • 1.8.5 (2014-04-27): Fixed Converter DSP failing to skip end of track.
  • 1.8.4 (2014-04-20): Fixed skip check for the next track if component was enabled during playback. Added status printing for queue sourced tracks.
  • 1.8.3 (2014-03-06): Removed the DSP change checks introduced in version 1.7.3. These were misbehaving with at least foo_playlist_attributes.
  • 1.8.2 (2014-03-04): Now considers queued tracks to be manually selected and uses the appropriate skip rule.
  • 1.8.1 (2014-02-27): Recompile with SSE2 optimizations disabled.
  • 1.8 (2014-02-23): Moved track skip logic to be performed entirely in the DSP. Fixed partial skipping with SKIP tag. Now also comes with an additional DSP for Converter use. Converter behavior when skipping entire tracks depends on output codec. WAV for example produces zero byte file and converter reports error, FLAC produces no output.
  • 1.7.8 (2013-04-13): Changed DSP skip check to allow core callbacks more time to skip track before giving up
  • 1.7.7 (2013-03-24): Fixed bug that component did not respect playback queue
  • 1.7.6 (2013-03-23): Documented all the special fields skip query supports
  • 1.7.5 (2013-01-26): Added support for $rand() function
  • 1.7.4 (2011-07-02): Bookmark tag isn't updated if another component changes playback position immediately after track is opened. Fixed 'Skip to end' behavior with 'Repeat (track)' playback mode. Allowed use of 'Skip to end' feature together with bookmarks.
  • 1.7.3 (2011-06-29): Fixed DSP chain adjustments causing pauses in audio. Fixed bookmarks disappearing unintentionally in some cases.
  • 1.7.2 (2011-06-25): Fixes to bookmarking related features. Changed autobookmarking not to tag files during the first ten seconds of playback.
  • 1.7.1 (2011-06-25): Added an option to keep bookmarks of manually bookmarked tracks updated too. Now updates bookmark also when playback is stopped.
  • 1.7 (2011-06-25): Added support for bookmarking tracks. Can also automatically bookmark tracks that are in Media Library.
  • 1.6 (2011-06-20): Added support for querying current playback order name using %playback_order%
  • 1.5.1 (2011-03-27): Fixed an issue where the DSP could start playing silence in some situations when using time expressions.
  • 1.5 (2011-03-12): Fixed manual playback of files from Media Library Search window. Added support for time expressions in the skip string (time expressions in the DSP component require foobar2000 v1.1.6 or newer).
  • 1.3 (2010-08-23): Allows skipping both the beginning and the end of a track.
  • 1.2 (2010-07-04): Allows skipping a part inside a track. Syntax SKIP=[from-time]-[to-time]. Changed status bar description for main menu entry to show current skip query string.
  • 1.1 (2010-07-04): Added support for querying current playlist name using %playlist_name%. Added support for skipping the beginning or the end of a track by using tag field SKIP. To skip the beginning, use syntax SKIP=-<time>. To skip the end, use SKIP=<time>-.
  • 1.0 (2010-05-02): Previous version broke gapless playback. Simplified the DSP code. Skip Track should be the last DSP in the chain.
  • 0.9 (2010-05-02): Beginning of a skipped track was still played even when using DSP.
  • 0.8 (2010-04-24): Bugfix: DSP component skipped some short tracks always. Added console notification about skipped track.
  • 0.7 (2010-01-16): Better thread safety. Should no longer hang playback when changing DSP configuration while playing. Added support for dynamic title change detection.
  • 0.6 (2010-01-16): Added optional DSP component for increased skipping accuracy. Changed configuration to use search query syntax.
  • 0.5 (2009-12-25): Added option to force skip tracks even when manually selecting them.
  • 0.4 (2009-01-03): Behavior change: track is not skipped if formatting string evaluates to 0.
  • 0.3 (2008-11-03): Bugfix: backwards skipping didn't work properly when there were more than one track to skip.
  • 0.2 (2008-11-02): Doesn't skip manually selected track or currently playing track when foobar resumes after restart. Skips to previous track when to-be-skipped track was reached by user pressing Prev-button.
2023-09-15 06:15
Smart Dither DSP v1.0.9TPDF dither DSP that leaves digital silence untouched.
  • 1.0.9 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.0.8 (2022-02-05): Added dark mode support.
  • 1.0.7 (2021-11-14): Fixed noise issue introduced in the previous version when target bitdepth was 8 bps or less. Signed signal was passed on as unsigned.
  • 1.0.6 (2020-01-24): Bit depth truncation to 23 and 24 bits introduced very quiet artifacting (sub -144 dBFS). That is now fixed
  • 1.0.5 (2018-01-06): No changes in functionality. Dynamic C runtime version for foobar2000 v1.4
  • 1.0.4 (2017-01-26): Added option to disable high-pass filtering of the dither noise.
  • 1.0.3 (2017-01-05): Fixed DC offset introduced by bitdepth truncation.
  • 1.0.2 (2014-12-16): Truncates the audio signal to target bitdepth.
  • 1.0.1 (2014-07-03): Changed dither scale to 0.1 - 4.0 bits. Supports unlimited number of input channels. Changed default dither amount to 1.0 bits.
  • 1.0 (2014-04-13): Initial version.
2023-03-16 12:06
SRC Resampler DSP v1.0.14Secret Rabbit Code resampler. Uses libsamplerate 0.2.1.
  • 1.0.14 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.0.13 (2022-02-07): Updated to libsamplerate v0.2.2. Added dark mode support
  • 1.0.12 (2021-02-20): Updated to libsamplerate v0.2.1 and the latest foobar2000 SDK
  • 1.0.11 (2019-11-30): Added options to downsample and upsample by predefined factors
  • 1.0.10 (2019-08-05): Fixed extrapolation of very short tracks. Changed config dialog to allow entering 8-digit target sample rate. Maximum allowed sample rate is still limited to what foobar2000 SDK allows, currently 20 MHz
  • 1.0.9 (2018-10-05): Fixed latency reporting to be sample-accurate
  • 1.0.8 (2018-03-24): Added extra checks against malformed audio chunks
  • 1.0.7 (2018-03-19): Fixed resampler being listed twice on DSP Manager
  • 1.0.6 (2018-03-16): Fixed upsampling truncating the ending
  • 1.0.5 (2018-03-15): Added ability to exclude frequencies and frequency ranges. Removed resampler service priority config from the foobar2000 v1.4 version of the component
  • 1.0.4 (2018-01-28): Disabled ability to use linear and ZOH modes with resampler service. Fixed priority config to allow zero priority
  • 1.0.3 (2018-01-21): Added resampler service entry. Priority of the service can be configured in advanced preferences
  • 1.0.2 (2018-01-17): Added signal extrapolation to help with gapless track transitions when converting individual tracks
  • 1.0.1 (2018-01-15): Recompile with faster float-to-int conversion functions enabled
  • 1.0 (2018-01-15): Initial version
2023-03-16 12:05
Stereo Convolution DSPRecompile of foo_dsp_stereoconv by Eric Larson. Added support for dark mode and 64-bit foobar2000. 2022-08-28 17:44
Stop After Queue v1.2.3Stops playback at the end of the playback queue.
  • 1.2.3 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.2.2 (2022-09-04): Added foobar2000 v2.0 64-bit support.
  • 1.2.1 (2020-10-18): Columns UI's button state didn't update with "Reset Stop After Queue when stopping".
  • 1.2 (2020-10-17): Added Columns UI button state support.
  • 1.1.1 (2018-01-06): No changes in functionality. Dynamic C runtime version for foobar2000 v1.4.
  • 1.1 (2017-08-16): Reverted the change from v1.0 as it was a misunderstood feature request. Improved Stop after current state restoring.
  • 1.0 (2017-08-14): Allows disabling overriding the Stop after current setting.
  • 0.9 (2017-08-09): Doesn't stop at the end of the queue if user clears the queue.
  • 0.8 (2017-08-09): Fixed a potential unitialized variable use.
  • 0.7 (2016-08-09): Disables Stop after current when stopping if it was off initially.
  • 0.6 (2016-08-07): Doesn't touch Stop after current state when playback stops.
  • 0.5 (2016-08-04): Restores Stop after current state when appropriate.
  • 0.4 (2016-08-02): Made the component disable Stop after current when adding new tracks to the queue. Fixed playback not stopping when the last track gets removed from the queue while playing the second last track.
  • 0.3 (2016-06-11): Added option to reset after stop in Advanced Preferences -> Playback.
  • 0.2 (2016-06-09): Changed the stopping method to use Stop after current functionality.
  • 0.1 (2009-06-19): Initial version.
2023-03-16 12:06
Stop on Current v0.6.3Stops playback at the end of currently playing track.
  • 0.6.3 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.6.2 (2022-09-05): Added foobar2000 v2.0 64-bit support
  • 0.6.1 (2018-01-06): No changes in functionality. Dynamic C runtime version for foobar2000 v1.4
  • 0.6 (2016-08-22): Removed leftover debug code, fixed Stop after current state resetting
  • 0.5 (2016-08-21): Fixed bugs
  • 0.4 (2009-06-18): Fix for failure to stop with very short tracks
  • 0.3 (2009-06-17): Changed stop to utilize Core's 'Stop After Current' + playback queue
  • 0.2 (2009-06-10): Changed stopping to work based on timer. One second accuracy only
  • 0.1 (2009-06-08): First version
2023-03-16 12:05
Stop on Error v0.6.2Stops playback after user configurable number of tracks that fail to be decoded.
  • 0.6.2 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.6.1 (2022-09-05): Added foobar2000 v2.0 64-bit support
  • 0.6 (2018-05-06): Now checks for decoding errors with other protocols than file:// too.
  • 0.5 (2018-05-05): Can now stop playback also when files exist but can't be decoded.
  • 0.4.1 (2018-01-06): No changes in functionality. Dynamic C runtime version for foobar2000 v1.4
  • 0.4 (2013-03-22): Fixed stopping on streams
  • 0.3 (2010-01-14): Detects file open errors a bit better now
  • 0.2 (2010-01-13): Fixed a crash bug on non standard input files (such as tone://). Added little configuration and removed playback menu entry
  • 0.1 (2010-01-10): First version
2023-03-16 12:05
Tag Normalizer v0.2.2Normalizes Unicode characters in tags.
  • 0.2.2 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.2.1 (2022-02-05): No functional changes, recompile for x64.
  • 0.2 (2018-03-16): Added information about the character changes to the result dialog. Possible file access problems are listed on the result dialog.
  • 0.1 (2018-03-11): Initial version
2023-03-16 12:05
TAK Decoder v0.5.8Decoder for TAK - (T)om's lossless (A)udio (K)ompressor.
  • 0.5.8 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.5.7 (2022-07-15): Changed channel info reporting to use proper SDK method. Updated TAK dll to version 2.3.3.
  • 0.5.6 (2022-05-08): Fixed MD5 display issue after the SDK change.
  • 0.5.5 (2022-05-08): Updated TAK Decoding Library and TAK SDK to version 2.3.2.
  • 0.5.4 (2021-04-02): Updated TAK Decoding Library to final version 2.3.1. Code cleanups
  • 0.5.3 (2021-03-11): Fixed crash with invalid abort callback
  • 0.5.2 (2020-12-23): Added some safety checks to prevent crashing if called with invalid data
  • 0.5.1 (2020-03-21): Decoder priority listing still used the old name. Fixed seek check to return actual seekability status from the reader
  • 0.5 (2020-03-18): Removed (alt) from the name. Recompiled with the latest SDK
  • 0.3 (2018-11-27): Added album art reading and writing support
  • 0.2 (2018-04-14): Added support for dynamic bitrate reporting and improved reporting about file corruptions
  • 0.1 (2018-04-14): Initial version
2023-03-16 12:05
Taskbar Playback Progress BarRecompile of foo_taskbar_playback_progress_bar by Alexey V. Grishin. Fixed potential divide by zero crash and added 64-bit support. 2022-09-25 07:01
Trifield LR→LRC Decoder DSP v1.1.4Implementation of Michael Gerzon's Trifield decoder.
  • 1.1.4 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.1.3 (2022-02-05): Added dark mode support
  • 1.1.2 (2018-08-27): Fixed left and right channels being reversed
  • 1.1.1 (2018-01-06): No changes in functionality. Dynamic C runtime version for foobar2000 v1.4
  • 1.1 (2017-06-07): Added more information to the about dialog. Lowered minimum crossover frequency to 350 Hz. Removed 192 kHz upper limit for sampling frequency
  • 1.0 (2017-06-02): Initial version
2023-03-16 12:05
TTA Audio Decoder v4.0.1TTA decoder component. Slightly improved version of Aleksander Djuric's original foo_input_tta.
  • 4.0.1 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 4.0 (2022-07-15): Added support for decoding 8-bit files. Added support for 7 and 8 channel tracks. Added support for channel mask stored in WAVEFORMATEXTENSIBLE_CHANNEL_MASK tag field. Updated preferences page from legacy format to new foobar2000 v1.0+ format. Added dark mode support.
2023-03-16 12:05
V2M Decoder v0.2.8Farbrausch V2 module (V2M) decoder.
  • 0.2.8 (2023-07-27): Fixed a crash with the new synthesizer.
  • 0.2.7 (2023-07-19): Added emulated x86 assembler synthesizer to restore authentic decoding quality. Improved file loader robustness as fuzzing revealed a new crash case.
  • 0.2.6 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.2.5 (2022-06-26): Added support for loading compressed v2mz files. Made compatible with 64-bit foobar2000, that forced disabling the 32-bit ASM synthesizer. Added dark mode support.
  • 0.2.4 (2018-04-14): Added tag reading. Without it the written APE tags were quite useless
  • 0.2.3 (2018-01-06): Added support for the new decoder configuration in foobar2000 v1.4. Dynamic C runtime version for foobar2000 v1.4
  • 0.2.2 (2017-07-14): Fixed more potential memory leaks with corrupted files. Allows loading V2M files that have invalid speech data but are otherwise valid
  • 0.2.1 (2014-07-01): Fixed theoretical memory leaks. Fixed a crash caused by uninitialized speech synth memory with some files.
  • 0.2 (2014-06-22): Now uses the original assembler synthesizer when possible. Since it doesn't support multiple instances, additional decoder instances will use the c++ port.
  • 0.1 (2014-06-19): First public version. Contains several stability fixes to the decoder library and optional tag writing support.
2023-07-27 14:43
VLevelRecompile/update of foo_dsp_vlevel by wiesl/wore/Tom Felker/ssamadhi97/G-Lite. Fixed crash bugs, added support for dark mode and 64-bit foobar2000. 2023-08-27 19:22
Vocal Exciter DSP v1.0.3Adds harmonically related distortion to high frequencies to give more presence. Based on similarly named Audacity plug-in.
  • 1.0.3 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.0.2 (2022-02-05): Added dark mode support
  • 1.0.1 (2018-01-06): No changes in functionality. Dynamic C runtime version for foobar2000 v1.4
  • 1.0 (2017-07-29): Initial version.
2023-03-16 12:06
WASAPI shared output v0.6.21Shared mode WASAPI output for Vista and newer Windows versions. This component tries to provide smoother volume adjustment and seek/pause/stop transitions than existing outputs.
  • 0.6.21 (2023-09-15): Reduced delay before playback actually stops when hitting stop. Updated to the latest SDK.
  • 0.6.20 (2023-09-11): Changed some error messages to be more clear. Increased timeout before stopping playback forcefully terminates the playback thread in case it's not responding.
  • 0.6.19 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.6.18 (2022-09-11): Fixed a bug that playback didn't automatically stop after the last track under certain conditions.
  • 0.6.17 (2022-02-05): Support for foobar2000 64-bit version
  • 0.6.16 (2020-12-27): Added advanced config setting to adjust the quality scale of the automatic resampler.
  • 0.6.15 (2020-10-10): Fixed mix format reading to not require WAVEFORMATEXTENSIBLE structure.
  • 0.6.14 (2020-08-04): Added 22.2 channel downmixer.
  • 0.6.13 (2020-07-25): Fixed playback of very short tracks.
  • 0.6.12 (2020-06-29): Added ability to play over 8 channel audio content with missing channel mapping.
  • 0.6.11 (2020-06-27): Ignore device disappearing error when playback is paused.
  • 0.6.10 (2020-06-24): Improved standby handling. Playback should no longer error out when the machine is resumed from sleep.
  • 0.6.9 (2020-06-16): Added standby event handling.
  • 0.6.8 (2019-09-28): Removed locks from the playback thread. Added error details previously only shown on console to the error popup
  • 0.6.7 (2019-09-03): Fixed stuttering with extreme downsampling ratios. Problem was introduced by the processing change in v0.6.5.
  • 0.6.6 (2019-06-28): Reduced the glitch size when default audio device changes and buffer gets converted to the new format. Fixed player getting stuck when pausing a short track (bug introduced in 0.6.5)
  • 0.6.5 (2019-06-27): Fixed player UI freeze while processing very large audio chunks
  • 0.6.4 (2019-06-22): Fixed noise issue during channel count change when automatic resampling was active
  • 0.6.3a (2019-06-17): Version 0.6.2 introduced glitches when buffer refill events were signalled too early. Restored the retry logic for most parts to match v0.6.1
  • 0.6.3 (2019-06-17): Fixed fade-in missing when initial playback didn't start from the beginning of a track
  • 0.6.2 (2019-06-15): Fixed audio glitches when switching tracks. Changed playback thread not to abort so easily on buffering problems. Increased the fade duration to 50 ms to improve interpolation smoothness
  • 0.6.1 (2019-04-07): Reverted the 0.6 buffering change. Default device change mid-playback will now resample and convert the already buffered samples to new target format. The transition isn't as smooth as with 0.6 but better than in prior versions. Fixed a glitch when seeking while paused
  • 0.6 (2019-03-31): Buffer is no longer flushed when using the default device and the device changes mid-playback. Added a short fade-in after default device change
  • 0.5.8 (2019-03-21): Improved compatibility with audio drivers that signal events incorrectly
  • 0.5.7 (2019-03-14): Mixer setting report now includes channel mask configuration
  • 0.5.6 (2019-03-09): The output device was incorrectly reinitialized when default changed even when not using default output
  • 0.5.5 (2019-03-09): Made default output notice changes and automatically switch to new device
  • 0.5.4 (2019-02-15): Hopefully fixed playback thread init failure related crashing
  • 0.5.3 (2019-01-31): Added COM library initialization to device enumerator
  • 0.5.2 (2018-10-29): Fixed crash on device close
  • 0.5.1 (2018-10-27): Volume adjustment was incorrectly delayed during initial playback start
  • 0.5 (2018-10-18): Fixed glitching with sub 100 ms output buffers, the component incorrectly played silence when its buffer went empty. Eliminated need for Sleep() which should make the component immune to timer resolution fluctuations
  • 0.4.1 (2018-10-15): Fixed device identification by GUID
  • 0.4 (2018-10-13): Improved error handling
  • 0.3 (2018-10-06): Fixed inability to start playback in paused state. Made volume adjustment smoother. Further reduced glitching with seeking. Attempts to reinitialize output device on error
  • 0.2 (2018-09-30): First public version
2023-09-15 08:32
WASAPI shared output (debug) v0.6.21dShared mode WASAPI output debug version. Monitors buffer filling timings and some other issues and reports problems on console.
  • 0.6.21d (2023-09-15): Reduced delay before playback actually stops when hitting stop. Updated to the latest SDK.
  • 0.6.20d (2023-09-11): Changed some error messages to be more clear. Increased timeout before stopping playback forcefully terminates the playback thread in case it's not responding.
  • 0.6.19d (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 0.6.18d (2022-09-11): Fixed a bug that playback didn't automatically stop after the last track under certain conditions.
  • 0.6.17d (2022-02-05): Support for foobar2000 64-bit version
  • 0.6.16d (2020-12-27): Added advanced config setting to adjust the quality scale of the automatic resampler.
  • 0.6.15d (2020-10-10): Fixed mix format reading to not require WAVEFORMATEXTENSIBLE structure.
  • 0.6.14d (2020-08-04): Added 22.2 channel downmixer.
  • 0.6.13d (2020-07-25): Fixed playback of very short tracks. Removed unnecessary reporting of buffer going empty at the end of playback.
  • 0.6.12d (2020-06-29): Added ability to play over 8 channel audio content with missing channel mapping.
  • 0.6.11d (2020-06-27): Ignore device disappearing error when playback is paused.
  • 0.6.10d (2020-06-24): Improved standby handling. Playback should no longer error out when the machine is resumed from sleep.
  • 0.6.9d (2020-06-16): Added standby event handling.
  • 0.6.8d (2019-09-28): Removed locks from the playback thread. Added error details previously only shown on console to the error popup
2023-09-15 08:32
Waveform Minibar (mod) v1.2.55Seekbar that shows the waveform of the track. Lighter, fully software implemented version of the original Waveform Seekbar. Heavily based on zao's excellent Minibar component.
  • 1.2.55 (2023-07-11): Made tooltip dark mode aware.
  • 1.2.54 (2023-05-05): Improved scroll wheel seek amount adjustments.
  • 1.2.53 (2023-03-16): Recompile with latest SDK and foobar2000 v1.5 compatibility.
  • 1.2.52 (2022-09-03): Fixed custom color adjustment to update the UI properly.
  • 1.2.51 (2022-08-27): Right click context menu cancels active seek drag. Switched to use SQLite bundled by the player. Added dark mode support.
  • 1.0.50 (2022-08-20): Added option to scale waveform by ReplayGain values.
  • 1.0.49 (2022-04-24): Fixed the preferences page font some more.
  • 1.0.48 (2022-04-20): Fixed component hanging on sources without length.
  • 1.0.47 (2022-04-06): Enhanced half wave mode to always show the larger peaks instead of always showing just the top half. Added half wave mode to the UI element context menu. Changed the preferences page to use the default dialog font. Made the waveform regeneration of the currently visible track take immediate effect.
  • 1.0.46 (2022-03-06): Fixed UI element flashing white on start. Enhanced rate limiting for render progress updates so drawing frequency is automatically reduced if machine can't keep up. Added option to blank waveform display after playback stops. Added option to render only half of the waveform.
  • 1.0.45 (2021-05-09): Latest foobar2000 SDK generates code that requires Vista+. Reverted to 2019-11-29 SDK. Also reverted to older SQLite for reduced binary size.
  • 1.0.44 (2021-05-08): Fixed seek tooltip showing invalid timestamps when dragging the slider beyond the minibar. Updated to latest SDK and SQLite.
  • 1.0.43 (2020-11-22): Further increased the allowed length mismatch before scan results are discarded.
  • 1.0.42 (2020-11-22): Waveform scan result is no longer discarded if the decoded length is slightly shorter than the file info indicates.
  • 1.0.41 (2020-10-19): Added milliseconds as an optional unit for wheel scroll.
  • 1.0.40 (2020-10-18): Fixed a crash bug with the new scan feature.
  • 1.0.39 (2020-10-18): Added Columns UI button state support for the halt command. Added context menu command for generating missing waveforms.
  • 1.0.38 (2020-09-23): Changed decoder initialization flags to allow inaccurate seeking to improve subsong scanning speed.
  • 1.0.37 (2020-08-17): Removed useless console debug output.
  • 1.0.36 (2020-08-09): Stores the lengths of unseekable tracks in memory. Added a workaround for unseekable file seeking failing if foo_skip is installed.
  • 1.0.35 (2020-08-08): Improved downmixing of multichannel audio. Moved length scanning of tracks with unknown length to a background thread. Restored length scanner to respect the speed-based abort option. Fixed unscanned tracks to be shown as blank.
  • 1.0.34 (2020-04-12): Changed waveform scale normalization to take place after image scaling to improve its accuracy.
  • 1.0.33 (2020-01-29): Fixed a crash bug introduced by the error reporting change.
  • 1.0.32 (2020-01-29): Fixed %filesize% formatting not working. Improved error reporting in case of an error after requested decoder release.
  • 1.0.31 (2019-10-21): Added file lock manager support to allow tagging files during waveform scanning.
  • 1.0.30 (2019-10-19): Fixed waveform rendering stopping on its own when non-playing waveform was viewed for too long.
  • 1.0.29 (2019-10-18): Changed render loop to stop update timer on pause only after playback actually stops progressing - previously progress during output component's fade-out was not shown. Added render target preference and halt processing settings to context menu.
  • 1.0.28 (2019-08-02): Made the seek hack DSP hidden. Added configuration option to select which scan results to store in the database. Moved the "do not revert..." option to "track to prefer" dropdown.
  • 1.0.27 (2019-07-23): Added optional translucency support for cursor.
  • 1.0.26 (2019-07-07): Fixed waveform display of short tracks.
  • 1.0.25 (2019-03-23): The old cursor render code was used for case where waveform was missing or disabled.
  • 1.0.24 (2019-03-18): Added basic right click context menu that allows switching between linear and logarithmic modes quickly and has a shortcut to open the configuration screen.
  • 1.0.23 (2019-03-17): Added configuration options to seek shorter distances with mouse wheel. Improved cursor motion smoothness. Made cursor width configurable.
  • 1.0.22 (2019-02-14): Setting minibar width or height to 5 pixels or less will turn the element blank. Improved waveform render canceling with stop. Now the canceled waveform is cleared.
  • 1.0.21 (2018-12-06): Fixed waveform not updating while paused if seeking without using minibar. Waveform extraction for playing track is aborted when playback is stopped. Unhalting waveform processing refreshes current track automatically.
  • 1.0.20 (2018-11-18): Added option to disable waveform extraction speed check.
  • 1.0.19 (2018-08-24): Added optional logarithmic scale for waveform display.
  • 1.0.18 (2018-08-14): Removed buggy color client entry from Columns UI color configuration. Made border style adjustment take effect immediately.
  • 1.0.17 (2018-07-16): Render cursor even in halted mode.
  • 1.0.16 (2018-07-14): Changed halt status into a saved setting. Unhalting will now automatically process the current waveform. Added experimental feature where automatic waveform extraction gets terminated when decoding happens too slowly.
  • 1.0.15 (2018-06-18): Added third waveform display method that prefers playing track and reverts to selected track in stopped state. Added menu command to temporarily stop waveform processing.
  • 1.0.14 (2018-05-29): Added option to reverse the mouse wheel seeking direction.
  • 1.0.13 (2018-05-27): Added vertical scaling setting for waveform. Fixed config having unintentionally editable comboboxes.
  • 1.0.12 (2018-03-02): Fixed a typo in the code so sync-with-library can actually be started. Changed SQLite not to allow opening the database in read-only mode. Made the component refuse to perform long scan operations if database can't be written. Added file names to console scan reports. Switched compression routines to use the zlib1.dll bundled by the player. Whitelisted tone:// and sweep:// protocols so their waveforms are shown.
  • 1.0.11 (2018-02-28): Added support for seeking with mouse wheel.
  • 1.0.10 (2018-02-25): Fixed crash with decode errors.
  • 1.0.9 (2018-02-23): Enabled waveform display for local files that report no length. Added a hack to allow seeking in non-seekable local files.
  • 1.0.8 (2018-01-21): Fix to waveform not updating when stopping from a paused state. Made waveform not disappear when layout is modified.
  • 1.0.7 (2018-01-20): Made refresh rate configurable. Screen updating is halted while playback is paused or stopped.
  • 1.0.6 (2018-01-10): Added option not to show the waveform for active track when player is started and nothing is playing.
  • 1.0.5 (2018-01-06): Fixed a situation where database was loaded too late and the first track after player start was rescanned unnecessarily. Dynamic C runtime version for foobar2000 v1.4
  • 1.0.4 (2017-12-16): Fixed a bug that waveforms scanned with the context menu tool were always saved in the database. Added option to always show playback position cursor. Normally it's visible only when waveform can't be shown.
  • 1.0.3 (2017-12-11): Seekbar now allows starting playback of the viewed track from the selected position by clicking on the waveform. Modified selection based waveform viewing to require single selected track.
  • 1.0.2 (2017-12-09): Moved configuration from advanced preferences to regular preferences. Added ability to use UI colors and changed the waveform to use UI colors by default.
  • 1.0.1 (2017-12-08): Fixed scanning hanging with very short files
  • 1.0 (2017-12-07): First released modified version of zao's Waveform Minibar component. Changed database name not to conflict with the original. Added some safety checks to prevent crashing on errors. Modified the waveform display to show waveform shape for short files. Fixed RMS rendering not to overlap with waveform. Added ability to optionally show waveform for selected track instead of currently playing track.
2023-07-11 14:11