Overview | News | Windows | macOS | Android | iOS | Audio Formats | Components | Encoder Pack | Screenshots | Help & Support | Developer | Old Versions | Other Projects | Blog & Rants
MilkDrop 2 Visualisation
By: oops
Version: 0.9.0, released on 2026-08-16 (archived)
Change log:
- Add Shadertoy (`.milk3`) rendering subsystem [feature]
-
Add HDR rendering support [feature]
- Add HDR screenshot support
-
Add per-pixel window transparency through DirectComposition [feature]
- Add hotkeys and menu items to tune per-pixel transparency opacity
- Add Spout texture sharing output/sender [feature]
- Add rebindable keyboard shortcuts and dialog UI [feature]
- Add touch gesture support [feature]
- Add preset annotations and annotator dialog UI [feature]
- Add preset schedule and scheduler dialog UI [feature]
- Add preset picker dialog UI for scheduler and annotator [feature]
- Preview fonts in Font dialog combo boxes [feature]
-
Delay-load "sqlite3.dll" with graceful fallback [feature]
- Match foobar2000's bundled "sqlite3.dll" build
- Set window icon on tool dialogs [feature]
- Add "jump to current preset" and "delete current preset" hotkeys [feature]
-
Convert text manager from retained mode to immediate mode queuing [change]
- Fix use-after-free crash rendering timed messages during fast configuration changes
- Use "milk2_sch.txt" as fallback instead of "playlist.txt" [change, breaking]
- Force ligature default for non-title fonts on load [change]
- Update control placement in Preferences page [change]
- Heap-allocate the expression scratch buffers and overlap the clipboard buffers [change]
- Fix blank panel on load by running deferred initialization in `WM_PAINT` [bug]
- Make resource string loader's buffer per-thread so the UI thread's loads are not clobbered by the render thread's concurrent calls [bug]
- Fix text scaling on device lost [bug]
- Fix "current preset" highlighting inside subdirectories [bug]
- Fix doubled separator in profile path expansion [bug]
- Fix playlist callback before layout creates window crash [bug]
- Make composition shader tail (added for DirectComposition) trailing-comma safe [bug]
- Harden path formatting with truncating writes [bug]
- Fix multi-instance crash by freeing the shared EEL global memory only on last panel teardown [bug]
- Fix "auto-lock preset when there is silence" using the immediate band energies [bug]
- Fix minor issues [bug]
- Reorganize device resources [developer]
- Clean up unused render timing schemes [developer]
- Enable building "Sanitize|ARM64" configurations as AddressSanitizer now supports ARM64 targets [developer]
- Fix string conversion function name collisions [developer]
- Use a dedicated class name buffer for `GetClassName()` [developer]
- Rename UTF-8/trim helper functions [developer]
- Add `GetModuleFilePath()` to resolve long paths [change]
- Remove redundant `TargetName` settings [developer]
- Normalize MSBuild project files for libraries [developer]
- Add `UseStandardPreprocessor` option to C++ projects [developer]
- Improve code consistency [developer]
- Add SQLite at 3.53.4 [developer]
- Add JSON at 3.12.0 [developer]
- Add Spout at 2.007.017 [developer]
- Add sse2neon at 1.9.1 for Spout ARM64 build [developer]
- Clean up README typos [documentation]
Supported systems: Windows 32-bit, Windows 64-bit, Windows ARM.
Works with foobar2000 v2.0 and newer.
Works on Windows 10 and newer.
Links
View version history
View latest version and component description
Documentation
Discussion