Nodes/ComfyTV/Pattern
ComfyUI Node

Pattern

Render test cards, gradients, noise, and countdowns — the clip you didn't know you needed

By jtydhr88·Created 4 months ago·Updated about 7 hours ago· 1,057
Pattern
    • video
    ◄force_run_token0►
    ◄project_id►
    ◄parent_output_id0►
    ◄kindramp►
    ◄width1280►
    ◄height720►
    ◄fps24►
    ◄duration5.0►
    ◄color0#000000►
    ◄color1#FFFFFF►
    ◄p0_x0.00►
    ◄p0_y0.50►
    ◄p1_x1.00►
    ◄p1_y0.50►
    ◄interplinear►
    ◄softness0.00►
    ◄noise_scale64►
    ◄noise_octaves4►
    ◄noise_speed1.00►
    ◄seed7►
    ◄box_size64►
    ◄bar_intensity75►
    ◄wheel_gamma0.45►
    ◄wheel_rotate0►
    ◄count_styleseconds►
    ◄count_directiondown►

    Pattern is the node that synthesizes a clip from nothing - no input video required. Pick a kind, set a resolution, frame rate, and duration, and it renders a procedural clip on Run. It's the least glamorous thing in the VideoFX family and the one you'll be genuinely grateful for at 11pm when you need a background plate, a transition fill, or broadcast test bars.

    The kind dropdown is the whole personality of the node. Options include ramp (linear gradients, with two points p0_x/y → p1_x/y and an interp mode), radial, rectangle, noise / perlin (animated turbulence), colorbars and colorwheel (actual broadcast test patterns - SMPTE-style bars and a color wheel with bar_intensity, wheel_gamma, wheel_rotate), plus a countdown / count-up leader (count_style = seconds or frames, count_direction = down or up) for the front of a reel.

    The parameters by job

    • Common: width / height (up to 4096), fps, duration, color0 / color1, seed.
    • Ramp: p0_x/y, p1_x/y, interp, softness (how hard the transition edge is).
    • Noise: noise_scale, noise_octaves (1–8, more octaves = finer detail), noise_speed (how fast it animates).
    • Boxes: box_size for a rectangle grid.
    • Bars/wheel/count: bar_intensity, wheel_gamma, wheel_rotate, count_style, count_direction.

    No inputs, one output: video (COMFYTV_VIDEO).

    Where it earns its place

    Four genuinely useful jobs, per the pack's docs: backgrounds and mattes (a moving noise/turbulence source can drive other effects), broadcast test patterns when you're checking a pipeline or shooting a reference, a countdown leader before a clip, and a gradient you can key or composite against. It's also the fast way to make a placeholder clip to test an FX chain end-to-end without burning a generation model.

    Install

    Pack-wide:

    cd ComfyUI/custom_nodes
    git clone https://github.com/jtydhr88/ComfyTV
    

    Restart ComfyUI - Desktop/macOS users clone into the running instance by absolute path, verify __init__.py at the top level, and restart the backend rather than the browser tab. ComfyUI Manager finds it as "ComfyTV". Zero extra Python dependencies.

    No gotchas worth inventing here - it's a procedural generator, so there's no model download and no GPU load beyond the render itself. The one thing to remember: each kind uses only the parameters that apply to it, so a ramp ignores bar_intensity and so on. Set the kind first, then touch only the knobs that light up.

    CategoryComfyTV/Video

    Inputs (26)

    NameTypeDefaultDescription
    force_run_tokenINT00–2147483647Internal — bumped on Run to invalidate ComfyUI's input cache.
    project_idSTRINGInternal — populated by the projectStore on the frontend.
    parent_output_idINT00–2147483647Internal — lineage parent set by spawn handlers on the frontend.
    kindCOMBOramp12 options: ramp, radial, rectangle, noise, perlin, turbulence, +6
    widthINT128016–4096—
    heightINT72016–4096—
    fpsINT241–120—
    durationFLOAT5.00.5–120—
    color0STRING#000000—
    color1STRING#FFFFFF—
    p0_xFLOAT0.000–1—
    p0_yFLOAT0.500–1—
    p1_xFLOAT1.000–1—
    p1_yFLOAT0.500–1—
    interpCOMBOlinear4 options: linear, smooth, ease_in, ease_out
    softnessFLOAT0.000–1—
    noise_scaleINT644–512—
    noise_octavesINT41–8—
    noise_speedFLOAT1.000–10—
    seedINT70–99999—
    box_sizeINT642–1024—
    bar_intensityFLOAT751–100—
    wheel_gammaFLOAT0.450–4—
    wheel_rotateFLOAT0-180–180—
    count_styleCOMBOseconds2 options: seconds, frames
    count_directionCOMBOdown2 options: down, up

    Outputs (1)

    NameTypeDescription
    videoCOMFYTV_VIDEO—