Seedance 2.0 - Viral Cinemagraph Effect turns a single character image into a short, looping cinemagraph with subtle motion. The workflow starts by loading your still using LoadImage (or BatchImagesNode for multiples), then uses a lightweight text pipeline (PrimitiveStringMultiline → RegexReplace → GeminiNode/GeminiNanoBanana2) to interpret your motion description into concise, model-friendly motion hints. A mask-driven pass defines where movement should happen: MaskPreview helps you visualize the region, and MaskToImage converts that mask for downstream use so the subject or selected area animates while the rest of the frame stays perfectly still.

At the core, ByteDance2ReferenceNode applies Seedance 2.0’s reference-based image-to-video motion on just the masked region, preserving identity and composition from your source photo. Frames are assembled with GetVideoComponents and CreateVideo, then you can inspect results with PreviewAny and export via SaveVideo (and SaveImage for any keyframe/mask snapshots). Two custom utility nodes (f4cfd806-6db2-425e-9f50-3eb8fe546a77 and e42b05e2-13fc-4ad5-822d-b89a8a297d35) are included in the graph to support the pre/post steps the workflow needs; they’re prewired and require no manual changes for a one‑click run. The result is a clean, seamless loop ideal for socials, hero headers, and character reveals—precise, controlled motion without rebuilding the entire scene.

API

Use this workflow from code

Every Comfy workflow is a JSON graph. The payload below is this workflow, exactly as ComfyUI runs it — fetch it from the URL, keep it in version control, or load it in ComfyUI and run it node by node.

GET https://comfy.org/workflows/download/ed1c4eade3a3.json
Fetching workflow JSON…

Run it from Python or TypeScript with the Comfy SDK. The same code targets Comfy Cloud or a ComfyUI you host yourself — only the base URL changes.

# Install (beta)
pip install comfy-sdk        # Python
npm i @comfyorg/sdk          # TypeScript

# Run this workflow (Python)
from comfy_sdk import Comfy

client = Comfy(api_key="comfyui-...")
wf = client.workflows.from_file("workflow_api.json")
job = client.run(wf)
for output in job.get_outputs("<output-node-id>"):
    output.to_file(output.name)

The SDK takes a workflow in API format: open this workflow in ComfyUI and use File → Export Workflow (API). API access requires a Comfy Cloud plan with an API key. SDK docs · Get an API key

FAQ

Frequently Asked Questions

View all workflows
Character
Cinematic
Image to Video
Lip Sync
Multiple Angles
Portrait
Style Reference
Style Transfer
Text to Video
Video Generation
Video
Showing 30 of 30 templates