# Wan | v2.2 A14B | Image to Video | Turbo WAN 2.2 A14B Image to Video Turbo transforms a single input image into a dynamic short video. It adds realistic motion, smooth transitions, and cinematic camera effects while preserving the original details of the image. ## API Information - **Model Slug:** wan-v2-2-a14b-image-to-video-turbo - **Branded URL:** https://www.eachlabs.ai/alibaba/wan-v2-2/wan-v2-2-a14b-image-to-video-turbo - **Provider:** Alibaba - **Category:** Image to Video - **Output Type:** video - **Status:** active - **Version:** 0.0.1 - **Base Cost:** 720p pricing (fallback): $0.10/second - **Estimated Processing Time:** 35 seconds - **Last Updated:** 2026-06-01 - **Interactive Demo:** https://www.eachlabs.ai/ai-models/wan-v2-2-a14b-image-to-video-turbo ## Pricing - **Charge Type:** dynamic - **Pricing Details:** 720p pricing (fallback): $0.10/second ### Pricing Rules | Condition | Pricing | | --- | --- | | resolution eq_i "480p" | 480p pricing: $0.05/second | | resolution eq_i "580p" | 580p pricing: $0.075/second | | Rule 3 | 720p pricing (fallback): $0.10/second | ## Input Schema | Parameter | Type | Required | Default | Constraints | Description | |-----------|------|----------|---------|-------------|-------------| | image_url | string | Yes | - | - | URL of the input image. If the input image does not match the chosen aspect ratio, it is resized and center cropped. | | prompt | string | Yes | - | - | The text prompt to guide video generation. | | end_image_url | string | No | - | - | - | | resolution | string | No | 720p | 480p,580p,720p | Resolution of the generated video (480p, 580p, or 720p). | | aspect_ratio | string | No | auto | auto,16:9,9:16,1:1 | Aspect ratio of the generated video. If 'auto', the aspect ratio will be determined automatically based on the input image. | | enable_safety_checker | boolean | No | false | - | If set to true, input data will be checked for safety before processing. | | enable_prompt_expansion | boolean | No | false | - | Whether to enable prompt expansion. This will use a large language model to expand the prompt with additional details while maintaining the original meaning. | | acceleration | string | No | regular | none,regular | Acceleration level to use. The more acceleration, the faster the generation, but with lower quality. The recommended value is 'regular'. | | seed | integer | No | - | - | Random seed for reproducibility. If None, a random seed is chosen. | ## Example Request ```bash curl -X POST https://api.eachlabs.ai/v1/prediction/ \ -H "X-API-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "wan-v2-2-a14b-image-to-video-turbo", "input": { "prompt": "A graceful female dancer in a modern studio continues her elegant contemporary dance, smoothly transitioning from the frozen pose into flowing movements. She lifts her arm higher, arches her body with fluid motion, and steps lightly across the polished wooden floor. Soft daylight streams through the large windows, casting dynamic shadows as she turns and extends her movements with cinematic elegance. Ultra realistic, natural lighting, dynamic camera focus", "image_url": "https://storage.googleapis.com/magicpoint/inputs/wan-2.2-a14b-i2v-input.jpg" } }' ``` ## Output Schema Response returned by `GET /v1/prediction/{id}` when the job completes: ```json { "status": "success", "predictionID": "string", "output": "string (URL of generated video)", "metrics": { "predict_time": "number (seconds)" } } ``` ## Polling ```bash curl https://api.eachlabs.ai/v1/prediction/{PREDICTION_ID} \ -H "X-API-Key: YOUR_API_KEY" ``` | Status | Meaning | |--------|---------| | `processing` | Still running — poll again | | `success` | Done — read `output` | | `error` | Failed — read `message` / `details` | ## Webhook (alternative to polling) Pass `"webhook_url": "https://your.host/path"` in the create request. Eachlabs POSTs this payload when the job ends: ```json { "exec_id": "prediction-uuid", "status": "succeeded", "output": "https://...", "error": "" } ``` `status` is `"succeeded"` or `"failed"`. `exec_id` equals the `predictionID` from create. Return 2xx within 30 seconds. ## Errors Error body: `{ "status": "error", "message": "...", "details": "..." }` | Code | Meaning | |------|---------| | `400` | Invalid input | | `401` | Missing / invalid `X-API-Key` | | `404` | Unknown model or prediction id | | `429` | Rate limit — 100 creates / min, 10 concurrent per key | | `5xx` | Retry with backoff | ## Overview **wan-v2.2-a14b-image-to-video-turbo — Image-to-Video AI Model** Developed by Alibaba as part of the **wan-v2.2** family, **wan-v2.2-a14b-image-to-video-turbo** transforms static images into dynamic short videos with realistic motion, smooth transitions, and cinematic camera effects, preserving original image details for professional-grade outputs. This **image-to-video AI model** leverages a Mixture-of-Experts (MoE) architecture to boost capacity without increasing inference costs, enabling high-quality 720p video synthesis at 24 fps on consumer GPUs like the RTX 4090. Ideal for creators seeking an **Alibaba image-to-video** solution, it supports ~4-second clips (65 frames at 16 fps), making it perfect for quick social media content or prototypes without heavy compute demands. ## Usage Notes - API Base URL: `https://api.eachlabs.ai/v1` - Authentication: send `X-API-Key: YOUR_API_KEY`. Generate a key from the Eachlabs dashboard at https://www.eachlabs.ai/dashboard/api-keys. - File-typed parameters (`*_url`, `image_url`, `video_url`, `audio_url`, etc.) accept publicly-reachable HTTPS URLs only. Upload your asset first (GCS / S3 / your CDN) and pass the resulting URL. Data-URIs and localhost URLs are rejected. - For structured parameters (arrays / objects) send real JSON values, not stringified payloads. - Monetary values are reported in USD; per-token / per-megapixel rates may be billed in micro-cents internally. - Prefer `webhook_url` over polling for long-running predictions — see the Webhook Callback section.