{
  "id": "43f0216d-f2c5-4533-a3c8-add5d501c2a5",
  "revision": 0,
  "last_node_id": 9,
  "last_link_id": 6,
  "nodes": [
    {
      "id": 1,
      "type": "RunwayAleph2VideoToVideoNode",
      "pos": [
        480,
        3530
      ],
      "size": [
        399.984375,
        315.125
      ],
      "flags": {
        "collapsed": false
      },
      "order": 5,
      "mode": 0,
      "inputs": [
        {
          "name": "video",
          "type": "VIDEO",
          "link": 2
        },
        {
          "name": "keyframes",
          "shape": 7,
          "type": "RUNWAY_ALEPH2_KEYFRAME",
          "link": null
        },
        {
          "name": "prompt_images",
          "shape": 7,
          "type": "RUNWAY_ALEPH2_PROMPT_IMAGE",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "VIDEO",
          "type": "VIDEO",
          "links": [
            6
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.24.0",
        "Node name for S&R": "RunwayAleph2VideoToVideoNode"
      },
      "widgets_values": [
        "Change the scene to a surfing scene and replace the characters with surfers",
        2374599215,
        "randomize",
        "low"
      ],
      "color": "#432",
      "bgcolor": "#653"
    },
    {
      "id": 2,
      "type": "RunwayAleph2PromptImageNode",
      "pos": [
        150,
        4560
      ],
      "size": [
        300,
        159.140625
      ],
      "flags": {},
      "order": 4,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 1
        },
        {
          "name": "prompt_images",
          "shape": 7,
          "type": "RUNWAY_ALEPH2_PROMPT_IMAGE",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "prompt_images",
          "type": "RUNWAY_ALEPH2_PROMPT_IMAGE",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.24.0",
        "Node name for S&R": "RunwayAleph2PromptImageNode"
      },
      "widgets_values": [
        "Absolute time (seconds)",
        0
      ]
    },
    {
      "id": 3,
      "type": "LoadImage",
      "pos": [
        -170,
        4560
      ],
      "size": [
        289.96875,
        369.984375
      ],
      "flags": {},
      "order": 0,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            1
          ]
        },
        {
          "name": "MASK",
          "type": "MASK",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.24.0",
        "Node name for S&R": "LoadImage"
      },
      "widgets_values": [
        "example.png",
        "image"
      ]
    },
    {
      "id": 4,
      "type": "LoadVideo",
      "pos": [
        -180,
        3530
      ],
      "size": [
        619.984375,
        489.984375
      ],
      "flags": {},
      "order": 1,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "VIDEO",
          "type": "VIDEO",
          "links": [
            2
          ]
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.24.0",
        "Node name for S&R": "LoadVideo"
      },
      "widgets_values": [
        "sunset_city_skateboarder.mp4",
        "image"
      ]
    },
    {
      "id": 5,
      "type": "RunwayAleph2KeyframeNode",
      "pos": [
        150,
        4140
      ],
      "size": [
        300,
        159.140625
      ],
      "flags": {},
      "order": 6,
      "mode": 0,
      "inputs": [
        {
          "name": "image",
          "type": "IMAGE",
          "link": 5
        },
        {
          "name": "keyframes",
          "shape": 7,
          "type": "RUNWAY_ALEPH2_KEYFRAME",
          "link": null
        }
      ],
      "outputs": [
        {
          "name": "keyframes",
          "type": "RUNWAY_ALEPH2_KEYFRAME",
          "links": []
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.24.0",
        "Node name for S&R": "RunwayAleph2KeyframeNode"
      },
      "widgets_values": [
        "Absolute time (seconds)",
        0
      ]
    },
    {
      "id": 6,
      "type": "LoadImage",
      "pos": [
        -180,
        4140
      ],
      "size": [
        289.96875,
        369.984375
      ],
      "flags": {},
      "order": 2,
      "mode": 0,
      "inputs": [],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            5
          ]
        },
        {
          "name": "MASK",
          "type": "MASK",
          "links": null
        }
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.24.0",
        "Node name for S&R": "LoadImage"
      },
      "widgets_values": [
        "example.png",
        "image"
      ]
    },
    {
      "id": 7,
      "type": "SaveVideo",
      "pos": [
        910,
        3530
      ],
      "size": [
        630,
        551.8125
      ],
      "flags": {
        "collapsed": false
      },
      "order": 7,
      "mode": 0,
      "inputs": [
        {
          "name": "video",
          "type": "VIDEO",
          "link": 6
        }
      ],
      "outputs": [],
      "properties": {
        "cnr_id": "comfy-core",
        "ver": "0.24.0",
        "Node name for S&R": "SaveVideo"
      },
      "widgets_values": [
        "video/Runway_Aleph2",
        "auto",
        "auto"
      ]
    },
    {
      "id": 8,
      "type": "MarkdownNote",
      "pos": [
        -970,
        3520
      ],
      "size": [
        720,
        1590.5625
      ],
      "flags": {},
      "order": 3,
      "mode": 0,
      "inputs": [],
      "outputs": [],
      "properties": {},
      "widgets_values": [
        "Runway Aleph 2 is Runway's flagship **in-context video editing** model. It edits footage you already have while **preserving the original motion and timing** — no reshoots, no frame-by-frame retouching.\n\nTypical uses:\n- **Restyle**: dark anime look, seasonal or lighting changes\n- **Change elements**: product color, hairstyle, clothing, add/remove objects\n- **Reframe**: tighter shot on a subject at the same moment\n- **Multi-shot edits**: apply a change across relevant cuts in one clip\n\n> Only changes what you ask for; background, lighting, and untouched details stay as they were.\n\n## Basic workflow (text prompt only)\n\n1. **Load Video** — source clip (2–30 seconds, ≤30 fps)\n2. **Runway Aleph2 Video to Video** — English prompt describing the edit (1–1000 characters)\n3. **Save Video** — write the result\n\nRequires a logged-in ComfyUI `comfy.org` API account (Partner node).\n\n## Optional: timed guidance images (per-moment / per-frame)\n\nBesides text, you can attach up to **5** reference images at specific moments on the timeline. Use **one or the other** — do not connect both `keyframes` and `prompt_images`:\n\n### Keyframes — anchored to the **input (source) video**\n\n`Runway Aleph2 Keyframe` → main node `keyframes`\n\nPlace a guidance image at a point on the **original** timeline so the edit near that frame follows that look (edit one frame, carry through the clip).\n\n**Timing modes:**\n| Mode | Meaning | Example |\n|------|---------|--------|\n| **Absolute time (seconds)** | Seconds from the start | `2.5` = at 2.5s |\n| **Fraction of duration (0.0–1.0)** | Fraction of clip length | `0.5` = midpoint |\n\n### Prompt images — anchored to the **output (result) video**\n\n`Runway Aleph2 Prompt Image` → main node `prompt_images`\n\nSpecify what the **generated** video should look like at a moment on the **output** timeline (useful to lock in a look at one frame before generating the full clip).\n\n**Position modes:** same two options as above, but relative to the **output** video.\n\n### Chaining multiple guidance images\n\nFeed the previous node's `keyframes` or `prompt_images` output into the optional input of the next node of the same type. Chain up to 5 images.\n\n## Main node parameters\n\n| Parameter | Description |\n|-----------|-------------|\n| **prompt** | English description of the desired change |\n| **seed** | Random seed; `randomize` gives a new value each run |\n| **public_figure_threshold** | Public-figure moderation: `low` is less strict, `auto` is default |\n\n## Limits\n\n- Video **2–30 seconds**, frame rate **≤ 30 fps**; output resolution matches input\n- **Keyframes OR prompt images** — not both at once\n- At most **5** guidance images per type; absolute seconds must not exceed video duration"
      ],
      "color": "#222",
      "bgcolor": "#000"
    }
  ],
  "links": [
    [
      1,
      3,
      0,
      2,
      0,
      "IMAGE"
    ],
    [
      2,
      4,
      0,
      1,
      0,
      "VIDEO"
    ],
    [
      5,
      6,
      0,
      5,
      0,
      "IMAGE"
    ],
    [
      6,
      1,
      0,
      7,
      0,
      "VIDEO"
    ]
  ],
  "groups": [
    {
      "id": 1,
      "title": "Guidance Images (Optional)",
      "bounding": [
        -190,
        4070,
        650,
        869.984375
      ],
      "color": "#444",
      "flags": {}
    }
  ],
  "config": {},
  "extra": {
    "ds": {
      "scale": 0.4618358917865738,
      "offset": [
        1758.2133833671478,
        -2828.8377066867683
      ]
    },
    "frontendVersion": "1.45.15",
    "VHS_latentpreview": false,
    "VHS_latentpreviewrate": 0,
    "VHS_MetadataImage": true,
    "VHS_KeepIntermediate": true
  },
  "version": 0.4
}