
Hailuo 02 Start/End Frame Image To Video
by MiniMaxGenerate cinematic 1080p videos from images with precise keyframe control, realistic physics, and 10-second clips at 24-30 FPS—perfect for filmmaking and professional content creation.
Hailuo-02-start-end-frameInput
Output
Hailuo 02 Start/End Frame Image To Video
Keyframe videos. Precisely.
Control Every Frame. Generate Faster.
- Precise ControlStart and End FrameSet beginning and ending positions to morph images into seamless video transitions.
- Cinema QualityPhysics-Aware MotionFrame-by-frame generation simulates realistic fur, fluid, lighting, and physics automatically.
- Fast Processing4-8 Minute GenerationStandard 768p renders in 4 minutes; Pro 1080p in 8 minutes for production workflows.
Hailuo 02 Start/End Frame Image To Video questions
- What is Hailuo 02 Start/End Frame Image To Video?
- Hailuo 02 Start/End Frame is an AI video generation model that converts static images into dynamic videos by setting precise start and end frames. You provide two images (before and after), add a motion description, and the model generates a seamless video transition between them.
- How does the Start/End Frame feature work?
- Upload your first frame and last frame, then describe the video content you want generated. The model interpolates realistic motion between the two keyframes using physics-aware diffusion. You can also use End Frame Only if you only need the ending position.
- What resolutions and durations are supported?
- Standard model supports 768p at 6 or 10 seconds. Pro model supports 1080p at 6 seconds. Both output at 25fps in MP4 format with processing times of approximately 4 minutes (Standard) and 8 minutes (Pro).
- What image formats and specifications are required?
- Supported formats include JPG, JPEG, PNG, WebP, GIF, and AVIF. Images must have an aspect ratio between 2:5 and 5:2, minimum 300px on the shorter side, and maximum file size of 20MB for optimal results.
- How is Hailuo 02 Start/End Frame different from standard image-to-video?
- This model gives you precise keyframe control by setting both beginning and ending positions, enabling creative morphing effects and directional motion. Standard image-to-video generates motion from a single image without endpoint specification.
- What are best practices for optimal video quality?
- Use high-quality source images with clear subjects, write descriptive prompts specifying motion type and cinematography details, and ensure images meet technical specifications. Detailed prompts about lighting, composition, and camera movement yield better results.
Looking for something different?
Models that trade off differently against the one you are viewing
Better quality
Newer flagship models that generally produce stronger results.
Faster Generation
Built for speed when you are iterating on a prompt.



Lower cost per run
Open-source models we host, unlimited on the $149/month plan.






Related Models
Discover similar models you might be interested in
About Hailuo 02 Start/End Frame Image To Video
Generate cinematic 1080p videos from images with precise keyframe control, realistic physics, and 10-second clips at 24-30 FPS—perfect for filmmaking and professional content creation.
Hailuo 02 Start/End Frame Image To Video facts
- Provider
- MiniMax
- Price
- $0.096 per second of video
- Added to ModelsLab
- November 10, 2025
- Model ID
- Hailuo-02-start-end-frame
Key Features
- AI video generation from text or image input
- Motion control and camera movement parameters
- Adjustable frame rate and video duration
- High-quality cinematic output up to 1080p
- Native audio generation support
Quick Start
Integrate Hailuo 02 Start/End Frame Image To Video into your application with a single API call. Get your API key from the pricing page to get started.
import requestsimport jsonurl = "https://modelslab.com/api/v7/video-fusion/image-to-video"headers = {"Content-Type": "application/json"}data = {"model_id": "Hailuo-02-start-end-frame","prompt": "Animate the seasonal transformation — snow melting, colors emerging, flowers blooming, and the light warming up as winter fades into spring.","key": "YOUR_API_KEY"}try:response = requests.post(url, headers=headers, json=data)response.raise_for_status() # Raises an HTTPError for bad responses (4XX or 5XX)result = response.json()print("API Response:")print(json.dumps(result, indent=2))except requests.exceptions.HTTPError as http_err:print(f"HTTP error occurred: {http_err} - {response.text}")except Exception as err:print(f"Other error occurred: {err}")
const endpointUrl = 'https://modelslab.com/api/v7/video-fusion/image-to-video';const requestBody = {"model_id": "Hailuo-02-start-end-frame","prompt": "Animate the seasonal transformation — snow melting, colors emerging, flowers blooming, and the light warming up as winter fades into spring.","key": "YOUR_API_KEY"};async function makeApiRequest() {try {const response = await fetch(endpointUrl, {method: 'POST',headers: {'Content-Type': 'application/json',},body: JSON.stringify(requestBody)});if (!response.ok) {let errorResult;try {errorResult = await response.json();} catch (e) {errorResult = { error: { message: await response.text() } };}throw new Error(`API Error (${response.status}): ${errorResult.error?.message || response.statusText || 'Unknown error'}`);}const result = await response.json();console.log('API Response:', result);return result;} catch (error) {console.error('Error making API request:', error.message);throw error;}}makeApiRequest();
curl -X POST "https://modelslab.com/api/v7/video-fusion/image-to-video" \-H "Content-Type: application/json" \-d '{"model_id": "Hailuo-02-start-end-frame","prompt": "Animate the seasonal transformation — snow melting, colors emerging, flowers blooming, and the light warming up as winter fades into spring.","key": "YOUR_API_KEY"}'
<?php$url = 'https://modelslab.com/api/v7/video-fusion/image-to-video';$headers = ['Content-Type: application/json'];$data = ['model_id' => 'Hailuo-02-start-end-frame','prompt' => 'Animate the seasonal transformation — snow melting, colors emerging, flowers blooming, and the light warming up as winter fades into spring.','key' => 'YOUR_API_KEY',];$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_POST, true);curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_TIMEOUT, 30);$response = curl_exec($ch);$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);$curlError = curl_error($ch);if ($curlError) {echo 'Curl error: ' . $curlError;} else {echo "HTTP Status Code: " . $httpCode . "\n";$result = json_decode($response, true);if (json_last_error() !== JSON_ERROR_NONE) {echo "Error decoding JSON: " . json_last_error_msg() . "\n";echo "Raw response: " . $response . "\n";} else {echo "API Response:\n";print_r($result);}}?>
Pricing
Hailuo 02 Start/End Frame Image To Video API costs $0.096 per second of output. Plans start at $21/month, and open-source models are unlimited on the $149/month plan. View pricing plans
Use Cases
- Marketing and promotional video creation
- Social media short-form video content
- Product demos and explainer videos
- Creative storytelling and animation












