Free Software – My Recommendation of the Month October 2025 “MilkWave v3.3”

Just let it all out, buddy. You're among friends here.
Post Reply
User avatar
bennoH.
Posts: 44
Joined: Mon Apr 10, 2023 17:57
Location: Switzerland

Free Software – My Recommendation of the Month October 2025 “MilkWave v3.3”

Post by bennoH. »

Free Software – My Recommendation of the Month October 2025 “MilkWave v3.3”
Image

https://github.com/IkeC/Milkwave


System Requirements
Windows 10 or later
DirectX 9 or higher - compatible GPU
DirectX End-User Legacy Runtimes
Microsoft .NET Desktop Runtime 8 (for Remote)



After extensively testing Milkwave v3.2/3.3 on Windows 10 with an i9 and my RTX3080 (desktop) in conjunction with Resolume Arena 7.18, I can highly recommend this app for VJs and video artists.

Everything works as advertised by the developer. After initially looking at v3.1, I asked the developer, IkeC, if he could further develop the spout functionality to perfect the native spout-out, as this is crucial for us Resolume Arena users to integrate this app. The developer promptly complied with this request, which I would like to commend. A huge compliment and heartfelt thanks to IkeC!


The installation went smoothly and was user-friendly. It suggested a folder outside the standard Program Files folder, although this could be changed during the installation process. I simply left it in the suggested "Tools" folder, as the standard Program Files location might cause issues with permissions management. Also, don't forget to install the two additional external installation files as described on GitHub (parts of these are often already installed by other VJ apps, etc.).

The app itself consists of two elements: the remote and the visualizer, but the remote is what really defines Milkwave. It's best to start the app via the remote, so the visualizer and remote start together, which is necessary for our VJing purposes.
Image The Remote The Visualizer


After the quick installation, everything works perfectly, and the native spout is immediately ready to use. To do this, select "Settings" in the remote menu. For embedded use in Arena or other VJ software, I recommend immediately activating "Fixed" (so that a window size defined by you, and not the window size of the visualizer, is transferred) and defining the desired resolution in the two fields next to it. For example, for a FullHD Arena composition, set 1920 and 1080. You can use the visualizer window itself as a control monitor, but you can also see the output in Arena if you've integrated Milkwave via the spout. To do this, simply select the "Sources" section in Arena and scroll all the way down to the spout servers, where you'll find "Milkwave." Drag it onto a clip to complete the integration into Arena. First, click on the lower part of the clip's name to preview the Milkwave output in Arena and see everything you do directly in the Milkwave Remote menu or the Visualizer. Therefore, I recommend significantly minimizing the Milkwave Visualizer window itself, as this saves considerable GPU power. However, do not move the Visualizer window to the taskbar to hide it from your monitor, as this causes interference with texture sharing, severely impacting spout transmission. Completely closing the Visualizer window is also not possible, as this would prevent any signal from being output via spout, since the shading is generated within the Visualizer and therefore it must be running. If this bothers you too much, you could move the Visualizer window to a virtual desktop on Windows 10/11.

Image

Under "Settings," usually set the "Quality" to 1.0. You will see that lower values ​​do not meet the standards required for VJing. There are also some presets in the "Milkwave" preset folder that are extremely GPU-intensive and therefore not really suitable for our application in Arena. Sort these out according to the capabilities of your GPU to avoid damaging your hardware and to guarantee a smooth workflow, including the use of 3-7 layers plus several simultaneous effects in the clips active in Arena, as is common practice in VJing. To ensure this, I still recommend working in full HD (1080p) and avoiding 4K, in order to guarantee truly creative and versatile real-time VJing.


I already published a positive review of the NestDropClassicV2 app here in the Resolume forum. Like the MilkWave app presented and recommended here, both apps use so-called MilkDrops, meaning they access MilkDrop presets and essentially use them as shaders. However, MilkWave offers something special in its remote section with the "Wave" menu item. There, you can directly and in real time manipulate certain shader code values ​​via a user-friendly GUI, which is precisely the feature sought after in VJing. Some of these Wave menu options are simple on/off features, while others are freely adjustable values. This Wav feature isn't available in all presets, but it is in most usable. However, I'd also like to mention that NestDropClassicV2 offers features that are unique to it, such as the ability to send multiple presets to Arena simultaneously via several separately titled spouts, which is always very welcome in the VJing field.
Image

Returning to Milkwave, it's worth mentioning that you could import shadertoy code, but unfortunately, this is no longer possible due to recent access restrictions imposed by Shadertoy.com. Nevertheless, you can still load code copied from Shadertoy.com and saved to a file, or convert AI-modified shader code into MilkDrops and use it. The code can also be edited and saved directly in the "Shader" menu.

Furthermore, Milkwave allows you to integrate sprits or text messages into the shader output. However, I haven't tested this extensively, as it's not particularly relevant for me as a VJ. I would generate text directly in Arena using the appropriate plugins and their much broader range of features. As an Arena user, I much prefer using layers instead of sprits. This allows me to integrate other shaders/generators or content and supplement/support them with any effects. While sprits themselves require extremely small amounts of data, since they are embedded in the texture during milkwave output, this doesn't really save GPU resources. Another frequently used advantage of sprits is their easy repeatability, which I can achieve in Arena using loops. Furthermore, if I'm using code (shaders) rather than video as content, I'm better off this way. And above all, sprits have a look reminiscent of the early 80s, which might be appealing for certain types of content, but they're not really up-to-date with today's AI content.

In contrast, Milkwave's freely configurable integrated MIDI interface is exactly what a VJ could want. However, some caution is advised, and I haven't tested what happens when controlling Arena via a MIDI controller and simultaneously trying to control Milkwave via the same or a second controller. I imagine this could be somewhat tricky and create conflicts or at least be associated with limitations.
Image

Audio reactivity (motion synchronization) is also an essential tool in VJing, and Milkwave provides this with the option to select the audio source, such as mic or line input, soundcart-master L+R, etc., and a sensitivity setting in the "Preset" menu. What and how the audio input is addressed is preset and generally well-designed, and can still be adjusted to a rudimentary degree by tweaking the "Amp" option.


It took me a long time to figure out how to disable the automatic preset switching, which is probably not a standard or frequently used feature in VJing. Basically, all you have to do is click the large "PresetLock" button to block the automatic switching, or re-enable it with another click at the „Preset“ menu of the remote. It's not ideal that the button's position isn't immediately obvious, which is what led to my extremely long search, presumably. Therefore, here's the clear and detailed explanation from me for this simple yet essential featureso you do not trap in seam. SongInfo and SoundInfo are not transmitted via Spout and only to the Visualizer window, so this shouldn't concern us too much. However, if you still want to know which preset is currently active you can check the "Running" textbox in the Remote (3rd top line in the „Preset“ menu).
Image

Otherwise, I recommend skimming through the Manual.md file on GitHub and studying the sections that interest you more closely. This doesn't take much time but can clarify a lot and be quite helpful. The manual: https://github.com/IkeC/Milkwave/blob/m ... /Manual.md


Well, all that remains for me to emphasize is that, as mentioned, the program accesses MilkDrops, meaning you can use hundreds of thousands of presets that are generally freely available online. However, professional VJs using this for commercial purposes should be aware that this doesn't mean they can simply use these presets in their work, i.e., exploit them commercially. They might need to delve deeply into the respective licenses, which, in my experience, is almost impossible because it's very difficult to locate the copyright holders, let alone obtain their contact information. I've never seen a license notice, email address, or website in the MilkDrops themselves, i.e., the presets or the code. In reality, little attention seems to be paid to such things, and the result is evident on platforms like GLSLSandbox or Shadertoy, which restrict access to prevent or minimize misuse. The problem is known, and before one can dismiss it or consider it invalid, one must overthink it's important to consider how you feel about your own creations being used by others without permission, especially in a commercial context of sutch use, which is what VJing at events is in 95% of cases. However, if you don't simply use the MikDrops (the presets) as is(pure), but instead adjust them in the „Wave“ menu of the remot and, most importantly, mix them in Arena with other content until it's that creation essentially a new piece of work, this can be a viable solution. Therefore, using Arena or similar software is ideal, as recommended if you want to use Milkwave or something similar for VJing.

Despite all that, here's the link to an almost unbelievable MilkDrop's package: "MilkDrop 130k+ Presets MegaPack 2025.zip / 4.1GB":
https://forums.winamp.com/forum/visuali ... s-megapack

Or the „presets-cream-of-the-crop“, a collection of nearly 10,000 MilkDrops curated by Jason Fletcher at a githubrepository:
https://github.com/projectM-visualizer/ ... f-the-crop


I also tried to shed some light on the moast usual licensing of MilkDrops with claude.ai, and the gist of it was this:
The situation is: The software is clearly licensed (BSD), but the presets exist in a gray area between "no explicit copyright" and "de facto public domain due to years of free use."

Furthermore, I would like to clearly and explicitly point out the license of Milkwave Remote:
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.

I think the developer IkeC wanted to protect themselves with this type of licensing, since it's obviously very unclear how MilkDrops are licensed in genereal, and if nothing specific is mentioned in the code, then strictly speaking, one has to assume the author's copyright is protected.

That would make the situation even more complicated, and you can surely understand that I won't and can't recommend commercial use under these conditions.

On the other hand, I can also refer to https://github.com/projectM-visualizer/ ... 57b1d2c406
the standard MikDrop collection curated by Jason Fletcher, which also includes a license notice and essentially treats the nearly 10,000 MikDrops there as somwhat like public domain, stating that anyone who doesn't want their MikDrop in the collection should simply get in touch and it will be removed. Well, I'm not Jason and won't say anything further about it; I've already made my point above, but I wanted to illustrate that there are indeed different perspectives on the issue of MikDrop licensing.


IkeC also says the following regarding the above statements of me:
„A) The Milkwave-Remote and the Milkwave-Visualizer have different licenses.
B)Why this difference? The Milkwave Remote license basically says if you do something with the Remote source code, it must remain open source as well. This protects against someone using the Remote features in a commercial product.
But The presets themselves are not covered by either of these licenses.“

I conclude from his objection that the use of the Milkwave remote for professional VJing, i.e., VJing in a commercial context, does not pose a problem; in other words, IkeC, the developer, and the license for the remote do not prohibit this, but rather the exclusion of commercial use mainly refers to the modification and use of the freely accessible source code of the remote, so that this code may not be integrated into proprietary software or into a sales product of any other kind.

Hhowever this does nothing change to the licensing situation for the individual MilkDrop's/presets, and I maintain that their use is highly questionable. I bear no responsibility for their use and would like to add that this disclaimer also applies to IkeC. As I said, I can only suggest transforming the presets into new, independent artworks, but this is always a balancing act in the event of a legal dispute, as such assessments are always highly contentious and opinions can differ.




So here's my final tip: NestDropClassicV2 has an effects section that I somewhat miss in Milkwave, but that's not a real drawback, as Arena's effects palette via plugins is light-years ahead anyway. So and in other views, hope your understand, I highly recommend thoroughly researching MilkDrops before using them, first for GPU-friendliness, and second, and very to up extrimly importantly, which Arena effects can be used with which MilkDrop presets and settings. You'll be amazed at what you can get out of MilkDrops wit mixing Arena-effects in and how much you can modify them almost beyond recognition, creating incredibly stunning, visually powerful, and visually stunning big pictures. The sheer number of available MilkDrops is particularly impressive, and as mentioned, you can also mix MilkDrops in Arena to create your own unique shaders as a plus make-unique-tecnic. Don't make it too easy for yourselves & voyeur's and be prepared to invest some time in creative crafting. It's worth it in every respect and, once you develop some practice, is what makes using Milkwave using in Arena so much fun.
Take care of yourselves and don't do anything I wouldn't do, yours bennoH.


& so I'll give the floor again to IkeC, who would like to add for the end of this post:
„If people report issues or request features at Github, I'll gladly look at them. I'm also happy if people support me on Ko-fi. It's not about the money really, but tokens of appreciation like this show me whether it's worth spending so much time on this project or not and with these last words here I IkeC send my warmest greetings to the entire Resolume community.“

Post Reply