foo_vis_goom is a port for foobar2000 of the “What a GOOM!” music visualizer. It renders the library-provided pixels using OpenGL 4.6.
GOOM in an “incredible trippy visualization plugin!!”
Features:
- Uses OpenGL 4.6 for rendering.
- The Goom-2k4 library has been extensively cleaned up.
- Compatible with the Default User Interface (Default UI) and the Columns User Interface (Columns UI).
- Tested on foobar2000 v2.25.3 (x86 32-bit and x86 64-bit) and Microsoft Windows 11 (Build 26200).
Category Archives: foobar component
Foobar2000 ~ foo_whatsnew Feature Watcher
foo_whatsnew monitors your foobar2000 installation for any new additions or changes and records them. After installing foo_whatsnew, there will be a What's New? menu option on the Help menu which opens a panel displaying a list of recent changes. There’s now support for 64 bit installs and dark mode.

www.foobar2000.org/components/view/foo_whatsnew
After downloading the component, double click on it to install it and restart foobar2000.
References:
foosion.foobar2000.org/components/?id=whatsnew&version=1.0.7
github.com/stengerh/foo_whatsnew
foo_enhanced_playcount ~ Enhanced Playback Statistics
This Foobar2000 component collects and maintains enhanced statistics for played songs; primarily it records the timestamp of every play of a song, and not just the first and last. It will also query last.fm and record play times of every scrobble for a song.
foo_enhanced_playcount provides some additional functionality that foo_playcount does not, but is missing some functionality that foo_playcount has. They work well together, and foo_playcount should NOT be uninstalled when foo_enhanced_playcount is installed.
This component should be installed with foo_playcount and the same time foobar2000 is installed so playback statistics are maintained from the beginning.
New Fields:
- %played_times% – Date formatted list: [
"2012-08-04 15:58:37", "2012-12-10 14:40:46", "2018-01-02 23:38:13"] - %played_times_js% – JS timestamp list: [
1344117517000, 1355172047000, 1514957893431] - %played_times_raw% – raw foobar timestamps:
[129885911170000000, 129996456470000000, 131594314930000000]– There’s probably no reason to ever use this. - %lastfm_played_times% – Date formatted list of scrobbles: [
"2012-08-04 15:58:37", "2012-12-10 14:40:46", "2018-01-02 23:38:13"] - %lastfm_played_times_js% – JS timestamp list: [
1344117517000, 1355172047000, 1514957893000] - %lastfm_play_count% – Count of last.fm plays, a la
%play_count%: 5 - %lastfm_added% – Single date: “
2012-08-04 15:58:37“ - %lastfm_first_played% – Always exactly the same as
%lastfm_added%. Use whichever one makes most sense logically - %lastfm_last_played% – Single date: “
2018-04-04 15:58:37“ - %added_enhanced% – Returns the earliest of
%added%(from foo_playcount) or%lastfm_added%. Single date: “2023-02-04 15:16:17“ - %first_played_enhanced% – Returns the earliest of
%first_played%(from foo_playcount) or%lastfm_added%. Single date: “2023-02-04 15:16:17“ - %last_played_enhanced% – Returns the earliest of
%last_played%(from foo_playcount) or%lastfm_last_played%. Single date: “2023-02-04 15:16:17“
These fields can be exposed via Title Formatting or used in scripts. This component does generate extra data per song played and may not be suitable for installations with limited storage.
www.foobar2000.org/components/view/foo_enhanced_playcount
github.com/kbuffington/foo_enhanced_playcount
wiki.hydrogenaud.io/…/foo_enhanced_playcount
Foobar2000 ~ Installing Analog VU Meters
Adding an analog VU meter to the Foobar2000 2.x Default User Interface

Required component: foo_vis_vumeter
Directions:
- Download foo_vis_vumeter
- Click on foo_vis_vumeter which should install the component
- Click
Applyand thenOkto restart Foobar - Copy some .bin skin files to the …\AppData\Roaming\foobar2000-v2\vumeter folder (Shift+File>Browse configuration folder)
- Select
View > Layout > Enable layout editing mode - Right click the tab area in a panel and select
Add New Tab - Right click the new tab and rename it “Analog VU Meter” or whatever
- Right click the new tab display area and select
Add New UI Element - Select ‘
Analog VU Meter(DirectX 12)’ from the list (Playback Visualization) - Disable layout editing mode
Parameters:
Right mouse click on the meter display:
- submenus – Layout / Mode / Levels / Decay / Tuning / Options
- Fullscreen
- Skin Selection
Mouse wheel (hover over meters)
- Adjusts current Tuning selection
Resources:
Analog VU Meter Skin Gallery
Foobar2000 1.x ~ Installing Analog VU Meters
Sources:
www.hydrogenaud.io/forums/index.php?showtopic=33939
www.hydrogenaud.io/forums/index.php?showtopic=106793
www.head-fi.org/t/616963/the-foobar2000-resource-thread/45#post_9382013
foobar2000.ru/forum/viewtopic.php?t=5012 (Russian)
foo_listenbrainz ~ Submit Listens To ListenBrainz
Status: alpha.
- [+] submits listens while online
- [+] provides UI to configure user name and token
- [-] no checks for online status, no exception handling
- [-] no caching of the listens history while offline
- [-] configurable server url
- [-] no separate thread for network requests
gitlab.com/ykBuilds/foo_listenbrainz
Updated ListenBrainz foobar2000 component
audio-file.org/2023/11/21/foo_listenbrainz-foobar2000-listenbrainz/
github.com/phw/foo_listenbrainz2
foo_vis_milk2 ~ Foobar2000 MilkDrop 2 Visualizer
foo_vis_milk2 is a port for foobar2000 of Winamp’s MilkDrop 2 music visualizer. It additionally migrates rendering from its original DirectX 9 to DirectX 11.
MilkDrop 2 takes you flying through visualizations of the soundwaves you’re hearing. It uses beat detection to trigger myriad psychedelic effects, creating a rich visual journey through sound.
Features:
- Uses DirectX 11 for rendering.
- Uses updated libraries.
- vis_milk2 has been upgraded to use more modern C++ alongside DirectX 11. Deprecated or insecure functions have been rewritten and most unused functionality removed.
- Configurable through foobar2000 preferences instead of INI files.
- Supports the Default User Interface (Default UI) only.
- Tested on foobar2000 v2.1.2 (x86 32-bit and x86 64-bit) and Microsoft Windows 11 (Build 22621).

foo_musicbrainz ~ Foobar2000 MusicBrainz Tagger
Allows tagging files using data from MusicBrainz.
Features:
www.foobar2000.org/components/view/foo_musicbrainz
- Fetches data by automatically calculated MusicBrainz Disc ID, existing Artist/Album or MusicBrainz Album ID tags
- Uses the latest version of MusicBrainz web service, which corresponds to the NGS data model
- Supports many different tags, including artist, album, date, tracknumber/totaltracks, discnumber/totaldiscs, label, catalog number, barcode etc.
- Supports MusicBrainz-specific tags: Artist ID, Album ID, Release Group ID, Disc ID, Track ID, album type, album status
- Missing TOCs can be submitted to MusicBrainz from the context menu.
foo_listenbrainz2 ~ Foobar2000 & ListenBrainz
ListenBrainz 2
A foobar2000 component to submit the music you listened to to ListenBrainz or another ListenBrainz compatible scrobble server (for example Maloja).
This component was originally written by marc2k3. This repository is an attempt to preserve the source code of this excellent component and hopefully to revive the development.
github.com/phw/foo_listenbrainz2
What is ListenBrainz? ListenBrainz keeps track of music you listen to and provides you with insights into your listening habits. For details see:
listenbrainz.org
References:
en.wikipedia.org/wiki/ListenBrainz
foo_dsp_vst3 ~ Foobar2000 Hosts VST Plugins
Official component that allows VST effects to be used as DSPs in foobar2000.
www.foobar2000.org/components/view/foo_dsp_vst3
hydrogenaud.io/index.php/topic,123342.0
foo_jscript_panel3 ~ JScript Panel 3
This component for foobar2000 is based on WSH Panel Mod.
It allows the creation of customisable panels that can be written with
JavaScriptrather than theC++required by the foobar2000 SDK.Under the hood, it uses
Windows Script Host. Because of this, JS language support is limited toECMAScript 5. Nothing newer will ever be supported.Here are just some of the features provided by the component…
- Custom drawing of text, external images, lines, rectangles, etc.
- Use fonts/colours from the main preferences of whichever user interface you are using.
- Executing main/context menu commands.
- Ability to create custom buttons/menus.
- Capture keystrokes/mouse movement/clicks.
- Callbacks can be used to trigger code based on foobar2000 events.
- Read/write file tags.
- Complete manipulation of playlists.
- Media Library display/sorting/filtering
- Save settings on a per panel basis. These persist between restarts and are stored inside the layout configuration file for whichever UI your are using. You can also write your own functions to load/save settings from
JSONor plain text files.- Built in support for making
GET / POSTrequests which return plain text and there is also a method for downloading binary files. If you prefer, you can use theMicrosoft.XMLHTTPActiveXobject.- There are many built in methods for working with the local filesystem, launching external applications etc. Previous versions / other scripting components rely on
ActiveXobjects but the need for those is greatly reduced.- And much more…
foo_jscript_panel by leefan
This was a customisable panel for the foobar2000 audio player. It was based on WSH Panel Mod and was its successor. It is no longer maintained and has been superseded.
All scripts were written in Javascript but the component provided means to do the following:
github.com/leefan/foo-jscript-panel
- Custom drawing of text, images, lines, rectangles, etc.
- Executing main/context menu commands.
- Ability to create custom buttons/menus.
- Callbacks can be used to trigger code based on foobar2000 events . See callbacks.txt.
- Read/write file tags.
- Complete manipulation of playlists.
- Media Library display/sorting/filtering
- And much more…

