Nodes/comfyui-byokey/BYOKey Runway Image to Video
ComfyUI Node

BYOKey Runway Image to Video

Runway Gen4 i2v, own key, no credit meter

By MeteorAndy·Created 4 months ago·Updated 3 months ago· 0
BYOKey Runway Image to Video
  • start_frame
  • output
api_key
base_urlhttps://api.dev.runwayml.com/v1
prompt
modelgen4_turbo
duration5
ratio1280:720
seed0
poll_interval10
max_wait600

Runway was doing image-to-video before most of the current crop existed, and Gen4 keeps it near the top of the "what do you mean it can hold a subject like that" pile. This node is the bring-your-own-key route to it from ComfyUI: feed it a start frame and a prompt, get a VIDEO out - no Comfy proxy, no prepaid credits, just your Runway key.

How it works. The classic pattern this whole pack is built on: POST a generation job to api.dev.runwayml.com/v1 (the default base_url, overridable for a relay) with your key as a Bearer token, then poll every poll_interval seconds until Runway reports the clip done, download the mp4, and wrap it in ComfyUI's native VIDEO type (comfy_api.latest.InputImpl.VideoFromFile). It lands on your canvas indistinguishable from an official API node's output.

The inputs that matter:

  • start_frame - the image that becomes your video's first frame. Wire in anything with an IMAGE output: a local sampler, an upscaler, even another cloud image node. This is the load-bearing input; the prompt only tells Runway what to do with the picture.
  • prompt - the motion instruction. "The camera slowly pushes in," "she turns and smiles," "leaves drift across frame" - describe the movement, not the scene (the scene is in the frame).
  • model - gen4_turbo (default) or gen3a_turbo. Gen4 is the current flagship; the older Turbo is faster and cheaper when you're exploring.
  • duration - 5 or 10 seconds. This is your cost lever as much as a creative one.
  • ratio - 8 presets (1280:720, 720:1280, 1104:832, 832:1104, 960:960, 1584:672, 768:1280, 1280:768). The two Turbo models support different subsets, so if a ratio errors out, switch models before troubleshooting anything else.
  • seed - genuinely honored here, so once you get a roll you like you can lock it in.

poll_interval and max_wait are the usual babysitters; the default 10-minute cap is enough for a 10-second Gen4 clip, but bump it if you're near the edge.

Output: one output (VIDEO) socket, into your usual video preview/save node.

Install. The whole pack is one clone:

cd ComfyUI/custom_nodes
git clone https://github.com/MeteorAndy/comfyui-byokey.git
# restart ComfyUI; nodes live under api/byokey/video

No models to download, no extra Python deps - ComfyUI's bundled torch, aiohttp, PIL, numpy and av cover it.

Gotchas. The i2v job is a minute or more; set expectations accordingly. start_frame is required - this node won't run text-only. And the usual fresh-pack hygiene: it's new enough that there's no community consensus behind it, so skim the source before handing it a key.

Categoryapi/byokey/video

Inputs (10)

NameTypeDefaultDescription
api_keySTRINGRunway API key (sent as Bearer token).
base_urlSTRINGhttps://api.dev.runwayml.com/v1Runway API base URL. Override for relays.
promptSTRINGText prompt for the generation.
start_frameIMAGEStart frame to be used for the video.
modelCOMBOgen4_turbo2 options: gen4_turbo, gen3a_turbo
durationCOMBO5Video duration in seconds.
ratioCOMBO1280:720Aspect ratio. gen4_turbo and gen3a_turbo support different ratios.
seedINT00–4294967295Random seed for generation.
poll_intervaloptINT101–120Seconds between status polls.
max_waitoptINT60060–3600Max seconds to wait for the task.

Outputs (1)

NameTypeDescription
outputVIDEO