Datamosh 1.0
Datamosh parameters
Every control on the Datamosh effect, section by section as Resolume shows them, with its range, default, what it does and a clip of it moving.
Datamosh's panel is split into collapsible sections, in this order: Mosh, Motion, Damage, Sync, Output, Mask, Spread, View, Help and Licence. Mosh Transplant has every one of these too, plus two controls of its own at the top (see Mosh Transplant).
Every clip on this page is the plugin's real output, rendered from the released 1.0.0 build: the input on the left, Datamosh's output on the right, and the control being changed named over the output.
Mosh
When pixels stop refreshing from the input. Everything in this section is about when the mosh happens and how strongly.
Style
Options: Custom, Melt, Bloom, Drag, Liquid, Corrupt, Default. Default: Custom.
Sets a whole look in one move by writing thirteen motion and damage controls: Motion Gain, Motion Smoothing, Motion Threshold, Block Size, Softness, Pixel Snap, Motion Lag, Block Repeat, Quantise, Corruption, Chroma Drift, Decay and Spread.
A style never touches Mosh Amount, Trigger, Hold, the audio controls, the mask or anything else you play, so those keep working on top of any look.
Change any of the thirteen by hand and the dropdown switches to Custom, so it never claims a look the settings no longer match. Choosing Custom yourself restores nothing: it is a label, not a preset. To get the factory settings back, choose Default.
The looks and their exact settings are in Look recipes.
Mosh Amount
Range: 0 to 1. Default: 0.3.
The main control. It sets how long a pixel that stops refreshing is held before the live picture replaces it.
- 0: every pixel refreshes every frame. The output is an exact copy of the input.
- 0.3 (the default): about a fifth of a second, a gentle smear.
- 0.5: about half a second.
- 0.75: about a second and a third.
- 1: nothing refreshes. The picture is carried by motion alone until something resets it.
The travel is on a log scale, the way a delay or reverb time knob is, and the same setting holds for the same time at 30 or 60 fps.
Trigger
Type: button.
Starts a burst: full mosh for one Burst Length, then a quarter-second ease back to whatever Mosh Amount says. Even a burst shorter than a frame gives at least one frame of mosh. Safe to map to a MIDI pad or key.
On smooth movement that Datamosh tracks accurately, a burst at the default settings can look subtle, because full mosh on perfectly followed motion rebuilds the picture almost exactly. The Damage section is what makes it read: the clips in this section use Motion Gain 1.8 and Motion Lag 5.
Hold
Type: on/off. Default: off.
Full mosh for exactly as long as Hold is on, ignoring Burst Length. Play it like a key: map it to a keyboard key or MIDI note and tick Piano in the shortcut, which makes it momentary. On the panel it is a checkbox that latches, because a mouse cannot hold a checkbox down.
Holding also cancels any automatic burst running underneath, so releasing it always visibly lets go.
Reset
Type: button.
Snaps straight back to the clean input and clears any running burst and any built-up damage, like a keyframe arriving. It also ends a Hold that is still reading on, so if a key-up ever gets lost (you switched apps mid-hold, a note-off was dropped), Reset is the way out. The next press of Hold works normally.
Auto Mode
Options: Manual, On Cut (Comp), On Beat. Default: Manual.
Fires bursts for you.
- Manual: only Mosh Amount, Trigger, Hold and audio open the gate.
- On Cut (Comp): watches the picture and fires a burst whenever the shot changes. Put Datamosh on the composition for this: there it sees every clip change on every layer, which is the classic datamosh transition with nothing to press. On a layer, it only sees that layer's own clip changes.
- On Beat: fires on Resolume's tempo, once every Beat Divisor.
Choosing a mode shows the control that goes with it and hides the other: Cut Sensitivity appears in On Cut, Beat Divisor in On Beat.
Cut Sensitivity
Range: 0 to 1. Default: 0.5. Shown: only when Auto Mode is On Cut (Comp).
How readily On Cut fires. The detector compares each frame's change with a running average of how much the picture normally changes, so it copes with both a still ambient clip and a strobing one. Raise it if cuts are being missed; lower it if fast camera movement sets it off.
Burst Length
Range: 0.05 to 8 seconds. Default: 1.
How long a burst from Trigger, On Cut or On Beat holds full mosh before it eases back over a quarter of a second. About 0.5 s reads as a stutter, 2 s as a full dissolve. Hold ignores it.
Beat Divisor
Options: 1 Beat, 2 Beats, 1 Bar, 2 Bars, 4 Bars. Default: 1 Bar. Shown: only when Auto Mode is On Beat.
How often On Beat fires, counted on Resolume's clock (four beats to the bar). Resolume's tempo has to be running.
Motion
What the estimated motion does before it is used to move pixels.
Motion Gain
Range: 0 to 4. Default: 1.
Multiplies the motion. At 1 held pixels follow the real movement. Above 1 they overshoot it and smear harder. At 0 they do not move at all, so held areas freeze in place.
Motion Smoothing
Range: 0 to 1. Default: 0.3.
How slowly the motion is allowed to change. Higher values lengthen trails and stop the smear flickering when the motion is uncertain. At 1 the motion stops updating altogether and the same movement keeps being applied every frame, whatever the footage does. That is the bloom.
Motion Threshold
Range: 0 to 1. Default: 0.15.
How fast an area has to be moving before it is allowed to mosh. At 0 everything that moves at all moshes. Raised, slow areas keep refreshing and stay sharp while fast ones smear: the pixel drag look. The travel is squared, so 0.5 means about 2 pixels of movement per frame, and 1 means 8 (6 at Quality Low, which cannot follow movement that fast).
Motion Gain does not change what counts as moving, so you can smear harder without letting more of the picture in.
Block Size
Options: 4 px, 8 px, 16 px, 32 px. Default: 16 px.
The grid the motion is measured and applied on, like a codec's macroblocks. 16 px looks the most like real compressed video. 32 px is chunkier and lighter on the GPU; 4 px is closest to smooth per-pixel flow and costs the most. It also sets the coarsest step Quantise can snap to.
Softness
Range: 0 to 1. Default: 0.
The dial between hard-edged blocky tearing (0) and smooth liquid flow (1). It blends the motion between neighbouring blocks instead of moving each block as one piece.
Pixel Snap
Range: 0 to 1. Default: 1.
Rounds each movement to whole pixels, which keeps held pixels crisp. Leave it at 1 unless you want softness: below 1, held areas are resampled a little every frame and blur away within a couple of seconds. The Liquid style sets it to 0 for exactly that.
Invert Motion
Type: on/off. Default: off.
Pushes held pixels the opposite way to the movement in the shot, so smears run backwards. A cheap way to make correct motion look wrong.
Damage
Datamosh's motion estimate is accurate, and on its own that looks too clean: more like a smooth morph than a broken file. Real datamosh looks broken because the motion is wrong. Everything in this section makes it wrong on purpose. Motion Lag is the one to try first.
Motion Lag
Range: 0 to 15 frames, whole numbers. Default: 2.
Applies the motion from this many frames ago instead of the current motion, so movement lands on content it does not belong to, the way a decoder working from the wrong reference frame does. Even 2 to 4 frames changes the character completely.
Block Repeat
Range: 0 to 1. Default: 0.
The chance of each block showing its neighbour's content instead of its own: the look of a block whose data never arrived. Which blocks are hit changes on every eighth note while Resolume's clock runs (every six frames otherwise), so the damage sticks for a moment instead of fizzing.
Quantise
Range: 0 to 1. Default: 0.
Snaps the movement to a coarse grid, the way a low-bitrate encoder has to, giving stepped, chunky motion. At 1 the step is half a block (8 px at the default Block Size). Anything moving slower than half a step does not move at all and just holds: a skipped block, in codec terms. It does not change what Motion Threshold counts as moving.
Corruption
Range: 0 to 1. Default: 0.
The chance of each block's motion being turned to a random direction and rescaled: plausible amounts of movement, wrong directions. It reads as damaged data rather than noise. Like Block Repeat, the choice of blocks changes in musical steps.
Chroma Drift
Range: 0 to 1. Default: 0.
Moves the red and blue channels by different amounts along the motion, the colour fringing you get when a block's colour planes disagree. Green stays put, so the picture stays readable.
Decay
Range: 0 to 1. Default: 0.
Bleeds the live picture back in even at full mosh, as a half-life. 0 holds forever; 0.25 is about 2 seconds; 0.5 about two thirds of a second; 1 a twentieth of a second. It behaves the same at any frame rate.
Useful as a safety net, so a mosh held at full can never stay collapsed forever. It also means Mosh Amount 1 no longer quite means "never refresh".
Sync
Audio
Type: audio input (the sound Resolume analyses). Nothing to set.
The sound spectrum Resolume's audio analysis feeds the plugin. Audio Amount and Audio Band read from it; there is nothing to set here.
Audio Amount
Range: 0 to 1. Default: 0.
How much the audio level adds to Mosh Amount. It adds on top rather than replacing it, so a kick pushes an already moshing picture further, and Mosh Amount, Hold and Trigger all keep working while the audio pumps underneath. The headroom is whatever is left above Mosh Amount: at Mosh Amount 1 there is none.
More in Audio reactivity.
Audio Band
Options: Full Range, Bass. Default: Bass.
Which part of the sound drives it. Bass follows the kick. Full Range uses the whole spectrum, which reads quieter for the same music.
Output
Mix
Range: 0 to 1. Default: 1.
Wet/dry: crossfades the moshed result over the untouched input. Different from Mosh Amount: pulling Mix down gives a ghosted double image of the mosh over the clean picture, while pulling Mosh Amount down gives a cleaner mosh.
Quality
Options: Low, Medium, High, Ultra. Default: High.
How hard Datamosh works to measure motion: how far it can follow fast movement and how precisely. Ultra adds an extra refinement step. This is the first thing to lower if a show needs GPU headroom. Lower settings do not break the effect; they measure more roughly, which on a datamosh is often no bad thing. The difference in the picture is small, which is why there is no clip here: judge it on your own footage.
Mask
Where the mosh is allowed to stick, painted by brightness. The brightness comes from the input that supplies the motion: the clip's own on the Datamosh effect, the motion layer on Mosh Transplant. An area only moshes if it is both moving and let through by the mask.
Mask Amount
Range: 0 to 1. Default: 0.
How strongly the mask applies. At 0 it is off. Raised, bright areas can hold pixels and dark areas keep refreshing, with everything in between held partly: it is a gradient, not a hard key, so soft edges stay soft.
The mask is steep. Only genuinely bright areas (near white) hold for long; mid-tones, including most saturated colours, are cut back hard even at a low Mask Amount. It works best with a high-contrast motion source: white text, a logo, a black-and-white generator. If the motion input has transparency, transparent areas count as dark, so a logo on a transparent background masks by its shape.
Mask Invert
Type: on/off. Default: off.
Moshes the dark areas instead of the bright ones.
Spread section
Spread has a section of its own at the bottom of the panel. It belongs with the Damage controls, but it was added in a later version, and Resolume restores saved compositions by position, so new controls always go at the end.
Spread
Range: 0 to 1. Default: 0.
Lets the damage creep outward into areas that are not moving at all. Everything else decides each block from this frame alone, so a still block could never mosh; with Spread up, the damage starts where the motion is strongest and crawls outward. Bring Mosh Amount down and the edge retreats the way it came instead of snapping off. Higher values creep faster and further, at the same speed whatever the resolution or frame rate.
View section
View
Options: Result, Motion, Gate. Default: Result.
Shows what Datamosh is thinking instead of what it is doing. Use it when a setting seems to do nothing.
- Result: the effect. Leave it here for a show.
- Motion: the motion it measured. Colour is direction, brightness is speed, on the same scale as Motion Threshold, so an area's brightness is roughly the threshold setting that would shut it out. Black means no movement was found, and nothing else you change will matter.
- Gate: where the mosh is allowed. Green where it is open, red where Motion Threshold refused it (brighter the closer it came), cyan where Spread has reached, washed toward grey where the mask is closing it, black where there is no motion. Overall brightness is how long a pixel is held.
Both diagnostic views redraw exactly what the last frame used, so they cannot disagree with the result.
Help
Send Feedback
Type: button.
Opens the feedback page on letissier.ie in your browser, with the product and
version filled in. It ignores presses in the first three seconds after the
effect is added, so loading a composition never opens a browser over your
show. Typing feedback into the Licence field does the same.
Licence section
Licence
Type: text field. Always the last control.
Where you start the trial, enter your licence key and answer the crash-report
question. Type into it and press Enter: it empties, and its name shows
the result, for example Licence: active or Licence: locked, unlicensed.
It never keeps what you typed, so a key or email address is never saved into a
composition.
Everything you can type, and what each status means, is on the Licence field page.