Moonvalley: Image to Video

This ComfyUI workflow turns a single image into a cinematic 1080p video using the Moonvalley image-to-video model. The graph is intentionally simple: LoadImage feeds your source frame, MoonvalleyImg2VideoNode sends it to the Moonvalley API for motion synthesis, and SaveVideo encodes the returned frames as an MP4. A MarkdownNote is included with direct links to the Moonvalley video generation docs and the Partner API overview so you can quickly reference parameters and setup tips.

Technically, LoadImage provides an RGB tensor to MoonvalleyImg2VideoNode, which handles authentication and the remote generation request. The node receives a sequence of frames from the Moonvalley service—trained exclusively on licensed data—at 1920x1080 and passes them downstream. SaveVideo assembles those frames into a playable file with your chosen filename and frame rate. Because the heavy lifting runs on Moonvalley’s servers via API, this pipeline produces smooth, high-resolution clips without relying on local GPU horsepower.

This template is useful when you need fast, consistent, and legally sound image-to-video results. You can drop in any reference image (e.g., product packshot, character portrait, landscape keyframe) and generate a short, polished motion clip suitable for previews, social posts, or story beats. It’s also easy to extend—swap LoadImage for an upstream text-to-image generator to build an end-to-end concept-to-motion workflow.

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.

api_moonvalley_image_to_video.json
Fetching workflow JSON…

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

// Install (beta)
npm i @comfyorg/sdk

// Run this workflow (TypeScript)
import { Comfy } from "@comfyorg/sdk";

const client = new Comfy({ apiKey: "comfyui-..." });
const wf = await client.workflows.fromFile("workflow_api.json");
const job = await client.run(wf);
await job.getOutputs("<output-node-id>")[0].toFile("output.png");

The SDK takes a workflow in API format: open this workflow in ComfyUI and use File → Export Workflow (API).

Comfy Cloud API access requires a plan with an API key.

FAQ

Frequently Asked Questions

View all workflows
Showing 30 of 30 templates