Nodes/WanComfyUI/Wan Load Video (Ace Data Cloud)
ComfyUI Node

Wan Load Video (Ace Data Cloud)

Turning a CDN link into an actual VIDEO

By AceDataCloud·Created 3 days ago·Updated 2 days ago· 0
Wan Load Video (Ace Data Cloud)
    • video
    ◄media_url►

    Why this node exists

    Every node in this pack ends the same way: your prompt goes out to Ace Data Cloud's API, and what comes back is JSON full of https:// links. ComfyUI's video path doesn't speak URLs. It speaks the native VIDEO type. So you need an adapter, and this is it - the last five feet of an API workflow.

    Worth being clear about what it is not: it doesn't call the generation API, doesn't read your key, and doesn't need one. It's a downloader that produces a ComfyUI video object. The URL you feed it is the first_media_url output from Wan Retrieve Task, or any link on the Ace CDN.

    One small surprise in this snapshot: it's the only loader that registers. nodes.py also defines image and audio loaders, but they're gated behind MEDIA_TYPES = ('VIDEO',) and never reach the node menu. The README mentions image/audio/video decoding; what actually ships is video only.

    Inputs and output

    There is exactly one of each, which is refreshing.

    media_url is a required STRING - paste the completed CDN link. video (type VIDEO) is what comes out, and it wires into whatever native node in your install accepts a VIDEO input: core's own video save/preview nodes are the usual destination, or any custom node that declares the same type.

    How it actually works

    Before it touches the network, the node validates the URL: scheme must be https, the hostname must be in a four-entry allowlist (cdn.acedata.cloud, cdn.acedata2.cloud, platform.cdn.acedata.cloud, platform2.cdn.acedata.cloud), and there must be no credentials baked into the URL. Anything else dies as Media URL must be an Ace Data Cloud HTTPS CDN link.

    Then it streams the file with redirects disabled, a 10s connect / 90s read timeout, and three attempts with half-second backoff - up to a 128 MiB ceiling, checked from Content-Length first and then enforced while reading. Finally it hands the bytes to comfy_api.latest.VideoFromFile, which is where the VIDEO object comes from.

    Install

    Two ways, both pack-level:

    # ComfyUI Manager: search "Wan", confirm publisher acedatacloud,
    # package "Wan by Ace Data Cloud", install, restart.
    
    cd ComfyUI/custom_nodes
    git clone https://github.com/AceDataCloud/WanComfyUI
    python -m pip install -r requirements.txt
    

    The dependency list is tiny - requests and jsonschema. No model downloads, no CUDA, no 30 GB of safetensors. The README's other requirement does apply here: the native media loaders need ComfyUI 0.39.0 or newer.

    Where people get burned

    The allowlist is the big one. This is not a general-purpose video loader. Your own web server, Dropbox, Google Drive, a YouTube link - none of it passes. It has to be an Ace CDN link from a task you actually created.

    Redirects are refused. allow_redirects=False means a CDN link that 302s fails with an HTTP status error rather than following the hop. If it worked in a browser and not here, that's often why.

    128 MiB is the ceiling. Long or high-resolution takes can exceed it; the error names the limit, so at least you know.

    Don't paste a URL before the task is done. An empty media_url gets the author's own hint: Task is pending; retrieve the same task ID again. Poll with Wan Retrieve Task until status says succeeded, then connect first_media_url here.

    Old ComfyUI fails late. The comfy_api.latest import sits inside the decode function, so on a pre-0.39.0 install the pack installs happily and only errors when you queue the graph.

    CategoryAce Data Cloud/Wan

    Inputs (1)

    NameTypeDefaultDescription
    media_urlSTRING—

    Outputs (1)

    NameTypeDescription
    videoVIDEO—