fal-image-to-video

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Quick Reference

快速参考

ModelEndpointAudioLoopBest For
Kling 2.6 Pro
fal-ai/kling-video/v2.6/pro/image-to-video
YesNoCinematic
MiniMax
fal-ai/minimax-video/image-to-video
NoNoReliable
Luma
fal-ai/luma-dream-machine
NoYesCreative
SVD
fal-ai/stable-video-diffusion
NoNoFast test
Motion TypeKeywordsExample
Characterwalks, turns, smiles"She slowly turns her head"
Naturesways, flows, falls"Leaves flutter in the wind"
Camerapans, zooms, tracks"Camera slowly pans right"
Use CaseRecommended Model
PortraitsKling 2.5/2.6 Pro
ProductsMiniMax (optimizer)
LandscapesLuma (loop)
Fast testingSVD, Runway Turbo
模型端点音频循环适用场景
Kling 2.6 Pro
fal-ai/kling-video/v2.6/pro/image-to-video
支持不支持电影级效果
MiniMax
fal-ai/minimax-video/image-to-video
不支持不支持稳定可靠
Luma
fal-ai/luma-dream-machine
不支持支持创意创作
SVD
fal-ai/stable-video-diffusion
不支持不支持快速测试
运动类型关键词示例
人物walks, turns, smiles"她缓缓转过头"
自然场景sways, flows, falls"树叶在风中飘动"
镜头pans, zooms, tracks"镜头缓缓向右平移"
使用场景推荐模型
人像Kling 2.5/2.6 Pro
产品MiniMax(带优化器)
风景Luma(带循环)
快速测试SVD, Runway Turbo

When to Use This Skill

何时使用该技能

Use for image animation:
  • Animating still portraits with natural motion
  • Creating product showcase videos
  • Generating ambient loop videos
  • Adding subtle motion to landscapes
  • Preview workflow before final render
Related skills:
  • For text-to-video: see
    fal-text-to-video
  • For video editing: see
    fal-video-to-video
  • For text-to-image first: see
    fal-text-to-image

适用于图像动画场景:
  • 为静态人像添加自然运动效果
  • 创建产品展示视频
  • 生成循环氛围视频
  • 为风景添加细微动态
  • 最终渲染前预览工作流
相关技能:
  • 文本转视频:请查看
    fal-text-to-video
  • 视频编辑:请查看
    fal-video-to-video
  • 先文本转图像:请查看
    fal-text-to-image

fal.ai Image-to-Video Models

fal.ai 图生视频模型

Complete reference for all image animation and image-to-video models on fal.ai.
fal.ai平台所有图像动画与图生视频模型的完整参考手册。

Kling Image-to-Video

Kling 图生视频

Kling 2.0 Image-to-Video

Kling 2.0 图生视频

Endpoint:
fal-ai/kling-video/v2.0/image-to-video
Best For: Standard image animation
typescript
import { 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);
python
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-video
适用场景: 标准图像动画
typescript
import { 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);
python
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"])

Kling 2.5 Pro Image-to-Video

Kling 2.5 Pro 图生视频

Endpoint:
fal-ai/kling-video/v2.5/pro/image-to-video
Best For: Professional quality animation
typescript
const 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-video
适用场景: 专业级质量动画
typescript
const 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"
  }
});

Kling 2.6 Pro Image-to-Video (Latest)

Kling 2.6 Pro 图生视频(最新版)

Endpoint:
fal-ai/kling-video/v2.6/pro/image-to-video
Best For: Highest quality with native audio
typescript
const 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
Kling Parameters:
ParameterTypeValuesDescription
prompt
string-Motion description
image_url
string-Source image URL
duration
string"5", "10"Duration in seconds
aspect_ratio
string"16:9", "9:16", "1:1"Output dimensions
negative_prompt
string-What to avoid
端点:
fal-ai/kling-video/v2.6/pro/image-to-video
适用场景: 最高质量,支持原生音频
typescript
const 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
Kling 参数:
参数类型可选值描述
prompt
string-运动描述
image_url
string-源图像URL
duration
string"5", "10"视频时长(秒)
aspect_ratio
string"16:9", "9:16", "1:1"输出尺寸比例
negative_prompt
string-需要避免的效果

MiniMax Image-to-Video

MiniMax 图生视频

MiniMax Hailuo

MiniMax Hailuo

Endpoint:
fal-ai/minimax-video/image-to-video
Best For: Reliable image animation with prompt optimization
typescript
const 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
  }
});
python
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
    }
)
MiniMax Parameters:
ParameterTypeDescription
prompt
stringMotion description
image_url
stringSource image URL
prompt_optimizer
booleanAuto-enhance prompt
端点:
fal-ai/minimax-video/image-to-video
适用场景: 稳定可靠的图像动画,支持提示词优化
typescript
const 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
  }
});
python
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
    }
)
MiniMax 参数:
参数类型描述
prompt
string运动描述
image_url
string源图像URL
prompt_optimizer
boolean自动优化提示词

LTX Image-to-Video

LTX 图生视频

LTX Video Image-to-Video

LTX Video 图生视频

Endpoint:
fal-ai/ltx-video/image-to-video
Best For: Fast image animation
typescript
const 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-video
适用场景: 快速图像动画
typescript
const 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
  }
});

LTX Video v2 Image-to-Video

LTX Video v2 图生视频

Endpoint:
fal-ai/ltx-video/v2/image-to-video
Best For: Improved quality animation
typescript
const 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
  }
});
LTX Parameters:
ParameterTypeDefaultDescription
prompt
string-Motion description
image_url
string-Source image
negative_prompt
string-What to avoid
num_inference_steps
number30Quality steps
guidance_scale
number7.5Prompt adherence
端点:
fal-ai/ltx-video/v2/image-to-video
适用场景: 画质提升版动画
typescript
const 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
  }
});
LTX 参数:
参数类型默认值描述
prompt
string-运动描述
image_url
string-源图像
negative_prompt
string-需要避免的效果
num_inference_steps
number30生成质量步数
guidance_scale
number7.5提示词贴合度

Runway Gen-3 Image-to-Video

Runway Gen-3 图生视频

Runway Gen-3 Turbo

Runway Gen-3 Turbo

Endpoint:
fal-ai/runway-gen3/turbo/image-to-video
Best For: Fast iteration, previews
typescript
const 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
  }
});
Runway Parameters:
ParameterTypeValuesDescription
prompt
string-Motion description
image_url
string-Source image
duration
number5, 10Seconds
端点:
fal-ai/runway-gen3/turbo/image-to-video
适用场景: 快速迭代、预览
typescript
const 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
  }
});
Runway 参数:
参数类型可选值描述
prompt
string-运动描述
image_url
string-源图像
duration
number5, 10时长(秒)

Luma Dream Machine

Luma Dream Machine

Luma Image-to-Video

Luma 图生视频

Endpoint:
fal-ai/luma-dream-machine
Best For: Creative, artistic animation
typescript
const 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
  }
});
python
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
    }
)
Luma Parameters:
ParameterTypeDescription
prompt
stringMotion description
image_url
stringSource image
aspect_ratio
string"16:9", "9:16", "1:1"
loop
booleanCreate looping video
端点:
fal-ai/luma-dream-machine
适用场景: 创意、艺术化动画
typescript
const 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
  }
});
python
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
    }
)
Luma 参数:
参数类型描述
prompt
string运动描述
image_url
string源图像
aspect_ratio
string"16:9", "9:16", "1:1"
loop
boolean生成循环视频

Wan Image-to-Video

Wan 图生视频

Wan v2.1 Image-to-Video

Wan v2.1 图生视频

Endpoint:
fal-ai/wan/v2.1/1.3b/image-to-video
Best For: Lightweight animation
typescript
const 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-video
适用场景: 轻量级动画
typescript
const 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
  }
});

Stable Video Diffusion

Stable Video Diffusion

SVD Image-to-Video

SVD 图生视频

Endpoint:
fal-ai/stable-video-diffusion
Best For: Open-source image animation
typescript
const 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
  }
});
SVD Parameters:
ParameterTypeDefaultDescription
image_url
string-Source image
motion_bucket_id
number127Motion intensity (0-255)
fps
number7Frames per second
num_frames
number25Total frames
seed
number-For reproducibility
端点:
fal-ai/stable-video-diffusion
适用场景: 开源图像动画
typescript
const 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
  }
});
SVD 参数:
参数类型默认值描述
image_url
string-源图像
motion_bucket_id
number127运动强度(0-255)
fps
number7帧率
num_frames
number25总帧数
seed
number-用于结果复现

SVD XT

SVD XT

Endpoint:
fal-ai/stable-video-diffusion-xt
Best For: Extended video length
typescript
const 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-xt
适用场景: 延长视频时长
typescript
const 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
  }
});

CogVideoX Image-to-Video

CogVideoX 图生视频

CogVideoX-5B Image-to-Video

CogVideoX-5B 图生视频

Endpoint:
fal-ai/cogvideox-5b/image-to-video
Best For: Open-source alternative
typescript
const 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-video
适用场景: 开源替代方案
typescript
const 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
  }
});

Model Comparison

模型对比

Quality Ranking

质量排名

TierModelsQualitySpeed
PremiumKling 2.6 ProHighestSlow
ProfessionalKling 2.5 Pro, RunwayHighMedium
StandardMiniMax, LTX v2GoodFast
BudgetSVD, CogVideoXAcceptableFast
等级模型质量速度
顶级Kling 2.6 Pro最高
专业级Kling 2.5 Pro, Runway中等
标准级MiniMax, LTX v2良好
经济型SVD, CogVideoX可接受

Feature Comparison

功能对比

ModelAudioDurationLoopBest For
Kling 2.6 ProYes5-10sNoCinematic
Kling 2.5 ProNo5-10sNoProfessional
MiniMaxNo6sNoReliable
Runway TurboNo5-10sNoFast
LumaNo5sYesCreative
SVDNo3-4sNoOpen source
模型音频时长循环适用场景
Kling 2.6 Pro支持5-10s不支持电影级效果
Kling 2.5 Pro不支持5-10s不支持专业级
MiniMax不支持6s不支持稳定可靠
Runway Turbo不支持5-10s不支持快速生成
Luma不支持5s支持创意创作
SVD不支持3-4s不支持开源方案

Prompt Engineering for Image Animation

图像动画提示词工程

Motion Description Structure

运动描述结构

text
[Subject action] + [Motion quality] + [Camera movement] + [Atmosphere]
Examples:
typescript
// Good: Specific motion
"The woman slowly turns her head to the right and smiles, gentle breeze moves her hair"

// Bad: Vague
"The woman moves"
text
[主体动作] + [运动特性] + [镜头运动] + [氛围]
示例:
typescript
// 优秀:具体的运动描述
"The woman slowly turns her head to the right and smiles, gentle breeze moves her hair"

// 糟糕:模糊描述
"The woman moves"

Motion Types

运动类型

TypeKeywordsExample
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""雾气缓缓弥漫"

Camera Motion Keywords

镜头运动关键词

KeywordEffect
"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"手持拍摄质感

Quality Modifiers

质量修饰词

  • "smooth motion"
  • "natural movement"
  • "fluid animation"
  • "subtle motion"
  • "cinematic"
  • "smooth motion"
  • "natural movement"
  • "fluid animation"
  • "subtle motion"
  • "cinematic"

Complete Parameter Reference

完整参数参考

typescript
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;
}
typescript
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;
}

Workflow Examples

工作流示例

Portrait Animation Pipeline

人像动画流程

typescript
// 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);
typescript
// 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);

Product Showcase

产品展示

typescript
// 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
  }
});
typescript
// 为产品图像添加动画
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
  }
});

Nature Scene

自然场景

typescript
// 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
  }
});
typescript
// 创建自然氛围视频
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
  }
});

Fast Preview Workflow

快速预览工作流

typescript
// 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"
  }
});
typescript
// 使用快速模型生成预览
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"
  }
});

Best Practices

最佳实践

Image Preparation

图像准备

  1. High Resolution: Use high-quality source images
  2. Clear Subject: Ensure main subject is clearly visible
  3. Proper Framing: Leave room for motion
  4. Consistent Lighting: Avoid harsh shadows
  1. 高分辨率:使用高质量源图像
  2. 主体清晰:确保主要主体清晰可见
  3. 合理构图:为运动预留空间
  4. 光线一致:避免强烈阴影

Prompt Tips

提示词技巧

  1. Describe the motion, not the static scene
  2. Be specific about direction (left, right, forward)
  3. Include speed (slowly, quickly, gradually)
  4. Match motion to image content
  1. 描述运动,而非静态场景
  2. 明确方向(左、右、向前)
  3. 包含速度(缓慢、快速、渐进)
  4. 运动与图像内容匹配

Common Issues

常见问题

IssueCauseSolution
Static outputVague promptAdd specific motion verbs
Distorted facesFast motionUse "subtle", "gentle"
Inconsistent motionComplex sceneFocus on one element
Cut-off motionShort durationExtend duration if available
问题原因解决方案
输出静态画面提示词模糊添加具体的运动动词
面部变形运动过快使用"subtle", "gentle"等修饰词
运动不一致场景复杂聚焦于单个元素
运动被截断时长过短若支持则延长时长

Model Selection

模型选择

Use CaseRecommended Model
PortraitsKling 2.5/2.6 Pro
ProductsMiniMax (prompt optimizer)
LandscapesLuma (loop option)
Fast testingSVD, Runway Turbo
With audioKling 2.6 Pro
使用场景推荐模型
人像Kling 2.5/2.6 Pro
产品MiniMax(带提示词优化器)
风景Luma(带循环选项)
快速测试SVD, Runway Turbo
需要音频Kling 2.6 Pro