foo_vis_wispan ~ Winamp Spectrum Analyzer


foo_vis_wispan is a Foobar2000 spectrum analyzer visualization implemented with GDI. It is a port of the Classic Spectrum Analyzer (vis_classic) Winamp visualization plug-in by Mike Lynch.

Features:

  • Accurate, detailed, customizable spectrum analyzer.
  • vis_classic library has been upgraded to compile with a modern toolset.
    • Upgraded the resolution of the waveform passed into the library from 8 bits to 16 bits.
    • Other changes are mainly to integrate with foobar2000 instead of Winamp.
    • That means bugs in the original are still likely to be present.
  • Options can be modified and their effects viewed in real-time as the component is running.
  • 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).

www.foobar2000.org/components/view/foo_vis_wispan
wiki.hydrogenaudio.org/…/Foobar2000_visualization_components

foo_outinfo ~ Foobar2000 Output Information


Installing foo_outinfo allows for accessing the actual specs of the audio being played and the output device information using titleformatting.

The fields exposed by this component are:

%output_samplerate%Returns the sample rate entering output component
%output_channels%Returns the number of channels entering output component
%output_channel_mask%Returns the description of above channel configuration
%output_bitdepth%Returns the bitdepth used by output component, or best guess in case output doesn’t specify
%output_device%Returns the name of the output device
%output_dsps%Returns the list of active DSPs
%output_dsp_preset%Returns the name of the active DSP chain preset
%output_volume%Returns the playback volume in dB
%output_rg_source%Returns the ReplayGain source mode
%output_rg_mode%Returns the ReplayGain processing mode
%output_rg_gain%Returns the effective ReplayGain gain value in dB
%output_rg_peak%Returns the effective ReplayGain peak value
%output_rg_peak_db%Returns the effective ReplayGain peak value in dBFS
%output_buffer_length%Returns the output buffer length in ms

foobar.hyv.fi/?view=foo_outinfo
hydrogenaudio.org/index.php/topic,127228.0

Basic Status Bar Example Using foo_outinfo Fields

The foo_outinfo component exposes information about the current audio output and signal, such as the active output device, sample rate, bit depth, and channel count. These fields are especially useful in the status bar, where you want quick technical confirmation without cluttering playlists.

A simple and practical example is:

Now Playing: %artist% - %title% | %output_samplerate% Hz / %output_bitdepth% bit


What This Displays

When a track is playing, the status bar would show something like:

Now Playing: Miles Davis - So What | 44100 Hz / 16 bit

This tells you at a glance:

  • What is playing
  • The actual output sample rate
  • The output bit depth being sent to your audio device

Step By Step Explanation:

Music Metadata (Standard Fields)

%artist% - %title%
  • %artist% → Track artist tag
  • %title% → Track title tag

These are standard foobar2000 title formatting fields and work everywhere.


Separator

 |

This is just plain text. It visually separates the music info from the technical output info. You can replace it with a dash, bullet, or brackets if you prefer.


foo_outinfo Output Fields

%output_samplerate%
  • Displays the actual output sample rate in Hertz
  • Reflects resampling, DSP changes, or output driver behavior
  • This is more reliable than %samplerate% when DSPs are active
%output_bitdepth%
  • Displays the bit depth used by the output
  • Shows what is being sent to the DAC, not just what is in the file

More Informative Versions

If you want to include channels and output device name:

Now Playing: %artist% - %title% | %output_samplerate% Hz / %output_bitdepth% bit / %output_channels% channels

Displays:

Now Playing: Aphex Twin - Xtal | 48000 Hz / 24 bit / 2 channels

If you want to add the current Replaygain mode:

Now Playing: %artist% - %title% | %output_samplerate% Hz / %output_bitdepth% bit / %output_channels% channels | RG %output_rg_source%

Displays:

Now Playing: Aphex Twin - Xtal | 48000 Hz / 24 bit / 2 channels | RG Album

If you want to display the active DSP

$if(%output_dsp%, | DSP: %output_dsp%)

Displays the separator and active DSP, otherwise displays nothing:

| DSP: Resampler (SoX)

Minimal Technical Version (Very Clean)

For users who want only output confirmation:

Output: %output_samplerate% Hz / %output_bitdepth% bit

Displays:

Output: 96000 Hz / 24 bit

Why Use foo_outinfo in the Status Bar?

  • Confirms what your DAC is actually receiving
  • Helps verify exclusive mode, resampling, and DSP behavior
  • Avoids cluttering playlists with technical data
  • Ideal for users who care about signal integrity but want a clean UI

Beginner Notes and Caveats

  • All output_* fields require foo_outinfo to be installed
  • These fields only show values while audio is playing
  • If nothing is playing, the fields will appear empty
  • Output fields are best used in:
    • Status bar
    • Window title
    • Custom display panels

iobroker.foobar2000 ~ Foobar2000 Adapter For iobroker


Integrate Foobar2000 with iobroker home automation.

www.npmjs.com/package/iobroker.foobar2000
www.iobroker.net

foobar2000 ~ macOS Components


A collection of macOS components for foobar2000 v2 – mostly remakes of the components, which I used to love back then on windows.

DISCLAIMER: All of this is a WIP, actively tested on my foobar2000 instance, but WIP nonetheless, it may crash your foobar.

Extensions:

SimPlaylistLightweight playlist viewer with album art and grouping1.1.0📖
Playlist OrganizerTree-based playlist management1.1.0📖
Waveform SeekbarAudio visualization seekbar with effects1.0.0📖
Album Art (Extended)Multi-type album art viewer with selection support1.0.0📖
Queue ManagerVisual playback queue management1.0.0📖
Last.fm ScrobblerLast.fm integration and scrobbling1.0.0

hydrogenaudio.org/index.php/topic,128911.0
github.com/JendaT/fb2k-components-mac-suite

Foobar2000 ~ Installing A Lyrics Display Panel


Installing and Configuring OpenLyrics (foo_openlyrics) in foobar2000

OpenLyrics (foo_openlyrics) is the most actively maintained lyrics display component for foobar2000. It provides an integrated lyrics panel, automatic lyrics downloading, local storage, and optional editing support. This guide walks through installation, panel setup, and recommended configuration options.


Step 1: Download OpenLyrics

  1. Visit the official OpenLyrics component page:
    www.foobar2000.org/components/view/foo_openlyrics
  2. Download the latest .fb2k-component file.

Step 2: Install the Component

  1. Open foobar2000.
  2. Go to File → Preferences → Components.
  3. Click Install….
  4. Select the downloaded foo_openlyrics.fb2k-component file.
  5. Click Apply.
  6. Restart foobar2000 when prompted.

After restarting, OpenLyrics will be available as both a lyrics provider and a UI panel.


Step 3: Add the OpenLyrics Panel to the Layout

Default UI

  1. Go to View → Layout → Enable Layout Editing Mode.
  2. Right-click inside the layout where you want the lyrics panel.
  3. Choose Add New UI Element → Visualisations → OpenLyrics.
  4. Resize and position the panel as desired.
  5. Disable layout editing mode when finished.

Columns UI

  1. Go to Preferences → Display → Columns UI → Layout.
  2. Insert a new panel where desired.
  3. Select OpenLyrics from the panel list.
  4. Apply changes.

Step 4: Basic Playback Test

  1. Play a track with standard artist and title metadata.
  2. OpenLyrics will attempt to fetch lyrics automatically.
  3. If lyrics are found, they will display in the panel.
  4. If nothing appears immediately, allow a few seconds or manually trigger a search (see below).

Step 5: Configure Lyrics Sources

  1. Go to File → Preferences → Tools → OpenLyrics.
  2. Open the Sources section.
  3. Enable or disable lyrics providers as desired.
  4. Adjust source priority if available.

Notes:

  • Online lyrics availability depends on track metadata accuracy.
  • Some sources may return timed lyrics; others return plain text.
  • Source reliability can change over time, which is why OpenLyrics allows multiple providers.

Step 6: Configure Lyrics Saving and Storage

  1. In Preferences → Tools → OpenLyrics, locate the Saving or Storage options.
  2. Enable automatic saving of lyrics if you want lyrics cached locally.
  3. Choose a storage method:
    • External .lrc or .txt files
    • Embedded lyrics tags (if supported by your workflow)
  4. Define a lyrics file naming and folder structure if saving externally.

Recommended:

  • Saving lyrics externally allows reuse across systems and avoids repeated downloads.
  • Keeping lyrics alongside audio files simplifies backup and portability.

Step 7: Display and Behavior Settings

Within Preferences → Tools → OpenLyrics, review the display options:

  • Automatic scrolling
  • Alignment and text behavior
  • Timed lyrics synchronization behavior
  • Fallback handling when timed lyrics are unavailable

These settings affect how lyrics are rendered in the panel but do not affect stored data.


Step 8: Manual Search and Editing

If lyrics are not found automatically:

  1. Right-click inside the OpenLyrics panel.
  2. Choose Search lyrics or Edit lyrics (wording may vary by version).
  3. Manually paste or edit lyrics as needed.
  4. Save the lyrics so they persist for future playback.

OpenLyrics includes a built-in editor, allowing corrections or manual entry without external tools.


Step 9: Metadata Best Practices

For best results with OpenLyrics:

  • Ensure %artist% and %title% tags are accurate.
  • Avoid extra text such as “(Remastered)” or “feat.” in titles unless required.
  • Album artist tags can improve search accuracy for compilations.

Clean metadata significantly improves lyrics retrieval success.


Step 10: Troubleshooting

If lyrics do not appear:

  • Verify OpenLyrics is enabled under Preferences → Components.
  • Confirm the panel is visible and active.
  • Check that playback is active (lyrics are not fetched for stopped tracks).
  • Try manual search from the panel context menu.
  • Review source availability in the OpenLyrics preferences.

Summary

OpenLyrics is currently the most complete and actively maintained lyrics solution for foobar2000. Once installed and configured, it provides automatic lyrics retrieval, reliable local storage, and flexible display options suitable for both minimal and advanced layouts.

For new foobar2000 installations or users modernizing older setups, OpenLyrics is the recommended lyrics display component.

foobar2000 ~ foo_vis_spectrum_analyzer


foo_vis_spectrum_analyzer is a foobar2000 component that implements a spectrum analyzer panel. It is an attempt to recreate the foo_musical_spectrum component by fismineur for foobar2000 64-bit.

hydrogenaudio.org/index.php/topic,125031.0
www.foobar2000.org/components/view/foo_vis_spectrum_analyzer
github.com/stuerp/foo_vis_spectrum_analyzer

foo_masstagger ~ Automate Foobar2000 Tag Editing


Automates various tag editing operations.

www.foobar2000.org/components/view/foo_masstag
wiki.hydrogenaudio.org/…/Masstagger_(foo_masstag)

Usage:

Adding MOOD tags:

  1. Select tracks
  2. Right-click → Tagging → Manage Scripts
  3. Create a script:
    • Add value
    • Field: MOOD
    • Value: Calm
  4. Save as preset (Mood: Calm)

Repeat once per mood.

After that:

  1. Select tracks
  2. Right Click > Tagging > Scripts
  3. Apply mood script preset

foo_vis_goom ~ What a GOOM! Visualisation


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).

www.foobar2000.org/components/view/foo_vis_goom

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

foobar2000 ~ Adding Panels To The DUI


Before some foobar2000 components can be utilized, the component’s visual interface must also be added to the Default User Interface in order to be seen or interacted with. It just takes a few steps to add new panels and interfaces to foobar2000.

Step 1: Open the Layout Editor

  1. Click on View in the foobar2000 menu bar
  2. Select LayoutEnable Layout Editing Mode

    A checkmark indicates that layout editing mode is enabled.

Step 2: Choose the location for the new panel

First Right-click on the area where you want to add a new panel.

Then select Replace UI Element from the context menu.

A submenu will allow you to choose the splitter orientation:

Splitter (left/right): Divides the area into two vertical sections, side by side.

Splitter (top/bottom): Divides the area into two horizontal sections, stacked one above the other.

Select the desired orientation and click OK.

The new splitter will now divide the selected area into two sections. Splitters can be moved by by dragging.


Step 3: Add a new panel

  1. After adding the splitter, right-click on the new empty white section.
  2. The selected panel will now appear in the designated section.

Select Add New UI Element from the context menu.

A dialog will appear with a list of available UI elements. Examples include:

Playlist View: Displays your playlists.

Album List: Provides a tree view of your library.

Vu Meter: Adds a VU meter.

Choose the panel you want to add and click OK.


Step 4: Customize the new panel

  1. Right-click on the newly added panel to access its specific settings (e.g., appearance, behavior).
  2. If additional configuration is required, check the panel’s settings in the Preferences menu:
    • Go to FilePreferences.
    • Navigate to the corresponding section under Display or Components.

Step 5: Save the layout

  1. When you’re satisfied with the changes, click on the yellow bar at the top and choose Apply Layout.
  2. To save the layout permanently:
    • Go to ViewLayoutSave Layout.
    • Provide a name for the layout for easy restoration later.

Step 6: Install additional panels (Optional)

  1. If the desired panel isn’t available, you may need to install third-party components:
    • Download components from the official foobar2000 components repository: foobar2000 Components.
    • Install the component:
      • Go to FilePreferencesComponents.
      • Click Install and select the downloaded .fb2k-component file.
    • Restart foobar2000.
  2. After installation, repeat Step 3 to add the new panel.

Working with panels or splitters:

Right mouse clicking on any UI Element brings up the context submenu.


Scatchbox Mode:

View > Layout > Create Scratchbox

Opens a window which acts like the user interface allowing for splitter, tabs and UI elements to be prearranged. Themes can also be loaded, edited and saved.

Quick Appearance Setup:

View > Layout > Quick Setup

Submenu of predefined DUI configurations.

Foobar2000 - Quick Appearance Setup Submenu

References:

wiki.hydrogenaud.io/…Foobar2000:Components/Default_user_interface
wiki.hydrogenaud.io/…Foobar2000:Layout_Editing_Mode
wiki.hydrogenaud.io/…Default_User_Interface:List_of_UI_Elements
wiki.hydrogenaud.io/…Foobar2000:How_to_install_a_component
wiki.hydrogenaud.io/…Foobar2000:Default_User_Interface:Quick_Appearance_Setup

Key Concepts:
Splitters divide areas to create new spaces called containers
Containers are then populate by either a tabbed container or with UI Elements
Tabbed containers are also then populated by UI Elements

EOF

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 ~ The First Steps


For most users the latest version of Foobar2000 32-bit is adequate. Users with very large music libraries may need to install the 64-bit version. The latest Foobar2000 installers are available on the official downloads page: www.foobar2000.org/download

After downloading, installing Foobar2000 and starting Foobar2000, you will see the main Default User Interface, commonly referred to as the DUI.

The first step is to populate Foobar2000’s Media Library.

Select Preferences > Media Library > Add...

and navigate to your Music folder. Once Foobar2000 has scanned all the subfolders and files, it will continue to monitor for any additions, deletions or revisions

The next step is to set the ReplayGain values. See ReplayGain ~ Advanced Volume Normalization

Select the Playback submenu:

  1. Change Source mode to ‘by payback order
  2. Change Processing to ‘apply gain and prevent clipping according to peak
  3. Adjust the ‘Without RG info‘ slider to -8.0 dB

The last initial step is to set your own individual freedb address.

At this point you should see your music and it should play without issue.

This covers the very basics. The next steps will be to add additional components, more configuration and how to use Foobar2000 to accomplish day to day tasks.

References: