# Alibaba | HappyHorse 1.0 | Image to Video Generates video from images while preserving key details like subject, style, and text elements with high visual consistency across dynamic transitions. ## API Information - **Model Slug:** alibaba-happyhorse-1-0-image-to-video - **Branded URL:** https://www.eachlabs.ai/alibaba/happyhorse-1-0/alibaba-happyhorse-1-0-image-to-video - **Provider:** Alibaba - **Category:** Image to Video - **Output Type:** video - **Status:** active - **Base Cost:** $0.14–$0.24 per second, depending on resolution - **Estimated Processing Time:** 70 seconds - **Interactive Demo:** https://www.eachlabs.ai/ai-models/alibaba-happyhorse-1-0-image-to-video ## Pricing - **Charge Type:** dynamic - **Estimate:** $0.14–$0.24 per second, depending on resolution - **Pricing Details:** 720P: $0.14 - **Pricing Details:** default: $0.24 ## Input Schema | Parameter | Type | Required | Default | Constraints | Description | |-----------|------|----------|---------|-------------|-------------| | prompt | string | No | - | - | Optional text description guiding the motion of the generated video. Supports any language. Maximum 5,000 non-Chinese characters or 2,500 Chinese characters; excess is automatically truncated. | | first_frame | string | Yes | - | - | URL of the image to use as the first frame. Required. Format: JPEG, JPG, PNG, WEBP. Width and height each at least 300 px. Aspect ratio between 1:2.5 and 2.5:1. Max 10 MB. Output aspect ratio automatically matches this image. | | resolution | string | No | 1080P | 720P, 1080P | Output video resolution. 720P: lower cost, faster generation. 1080P: higher quality (default). Aspect ratio is auto-derived from the first_frame image. | | duration | integer | No | 5 | 3–15 | Video duration in seconds. Range: 3-15. Each second is billed separately. Default: 5. | | seed | integer | No | - | 0–2147483647 | Seed for reproducibility. Range [0, 2147483647]. Same seed produces similar (not identical) results because generation is probabilistic. Random if omitted. | ## Example Request ```bash curl -X POST https://api.eachlabs.ai/v1/prediction/ \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "alibaba-happyhorse-1-0-image-to-video", "input": { "first_frame": "https://cdn-us.eachlabs.ai/defaults/bcdc949f2266eef43c6c02e05e807e08dc8f474b40e985755682586ede41ebdd.png" } }' ``` ## 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 "Authorization: Bearer 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 `Authorization` bearer token | | `404` | Unknown model or prediction id | | `429` | Rate limit — 100 creates / min, 10 concurrent per key | | `5xx` | Retry with backoff | ## Overview **Alibaba | HappyHorse 1.0 | Image to Video Overview** Alibaba | HappyHorse 1.0 | Image to Video transforms a single input image into physically realistic videos with smooth, natural motion, optionally guided by a text prompt. This Alibaba Cloud model, part of their advanced video generation suite, solves the challenge of animating static images into dynamic content while preserving the input's aspect ratio automatically. Its primary differentiator is the "First-frame-to-video" capability, using the provided image as the exact starting frame for seamless video extension. Ideal for creators needing quick, high-fidelity animations without complex setups, it supports 720P or 1080P resolutions and 3-15 second durations. Available via Alibaba Cloud Model Studio, this image-to-video tool stands out for realistic physics simulation in motion generation. ## Usage Notes - API Base URL: `https://api.eachlabs.ai/v1` - Authentication: send `Authorization: Bearer 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.