{
  "config": {},
  "extra": {
    "VHS_KeepIntermediate": true,
    "VHS_MetadataImage": true,
    "VHS_latentpreview": false,
    "VHS_latentpreviewrate": 0,
    "ds": {
      "offset": [
        2846.6481624402472,
        1186.9250931833449
      ],
      "scale": 0.3135706191656881
    },
    "frontendVersion": "1.42.14",
    "ue_links": [],
    "workflowRendererVersion": "Vue-corrected"
  },
  "groups": [
    {
      "bounding": [
        636.0833435058594,
        100,
        1054.2587669146694,
        944.5034801612671
      ],
      "color": "#3f789e",
      "flags": {},
      "id": 1,
      "title": "LLM"
    },
    {
      "bounding": [
        -979.3073378611733,
        102.99771924751046,
        1590.8887888228949,
        580.4792451483988
      ],
      "color": "#3f789e",
      "flags": {},
      "id": 2,
      "title": "Reference Images"
    },
    {
      "bounding": [
        1743.702354166869,
        103.97690721824735,
        1274.2695394040284,
        519.2478888131525
      ],
      "color": "#3f789e",
      "flags": {},
      "id": 3,
      "title": "Seedance 2.0"
    }
  ],
  "id": "9994178c-856f-479e-8ba6-cda3daf4a117",
  "last_link_id": 662,
  "last_node_id": 365,
  "links": [
    [
      649,
      356,
      0,
      359,
      6,
      "IMAGE"
    ],
    [
      650,
      352,
      0,
      359,
      7,
      "IMAGE"
    ],
    [
      653,
      359,
      0,
      344,
      0,
      "VIDEO"
    ],
    [
      655,
      360,
      0,
      361,
      0,
      "STRING"
    ],
    [
      658,
      356,
      0,
      362,
      0,
      "IMAGE"
    ],
    [
      659,
      352,
      0,
      362,
      1,
      "IMAGE"
    ],
    [
      660,
      362,
      0,
      363,
      0,
      "IMAGE"
    ],
    [
      661,
      362,
      0,
      360,
      0,
      "IMAGE"
    ]
  ],
  "nodes": [
    {
      "flags": {
        "collapsed": false
      },
      "id": 344,
      "inputs": [
        {
          "link": 653,
          "localized_name": "video",
          "name": "video",
          "type": "VIDEO"
        },
        {
          "link": null,
          "localized_name": "filename_prefix",
          "name": "filename_prefix",
          "type": "STRING",
          "widget": {
            "name": "filename_prefix"
          }
        },
        {
          "link": null,
          "localized_name": "format",
          "name": "format",
          "type": "COMBO",
          "widget": {
            "name": "format"
          }
        },
        {
          "link": null,
          "localized_name": "codec",
          "name": "codec",
          "type": "COMBO",
          "widget": {
            "name": "codec"
          }
        }
      ],
      "mode": 0,
      "order": 5,
      "outputs": [],
      "pos": [
        2487.971893570905,
        177.5769072182475
      ],
      "properties": {
        "cnr_id": "comfy-core",
        "ue_properties": {
          "input_ue_unconnectable": {},
          "version": "7.7",
          "widget_ue_connectable": {}
        },
        "ver": "0.19.3"
      },
      "size": [
        520,
        362.5333251953125
      ],
      "type": "SaveVideo",
      "widgets_values": [
        "video/Seedance2.0_r2v",
        "auto",
        "auto"
      ]
    },
    {
      "flags": {},
      "id": 352,
      "inputs": [
        {
          "link": null,
          "localized_name": "image",
          "name": "image",
          "type": "COMBO",
          "widget": {
            "name": "image"
          }
        },
        {
          "link": null,
          "localized_name": "choose file to upload",
          "name": "upload",
          "type": "IMAGEUPLOAD",
          "widget": {
            "name": "upload"
          }
        }
      ],
      "mode": 0,
      "order": 0,
      "outputs": [
        {
          "links": [
            650,
            659
          ],
          "localized_name": "IMAGE",
          "name": "IMAGE",
          "type": "IMAGE"
        },
        {
          "links": null,
          "localized_name": "MASK",
          "name": "MASK",
          "type": "MASK"
        }
      ],
      "pos": [
        -879.307337861174,
        236.9977192475105
      ],
      "properties": {
        "Node name for S&R": "LoadImage",
        "cnr_id": "comfy-core",
        "ue_properties": {
          "input_ue_unconnectable": {},
          "version": "7.7",
          "widget_ue_connectable": {}
        },
        "ver": "0.19.3"
      },
      "size": [
        290,
        370
      ],
      "type": "LoadImage",
      "widgets_values": [
        "86e1599e4b60c46129393baeee2b0ed0c71225c5dfe436497dfe48a0b31856e5.png",
        "image"
      ]
    },
    {
      "flags": {},
      "id": 356,
      "inputs": [
        {
          "link": null,
          "localized_name": "image",
          "name": "image",
          "type": "COMBO",
          "widget": {
            "name": "image"
          }
        },
        {
          "link": null,
          "localized_name": "choose file to upload",
          "name": "upload",
          "type": "IMAGEUPLOAD",
          "widget": {
            "name": "upload"
          }
        }
      ],
      "mode": 0,
      "order": 1,
      "outputs": [
        {
          "links": [
            649,
            658
          ],
          "localized_name": "IMAGE",
          "name": "IMAGE",
          "type": "IMAGE"
        },
        {
          "links": null,
          "localized_name": "MASK",
          "name": "MASK",
          "type": "MASK"
        }
      ],
      "pos": [
        -489.3073378611747,
        236.9977192475105
      ],
      "properties": {
        "Node name for S&R": "LoadImage",
        "cnr_id": "comfy-core",
        "ue_properties": {
          "input_ue_unconnectable": {},
          "version": "7.7",
          "widget_ue_connectable": {}
        },
        "ver": "0.19.3"
      },
      "size": [
        290,
        370
      ],
      "type": "LoadImage",
      "widgets_values": [
        "af8fb900e4acc0a2e667c3eea32c89d9cbe95117e0f70cc9940bd60f9dd10d4f.png",
        "image"
      ]
    },
    {
      "bgcolor": "#653",
      "color": "#432",
      "flags": {},
      "id": 359,
      "inputs": [
        {
          "link": null,
          "localized_name": "model",
          "name": "model",
          "type": "COMFY_DYNAMICCOMBO_V3",
          "widget": {
            "name": "model"
          }
        },
        {
          "link": null,
          "localized_name": "model.prompt",
          "name": "model.prompt",
          "type": "STRING",
          "widget": {
            "name": "model.prompt"
          }
        },
        {
          "link": null,
          "localized_name": "model.resolution",
          "name": "model.resolution",
          "type": "COMBO",
          "widget": {
            "name": "model.resolution"
          }
        },
        {
          "link": null,
          "localized_name": "model.ratio",
          "name": "model.ratio",
          "type": "COMBO",
          "widget": {
            "name": "model.ratio"
          }
        },
        {
          "link": null,
          "localized_name": "model.duration",
          "name": "model.duration",
          "type": "INT",
          "widget": {
            "name": "model.duration"
          }
        },
        {
          "link": null,
          "localized_name": "model.generate_audio",
          "name": "model.generate_audio",
          "type": "BOOLEAN",
          "widget": {
            "name": "model.generate_audio"
          }
        },
        {
          "label": "image_1",
          "link": 649,
          "localized_name": "model.reference_images.image_1",
          "name": "model.reference_images.image_1",
          "shape": 7,
          "type": "IMAGE"
        },
        {
          "label": "image_2",
          "link": 650,
          "localized_name": "model.reference_images.image_2",
          "name": "model.reference_images.image_2",
          "shape": 7,
          "type": "IMAGE"
        },
        {
          "label": "image_3",
          "link": null,
          "localized_name": "model.reference_images.image_3",
          "name": "model.reference_images.image_3",
          "shape": 7,
          "type": "IMAGE"
        },
        {
          "label": "video_1",
          "link": null,
          "localized_name": "model.reference_videos.video_1",
          "name": "model.reference_videos.video_1",
          "shape": 7,
          "type": "VIDEO"
        },
        {
          "label": "audio_1",
          "link": null,
          "localized_name": "model.reference_audios.audio_1",
          "name": "model.reference_audios.audio_1",
          "shape": 7,
          "type": "AUDIO"
        },
        {
          "label": "asset_1",
          "link": null,
          "localized_name": "model.reference_assets.asset_1",
          "name": "model.reference_assets.asset_1",
          "shape": 7,
          "type": "STRING"
        },
        {
          "link": null,
          "localized_name": "model.auto_downscale",
          "name": "model.auto_downscale",
          "shape": 7,
          "type": "BOOLEAN",
          "widget": {
            "name": "model.auto_downscale"
          }
        },
        {
          "link": null,
          "localized_name": "seed",
          "name": "seed",
          "type": "INT",
          "widget": {
            "name": "seed"
          }
        },
        {
          "link": null,
          "localized_name": "watermark",
          "name": "watermark",
          "type": "BOOLEAN",
          "widget": {
            "name": "watermark"
          }
        }
      ],
      "mode": 0,
      "order": 3,
      "outputs": [
        {
          "links": [
            653
          ],
          "localized_name": "VIDEO",
          "name": "VIDEO",
          "type": "VIDEO"
        }
      ],
      "pos": [
        1753.702354166869,
        181.1414525255406
      ],
      "properties": {
        "Node name for S&R": "ByteDance2ReferenceNode",
        "cnr_id": "comfy-core",
        "ue_properties": {
          "input_ue_unconnectable": {},
          "widget_ue_connectable": {}
        },
        "ver": "0.19.3"
      },
      "showAdvanced": false,
      "size": [
        578.9000244140625,
        460.0833435058594
      ],
      "type": "ByteDance2ReferenceNode",
      "widgets_values": [
        "Seedance 2.0",
        "**Final Prompt**\n\nA realistic 3-inch miniature snowboarder wearing a vibrant snowsuit and goggles, rapidly carving down a frosted slope, leaping and weaving to avoid giant ice cubes and bags of frozen peas. Low-angle macro tracking shot, pushing forward quickly to keep pace with the subject. The interior of a brightly lit freezer, towering frost-covered boxes and icy metallic racks creating a miniature alpine landscape. Photorealistic macro cinematography, high-speed action sports lighting, shallow depth of field. Constraints: no scale distortion, consistent character proportions, no camera cuts, no morphing. Continuous 10-second fluid motion.\n\n***\n\n**Director's Notes:**\n*   **Camera:** Using a \"low-angle macro tracking shot\" tells the model to treat this like a miniature action movie, keeping the camera physically close to the tiny subject. \n*   **Scene specifics:** Giving the obstacles specific names (\"giant ice cubes,\" \"bags of frozen peas\") helps the AI generate a recognizable, realistic freezer environment rather than abstract white shapes.\n*   **Constraints:** Added specific scale constraints so the model doesn't suddenly make the snowboarder human-sized mid-video.",
        "720p",
        "9:16",
        15,
        true,
        false,
        1990816156,
        "randomize",
        false
      ]
    },
    {
      "bgcolor": "#653",
      "color": "#432",
      "flags": {},
      "id": 360,
      "inputs": [
        {
          "link": 661,
          "localized_name": "images",
          "name": "images",
          "shape": 7,
          "type": "IMAGE"
        },
        {
          "link": null,
          "localized_name": "audio",
          "name": "audio",
          "shape": 7,
          "type": "AUDIO"
        },
        {
          "link": null,
          "localized_name": "video",
          "name": "video",
          "shape": 7,
          "type": "VIDEO"
        },
        {
          "link": null,
          "localized_name": "files",
          "name": "files",
          "shape": 7,
          "type": "GEMINI_INPUT_FILES"
        },
        {
          "link": null,
          "localized_name": "prompt",
          "name": "prompt",
          "type": "STRING",
          "widget": {
            "name": "prompt"
          }
        },
        {
          "link": null,
          "localized_name": "model",
          "name": "model",
          "type": "COMBO",
          "widget": {
            "name": "model"
          }
        },
        {
          "link": null,
          "localized_name": "seed",
          "name": "seed",
          "type": "INT",
          "widget": {
            "name": "seed"
          }
        },
        {
          "link": null,
          "localized_name": "system_prompt",
          "name": "system_prompt",
          "shape": 7,
          "type": "STRING",
          "widget": {
            "name": "system_prompt"
          }
        }
      ],
      "mode": 0,
      "order": 7,
      "outputs": [
        {
          "links": [
            655
          ],
          "localized_name": "STRING",
          "name": "STRING",
          "type": "STRING"
        }
      ],
      "pos": [
        668.4459804251214,
        194.817264723858
      ],
      "properties": {
        "Node name for S&R": "GeminiNode"
      },
      "showAdvanced": true,
      "size": [
        450.9666748046875,
        778.8666381835938
      ],
      "type": "GeminiNode",
      "widgets_values": [
        "Create a ~15-second cinematic action sequence of a tiny snowboarder racing at high speed through a freezer environment designed like a chaotic obstacle course. The camera stays low and tightly behind him in one continuous shot with no cuts, maintaining constant forward motion.\n\nFocus on intensity and unpredictability: unstable terrain, falling and shifting objects, frequent near-collisions, and moments where he nearly loses balance but quickly recovers. The scene should feel dynamic, reactive, and alive, with realistic physics and environmental interaction rather than smooth or controlled movement.",
        "gemini-3-1-pro",
        66746703903294,
        "fixed",
        "You are a cinematic prompt generator. Your task is to convert user ideas into structured prompts for high-fidelity video generation using a strict format and physically grounded cinematic logic. Always output using exactly these five sections in this order: Subject, Action, Camera, Style, Constraints. Do not include any extra commentary, explanations, or text outside these sections.\n\nSubject: Define a single dominant subject unless the user explicitly requests multiple. Describe the subject in precise visual detail including physical traits, clothing, and distinguishing features. Maintain subject identity consistently throughout the entire sequence and do not introduce new primary subjects.\n\nAction: This is the most important section. All motion must be physically grounded and follow clear cause-and-effect logic. Structure the entire sequence as a continuous timeline using explicit timestamps formatted like 0.0–X.Xs. Actions must flow as a chain: start, progression, escalation, peak, recovery, continuation. The subject must remain in continuous motion unless explicitly stated otherwise. Include environmental interaction where the subject affects surroundings (collisions, displacement, shifting objects), and those surroundings react accordingly. Incorporate instability, loss of balance, and recovery where appropriate. Add micro-detail layering such as particles, fabric movement, subtle adjustments, and secondary reactions. Avoid vague, symbolic, or abstract actions. No teleportation or discontinuity.\n\nCamera: Always specify shot size, angle, and movement. Ensure the camera maintains spatial continuity with no cuts unless explicitly requested. The subject must remain clearly visible and trackable at all times. Camera motion must feel physically plausible, including inertia and subtle shake when appropriate (e.g., at high speed). The camera should enhance depth using foreground, midground, and background parallax.\n\nStyle: Use exactly one strong visual anchor such as a film stock, cinematic style, or artist reference. Do not combine multiple styles. This style must consistently influence lighting, color, texture, and depth of field across the entire sequence.\n\nConstraints: Always include negative prompts such as no distortion, no flicker, no artifacts, no extra limbs or deformities. Include temporal definition specifying total duration and pacing of the shot. Enforce continuity rules including stable lighting direction, coherent shadows, preserved subject identity, and no morphing unless explicitly requested. Include any explicit constraints provided by the user (e.g., snowboard only, no skis or poles).\n\nCinematic principles must always be enforced: physical realism (weight, inertia, momentum), environmental interaction (surfaces and objects react to motion), depth and parallax (layered scene behavior), lighting continuity, and clear visual readability of the subject. Motion should escalate in intensity over time when appropriate.\n\nHard rules: never output anything outside the five required sections, never omit timestamps in the Action section, never introduce multiple subjects unless requested, never use abstract or symbolic motion, never include impossible camera behavior, and never stack multiple styles."
      ]
    },
    {
      "flags": {},
      "id": 361,
      "inputs": [
        {
          "link": 655,
          "localized_name": "source",
          "name": "source",
          "type": "*"
        }
      ],
      "mode": 0,
      "order": 8,
      "outputs": [
        {
          "links": [],
          "localized_name": "STRING",
          "name": "STRING",
          "type": "STRING"
        }
      ],
      "pos": [
        1188.3528126531223,
        211.33867256043015
      ],
      "properties": {
        "Node name for S&R": "PreviewAny"
      },
      "size": [
        455.1333312988281,
        540.8833618164062
      ],
      "type": "PreviewAny",
      "widgets_values": [
        null,
        null,
        null
      ]
    },
    {
      "flags": {},
      "id": 362,
      "inputs": [
        {
          "link": 658,
          "localized_name": "image1",
          "name": "image1",
          "type": "IMAGE"
        },
        {
          "link": 659,
          "localized_name": "image2",
          "name": "image2",
          "type": "IMAGE"
        },
        {
          "link": null,
          "localized_name": "direction",
          "name": "direction",
          "type": "COMBO",
          "widget": {
            "name": "direction"
          }
        },
        {
          "link": null,
          "localized_name": "match_image_size",
          "name": "match_image_size",
          "type": "BOOLEAN",
          "widget": {
            "name": "match_image_size"
          }
        }
      ],
      "mode": 0,
      "order": 4,
      "outputs": [
        {
          "links": [
            660,
            661
          ],
          "localized_name": "IMAGE",
          "name": "IMAGE",
          "type": "IMAGE"
        }
      ],
      "pos": [
        -135.86960495390892,
        238.82990293485756
      ],
      "properties": {
        "Node name for S&R": "ImageConcanate"
      },
      "size": [
        270,
        157.6999969482422
      ],
      "type": "ImageConcanate",
      "widgets_values": [
        "right",
        true
      ]
    },
    {
      "flags": {},
      "id": 363,
      "inputs": [
        {
          "link": 660,
          "localized_name": "images",
          "name": "images",
          "type": "IMAGE"
        }
      ],
      "mode": 0,
      "order": 6,
      "outputs": [],
      "pos": [
        225.92293537209224,
        255.5667092966406
      ],
      "properties": {
        "Node name for S&R": "PreviewImage"
      },
      "size": [
        225,
        279.0333251953125
      ],
      "type": "PreviewImage",
      "widgets_values": []
    },
    {
      "bgcolor": "#000",
      "color": "#222",
      "flags": {},
      "id": 365,
      "inputs": [],
      "mode": 0,
      "order": 2,
      "outputs": [],
      "pos": [
        -1437.3261695460674,
        77.22997757217803
      ],
      "properties": {},
      "size": [
        366.6666564941406,
        796.0166625976562
      ],
      "type": "MarkdownNote",
      "widgets_values": [
        "# Workflow Instructions\n\n1. Upload Reference Images  (e.g., location, subject, or style).\n\n2. (Optional) Use the LLM for Prompt Generation  \nThe LLM can help generate a Seedance 2.0–style prompt based on your inputs.  \n- Select the Seedance node and press Ctrl + B to bypass it (so it doesn’t run).  \n- Click Run to execute the LLM.\n\n3. Guide Google Gemini  \nWhen using the Google Gemini node, provide a clear description of what you want, including the duration (time).  \nGemini will generate a Seedance 2.0–style prompt based on your input.\n\n4. Review and Apply the Prompt  \n- Once you’re happy with the generated prompt, select the Google Gemini node and press Ctrl + B to bypass it.  \n- Go back to the Seedance node and un-bypass it.  \n- Paste the generated prompt into the prompt field.\n\n5. Adjust Settings  \nSet your desired resolution, aspect ratio, and video duration in the Seedance node.\n\n6. Generate the Video  \nRun the workflow again to generate your final output.\n"
      ]
    }
  ],
  "revision": 0,
  "version": 0.4
}