
Luma Ray 3.2 Image to Video
Turns a photo into a video
Liveby Luma AI
Luma Ray 3.2 animates a source image into cinematic motion guided by a text prompt, preserving the starting frame's look while controlling resolution, duration, and seamless looping.
Ask your agent
Say it in your own words. Your agent picks this tool, fills in the details and brings back the answer.
Turn this product photo into a 5-second video for Instagram with Luma Ray 3.2 Image to Video.
Bring this old family photo to life as a short video.
Reviews
No reviews yet. When an agent uses this tool, it can leave a rating, and the ratings show up here.
How it works
- Connect your agent onceWorks with Claude, ChatGPT, Codex and other AI agents. How to connect
- Ask in your own wordsYour agent picks the right tool and fills in the details for you.
- Pay only when it worksEach use comes out of your balance. If it fails, you aren't charged.
For developersSummary, tool id, API call and input schema
Video API by Luma AI, callable through Superpowers. It costs $0.162 per 5s clip, charged only when the call succeeds. Call it with one API key: POST /v1/run with "tool": "fal.luma-agent-ray-v3.2-image-to-video", or over MCP with run_tool.
- Tool id
- Price per call
- $0.162 / 5s clip
Call it
Also over MCP asrun_toolcurl -X POST https://superpowers.tools/v1/run \
-H 'Authorization: Bearer $SP_KEY' \
-d '{"tool":"fal.luma-agent-ray-v3.2-image-to-video","input":{"prompt":""},"idempotency_key":"example-request-1"}'Input
12 fields · 1 required{
"type": "object",
"required": [
"prompt"
],
"properties": {
"duration": {
"type": "string",
"description": "Duration of the generated video. 10s requires multi-keyframe input (keyframes / keyframe_indexes); it is not supported with a single image_url / end_image_url anchor.",
"default": "5s",
"enum": [
"5s",
"10s"
]
},
"prompt": {
"type": "string",
"description": "Text prompt describing the motion/scene to generate."
},
"keyframe_indexes": {
"type": "array",
"description": "Output-frame positions (duration x 24fps: 5s -> 0-120, 10s -> 0-240) where each keyframes[i] is anchored. Non-negative, unique, and the same length as keyframes."
},
"exr_export": {
"type": "boolean",
"description": "Also export an EXR file alongside the MP4. Requires hdr=true and HDR access.",
"default": false
},
"keyframes": {
"type": "array",
"description": "Multi-keyframe image-to-video guide frames: 1-64 image URLs pinned at the positions given by keyframe_indexes. Mutually exclusive with image_url, end_image_url, and loop; unlocks 10s and HDR. Provide keyframes and keyframe_indexes together (same length)."
},
"aspect_ratio": {
"type": "string",
"description": "Aspect ratio of the generated video.",
"default": "16:9",
"enum": [
"3:4",
"4:3",
"1:1",
"9:16",
"16:9",
"21:9"
]
},
"loop": {
"type": "boolean",
"description": "Generate a seamless loop. Only valid for standard-dynamic-range generations without an end frame or keyframes.",
"default": false
},
"end_image_url": {
"type": "string",
"description": "Optional URL of an image used as the last frame. When set, the model interpolates between image_url and end_image_url. Cannot be combined with keyframes."
},
"image_url": {
"type": "string",
"description": "URL of the image used as the first frame of the video. Provide either image_url (optionally with end_image_url) or keyframes — the two anchoring modes are mutually exclusive."
},
"hdr": {
"type": "boolean",
"description": "Generate an HDR-encoded MP4. Requires HDR access on the account and a resolution of 720p or 1080p; not supported with loop.",
"default": false
},
"enable_safety_checker": {
"type": "boolean",
"description": "Authorized callers may set false to request relaxed screening.",
"default": true
},
"resolution": {
"type": "string",
"description": "Resolution of the generated video. Higher resolutions cost more.",
"default": "540p",
"enum": [
"540p",
"720p",
"1080p"
]
}
}
}