Nodes/ComfyUI-VideoTransition/Video Glitch Art Transition
ComfyUI Node

Video Glitch Art Transition

Cyberpunk glitch cuts — signal interference, data moshing, pixel sorting, matrix rain

By yichengup·Created 11 months ago·Updated 11 months ago· 25
Video Glitch Art Transition
  • video1
  • video2
  • video
glitch_style
total_frames36
fps24
glitch_intensity1.00
corruption_rate0.30
scanline_frequency5.00
noise_amount0.20
digital_artifactstrue
color_bleedingtrue
screen_teartrue
use_gputrue
batch_size6
background_color#000000
width640
height640
quality90

The glitch transition is the pack's cyberpunk centerpiece, and it's the one people usually discover first. Instead of a clean cut, video1 dissolves into static, scanlines, crushed data blocks, RGB bleed - the whole VHS-melted-in-a-storm aesthetic - and reassembles as video2. Four distinct looks: signal_interference, data_moshing, pixel_sorting, and matrix_rain. It's theatrical and it's overused, which is exactly why it's popular for intros and bass drops. If your edit already has this aesthetic everywhere, skip it; if you need one tasteful digital-breakdown moment, this is your node.

How it works

This is the WebGL branch - the most demanding renderer in the pack. Frames go into a headless Chromium page as base64, and the effects run as WebGL/GLSL shaders in the browser rather than CSS: signal_interference is classic static + scanline tearing, data_moshing crushes and blocks the pixels like a broken codec, pixel_sorting rearranges rows of pixels by brightness (that streaky digital smear), and matrix_rain is green katakana rain over the cut. Note the use_gpu default here is true - these shaders want the GPU, and they're the pack's most resource-hungry nodes.

Inputs and outputs that matter

  • video1, video2 - the two clips.
  • glitch_style - the four-way enum. This is the whole show; pick the mood first.
  • glitch_intensity (0.1–3) - how violent the disruption is.
  • corruption_rate (0.1–0.8) - how much of the frame is corrupted at the peak.
  • scanline_frequency (1–20) - density of the scanlines.
  • noise_amount (0–0.5) - static/grain level.
  • digital_artifacts, color_bleeding, screen_tear - three toggles for extra crushing, RGB fringing, and horizontal tearing. All default on; turn them down if it gets messy.
  • total_frames (4–120, default 36), fps (default 24) - glitches read best short and violent.
  • use_gpu, batch_size, background_color, width/height (up to 3840), quality.

Output is video - an IMAGE batch; feed it to VHS_VideoCombine or ImageBatch to export.

Installing it

Same pack. ComfyUI Manager → "VideoTransition", or:

cd ComfyUI/custom_nodes
git clone https://github.com/yichengup/ComfyUI-VideoTransition
cd ComfyUI-VideoTransition
pip install -r requirements.txt
playwright install chromium

Chromium is required - WebGL runs inside the headless browser.

Common issues

  • Missing Chromium crash - playwright install chromium (with --mirror=https://registry.npmmirror.com behind the GFW).
  • Slow render / high VRAM - WebGL + GPU + screenshots adds up. If it's chugging, drop fps/duration first, then total_frames, and consider use_gpu off (Swiftshader software rendering - slower but predictable).
  • Glitch too chaotic to see the cut - back glitch_intensity off toward 1 and shorten total_frames. The effect lands when it's a flash, not a feature.
  • Black background bleeding through - on matrix_rain especially, the background_color shows between the falling glyphs; set it to match your video.
CategoryVideoTransition

Inputs (18)

NameTypeDefaultDescription
video1IMAGE
video2IMAGE
glitch_styleCOMBO4 options: signal_interference, data_moshing, pixel_sorting, matrix_rain
total_framesINT364–120
fpsINT2415–60
glitch_intensityoptFLOAT1.000.1–3
corruption_rateoptFLOAT0.300.1–0.8
scanline_frequencyoptFLOAT5.001–20
noise_amountoptFLOAT0.200–0.5
digital_artifactsoptBOOLEANtrue
color_bleedingoptBOOLEANtrue
screen_tearoptBOOLEANtrue
use_gpuoptBOOLEANtrue
batch_sizeoptINT61–15
background_coloroptSTRING#000000
widthoptINT640640–3840
heightoptINT640360–2160
qualityoptINT9060–100

Outputs (1)

NameTypeDescription
videoIMAGE