Nodes/ComfyUI VIDU/Video Downloader (VIDU)
ComfyUI Node

Video Downloader (VIDU)

Save the clip before the link dies

By 1zhangyy1·Created 2 years ago·Updated about a year ago· 10
Video Downloader (VIDU)
    • local_path
    video_url
    output_pathoutputs

    This one's simple on purpose: give it a URL, it saves the file to disk. But the reason it exists as its own node, tacked onto a pack full of AI video generators, is less obvious - and worth knowing, because it explains why you'll want this node in almost every graph you build with this pack.

    What it's for

    comfyui-vidu-nodes wraps Vidu's cloud video API - Text to Video, Image to Video, Character to Video, Start-End to Video, and an upscale node, all of which run entirely on Vidu's servers and hand you back a hosted URL when the job finishes. None of those nodes save anything locally. And per the pack's own README, that hosted URL is only valid for one hour after generation. Miss the window and the clip is gone, full stop - you'd have to burn another generation to get it back.

    So Video Downloader is the mandatory last step, not an optional convenience. Wire the video_url output from any of the pack's generator or upscale nodes into this node's video_url input, and it pulls the file down before the clock runs out.

    The inputs and outputs that matter

    There are exactly two fields, both required, and no optional ones:

    • video_url - the URL to fetch. In practice this is always the video_url output of an upstream Vidu node in the same graph, though nothing in the node stops you from pointing it at any plain HTTP video URL if you have another use for it.
    • output_path - where to save it, defaulting to outputs. Relative paths resolve against wherever your ComfyUI process is running from, so if you're not sure where "outputs" landed, that's why.

    The single output, local_path, is the path to the file now sitting on your disk. From here it's a normal local video - load it into whatever comes next in your graph (a preview node, a frame extractor, another processing step) exactly like you would any other video file.

    Installing it

    There's nothing specific to this node - it installs with the rest of the pack. In ComfyUI Manager, search ComfyUI VIDU, install, restart. Or manually:

    cd ComfyUI/custom_nodes
    git clone https://github.com/1zhangyy1/comfyui-vidu-nodes
    

    Unlike a lot of custom node packs, there's no model to download and no heavy Python dependency chain to fight with here - the pack does its actual work by calling Vidu's REST API, so this node in particular is just an HTTP download wrapped in a ComfyUI-shaped interface.

    Where people get stuck

    Most of the trouble that shows up with this node isn't the node's fault - it's timing. Miss the one-hour window on a video_url from an upstream Vidu node (interrupted queue, a run you paused to tweak something else, a workflow that sat idle) and the download will simply fail because the link is already dead on Vidu's end; there's nothing to recover, you generate again. The pack's console logging uses a [Vidu Video Downloader] prefix and will show you the actual URL it tried to fetch, which is the fastest way to confirm whether you're looking at a genuinely expired link versus a bad path or a network hiccup. Beyond that, the only other thing to double check is output_path permissions - if ComfyUI's process doesn't have write access to wherever you pointed it, you'll get a filesystem error rather than anything Vidu-specific.

    CategoryVIDU

    Inputs (2)

    NameTypeDefaultDescription
    video_urlSTRING
    output_pathSTRINGoutputs

    Outputs (1)

    NameTypeDescription
    local_pathSTRING