Nodes/Protoface/Protoface Pika 2.2 · Image to Video
ComfyUI Node

Protoface Pika 2.2 · Image to Video

The cheapest way to make a still move

By protoface-ai·Created 22 days ago·Updated 13 days ago· 0
Protoface Pika 2.2 · Image to Video
    • video
    • files
    • run id
    ◄prompt►
    ◄image▾►
    ◄duration5►
    ◄size1280*720►
    ◄generation_id0►
    ◄request_scope►

    What it's good at

    Animating an image you already like. You put a still in, add a prompt describing the motion, and five seconds later you have a clip. Pika's niche has always been fast, cheap, slightly-stylised motion rather than photoreal cinema - the kind of thing you use for a social post, a looping product shot, or a quick beat in an animatic.

    Compared to the Hailuo or MiniMax nodes in this pack, this is the low-stakes option. Cheaper, less ambitious, and it actually exposes duration and size instead of fixing them. If you're learning what these video APIs feel like before committing real budget to a hero shot, start here.

    The usual disclaimer applies and it's not decoration: this is a network call with your key attached. Your image leaves your machine, the filter is Pika's, and each queue is money. Nothing runs locally, so a Pika node in a workflow adds zero VRAM pressure - which also makes it the one way to animate something on a laptop with a 6GB card.

    The inputs

    image is the still to animate - Load Image, straight in. One asset per call; batches get rejected by the adapter with "expects one asset; split the image/audio batch first."

    prompt describes motion and camera. The frame already establishes the scene, so spend your words on verbs: "she turns to camera, hair moves, slow push in."

    duration is a picker defaulting to 5 - choose from the listed values.

    size is a pixel picker here, defaulting to 1280*720. Worth flagging because this pack is inconsistent by design: some nodes use size for aspect ratio, this one means actual dimensions. Read the tooltip before you assume.

    generation_id and request_scope close it out. Fixed generation_id = reuse or resume the same paid job; incremented = new generation, and there's no seed field so you can't re-roll the same clip on purpose. request_scope is auto-assigned in the UI and must be supplied by hand in headless workflows.

    Outputs

    video - a native VIDEO and a list, so several results flow into Save Video or Video Combine without a loop node. files holds the untouched originals as PROTOFACE_FILE (this is what Protoface Save File writes), and run id is the string that identifies the job in your Protoface account - also the input to Protoface Resume Run when a run needs recovering.

    Install

    cd ComfyUI/custom_nodes
    git clone --branch v0.1.0 --depth 1 https://github.com/protoface-ai/protoface-comfyui.git protoface
    python -m pip install -r protoface/requirements.txt
    

    ComfyUI 0.41.0+, Python 3.10+, and the four dependencies httpx, jsonschema, Pillow, av>=14. Manager users can skip the clone: search Protoface, install protoface-nodes, restart ComfyUI, reload the browser. Then the Protoface button in the lower-right, and your key.

    There are no model files to fetch - that's the whole idea - so if a tutorial tells you to download something for this node, it's about a different pack.

    Where people get bitten

    Framing. Pika animates what it's given, including a bad crop, so do your reframing before you queue rather than paying for a clip you'll crop in post.

    Portrait vs landscape. size defaults to 1280x720 (landscape); feeding a portrait still and leaving the default gets you a letterboxed or stretched result faster than you'd expect.

    And the recovery pattern that matters on every node in this pack: browser disconnect or timeout means a job that still exists. Requeue with the same generation_id, or resume with run id - don't increment the ID, and don't delete ~/.cache/protoface-comfyui, which is where the record of the submission lives. Cancels are best effort; there's no refund promise attached to hitting stop.

    CategoryProtoface/Video/pika

    Inputs (6)

    NameTypeDefaultDescription
    promptSTRINGThe positive prompt for the generation.
    imageCOMBOA public URL, a data URI, or an asset id.
    durationCOMBO5The duration of the generated media in seconds.
    sizeCOMBO1280*720The size of the generated media in pixels (width*height).
    generation_idINT00–9007199254740991Keep fixed to reuse/resume this paid job. Increment for a fresh paid generation; independent of the model seed.
    request_scopeSTRINGAutomatically assigned per node. Headless clients must supply a stable unique workflow/node ID. This is not a secret.

    Outputs (3)

    NameTypeDescription
    videoVIDEO—
    filesPROTOFACE_FILE—
    run idSTRING—