Nodes/ComfyUI Web Viewer/VIDEO Web Viewer @ vrch.ai
ComfyUI Node

VIDEO Web Viewer @ vrch.ai

Play your generated video in a popped-out browser window

By VrchStudio·Created 2 years ago·Updated 18 days ago· 356
VIDEO Web Viewer @ vrch.ai
    • URL
    filename
    channel1
    server127.0.0.1:8188
    sslfalse
    refresh_interval5000
    server_messages
    save_settingsfalse
    window_width1280
    window_height960
    show_urlfalse
    dev_modefalse
    extra_params
    url

    ComfyUI has a built-in preview, but when you're doing live work - a VJ set, an installation, showing a client - you don't want your video squished into the workflow canvas. VrchVideoWebViewerNode pops a separate browser window that plays a video file served from your ComfyUI machine, on any device with a browser. It's the video leg of the pack's "real-time interactive art" identity, and the README even ships an example that adds sound, so this is built for more than silent test clips.

    What it does

    The one field you must set is filename - the video file (mp4 or whatever your pipeline outputs) it should play. The rest is the same control set the 3D viewer uses:

    • Where it connects: server (default 127.0.0.1:8188) and ssl for HTTPS. On another device, this has to point at the machine running ComfyUI.
    • How it refreshes: refresh_interval (1–10000 ms, default 5000) is how often the viewer checks for a new file. For a live loop where you're regenerating clips on a queue, drop this low; for a static playback, leave it high so you're not polling constantly.
    • The window: window_width / window_height (defaults 1280×960), save_settings to keep your window setup, show_url to display the address, dev_mode for browser devtools, and extra_params / url for extra query parameters or a full URL override.

    It outputs URL (the address the video plays from) and is an output node - the display step at the end of a branch. Grab that URL if you want to log where a clip ended up or pass it to something else.

    Why you'd reach for it

    Two honest use cases. First, the obvious live one: paired with the pack's real-time control nodes (MIDI, gamepad, OSC), it's the output surface for interactive video - generate, play, regenerate. Second, the sneaky useful one: refresh_interval polling means you can point it at a directory your pipeline keeps writing to and treat it as a simple "latest file player." The README's example_web_viewer_004_video_web_viewer_video_with_sfx.json shows video-plus-audio, which is where this node shines over the flat preview.

    Installing it

    Shared pack install:

    cd ComfyUI/custom_nodes
    git clone https://github.com/VrchStudio/comfyui-web-viewer
    pip install -r comfyui-web-viewer/requirements.txt
    

    Or search ComfyUI Web Viewer in ComfyUI Manager and restart. No extra models.

    Troubleshooting

    These are the pack's two famous ones, straight from the README. Blank viewer in Chrome? Add your ComfyUI server's IP under chrome://flags/#unsafely-treat-insecure-origin-as-secure - Chrome blocks the insecure http origin. CORS error mentioning a host mismatch? Relaunch ComfyUI with --enable-cors-header. And if audio is missing from a video that should have sound, that's the FFmpeg path issue the README covers: you need the FFmpeg command-line tool on PATH and the ffmpeg-python package, and if you see module 'ffmpeg' has no attribute 'input', you've got the wrong ffmpeg package installed - uninstall it and reinstall the pack's requirements.

    Categoryvrch.ai/viewer

    Inputs (13)

    NameTypeDefaultDescription
    filenameSTRING
    channelCOMBO18 options: 1, 2, 3, 4, 5, 6, +2
    serverSTRING127.0.0.1:8188
    sslBOOLEANfalse
    refresh_intervalINT50001–10000
    server_messagesSTRING
    save_settingsBOOLEANfalse
    window_widthINT1280100–10240
    window_heightINT960100–10240
    show_urlBOOLEANfalse
    dev_modeBOOLEANfalse
    extra_paramsSTRING
    urlSTRING

    Outputs (1)

    NameTypeDescription
    URLSTRING