Change Log
First of all, you can download Millumin here, as well as find more info about the pricing.
For beta version, please see this article : Beta Version
Important updates have a different number : 4.16, 4.17, …
Please find below the release notes of such important updates :
- Version 5.14 ・ November 2025
- Version 5.12 ・ April 2025
- Version 4.18 ・ November 2023
- Version 4.16 ・ November 2022
- Version 4.12 ・ November 2021
Version 5.14 ・ November 2025
Silent Edition
On the right of the dashboard, this button makes you able to edit your show without your audience noticing it :

Indeed, as soon as activated, any changes on your project cannot be seen on the outputs, only on the workspace, until you deactivate the silent-edition and come back to where your show was :
Auto States
Above the workspace, this button makes you able to save the changes for every column :

Indeed, once activated, it automatically creates states.
For example, this is useful for working on a specific column without worrying about affecting the others :
Scripts Improvements
Many improvements have been done in this area.
First of all, you can now create parameters, which makes scripts way more useful :

We also added 2 modules. The first one is Network to create UDP/TCP clients or servers :

The second one is Graphics to make visuals for a script (very useful to display data processed by the script) :
By the way : if you are running a script via an interaction, you can now access the value of the interaction with the Millumin.getInteractionValue() function. For example, this is useful to adapt the behavior of a script depending on the intensity of the interaction.
Lastly, we updated the templates with more options. For example, there is now the TimeCounter script to display the time elapsed/remaining for a specific layer, as well as the Grid script with many options to show LED tiles :


Media Editor
The new panel brings all media editing tasks together in one place.
This allows you to quickly adjust, crop, trim or add effects to your media and preview the result simultaneously.

Code Editor
To edit a script or a shader, we redesigned the code editor. Now it works independently with multiple tabs and a preview.

HDR Support
If you run HDR displays, you can now enjoy deep blacks and whites.
Feel free to use the outputs of your computers or a Blackmagic card to output to HDR.

Advanced Gradients
It is now possible to create gradients with several colors as well as radial ones. You can even place them within the image :

Presets for Output Sizes
Set the size of your canvases in a snap. And you can add your own custom sizes of course.

Use Math in Text-fields
Use mathematical formulas to perform your calculations directly in properties.

Interactions Improvements
A new option comes with the scheduler, so you could start an interaction right after the project is loaded :

We also add an action to enable/disable an interaction group :

QR Codes & Barcodes
A new effect is able to detect such codes.

Of course it can be used by both interactions and scripts (very handy to use an URL embed in a QR code for example).
IDN for Laser
The standard protocol to control laser over the network is now supported.

LeapMotion
Grab and pinch now with your device !

Comfort
- Better interface for the quick-find (and double-click a media to preview it)
- Edit color-cards directly from the quick-find
- Keep-ratio option in slice-editor
- Keep-ratio option for stinger-transitions
- Save/restore interface layout
- Multi-select points in a mask
- Use CMD+scroll or pinch with trackpad to zoom in timeline
- Maintain CMD/SHIFT to move around the workspace
- Highlight relative copy-layers
- Launch a specific column with auto-go media
- Follow-transition option for timelines in the dashboard
- Monitor visible even if Millumin does not have the focus
- Convert to HAP or ProRes depending on your architecture (
Optimizebutton) - Native Kinect support for Apple Silicon machines
- If an audio interface is missing for a timecode-generator, ask the user to switch
- Small performance improvements for transitions
- Show beginning of the license in Preferences
- The OSC message
/action/goToTimeaccepts a “HH:MM:SS.MMM” argument - Upgrade to Blackmagic Desktop Video Setup 14.3
- Various interface improvements
Version 5.12 ・ April 2025
Quick-Find
Press CMD+ENTER to bring up this pop-up window and quickly import some media. Indeed, with a few smart filters, you can browse easily your library, even looking for a color to match !
For an even quicker access, double click where to import your content directly in the timeline for example.

Synced Library
Drag-and-drop a folder from Finder to Millumin and voilà : its whole content is now part of the library. And of course, if you add, remove or update a file deep inside hierarchy of this folder, it is all synced for you ! The perfect friend of the quick-find feature …
Note that files outside such folders are also synced automatically.

Finally, you can double-click on a group or folder to focus on it :

Layer Groups
If you need to deal with a lot of layers, you can now group them. But layer-groups can also modify the rendering because they have their own blend-mode, opacity and effects.

Additionally, you can now collapse a canvas, the data-group or the light-group in the list.
Column Transitions
You are not limited to crossfade any more : use a built-in one or design your own transition with a movie or an ISF shader.
JavaScript
With this brand new powerful feature, you can do almost everything : control Millumin, control a random another application, get data from Internet, react to Millumin’s or MIDI, OSC, LeapMotion… events.
More info in this article : Scripts
For example, synchronizing columns between 2 computers has never been that easy :

TouchDesigner support
If you own a commercial license of TouchDesigner, you can now load .TOX files into Millumin.

Timelines with Multiple Canvases
Design your timeline with multiple spaces. And of course, you can embed such a timeline in the dashboard, this will nicely display the content for each canvas of your timeline.

Output Warping
Quickly warp with double-clicks and drags.

Constraints
We redesigned the constraints applied to a layer, so you can quickly fit and fill the canvas, or use a custom size. Very practical for pixel-perfect content or keeping the good ratio when mapping.

Rearrange Canvases
Whatever you have a few or many canvases, rearrange them in the workspace in a snap …
Audio at Layer-level
Manage the audio for all the media of a layer at once. Pretty handy.

Generate a Timecode
For many years, Millumin was able to receive timecodes, but now, it can directly generate some.

Swap Media in Library
Because you prepared your show at home, you used this placeholder instead of the real camera, and now you want to swap media in your project? Well, right-click and it is done.

Manage Multiple Columns
Insert, duplicate, move, remove, … a batch of columns easily.

New Color-picker
A new and elegant way to choose a color :

Timeline Proxy
For timelines that can ask some resources to be rendered, especially timelines embed in timelines embed in timelines, … use a proxy to pre-render everything 👌

Bezier Keyframes
If you are one of those who want great precision to animate, here are the bezier keyframes !

Laser Masks
Use masks to avoid projecting lasers in some areas.
It can also be used to attenuate laser intensity, as masks have opacity.

Additionally, we improved the preview in the laser-setup so that it is in real time now.
AJA update for Inputs/Outputs
We have updated Millumin to use the latest AJA library, thus supporting recent devices.

Wifi communication for Arduino™
The Arduino™ Uno R4 now features Wifi : while programming still requires USB connection, the data can flow via Wifi, allowing you to communication without any cable between your computer and your Arduino™.
Millumin also now supports the Arduino™ Uno R4 Minima.

General Improvements
- browser media updated to Chromium 103
- NDI 6 support
- choose network for OSC
- copy OSC address from properties-view
- copy all OSC addresses from Device-panel
- create interactions from properties-view
- embed data-track templates
- mute data-tracks and auto-go (eye icon)
- layer's eye icon now mutes the audio as well
- option to make audio-volume follow layer-opacity
- animate properties of independent-layers
- show trimmed movies in the interface
- auto-reset movie selection (see Millumin’s Settings)
- dedicated button for snapping
- create a timeline from a media in the library
- better zoom controls in the dashboard and timelines
- font-style for text-media
- more dynamic interface for effects and masks
- supporting 10-bits YUV format for Blackmagic outputs
- exporting timelines to HEVC/H265 codec
- faster movie player for ProRes and HAP
- faster timeline rendering
- faster media import
Version 4.18 ・ November 2023
Independent media-layer
This special layer does not follow the columns in the dashboard. This may be very handy to manage content that is independent, such as cameras or background movies.
Other than that, this kind of layer behaves exactly the same as classic media-layer (you can add a media-transition for example). Add such a layer from the + button located on the bottom-left corner.

Timeline parameters
Such parameters can be accessed and controlled from boards or other timelines. Thus, this can be very great to create template and make infinite variation, for captions for example.
Choose a property of a layer, a media or an effect in the properties-view, then click on its label to make it a timeline parameter.

Click to add warping points
Double-click in the workspace or in the slice-editor to add a point in the warping-grid.
Of course, you can also remove a warping point (this will remove all points in the same row/column).

Laser redesign
A lot of a features have been released :
- laser-layer to play any content (no more laser-effect)
- multiple lasers support
- laser warping
- color adjustment and delay options per laser

Also, ILD files are now supported, so you could import and reuse laser drawings/animations in a snap.

Lastly, you can easily produce beautiful animations, by using the selection/phase parameters for your laser-media.

Graphic interface for movie selection
For more comfort, the start and end-point of a movie is now editable inside a custom popup that both shows the frames and the waveform.

Groups for interactions
If you find yourself with a lot of interactions, you can now group them together and turn them off in a snap.
But more interestingly, you can limit the scope of these interactions, so that they do not apply to your entire project.

Streaming on Youtube and more
With support of RTMP protocol, you can now output to a steaming platform directly, such as Youtube or Twitch.

Check the Output popup to create presets.

Blackmagic keying
Some Blackmagic devices feature a keyer to preverse alpha in some situation, and you can now use it directly in Millumin.

Soft-edge for video-routing
It is now possible to add soft-edge, so it makes video-routing even more useful !

GigE camera support
This protocol is popular among industrial/network cameras, allowing a low latency.

NDI setup
When there are dozens of NDI streams on the same network, you may want to see only the useful ones in Millumin’s library. Open the NDI Setup panel from the Window menubar to filter your NDI sources.

Network Timecode (NTC)
In addition to LTC and MTC, we worked on a timecode that can be transmitted via the network : we called it NTC.
For the moment, only TimecodeClock can generate such a timecode, but as the code is open-source here, this is meant to be implemented anywhere.

New OSC messages
The messages to pause/play the whole dashboard/timeline are now the same :
/action/pause/action/play/action/playOrPause
And a new OSC message allows to navigate both in the dashboard and in the timeline :
/action/goToTime10(all media go to 10 seconds)/action/goToTime-10(all media go 10 seconds before the end)
Comfort
- universal After Effects plugin (Intel and Apple Silicon)
- LeapMotion support for Apple Silicon machines
- delay for video outputs
- animated properties are shown in orange
- import/export SVG files in slice-editor
- keep-hot and framerate options for browser-media
- saving MIDI sources/destinations settings
- zigzag assignation for DMX-layers
- animate scaleY and pixel-size properties in layers
- edit color-card directly from properties-view
- ignore save warning (useful when running Millumin automatically)
Version 4.16 ・ November 2022
Laser support
ILDA lasers can draw any shape at any moment. It is very very bright, so it can be projected on flat, non-flat surfaces as well as on smoke to create volumes. Currently, EtherDream, Helios, ShowNET and LaserCube USB/Wifi DACs are supported.
More info in this article : Laser

10-bit Rendering
For displays that support 10-bit color-depth (1 billion colors), select this setting from
Preferences. It can be quite useful to display nice gradients.

Audio Inputs
If you use webcam, your iPhone or a generic capture card with an audio input, you can now get the sound. But this also works with audio-only inputs, such as microphones, as well !

Custom Fixtures for Pixel-mapping
Millumin already supported most common fixtures, especially for LED mapping. But now, it is possible to create your own ones, to control even more complex light configurations.

Better Video-routing
Listening to your feedback, we improved the video-routing feature. Especially to edit with numbers, slice-editor included. The origin always on the top-left corner, and snapping has been refined. Lastly, SVG import/export has been added.

Alpha-only Mode for Outputs
An useful option output fill/key streams, with a Blackmagic ATEM for example.

Link a canvas with a PJLink device
PJLink is a protocol allowing you to control a videoprojector (power on/off, shutter, open/close, ...). Now you can make a canvas open/close the shutter automatically.

Screen-capture Improvements
It is now possible to capture the whole screen. But there is more : with macOS 12, we are able to use a new library that improves significally the performances as well as provide new options, such as hiding Millumin's own window or the mouse cursor.
HAP R & NotchLC codec
There is 5 official flavours for the HAP codec (HAP, HAP Alpha, HAP Q, HAP Q Alpha, HAP Alpha-only).
Millumin supports all of them. But a new one is coming, and despite non official for the moment, Millumin is now supporting HAP R : this new flavour brings even better quality at the same bitrate of the HAP Q. You can use Jokyo Encoder to produce such HAP R files.
Also, Millumin now supports NotchLC codec, that is able to encode in high-quality and in 10-bit (for better rendering especially with gradients). As for the HAP, the decoding is mainly processed by the GPU (which is quite efficient).
Goto -10/-20/-30 Cues
You can access such cues from the time-panel (on the right of the dashboard), and you can now use negative values to go 10, 20, ... seconds before the end of the column.

Show Loop-mode in Dashboard
When zoomed enough in the dashboard, an icon representing the loop-mode of your media will appear. This is handy to check your show in a snap.

Comfort
- larger layer's names
- show media in library from properties-view
- improved performances with Blackmagic Decklink 8K Pro
- prevent macOS from mirroring displays (see Preferences)
- control masters via OSC API
- update to NDI v.5.5.1
- various ergonomic improvements
Version 4.12 ・ November 2021
Matrix Soft-edge
You can now create a 2x2 (or more) soft-edge. Of course, classic horizontal and vertical soft-edge are still available.

Warping & Masks at canvas level
As you can now apply some global warping and masks directly on your canvas, you do not need to do in your workspace with multiple canvases. This makes your workspace clearer, and makes you able to focus on your content.

Curved Outputs
Sometimes, projection surfaces are not flat : in such cases, applying a curve-warping to your output is very useful. So you could for example create a soft-edge on a curved screen.

Video Routing
Easily remap many canvases to a specific output, or split a canvas into several outputs.
This feature has many use cases, such as monitoring canvases via NDI, duplicating projections, splitting a Blackmagic output, managing rotated displays, ...

Data-track commands
Commands allows you to send specific signals (MIDI, OSC, DMX, ...) on a specific moment of your show. This makes the data-tracks even more useful and easy to use.

ATEM support
Blackmagic Design ATEM switchers can now be controlled remotely from Millumin. Simply select the "ATEM" mode in a data-track.

Browser Input
Show a website directly in Millumin. For example a beautiful shader from Shadertoy.

MilluNode
MilluNode is a Mac/Windows application to extend your Millumin. Indeed, run MilluNode on one or more computers, so that Millumin can take control and share the workload. It works on local and Internet networks.
Check out this page for more info.

Metal Millumin
During last years, a new generation of GPU libraries & technologies emerged. Indeed, OpenGL is being replaced by Vulkan. Microsoft is doing the same with DirectX
12. And Apple with Metal.
In brief : for Macintosh computers, Metal is the successor of OpenGL (that made running macOS applications for almost 20 years !).
And Millumin is now optimized for Metal. Going to Metal will allow us to follow new features and improvements from Apple in a more easy way.
Is your machine compatible ? Most computers shipped since 2012 are, more info on this post.
And if your machine is not compatible, Millumin will automatically fall back to OpenGL drivers. To know if Millumin is running with Metal, open the Monitor from "Window" menubar, then go to "System" tab.

Apple M1
Apple is now using its own processors, the first one being called Apple M1. By 2023, Intel processors will not be used any more.
Millumin is optimized for both Intel and Apple M1, so you can get the most out of any Mac you own.

However, the LeapMotion and the Kinect are not supported natively on Apple M1 platform. If you need to use such devices, run Millumin with Rosetta (select Millumin4.app, press CMD+I then check the option "Open using Rosetta").
LUT effect
If you need to perform some color grading with 3D LUT files, there is now an effect for this purpose !

Chroma Key effect
This effect replaces the color-key effect. It supports spill suppression.
Skeleton Tracker (Apple M1 only)
Although the Kinect is not supported on Apple M1 computers, such machines can use this brand new feature to detect a skeleton in any image, movie, camera or footwork footage. So it is even more practical and flexible than a Kinect !
Person Detector (Apple M1 only)
If you are missing a green screen on stage, you can still apply this effect to your camera to remove some background. Use macOS 12 or higher for best results.
Workspace improvements
The tools have been refined for better ergonomics.
The snapping is also now better and have visual feedback.

Laslty, you can now pinch to zoom in the workspace, as well as scrolling in both directions.


Support for NDI V5
This standard allows computers as well as specialized hardware to send and receive video over a network.
This brand new version improves performances.
Send audio via NDI
Millumin can now mix the audio produced by a canvas, so it can be embed in your NDI stream (along with your video of course).

A vumeter is displayed in the workspace, so you can monitor what is going out :

PTZ control for NDI camera
If your camera can rotate or adjust its zoom, you can now do it via Millumin. There are also presets to quickly recall a point of view.

A good example of such cameras are the PTZOptics NDI serie :

Convert to HAP in one click
Optimizing your project with the right codec has never been easier : just click the "Optimize" button and start the process.
