Loading...
Loading...
Compare original and translation side by side
| Model | Endpoint | Audio | Loop | Best For |
|---|---|---|---|---|
| Kling 2.6 Pro | | Yes | No | Cinematic |
| MiniMax | | No | No | Reliable |
| Luma | | No | Yes | Creative |
| SVD | | No | No | Fast test |
| Motion Type | Keywords | Example |
|---|---|---|
| Character | walks, turns, smiles | "She slowly turns her head" |
| Nature | sways, flows, falls | "Leaves flutter in the wind" |
| Camera | pans, zooms, tracks | "Camera slowly pans right" |
| Use Case | Recommended Model |
|---|---|
| Portraits | Kling 2.5/2.6 Pro |
| Products | MiniMax (optimizer) |
| Landscapes | Luma (loop) |
| Fast testing | SVD, Runway Turbo |
| 模型 | 端点 | 音频 | 循环 | 适用场景 |
|---|---|---|---|---|
| Kling 2.6 Pro | | 支持 | 不支持 | 电影级效果 |
| MiniMax | | 不支持 | 不支持 | 稳定可靠 |
| Luma | | 不支持 | 支持 | 创意创作 |
| SVD | | 不支持 | 不支持 | 快速测试 |
| 运动类型 | 关键词 | 示例 |
|---|---|---|
| 人物 | walks, turns, smiles | "她缓缓转过头" |
| 自然场景 | sways, flows, falls | "树叶在风中飘动" |
| 镜头 | pans, zooms, tracks | "镜头缓缓向右平移" |
| 使用场景 | 推荐模型 |
|---|---|
| 人像 | Kling 2.5/2.6 Pro |
| 产品 | MiniMax(带优化器) |
| 风景 | Luma(带循环) |
| 快速测试 | SVD, Runway Turbo |
fal-text-to-videofal-video-to-videofal-text-to-imagefal-text-to-videofal-video-to-videofal-text-to-imagefal-ai/kling-video/v2.0/image-to-videoimport { fal } from "@fal-ai/client";
const result = await fal.subscribe("fal-ai/kling-video/v2.0/image-to-video", {
input: {
prompt: "The person slowly turns their head and smiles warmly",
image_url: "https://example.com/portrait.jpg",
duration: "5",
aspect_ratio: "16:9"
}
});
console.log(result.video.url);import fal_client
result = fal_client.subscribe(
"fal-ai/kling-video/v2.0/image-to-video",
arguments={
"prompt": "The person slowly turns their head and smiles",
"image_url": "https://example.com/portrait.jpg",
"duration": "5",
"aspect_ratio": "16:9"
}
)
print(result["video"]["url"])fal-ai/kling-video/v2.0/image-to-videoimport { fal } from "@fal-ai/client";
const result = await fal.subscribe("fal-ai/kling-video/v2.0/image-to-video", {
input: {
prompt: "The person slowly turns their head and smiles warmly",
image_url: "https://example.com/portrait.jpg",
duration: "5",
aspect_ratio: "16:9"
}
});
console.log(result.video.url);import fal_client
result = fal_client.subscribe(
"fal-ai/kling-video/v2.0/image-to-video",
arguments={
"prompt": "The person slowly turns their head and smiles",
"image_url": "https://example.com/portrait.jpg",
"duration": "5",
"aspect_ratio": "16:9"
}
)
print(result["video"]["url"])fal-ai/kling-video/v2.5/pro/image-to-videoconst result = await fal.subscribe("fal-ai/kling-video/v2.5/pro/image-to-video", {
input: {
prompt: "The car drives forward along the mountain road, camera follows",
image_url: "https://example.com/car-scene.jpg",
duration: "5",
aspect_ratio: "16:9",
negative_prompt: "static, frozen, distorted"
}
});fal-ai/kling-video/v2.5/pro/image-to-videoconst result = await fal.subscribe("fal-ai/kling-video/v2.5/pro/image-to-video", {
input: {
prompt: "The car drives forward along the mountain road, camera follows",
image_url: "https://example.com/car-scene.jpg",
duration: "5",
aspect_ratio: "16:9",
negative_prompt: "static, frozen, distorted"
}
});fal-ai/kling-video/v2.6/pro/image-to-videoconst result = await fal.subscribe("fal-ai/kling-video/v2.6/pro/image-to-video", {
input: {
prompt: "The waterfall cascades down with a gentle roar, birds fly past",
image_url: "https://example.com/waterfall.jpg",
duration: "5",
aspect_ratio: "16:9"
}
});
console.log(result.video.url);
console.log(result.audio?.url); // Native audio| Parameter | Type | Values | Description |
|---|---|---|---|
| string | - | Motion description |
| string | - | Source image URL |
| string | "5", "10" | Duration in seconds |
| string | "16:9", "9:16", "1:1" | Output dimensions |
| string | - | What to avoid |
fal-ai/kling-video/v2.6/pro/image-to-videoconst result = await fal.subscribe("fal-ai/kling-video/v2.6/pro/image-to-video", {
input: {
prompt: "The waterfall cascades down with a gentle roar, birds fly past",
image_url: "https://example.com/waterfall.jpg",
duration: "5",
aspect_ratio: "16:9"
}
});
console.log(result.video.url);
console.log(result.audio?.url); // Native audio| 参数 | 类型 | 可选值 | 描述 |
|---|---|---|---|
| string | - | 运动描述 |
| string | - | 源图像URL |
| string | "5", "10" | 视频时长(秒) |
| string | "16:9", "9:16", "1:1" | 输出尺寸比例 |
| string | - | 需要避免的效果 |
fal-ai/minimax-video/image-to-videoconst result = await fal.subscribe("fal-ai/minimax-video/image-to-video", {
input: {
prompt: "The cat stretches and yawns, then walks forward",
image_url: "https://example.com/sleeping-cat.jpg",
prompt_optimizer: true // Auto-enhance prompt
}
});result = fal_client.subscribe(
"fal-ai/minimax-video/image-to-video",
arguments={
"prompt": "The cat stretches and yawns",
"image_url": "https://example.com/cat.jpg",
"prompt_optimizer": True
}
)| Parameter | Type | Description |
|---|---|---|
| string | Motion description |
| string | Source image URL |
| boolean | Auto-enhance prompt |
fal-ai/minimax-video/image-to-videoconst result = await fal.subscribe("fal-ai/minimax-video/image-to-video", {
input: {
prompt: "The cat stretches and yawns, then walks forward",
image_url: "https://example.com/sleeping-cat.jpg",
prompt_optimizer: true // Auto-enhance prompt
}
});result = fal_client.subscribe(
"fal-ai/minimax-video/image-to-video",
arguments={
"prompt": "The cat stretches and yawns",
"image_url": "https://example.com/cat.jpg",
"prompt_optimizer": True
}
)| 参数 | 类型 | 描述 |
|---|---|---|
| string | 运动描述 |
| string | 源图像URL |
| boolean | 自动优化提示词 |
fal-ai/ltx-video/image-to-videoconst result = await fal.subscribe("fal-ai/ltx-video/image-to-video", {
input: {
prompt: "The flowers sway gently in the breeze",
image_url: "https://example.com/flower-field.jpg",
negative_prompt: "static, frozen",
num_inference_steps: 30,
guidance_scale: 7.5
}
});fal-ai/ltx-video/image-to-videoconst result = await fal.subscribe("fal-ai/ltx-video/image-to-video", {
input: {
prompt: "The flowers sway gently in the breeze",
image_url: "https://example.com/flower-field.jpg",
negative_prompt: "static, frozen",
num_inference_steps: 30,
guidance_scale: 7.5
}
});fal-ai/ltx-video/v2/image-to-videoconst result = await fal.subscribe("fal-ai/ltx-video/v2/image-to-video", {
input: {
prompt: "Smoke rises and swirls from the chimney",
image_url: "https://example.com/cabin.jpg",
num_inference_steps: 35,
guidance_scale: 7.0
}
});| Parameter | Type | Default | Description |
|---|---|---|---|
| string | - | Motion description |
| string | - | Source image |
| string | - | What to avoid |
| number | 30 | Quality steps |
| number | 7.5 | Prompt adherence |
fal-ai/ltx-video/v2/image-to-videoconst result = await fal.subscribe("fal-ai/ltx-video/v2/image-to-video", {
input: {
prompt: "Smoke rises and swirls from the chimney",
image_url: "https://example.com/cabin.jpg",
num_inference_steps: 35,
guidance_scale: 7.0
}
});| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| string | - | 运动描述 |
| string | - | 源图像 |
| string | - | 需要避免的效果 |
| number | 30 | 生成质量步数 |
| number | 7.5 | 提示词贴合度 |
fal-ai/runway-gen3/turbo/image-to-videoconst result = await fal.subscribe("fal-ai/runway-gen3/turbo/image-to-video", {
input: {
prompt: "The model walks confidently down the runway",
image_url: "https://example.com/fashion-shot.jpg",
duration: 5
}
});| Parameter | Type | Values | Description |
|---|---|---|---|
| string | - | Motion description |
| string | - | Source image |
| number | 5, 10 | Seconds |
fal-ai/runway-gen3/turbo/image-to-videoconst result = await fal.subscribe("fal-ai/runway-gen3/turbo/image-to-video", {
input: {
prompt: "The model walks confidently down the runway",
image_url: "https://example.com/fashion-shot.jpg",
duration: 5
}
});| 参数 | 类型 | 可选值 | 描述 |
|---|---|---|---|
| string | - | 运动描述 |
| string | - | 源图像 |
| number | 5, 10 | 时长(秒) |
fal-ai/luma-dream-machineconst result = await fal.subscribe("fal-ai/luma-dream-machine", {
input: {
prompt: "The magical portal opens with swirling energy",
image_url: "https://example.com/fantasy-scene.jpg",
aspect_ratio: "16:9",
loop: true // Create seamless loop
}
});result = fal_client.subscribe(
"fal-ai/luma-dream-machine",
arguments={
"prompt": "The portal opens with swirling energy",
"image_url": "https://example.com/scene.jpg",
"aspect_ratio": "16:9",
"loop": True
}
)| Parameter | Type | Description |
|---|---|---|
| string | Motion description |
| string | Source image |
| string | "16:9", "9:16", "1:1" |
| boolean | Create looping video |
fal-ai/luma-dream-machineconst result = await fal.subscribe("fal-ai/luma-dream-machine", {
input: {
prompt: "The magical portal opens with swirling energy",
image_url: "https://example.com/fantasy-scene.jpg",
aspect_ratio: "16:9",
loop: true // Create seamless loop
}
});result = fal_client.subscribe(
"fal-ai/luma-dream-machine",
arguments={
"prompt": "The portal opens with swirling energy",
"image_url": "https://example.com/scene.jpg",
"aspect_ratio": "16:9",
"loop": True
}
)| 参数 | 类型 | 描述 |
|---|---|---|
| string | 运动描述 |
| string | 源图像 |
| string | "16:9", "9:16", "1:1" |
| boolean | 生成循环视频 |
fal-ai/wan/v2.1/1.3b/image-to-videoconst result = await fal.subscribe("fal-ai/wan/v2.1/1.3b/image-to-video", {
input: {
prompt: "The leaves flutter and fall from the tree",
image_url: "https://example.com/autumn-tree.jpg",
num_frames: 81
}
});fal-ai/wan/v2.1/1.3b/image-to-videoconst result = await fal.subscribe("fal-ai/wan/v2.1/1.3b/image-to-video", {
input: {
prompt: "The leaves flutter and fall from the tree",
image_url: "https://example.com/autumn-tree.jpg",
num_frames: 81
}
});fal-ai/stable-video-diffusionconst result = await fal.subscribe("fal-ai/stable-video-diffusion", {
input: {
image_url: "https://example.com/landscape.jpg",
motion_bucket_id: 127, // 0-255, higher = more motion
fps: 7,
num_frames: 25
}
});| Parameter | Type | Default | Description |
|---|---|---|---|
| string | - | Source image |
| number | 127 | Motion intensity (0-255) |
| number | 7 | Frames per second |
| number | 25 | Total frames |
| number | - | For reproducibility |
fal-ai/stable-video-diffusionconst result = await fal.subscribe("fal-ai/stable-video-diffusion", {
input: {
image_url: "https://example.com/landscape.jpg",
motion_bucket_id: 127, // 0-255, 值越大运动越强
fps: 7,
num_frames: 25
}
});| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| string | - | 源图像 |
| number | 127 | 运动强度(0-255) |
| number | 7 | 帧率 |
| number | 25 | 总帧数 |
| number | - | 用于结果复现 |
fal-ai/stable-video-diffusion-xtconst result = await fal.subscribe("fal-ai/stable-video-diffusion-xt", {
input: {
image_url: "https://example.com/scene.jpg",
motion_bucket_id: 127,
num_frames: 25,
fps: 6
}
});fal-ai/stable-video-diffusion-xtconst result = await fal.subscribe("fal-ai/stable-video-diffusion-xt", {
input: {
image_url: "https://example.com/scene.jpg",
motion_bucket_id: 127,
num_frames: 25,
fps: 6
}
});fal-ai/cogvideox-5b/image-to-videoconst result = await fal.subscribe("fal-ai/cogvideox-5b/image-to-video", {
input: {
prompt: "The astronaut waves to the camera",
image_url: "https://example.com/astronaut.jpg",
num_inference_steps: 50,
guidance_scale: 6.0
}
});fal-ai/cogvideox-5b/image-to-videoconst result = await fal.subscribe("fal-ai/cogvideox-5b/image-to-video", {
input: {
prompt: "The astronaut waves to the camera",
image_url: "https://example.com/astronaut.jpg",
num_inference_steps: 50,
guidance_scale: 6.0
}
});| Tier | Models | Quality | Speed |
|---|---|---|---|
| Premium | Kling 2.6 Pro | Highest | Slow |
| Professional | Kling 2.5 Pro, Runway | High | Medium |
| Standard | MiniMax, LTX v2 | Good | Fast |
| Budget | SVD, CogVideoX | Acceptable | Fast |
| 等级 | 模型 | 质量 | 速度 |
|---|---|---|---|
| 顶级 | Kling 2.6 Pro | 最高 | 慢 |
| 专业级 | Kling 2.5 Pro, Runway | 高 | 中等 |
| 标准级 | MiniMax, LTX v2 | 良好 | 快 |
| 经济型 | SVD, CogVideoX | 可接受 | 快 |
| Model | Audio | Duration | Loop | Best For |
|---|---|---|---|---|
| Kling 2.6 Pro | Yes | 5-10s | No | Cinematic |
| Kling 2.5 Pro | No | 5-10s | No | Professional |
| MiniMax | No | 6s | No | Reliable |
| Runway Turbo | No | 5-10s | No | Fast |
| Luma | No | 5s | Yes | Creative |
| SVD | No | 3-4s | No | Open source |
| 模型 | 音频 | 时长 | 循环 | 适用场景 |
|---|---|---|---|---|
| Kling 2.6 Pro | 支持 | 5-10s | 不支持 | 电影级效果 |
| Kling 2.5 Pro | 不支持 | 5-10s | 不支持 | 专业级 |
| MiniMax | 不支持 | 6s | 不支持 | 稳定可靠 |
| Runway Turbo | 不支持 | 5-10s | 不支持 | 快速生成 |
| Luma | 不支持 | 5s | 支持 | 创意创作 |
| SVD | 不支持 | 3-4s | 不支持 | 开源方案 |
[Subject action] + [Motion quality] + [Camera movement] + [Atmosphere]// Good: Specific motion
"The woman slowly turns her head to the right and smiles, gentle breeze moves her hair"
// Bad: Vague
"The woman moves"[主体动作] + [运动特性] + [镜头运动] + [氛围]// 优秀:具体的运动描述
"The woman slowly turns her head to the right and smiles, gentle breeze moves her hair"
// 糟糕:模糊描述
"The woman moves"| Type | Keywords | Example |
|---|---|---|
| Character | "walks", "runs", "dances", "gestures" | "She waves hello" |
| Nature | "sways", "flows", "rustles", "falls" | "Leaves fall gently" |
| Mechanical | "rotates", "spins", "moves", "opens" | "The door opens slowly" |
| Atmospheric | "drifts", "swirls", "rises", "disperses" | "Fog drifts across" |
| 类型 | 关键词 | 示例 |
|---|---|---|
| 人物 | "walks", "runs", "dances", "gestures" | "她挥手打招呼" |
| 自然场景 | "sways", "flows", "rustles", "falls" | "树叶缓缓飘落" |
| 机械物体 | "rotates", "spins", "moves", "opens" | "门缓缓打开" |
| 氛围效果 | "drifts", "swirls", "rises", "disperses" | "雾气缓缓弥漫" |
| Keyword | Effect |
|---|---|
| "camera slowly pans" | Horizontal sweep |
| "slight zoom in" | Gradual zoom |
| "tracking shot" | Follows subject |
| "static camera" | No camera movement |
| "subtle camera shake" | Handheld feel |
| 关键词 | 效果 |
|---|---|
| "camera slowly pans" | 水平扫动 |
| "slight zoom in" | 渐进式放大 |
| "tracking shot" | 跟随主体 |
| "static camera" | 固定镜头 |
| "subtle camera shake" | 手持拍摄质感 |
interface ImageToVideoInput {
// Required
prompt: string;
image_url: string;
// Duration (varies by model)
duration?: number | string;
// Dimensions
aspect_ratio?: "16:9" | "9:16" | "1:1";
// Quality
negative_prompt?: string;
num_inference_steps?: number;
guidance_scale?: number;
// Model-specific
prompt_optimizer?: boolean; // MiniMax
loop?: boolean; // Luma
motion_bucket_id?: number; // SVD (0-255)
fps?: number; // SVD
num_frames?: number; // SVD, Wan
// Reproducibility
seed?: number;
}interface ImageToVideoInput {
// 必填项
prompt: string;
image_url: string;
// 时长(因模型而异)
duration?: number | string;
// 尺寸比例
aspect_ratio?: "16:9" | "9:16" | "1:1";
// 质量参数
negative_prompt?: string;
num_inference_steps?: number;
guidance_scale?: number;
// 模型专属参数
prompt_optimizer?: boolean; // MiniMax
loop?: boolean; // Luma
motion_bucket_id?: number; // SVD (0-255)
fps?: number; // SVD
num_frames?: number; // SVD, Wan
// 结果复现
seed?: number;
}// 1. Generate a portrait image
const portrait = await fal.subscribe("fal-ai/flux/dev", {
input: {
prompt: "Professional headshot of a business woman, neutral expression, studio lighting",
image_size: "portrait_4_3"
}
});
// 2. Animate the portrait
const video = await fal.subscribe("fal-ai/kling-video/v2.5/pro/image-to-video", {
input: {
prompt: "She slowly turns her head, makes eye contact with camera, and gives a warm professional smile",
image_url: portrait.images[0].url,
duration: "5",
aspect_ratio: "16:9"
}
});
console.log(video.video.url);// 1. 生成人像图像
const portrait = await fal.subscribe("fal-ai/flux/dev", {
input: {
prompt: "Professional headshot of a business woman, neutral expression, studio lighting",
image_size: "portrait_4_3"
}
});
// 2. 为人像添加动画
const video = await fal.subscribe("fal-ai/kling-video/v2.5/pro/image-to-video", {
input: {
prompt: "She slowly turns her head, makes eye contact with camera, and gives a warm professional smile",
image_url: portrait.images[0].url,
duration: "5",
aspect_ratio: "16:9"
}
});
console.log(video.video.url);// Animate product image
const result = await fal.subscribe("fal-ai/minimax-video/image-to-video", {
input: {
prompt: "The camera slowly rotates around the product, highlighting details, studio lighting",
image_url: "https://example.com/product-shot.jpg",
prompt_optimizer: true
}
});// 为产品图像添加动画
const result = await fal.subscribe("fal-ai/minimax-video/image-to-video", {
input: {
prompt: "The camera slowly rotates around the product, highlighting details, studio lighting",
image_url: "https://example.com/product-shot.jpg",
prompt_optimizer: true
}
});// Create ambient nature video
const result = await fal.subscribe("fal-ai/luma-dream-machine", {
input: {
prompt: "Gentle breeze moves through the grass, clouds drift slowly overhead, peaceful ambient motion",
image_url: "https://example.com/landscape.jpg",
aspect_ratio: "16:9",
loop: true // Perfect for background video
}
});// 创建自然氛围视频
const result = await fal.subscribe("fal-ai/luma-dream-machine", {
input: {
prompt: "Gentle breeze moves through the grass, clouds drift slowly overhead, peaceful ambient motion",
image_url: "https://example.com/landscape.jpg",
aspect_ratio: "16:9",
loop: true // Perfect for background video
}
});// Quick preview with faster model
const preview = await fal.subscribe("fal-ai/stable-video-diffusion", {
input: {
image_url: sourceImage,
motion_bucket_id: 100
}
});
console.log("Preview:", preview.video.url);
// If satisfied, use higher quality model
const final = await fal.subscribe("fal-ai/kling-video/v2.6/pro/image-to-video", {
input: {
prompt: "Refined motion description based on preview",
image_url: sourceImage,
duration: "5"
}
});// 使用快速模型生成预览
const preview = await fal.subscribe("fal-ai/stable-video-diffusion", {
input: {
image_url: sourceImage,
motion_bucket_id: 100
}
});
console.log("Preview:", preview.video.url);
// 如果满意,使用更高质量的模型生成最终版本
const final = await fal.subscribe("fal-ai/kling-video/v2.6/pro/image-to-video", {
input: {
prompt: "Refined motion description based on preview",
image_url: sourceImage,
duration: "5"
}
});| Issue | Cause | Solution |
|---|---|---|
| Static output | Vague prompt | Add specific motion verbs |
| Distorted faces | Fast motion | Use "subtle", "gentle" |
| Inconsistent motion | Complex scene | Focus on one element |
| Cut-off motion | Short duration | Extend duration if available |
| 问题 | 原因 | 解决方案 |
|---|---|---|
| 输出静态画面 | 提示词模糊 | 添加具体的运动动词 |
| 面部变形 | 运动过快 | 使用"subtle", "gentle"等修饰词 |
| 运动不一致 | 场景复杂 | 聚焦于单个元素 |
| 运动被截断 | 时长过短 | 若支持则延长时长 |
| Use Case | Recommended Model |
|---|---|
| Portraits | Kling 2.5/2.6 Pro |
| Products | MiniMax (prompt optimizer) |
| Landscapes | Luma (loop option) |
| Fast testing | SVD, Runway Turbo |
| With audio | Kling 2.6 Pro |
| 使用场景 | 推荐模型 |
|---|---|
| 人像 | Kling 2.5/2.6 Pro |
| 产品 | MiniMax(带提示词优化器) |
| 风景 | Luma(带循环选项) |
| 快速测试 | SVD, Runway Turbo |
| 需要音频 | Kling 2.6 Pro |