Flex Image Glitch β‘π ‘π π £π
Five different flavors of digital breakage, on demand
- images
- opt_feature
- IMAGE
This is the pack's do-everything glitch effect, and it's genuinely one of the richer nodes here - five distinct glitch styles, each with its own character, and the whole thing can be driven by a reactive Feature so the corruption intensifies with a beat, a motion spike, or anything else you've extracted elsewhere in RyanOnTheInside's system.
The five glitch types
glitch_type is the first decision to make, because it changes what the rest of the parameters actually do: digital gives modern RGB-shift-and-block-displacement artifacts (the "corrupted video file" look); analog simulates old CRT/tape issues - scan lines, ghosting, vertical hold problems; compression mimics JPEG-style block corruption and quantization artifacts; wave applies smooth, layered wave-based distortion rather than hard breakage; corrupt scatters random line and block corruption for a more chaotic, data-loss feel.
intensity (0β1, default 0.5) is the overall strength across all five types. Beyond that, the shared numeric parameters lean toward digital/compression-style effects: block_size (8β128) sets how large the corrupted blocks are - bigger blocks read as more "chunky," smaller ones as finer static; wave_amplitude and wave_frequency control the height and speed of wave-based displacement, most relevant to wave but layered into others too; corruption_amount governs how often and how severely corruption artifacts appear; and time_seed (0β10000) fixes the random pattern used for corruption - the same seed reproduces the same glitch shapes, which matters if you need a repeatable look across renders.
Feature modulation
feature_param picks which single parameter a connected feature drives: intensity, block_size, wave_amplitude, wave_frequency, corruption_amount, time_seed, or None. Driving time_seed with a feature is worth calling out specifically - since the seed determines the glitch pattern, modulating it makes the corruption shapes themselves change over time rather than just getting stronger or weaker, which reads very differently from modulating intensity. feature_mode (relative/absolute), feature_threshold, and strength behave as they do across the rest of the Flex family.
Inputs and outputs that matter
images- required.glitch_type- decide this first; it reframes what every other setting is doing.intensity- the fastest way to dial the effect up or down once you've picked a type.opt_feature(optional) - for reactive glitching; try targetingtime_seedfor pattern variation instead of justintensityfor strength.
Output is a single IMAGE.
How to install it
Via ComfyUI Manager, search "RyanOnTheInside." Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/ryanontheinside/ComfyUI_RyanOnTheInside
cd ComfyUI_RyanOnTheInside
pip install -r requirements.txt
then restart. Pure image processing - no model download, no external service.
Common issues & troubleshooting
Effect looks nothing like what you expected. The five glitch_type options are genuinely different algorithms, not variations on a theme - if you picked wave expecting hard block corruption, or analog expecting sharp RGB splits, you'll be disappointed by a node that's actually working correctly. Cycle through all five on the same frame once to see what each actually produces before committing to a look.
Same glitch pattern repeats even though you want variation. That's time_seed sitting fixed. Either randomize it manually per run, or drive it with a feature so it changes across your sequence instead of staying locked to one pattern.
Effect is too subtle at low intensity but jumps too far at higher values. intensity interacts with the type-specific parameters (block_size, corruption_amount, etc.) rather than being a clean linear dial on its own - if the jump feels abrupt, try holding intensity moderate and adjusting the type-specific parameter instead for finer control.
Inputs (13)
| Name | Type | Default | Description |
|---|---|---|---|
| strength | FLOAT | 1.000β1 | Overall strength of the effect (0.0 to 1.0) Higher values create more dramatic changes, while lower values are more subtle. |
| feature_threshold | FLOAT | 0.000β1 | Minimum feature value to trigger the effect (0.0 to 1.0) Only applies the effect when the feature value exceeds this threshold. Lower values make the effect more sensitive, higher values make it more selective. |
| feature_param | COMBO | Choose which parameter to modulate: - intensity: Dynamically adjust overall glitch strength - block_size: Dynamically adjust artifact size - wave_amplitude: Dynamically adjust wave distortion - wave_frequency: Dynamically adjust wave patterns - corruption_amount: Dynamically adjust glitch frequency - time_seed: Dynamically change random patterns - None: No parameter modulation | |
| feature_mode | COMBO | relative | How to apply the feature modulation: - relative: Changes are centered around the original value - absolute: Changes scale directly from zero to the maximum |
| images | IMAGE | Input image sequence to be processed (IMAGE type) | |
| glitch_type | COMBO | digital | Type of glitch effect to apply: - digital: Modern digital artifacts with RGB shifts and block displacement - analog: Classic TV distortion with scan lines, ghosting, and vertical hold issues - compression: JPEG-like artifacts with block corruption and quantization - wave: Smooth wave-based distortions with multiple harmonics - corrupt: Random data corruption with line and block artifacts |
| intensity | FLOAT | 0.500β1 | Overall strength of the glitch effect. Higher values create more pronounced distortions (0.0 to 1.0) |
| block_size | INT | 328β128 | Size of blocks for digital glitches and compression artifacts. Larger sizes create more visible blocks (8 to 128) |
| wave_amplitude | FLOAT | 0.100β1 | Height of wave distortions. Controls the magnitude of wave-based displacement (0.0 to 1.0) |
| wave_frequency | FLOAT | 5.00.1β20 | Frequency of wave patterns. Higher values create more rapid oscillations (0.1 to 20.0) |
| corruption_amount | FLOAT | 0.100β1 | Probability and intensity of corruption artifacts. Affects how often and how severely glitches occur (0.0 to 1.0) |
| time_seed | INT | 00β10000 | Seed for random glitch generation. Same seed produces consistent glitch patterns (0 to 10000) |
| opt_featureopt | FEATURE | Optional feature input for modulation Connect any feature node here to control the effect. Features can come from audio, motion, color, or other sources. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | β |