Skip to content
/ Milkwave Public

Feature-Enhanced MilkDrop Visualizer with Remote Control

Notifications You must be signed in to change notification settings

IkeC/Milkwave

Repository files navigation

Milkwave is:

  • Milkwave Visualizer: A feature-enhanced version of MilkDrop2 visualizer
  • Milkwave Remote: A standalone window to do things like sending messages (either directly by typing or from a script file), load and change presets, send common key combinations using buttons and more

Click here to get the latest version.

Milkwave 3

Visualizer Features

  • Display current track information and artwork from Spotify, YouTube or other media sources playing on your PC
  • Change preset on track change
  • Set window transparency, borderless, and clickthrough ("watermark mode")
  • Use cursor keys for media playback control
  • 40 shader-based presets created for Milkwave
  • Over 5000 presets from skilled artists (more presets here)
  • Improved window handling, input methods and stability
  • Use independently or in combination with Milkwave Remote

Remote Features

  • Customizable interface - show only what you need
  • Send common key combinations using buttons
  • Set audio device (in- or output) without restarting Visualizer
  • Amplify virtual audio signal to make Visualizer more (or less) responsive
  • Tabbed interface with hideable top and bottom panel

Milkwave 3 Tabs

  • Preset tagging
    • Tag your presets with any number of words of your choice
    • Dynamic buttons for your most used tags
    • Load preset lists based on tags
    • Saved in human-readable json file for easy sharing or backup
  • Messaging
    • Send text to Visualizer window
    • Display multiple messages at once
    • Set color, font size, position and other parameters
    • Move text around using start and end coordinates
    • Save parameter definitions as named styles for quick access
    • Send messages, parameters, presets and other commands automatically from a script file at configurable intervals based on BPM setting (see script-default.txt)
  • Shader code conversion
    • Convert GLSL shader code to HLSL
    • Preview converted code in the Visualizer instantly
    • Load shader definitions from Shadertoy files
  • Wave manipulation
    • Clear current preset and start with a plain wave
    • Set wave type, zoom, warp, rotation etc. in the running preset
    • Quicksave manipulated presets to a new file
  • Font manipulation
    • Customize display of song information, preset name and notifications
    • Change and preview font face, style and size instantly
  • MIDI automation
    • Assign up to 50 actions to your MIDI controller
    • Select/change presets, send messages, trigger sprites, start external programs etc.
    • Trigger command chains from script
  • Settings
    • Change internal time, FPS and frame counters to slow down or speed up some presets
    • Adjust "Intensity", "Shift" and "Version" live for supported presets (eg. Milkwaves shader presets)
    • Shift color output (Hue, Saturation, Brightness) live for all presets
    • Control Spout output behaviour
    • Adjust render quality to improve performance and/or pixellize output
    • Quick access to configuration files

There are many tooltips explaining all features when you hover over the form elements. Clicking the "Autoplay" button on the Message tab will run the default script file, demonstrating many Milkwave features.

If you have any questions, don't be afraid to ask for support!

History

The original MilkDrop2 WinAmp plugin created by Ryan Geiss was turned into a Windows standalone application by Maxim Volskiy as BeatDrop and has since been improved upon eg. in the BeatDrop-Music-Visualizer project. Milkwave originally started as a fork of BeatDrop-Music-Visualizer, and most Visualizer features and improvements are still kept in tight sync between our projects.

For a more detailed explanation of all features, please read the Manual.

For a chronological list of Milkwave releases and features, read the Changes.

System Requirements

Support

This project incorporates the work of many different authors over the years, as listed below. Naturally, the entirety of this project is Open Source and there will never be a paid version of it.

However, if you're satisfied with the additions I made and you want to support my work, you may do so using Ko-fi or PayPal. You'll be listed as a supporter within the next program release unless you don't want to.

Many thanks to Shanev, Tures1955 and hatecubed for supporting the development of Milkwave. ❤️

I may add new features or fix bugs if people are actually using this, so don't be shy to open an issue or join my Discord!

Acknowledgements

Many thanks to:

If you believe you or someone else should be mentioned here, please let me know.

License

Milkwave Remote is licensed under the Attribution-NonCommercial 4.0 International License, meaning you may not use the material for commercial purposes. See LICENSE.txt for details.

Milkwave Visualizer (as a BeatDrop fork) is licensed under the 3-Clause BSD License with the exception of where otherwise noted. See LICENSE.txt for details.

Although the original Matthew van Eerde's loopback-capture project didn't explicitly state the license, the author has been kind enough to provide a license clarification here. All changes in this repository to the original Matthew's code are published either under the terms of BSD license or the license provided by original author.

Public use of MilkDrop Presets

The presets themselves are not covered by either of these licenses, they either have their own license or none (in most cases). None of the presets in Milkwave should have a restrictive license preventing you from using them in public. All preset filenames from shaders I converted have the original author's name in them, with the full original source mentioned in the preset file itself.

So, my pragmatic and common sense approach would be: Always keep in mind that you are using the artistic work of someone else. Respect the original authors work by showing the preset filename (at least briefly), and you should be fine. If in doubt, always ask the creator of the piece you use.

Contributions

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, shall be licensed as above.

About

Feature-Enhanced MilkDrop Visualizer with Remote Control

Resources

Stars

Watchers

Forks

Sponsor this project