Nodes/VeoComfyUI/Veo Extend Video (Ace Data Cloud)
ComfyUI Node

Veo Extend Video (Ace Data Cloud)

Two models, one job — make the clip longer

By AceDataCloud·Created 3 days ago·Updated 2 days ago· 0
Veo Extend Video (Ace Data Cloud)
    • status
    • task_id
    • video_url
    • trace_id
    ◄video_id►
    ◄modelveo31-fast►
    ◄prompt►
    ◄aspect_ratio16:9►
    ◄resolutiondefault►

    Veo clips are short. Genuinely short - seconds, not minutes - and no amount of prompting changes that, because length is a product decision, not a parameter. Extend is the escape hatch: it takes a video you already generated and continues it, keeping the look and motion going.

    It's also the pickiest node in the pack. Where the video-submission nodes accept four model choices and four resolutions, Extend accepts two of each, and the two aren't the same sets.

    How it works

    It POSTs to a different endpoint than the generation nodes - /veo/extend rather than /veo/videos - with video_id, model and async: true, and gets a task ID back like everything else here. The continuation is a fresh render conditioned on the tail of your existing clip, so it's a new paid job, not a free "append frames" operation.

    One implementation detail worth knowing because it tells you what's genuinely optional: the client only includes prompt in the request if it's non-empty, and only includes aspect_ratio if you moved it off 16:9. So a bare extend with no direction is legal. Veo will just keep going on its own.

    The inputs

    • video_id - the ID of the video to continue, not its URL. The client rejects a URL outright with An existing Veo video ID is required; do not enter a URL, which is a nicer failure than a confusing remote error. The nodes in this pack hand you a task_id; the video's own ID is what Ace records against the completed task, so grab it from there or from the console.
    • model - veo31-fast or veo31, default veo31-fast. That's all that's allowed. Veo 3 models can't extend, and the client will tell you so.
    • prompt - multiline, empty by default. Optional here, unlike the generation nodes. Use it when you want the continuation to head somewhere specific.
    • aspect_ratio - 16:9 or 9:16.
    • resolution - default, 720p, 1080p. Note there's no 4k and no gif in this list; the enum is its own thing, and asking for 4k won't get you anywhere.

    Outputs are the pack-standard four: status, task_id, video_url, trace_id. A successful submit comes back pending with an empty video_url - feed task_id to Veo Retrieve Task and get the finished URL that way, then into Veo Load Video if you want a file.

    Install and key

    ComfyUI Manager → Custom Nodes → search Veo → confirm publisher acedatacloud and package Veo by Ace Data Cloud → install, restart. Source route:

    cd /path/to/ComfyUI/custom_nodes
    git clone https://github.com/AceDataCloud/VeoComfyUI.git
    cd VeoComfyUI && python -m pip install -r requirements.txt
    

    requests is the only dependency - no models to download, no GPU needed. This pack wants ComfyUI 0.39.0+ (native VIDEO type), and it reads its credential from the environment of the running process:

    export ACEDATACLOUD_API_KEY='paste-your-key-here'
    python main.py
    

    Where people get burned

    The video-ID-versus-URL confusion is the number one offender, mostly because the field sits right next to a URL field in other nodes. Remember: generation nodes give you a task_id; extend, get-1080p, upsample and reshoot all want a video ID. Pasting the CDN link never works.

    Second, a chain problem the README is explicit about. Extend happily accepts a previously extended result, so you can stack continuations - but the other editing nodes won't touch that output. Edit Objects and Reshoot require an original Veo video ID, so once you've extended, the clip is off the menu for those two. If you're planning to erase something from the background, do it before you extend.

    And the standing hazard of this whole pack: it's a paid submission node marked as an output node, so it runs on Queue Prompt even with nothing wired downstream. Mute it while you're editing the graph. When a job looks stuck, retrieve the same task ID instead of resubmitting - nothing in this pack retries a paid call for you.

    CategoryAce Data Cloud/Veo

    Inputs (5)

    NameTypeDefaultDescription
    video_idSTRING—
    modelCOMBOveo31-fast2 options: veo31-fast, veo31
    promptSTRING—
    aspect_ratioCOMBO16:92 options: 16:9, 9:16
    resolutionCOMBOdefault3 options: default, 720p, 1080p

    Outputs (4)

    NameTypeDescription
    statusSTRING—
    task_idSTRING—
    video_urlSTRING—
    trace_idSTRING—