MilkDrop 2 Visualisation

By: oops

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.

  • 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).
  • WARNING: foobar2000 replaces everything in the component's directory during install. Move the "presets" and "textures" folder to their new location before installation.
  • Download and extract presets into this component's folder of foobar2000. This should be "<foobar2000 install folder>\profile\milkdrop2\presets".
  • Some presets enjoyed by Ryan Geiss (the MilkDrop 2 author) can be downloaded from his website. The "Cream of the Crop" collection is another good source.

Current version: 0.0.230-alpha, released on 2024-02-20

Change log:

  • Move presets to "profile" directory (without vector allocation errors)
  • Fix PgUp/PgDn behavior
  • Add menu keyboard controls
  • Add most of the menu drawing routines and infrastructure
  • Fix preset folder navigation and saving
  • Bump preferences version -> preferences will be reset
  • Update application version to 0.0.230
  • Update definitions [developer]
  • Begin cofiguration settings and preference page refactor [developer]
  • Try projectM's Expression Evaluation Library instead of Nullsoft/Cockos's [developer]
  • Add `m_szComponentDirPath` to library [developer]
  • Remove `m_szConfigIniFileA` variable [developer]
  • Add `ErrorOutput()` function [developer]
  • Update `GetFileAttributes()` calls [developer]
  • Replace custom string compare function [developer]

Supported processor architectures: x86 32-bit, x86 64-bit, ARM64, ARM64EC.

Works with foobar2000 v2.0 and newer


View version history
Source code

More components

Browse all
Browse by author: oops
Tags: Default UI element, visualization, visualizer

How to install a component?