DATAMOSH Parameter reference

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.

Just dropped it on and nothing is happening? That is correct behaviour, not a fault. Mosh Amount defaults to 0, which is a pixel-exact passthrough — an effect that changed your output the instant it landed on a live layer would be a menace mid-set.

Pick a Style. That is the intended way in: every preset sets Mosh Amount to 1.0 along with a coherent set of everything else, so one click takes you from silent to obviously working. Then pull Mosh Amount back down to taste — and down it must come if you want to play the effect, because at 1.0 the gate is saturated and Trigger, Hold and the audio controls have nothing left to add.
Still nothing, and you have been trying presets? Check Motion Threshold. Selecting Custom does not restore defaults — it only stops the dropdown claiming a preset — so whatever the last style set stays. Drag leaves it at 0.5, which demands 4 pixels of movement per frame before any pixel is allowed to mosh. On ordinary footage almost nothing clears that, the gate is shut across the whole frame, and no other slider can do a thing. Set it to 0.

Mosh

When pixels stop refreshing from the input. This is the I-frame axis.

ParameterRangeDefaultWhat it does
Style 6 presets Custom Writes a coherent group of parameters in one move: Melt, Bloom, Drag, Liquid or Corrupt. Touching any parameter a style owns flips this back to Custom, so the dropdown never claims something the settings do not say. Selecting a style clears whatever the previous one set rather than layering on top.
Mosh Amount 0 – 1 0 The master gate. At 0 every pixel refreshes from the input and the plugin is a passthrough. At 1 nothing refreshes and the image is carried entirely by motion compensation. Anything in between is a per-frame blend, so mid values decay toward the live image rather than holding half of it.
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 / 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 / 2 / 4 / 8 / 16 4 Beats between firings in On Beat mode. 4 is once a bar, 16 once every four bars. Needs Resolume's tempo to be running for anything to happen.

Motion

What the estimated vector field does before the warp uses it.

ParameterRangeDefaultWhat 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.
Freeze 0 – 1 0 Holds the vector field instead of re-estimating it. At 1 the same vectors keep applying every frame regardless of what the footage does — this is P-frame duplication, and it is what produces the bloom. Note the field has to exist first: turning Freeze on over a still shot holds a field of zeroes and nothing happens.
Motion Smoothing 0 – 1 0.3 Temporal inertia on the field. Higher values make motion take longer to change direction, which lengthens trails and stops the smear flickering when the estimate is uncertain.
Motion Threshold 0 – 1 (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.
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.
Pel 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 pel 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

Why this group exists The estimator is accurate enough that displacing the previous frame by it reproduces the current frame almost exactly. That is correct, and it is also far too clean — real datamosh looks broken because the vectors are wrong. Everything here makes them wrong on purpose. Motion Lag is the strongest and the one to try first.
ParameterRangeDefaultWhat it does
Motion Lag 0 – 15 frames 0 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 vectors 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.
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, 1 recovers in a fraction of a second. Being a half-life rather than a per-frame fraction, the same setting behaves identically at 30 and 60 fps and through frame-rate dips. Useful as a safety net so a held mosh cannot stay collapsed forever.

Sync

ParameterRangeDefaultWhat 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 Volume / Bass Bass Which part of the spectrum drives it. Bass tracks the kick; Volume 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.
Resolume's own audio reactivity is better than this Click the cogwheel beside any parameter and pick an FFT source, and you get a frequency range you drag on a spectrum display rather than two fixed bands, a Gain and a Fall control, an inverted-response button, and a choice of Clip, Layer, Group, Composition or External audio. It works on every parameter here, not just the mosh gate — so it is the way to make Motion Gain, Softness or anything in Damage move with the music.

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

ParameterRangeDefaultWhat 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.
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.

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.

ParameterRangeDefaultWhat 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 does nothing The mixer also shows a slider called mixVal, inherited from the FFGL mixer base class. It is not read — use Mix in the Output group instead. 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.

Read this one first Every Style preset sets Mosh Amount to 1.0, and at full Mosh Amount seven other controls stop doing anything: Trigger, Hold, Auto Mode, Cut Sensitivity, Burst Length, Beat Divisor and Audio Amount.

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. So the moment you pick a preset, every control you would play goes dead.

Fix: after selecting a style, pull Mosh Amount back down. 0 to play it entirely by hand, or 0.2–0.3 as a floor for audio and triggers to push up from.

When a knob does nothing

This appears dead……whenWhy
Trigger, Hold, Auto Mode, Cut Sensitivity, Burst Length, Beat Divisor Mosh Amount is 1.0
— which every Style sets
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 Freeze is 1.0
— which the Bloom preset sets
Lag reaches back through a 16-frame ring of vector fields. Freeze 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 Freeze 1.0: 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.
Everything Quality is Low and Motion Threshold is 1.0 Quality caps how far the estimator can look: Low 8 px, Medium 16, High 32, Ultra 64. Motion Threshold tops out at 8 px. At Quality Low those numbers meet, so no pixel can ever exceed the threshold, the gate shuts everywhere and the plugin emits its input untouched — which looks exactly like a correctly-bypassing effect.
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.

Things that compound

Freeze and Motion Smoothing are the same knob twice Both blend the vector field toward the previous frame's, one after the other, so the effective hold is 1 − (1−Smoothing)(1−Freeze) — and it is symmetric, so it genuinely does not matter which one you reach for. At the default Smoothing of 0.3, a Freeze of 0.5 actually gives you 0.65. If Freeze feels stronger than the number suggests, this is why.
Decay quietly caps Mosh Amount Persistence is a product: 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.
Style only owns fourteen parameters Selecting a preset writes Mosh Amount, Motion Gain, Freeze, Motion Smoothing, Motion Threshold, Softness, Pel Snap, Block Size, Motion Lag, Block Repeat, Quantise, Corruption, Chroma Drift and Decay — and editing any of those flips the dropdown back to Custom. Everything else — Trigger, Hold, Reset, Auto Mode, Cut Sensitivity, Burst Length, Beat Divisor, Invert Motion, Audio, Mix, Quality — is neither written nor watched. Change those and the dropdown keeps naming a preset, which is intended: they are how you play a look, not part of what the look is.