Reference
Every parameter
Grouped as they appear in Resolume. Each entry says what the control does, what its extremes mean, and what it interacts with — because several of them can cancel each other out.
Then pick a Style. Each one writes a coherent set of motion and damage settings and leaves Mosh Amount alone, so Trigger, Hold and the audio controls keep working on top of it. Push Mosh Amount up for more, down to make room to play — at 1.0 the gate is saturated and there is nothing left for a key or a kick to add.
Mosh
When pixels stop refreshing from the input. This is the I-frame axis.
| Parameter | Range | Default | What it does |
|---|---|---|---|
| Style | 5 looks + Default | Custom | Writes a coherent group of parameters in one move: Melt, Bloom, Drag, Liquid or Corrupt. A style never touches Mosh Amount — it describes the character of the motion and the damage, and the gate stays yours, so Trigger, Hold and audio all keep working on top of a preset. Touching any parameter a style owns flips this back to Custom, so the dropdown never claims something the settings do not say. Default restores the factory panel; selecting Custom restores nothing, because Custom is a status rather than a destination. |
| Mosh Amount | 0 – 1 | 0.3 | The master gate, as a hold time on a log scale. At 0 every pixel refreshes from the input and the plugin is an exact passthrough. At 1 nothing refreshes and the image is carried entirely by motion compensation. In between, the slider sets how long old pixels survive: 0.25 is about a tenth of a second, 0.5 about half a second, 0.75 a couple of seconds — and the same at any frame rate. Until 0.2.0 this was a raw per-frame blend, which meant half the slider bought a third of one percent of the effect and the whole usable range sat above 0.9. It was also frame-rate dependent. The endpoints are unchanged; the middle is where it moved. |
| Trigger | button | — | Starts a timed burst at full mosh, lasting Burst Length. Safe to map to MIDI. A burst always produces at least one frame of mosh even if it is shorter than a frame. |
| Hold | toggle | off | Full mosh for exactly as long as it is on, ignoring Burst Length entirely. Play it like a key. Map it to a key or MIDI note and tick Piano in the shortcut — that is what makes it momentary. As a panel toggle it latches, because you cannot hold a checkbox down with a mouse. |
| Reset | button | — | Forces a keyframe: snaps back to the clean input immediately and clears any running burst. The panic button — it also ends a Hold that is still reading on, which is the way out if a key-up is ever lost. |
| Auto Mode | Manual / On Cut (Comp) / On Beat | Manual | On Cut watches the incoming video and fires a burst whenever the shot changes — put the effect on the composition and every clip change melts by itself, with nothing to trigger. On Beat fires on Resolume's clock every Beat Divisor beats. |
| Cut Sensitivity | 0 – 1 | 0.5 | How readily On Cut fires. Detection is relative to a running average of how much the picture normally changes, so it adapts to both a still ambient clip and a strobing one. Raise it if cuts are being missed; lower it if fast camera movement is triggering it. |
| Burst Length | 0.05 – 8 s | 1.0 | How long a triggered burst holds before releasing. The release itself eases out over about a quarter of a second, because an instant drop back to clean reads as a second cut. |
| Beat Divisor | 1 Beat / 2 Beats / 1 Bar / 2 Bars / 4 Bars | 1 Bar | How often On Beat fires. Labelled in beats and bars rather than as a bare column of numbers, because next to “On Beat” a musician reads 1/2/4/8/16 as note values — where 2 means longer. Needs Resolume's tempo to be running for anything to happen. |
Motion
What the estimated vector field does before the warp uses it.
| Parameter | Range | Default | What it does |
|---|---|---|---|
| Motion Gain | 0 – 4 | 1 | Multiplies the estimated vectors. At 1 the warp tracks the real motion, which is accurate and quite clean. Above 1 it overshoots and smears harder. At 0 the warp is an identity copy, which freezes the image without freezing the field. |
| Motion Smoothing | 0 – 1 | 0.3 | Temporal inertia on the field, as a hold time on a log scale: equal travel is an equal ratio, and the same setting behaves the same at 30 and 60 fps. Higher values make motion take longer to change direction, which lengthens trails and stops the smear flickering when the estimate is uncertain. At 1 the field never updates — the same vectors keep applying every frame regardless of what the footage does. That is P-frame duplication, and it is what produces the bloom. The field has to exist first: pushing this to 1 over a still shot holds a field of zeroes and nothing happens. Let movement play, then hold it. Until 0.2.0 this top end was a separate slider called Freeze; the two were provably one operation and were merged. |
| Motion Threshold | 0 – 1, squared (0–8 px) | 0.15 | How much a region must be moving before it is allowed to mosh. At 0 everything moshes, giving the full melt. Raised, only fast-moving blocks smear and still areas stay sharp — that is the pixel-drag look. Measured on the estimate before Motion Gain, so turning gain up smears harder without changing what counts as moving. The travel is squared: 0.5 is 2 px of movement per frame, not 4, because ordinary footage mostly moves under 3 px and a linear slider kept the whole decision in its bottom quarter. It is also clamped below how far the estimator can look at the current Quality, so no setting can shut the gate for every pixel. |
| Block Size | 4 / 8 / 16 / 32 px | 16 | The macroblock grid. 16 is what MPEG uses and looks the most familiar. 32 is chunkier and noticeably cheaper; 4 approaches per-pixel flow and costs the most. Also sets the coarsest step Quantise can snap to. |
| Softness | 0 – 1 | 0 | Blurs the field and switches the warp from sampling one vector per macroblock to interpolating between them. At 0 you get hard-edged MPEG tearing; at 1, smooth liquid flow. Same estimator either way — this is the dial between the two aesthetics. |
| Pixel Snap | 0 – 1 | 1 | Snaps the displacement to whole pixels. Leave it on unless you want softness: the accumulated image is resampled into itself every frame, and without snapping the interpolation compounds and blurs it to mush within a couple of seconds. Real codecs work in fixed pixel units for the same reason. |
| Invert Motion | off / on | off | Reverses the displacement, so the smear runs against the movement in the shot rather than with it. Cheap way to make correct motion look wrong. |
Damage
| Parameter | Range | Default | What it does |
|---|---|---|---|
| Motion Lag | 0 – 15 frames | 2 | Applies a vector field from this many frames ago instead of the current one, so motion lands on content it does not belong to. The closest analogue to a decoder working from the wrong reference frames, and the single most effective control for getting away from a clean optical-flow morph. Even 2–4 frames changes the character completely. |
| Block Repeat | 0 – 1 | 0 | Chance per block of taking a neighbour's content rather than its own — the look of a block whose data never arrived. Re-rolled every frame, so it shimmers rather than sticking. |
| Quantise | 0 – 1 | 0 | Snaps the displacement to a coarse grid, the way a low-bitrate encoder has to. Gives stepped, chunky motion instead of smooth displacement. At full scale the step is half a macroblock, so it interacts strongly with Block Size. Motion slower than half a step rounds to no displacement at all, which holds the block where it is rather than letting it refresh — a skipped block, in codec terms. It does not change what Motion Threshold counts as moving. |
| Corruption | 0 – 1 | 0 | Chance per block of its vector being rotated and rescaled at random — plausible magnitudes, wrong directions. Reads as damaged data rather than as noise. |
| Chroma Drift | 0 – 1 | 0 | Displaces the red and blue channels by slightly different amounts along the vector, the fringing you get when a block's colour planes disagree about where they came from. Green stays put so the image remains legible. |
| Decay | 0 – 1 | 0 | Bleeds the live image back in even at full mosh, as a half-life: 0 holds forever, 0.5 recovers in about two thirds of a second, 1 in a twentieth. The scale is geometric, so each quarter turn is roughly a threefold change — until 0.2.0 it was linear, which put 0.5 at a four-second half-life and nothing visible happened until the last fifth of the travel. Being a half-life rather than a per-frame fraction, the same setting behaves identically at 30 and 60 fps. Useful as a safety net so a held mosh cannot stay collapsed forever. |
| Spread | 0 – 1 | 0 | Lets the damage creep outward into blocks that are not moving at all. Everything else here decides each pixel from this frame alone, so a still block could never mosh; this is the one control with a memory of what happened next door. Corruption starts wherever the motion is strongest and spreads from there, and when you bring the level down the frontier goes out first, so it retreats the way it came. The scale is a speed in frame heights per second, so it travels at the same rate whatever the resolution, block size or frame rate — and the same control sets how far it gets, since the front dies where the damage fades. |
Sync
| Parameter | Range | Default | What it does |
|---|---|---|---|
| Audio | FFT input | — | The spectrum Resolume feeds the plugin. Nothing to set; it is the source Audio Amount reads from. |
| Audio Amount | 0 – 1 | 0 | How much the audio level adds to Mosh Amount. Adds on top rather than replacing, so a kick pushes an already-moshing image further rather than switching it on from nothing. |
| Audio Band | Full Range / Bass | Bass | Which part of the spectrum drives it. Bass tracks the kick; Full Range is the whole buffer, which reads quieter for the same music because it averages over bins that carry no energy. Mid and High existed until 0.1.5 and were removed because they read zero. Resolume packs its spectrum into roughly the bottom eighth of the FFT buffer, and the SDK's analyser splits that buffer into equal thirds — so both upper selections averaged over silence. |
Audio Amount earns its place doing one thing the host route cannot: it adds. An animated parameter belongs to its animation, so linking Mosh Amount to audio takes the slider away from you. This adds on top of Mosh Amount and sits under Hold, so audio can pump underneath while you still play the gate by hand. If you do not need that, use Resolume's.
Output
| Parameter | Range | Default | What it does |
|---|---|---|---|
| Mix | 0 – 1 | 1 | Wet/dry against the untouched input. Distinct from Mosh Amount: this crossfades the finished result over the original, while Mosh Amount changes what the result is. Pulling Mix down gives a ghosted double image; pulling Mosh Amount down gives a cleaner one. |
| View | Result / Motion / Gate | Result | Draws what the effect is thinking instead of what it is doing. Motion shows the estimated vector field: hue is direction, brightness is speed on the same ruler as Motion Threshold — so a region's brightness is the threshold setting that would shut it, and white means faster than that slider can reach. Gate shows the decision itself: black where there is no motion to gate, red where motion was rejected by the threshold (brighter the closer it came), green where the gate is open, cyan where the creep has reached, and washed toward grey where the mask is closing it. Overall brightness is how long a held pixel is held, in seconds. Both replay exactly what the last rendered frame used, so they cannot show a field the effect did not apply. |
| Quality | Low / Medium / High / Ultra | High | Depth of the motion search: how far it can track fast movement and how precisely. Ultra adds a sub-pixel refinement pass. This is the dial to drop first if a show needs GPU headroom — lower settings do not break the effect, they just estimate more roughly, which on this effect is often no bad thing. |
Mask
Where the mosh is allowed to land. The mask comes from the brightness of the motion input — the clip's own in the effect, the other layer's in the mixer — so whichever layer supplies the movement also paints the shape, and Motion Source flips both together.
| Parameter | Range | Default | What it does |
|---|---|---|---|
| Mask Amount | 0 – 1 | 0 | Depth, not gain. At 0 the mask is exactly off and nothing changes. Turning it up lets bright regions hold pixels while dark ones keep refreshing, with everything in between held for a shorter time — mid-grey for about a quarter as long as white, the same at any frame rate. It is a gradient, not a key, so a soft edge stays soft. |
| Mask Invert | on / off | off | Mosh the dark parts instead of the bright ones. The image is unchanged; only where the mosh sticks moves. |
They are also not filed under the group names they belong to, which 0.3.0 got wrong: Resolume only merges parameters into one section when they are consecutive, so reusing “Damage” and “Output” at the end of the list produced a second section of each rather than joining the first. Their own names are the fix, and for View arguably the better label anyway — it is a diagnostic, not an output setting.
Licence
The last parameter, on the effect and on Mosh Transplant alike, is a text field. Type into it and press Enter; it empties, and its name shows the answer. It never keeps what you typed, so a key or an email address is never saved into a composition. Both plugins share one licence per computer.
| Type | What happens |
|---|---|
| LT-DATA-… | Activates this computer with your licence key. |
| your email | Starts a free trial on this computer. |
| folder | Opens the licence folder. Its README.txt has the status and the request code for activating a computer that is offline. |
| check | Checks in with the licence service now. It also happens by itself when online. |
| deactivate | Releases this computer's seat, so the key can move to another. |
| feedback | Opens the feedback page in your browser, like the Send Feedback button. |
| send / discard | Answers the crash-report question, which only appears after a problem. |
| always send / reports off | Turns automatic crash reports on, or off again. Off is the default. |
Feedback and crash reports
Send Feedback, in the Help section just above Licence, opens the feedback page in your browser with the product and version filled in. It does nothing in the first few seconds after an effect is added, so a composition loading never opens a browser.
Crash reports are off unless you turn them on. If Resolume
closes while Datamosh is in the middle of a frame, the next time it starts the
Licence field's name ends | closed unexpectedly last time – type
send or discard. It asks once. A report holds the version, the
operating system, the step of the frame it was on, the Resolume version and the
frame size, with a random id made on your computer. It never holds your licence
key, your email, your name, file names, or anything from your composition, and
README.txt in the licence folder shows exactly what it contains.
Mosh Transplant only
The mixer build appears in a layer's blend-mode dropdown, not the effects list. It takes motion from one input and pixels from the other, so a clip of moving water can be made to drag a completely different image around.
| Parameter | Range | Default | What it does |
|---|---|---|---|
| Motion Source | This Layer / Layer Below | This Layer | Which input supplies the motion; the other supplies the pixels. The default makes the clip you drop the mixer onto the motion clip, and the layers underneath the ones that get dragged. The two inputs do not have to share a resolution. |
mixVal, inherited
from the FFGL mixer base class. It is not read — use Mix
in the Output group instead — and later builds hide it. It cannot be
renamed or removed without making the plugin fail to load at all;
the reason is worth reading if you
write FFGL plugins yourself.
How they interact
Most parameters here are not independent. Several combine by
max() or by multiplication, which means one can silently
swallow another — the knob turns, the picture does not move, and
nothing tells you why. Every case below was read out of the shader
arithmetic rather than inferred from the names.
The gate is
max( Mosh Amount + audio, held ). Once Mosh Amount
is 1 the result is 1 whatever the burst machinery does, and the audio
headroom — exactly 1 − Mosh Amount — is
zero. Full is a look, not a floor: leave headroom above it if you intend
to play anything.
Until 0.2.0 every Style preset pushed Mosh Amount to 1.0, so picking a look was the gesture that disarmed everything you would play. Presets no longer touch it.
When a knob does nothing
| This appears dead… | …when | Why |
|---|---|---|
| Trigger, Hold, Auto Mode, Cut Sensitivity, Burst Length, Beat Divisor | Mosh Amount is 1.0 | The gate takes whichever is larger, and Mosh Amount already won. |
| Audio Amount | Mosh Amount is 1.0 |
Audio adds to Mosh Amount and the sum is clamped to 1, so
the headroom is 1 − Mosh Amount. At full, there
is none.
|
| Motion Lag | Motion Smoothing is 1.0 — which the Bloom preset sets |
Lag reaches back through a 16-frame ring of vector fields. A full
hold stops the ring updating, so all sixteen slots hold the same
vectors and every lag setting selects an identical field.
Measured difference between lag 0 and lag 15 at a full
hold: 0.00000000.
|
| Motion Lag | Motion Smoothing is high |
Same mechanism, arriving gradually. Smoothing blends each new
field toward the previous one, so the ring's contents converge.
Lag 0 vs lag 4 measures 0.121 at smoothing 0,
0.078 at 0.9, 0.053 at 0.99 and exactly
0 at 1.0 — you lose a third of Lag's effect by
0.9 without anything looking wrong.
|
| Mosh Amount, locally | Motion Threshold is above the scene's motion | The gate is per-pixel. Anywhere the estimated motion is below the threshold, moshing is switched off in that region only — so on slow footage a high threshold can leave most of the frame refreshing normally while a corner smears. |
| Motion Gain, locally | Quantise is high and the footage is slow | The grid step reaches half a macroblock — 8 px at the default Block Size, 16 at 32. Motion below half a step rounds to no displacement, so those blocks hold where they are instead of sliding. The effect is still running and still holding pixels; it just is not moving them. Drop Quantise or Block Size to bring the step under the motion. |
Things that compound
mosh level × gate × retention. Any Decay above 0
puts a ceiling on the first term, so Mosh Amount 1.0 stops meaning
“never refresh”. At Decay 1.0 and 60 fps
retention is 0.794 — about a fifth of the live frame bleeds back
every frame no matter where Mosh Amount sits.