ComfyUI Node

XVideoGet

Pull the latest video out of XDataHub and straight into your graph

By Xz3r0-M·Created 8 months ago·Updated about 9 hours ago· 13
XVideoGet
    • video
    media_ref

    XVideoGet is the video twin of XStringGet: the receiving end of the pack's XDataHub handshake, but for video files. When you send a video from the XDataHub panel - the floating browser window this pack adds to ComfyUI - XVideoGet loads that file and outputs it as a proper VIDEO object you can wire into the rest of your graph, most naturally into the pack's own XVideoSave to re-encode it.

    The practical use is video-in, video-out pipelines: grab a clip you've got sitting in XDataHub's library, feed it through any video-to-video processing you're running, and save the result. Without a node like this you'd be digging through input folders and hacking paths together - this keeps the whole thing inside the graph.

    How it works

    The mechanism mirrors XStringGet but with a file lookup in the middle. There's a single input, media_ref, which is a hidden, socketless string - the XDataHub extension fills it in behind the scenes when you send a video from the panel. When the node runs:

    1. If media_ref is empty, it outputs nothing (None).
    2. It resolves the media ref to an actual path on disk. Invalid refs are rejected with a warning rather than a crash.
    3. If the file no longer exists, it logs a warning and outputs nothing.
    4. Otherwise it loads the file as a VIDEO via ComfyUI's video API and passes it out.

    So the pipeline is: panel → hidden media_ref → path resolution → VIDEO object. The one output, video, is what you wire downstream.

    The input that matters

    Just one: media_ref, and you won't touch it - it's auto-populated by the extension. Everything happens from the XDataHub panel: browse to a video, send it, and this node's output updates. If you're not committed to using XDataHub, this node has no manual entry point, which makes it a hard pass on its own.

    Installing

    Part of ComfyUI-Xz3r0-Nodes. ComfyUI Manager → search "ComfyUI-Xz3r0-Nodes" → install, or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Xz3r0-M/ComfyUI-Xz3r0-Nodes.git
    cd ComfyUI-Xz3r0-Nodes
    pip install -r requirements.txt
    

    Restart ComfyUI so the web extension loads. No models to download. One real system requirement: the pack needs FFmpeg on your PATH for XDataHub's video thumbnail caching to work. Without it, the panel won't show video previews and the whole send-a-video flow gets awkward - install FFmpeg and make sure ffmpeg is callable from a terminal before going deep here.

    Gotchas

    • The node depends on the file still existing on disk. Delete the source clip and the node quietly stops outputting (with a warning) instead of erroring.
    • No media_ref sent → no output (None), same empty-hand behavior as XStringGet.
    • It doesn't copy or transform anything itself - it's a loader. Encoding, metadata, and saving are XVideoSave's job, so the natural pair is XVideoGet → (process) → XVideoSave.
    Category♾️ Xz3r0/XDataHub

    Inputs (1)

    NameTypeDefaultDescription
    media_refSTRINGXDataHub media ref (empty means no output)

    Outputs (1)

    NameTypeDescription
    videoVIDEOLatest video received from XDataHub