HappyHorse 1.1 Text-to-Video

ali/happyhorse-1-1/text-to-video
OfficialText-to-Video

HappyHorse 1.1 Text-to-Video is Alibaba's next-generation AI text-to-video model. Built on an integrated audio-video joint generation architecture, it generates native 720P/1080P HD videos directly from text, supporting up to 15 seconds of rendering. It natively supports multilingual lip-sync, ambient sound effects, and audio-visual synchronization without extra dubbing, while delivering exceptional motion smoothness, subject consistency, and camera control—ideal for short dramas, commercial ads, and social media video production.

Read Me

HappyHorse 1.1 Text-to-Video API

Overview

HappyHorse 1.1 Text-to-Video is Alibaba's native multimodal AI video generation model (single-stream Transformer architecture) on iCreat: input a text prompt — optionally with a negative prompt and a first-frame reference image — to generate a short video clip with natively synchronized audio. Developers call ali/happyhorse-1-1/text-to-video through the async task queue, with 720P / 1080P output, five aspect ratios, and 4–15 second durations.

ali/happyhorse-1-1/text-to-video

Core Capabilities

Text-to-video generation. Drive video generation from a text prompt alone, no reference material required — ideal for quickly turning copy and creative descriptions into motion.

First-frame image reference. Pass an image via media[].type: first_frame to anchor the video's first frame (image-to-video style usage); the prompt describes how the scene unfolds.

Negative prompt. negative_prompt describes content that should not appear in the video, giving fine control over what the model avoids.

Native audio-video synchronization. Built on a single-stream Transformer that encodes text, image, video, and audio in one representation space, the model generates synchronized audio (ambience, music, sound effects) together with the visuals.

Dual resolution. 720P for cost-effective iteration; 1080P for sharper final delivery.

Five aspect ratios. 1:1, 9:16, 16:9, 3:4, and 4:3 cover square feeds, vertical short video, and landscape formats.

4–15 second durations. Short lengths tailored for teasers, loops, and social clips.

Watermark control. watermark defaults to false; enable it when an AI-generated mark is required.

Async task design. Submit → poll → retrieve keeps the workflow batch-friendly, fault-tolerant, and easy to integrate.

Model Comparison

HappyHorse 1.1 Text-to-Video vs Seedance 2.5 Text-to-Video vs Kling V3 Omni

Field HappyHorse 1.1 T2V Seedance 2.5 T2V Kling V3 Omni
Developer Alibaba ByteDance Kuaishou
Max duration 15 sec 30 sec (multi-round extension) 15 sec
Resolutions 720P / 1080P 480P / 720P 720P / 1080P / 4K
Aspect ratios 1:1, 9:16, 16:9, 3:4, 4:3 16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive 16:9, 9:16, 1:1
Reference input First-frame image (optional) Text-driven (reference image optional) Images, videos, characters
Negative prompt Supported (negative_prompt)
Native audio Yes (native sync) Yes
5-second cost $0.70 (720P) / $0.90 (1080P) $0.70 (480p) / $1.52 (720p) Std $0.42
Best for Cost-effective clips with native audio Copy/script to video Long narratives, multi-shot

Input

The text prompt is required. The negative prompt and first-frame reference image are optional.

Input Count Format Notes
Text prompt 1 input.prompt Required; describes the video to generate
Negative prompt 1 input.negative_prompt Optional; describes content that should not appear
First-frame image 1 input.media[] Optional; type: first_frame + url

Input Examples

Text-to-video

{
  "input": {
    "prompt": "一只奔跑的小猫",
    "negative_prompt": "小猫不应沿直线奔跑"
  },
  "parameters": {
    "resolution": "720P",
    "ratio": "1:1",
    "duration": 5,
    "watermark": false
  }
}

Without negative prompt

{
  "input": {
    "prompt": "一只小猫在草地上奔跑",
    "media": [
      {
        "type": "first_frame",
        "url": "https://example.com/cat.jpg"
      }
    ]
  },
  "parameters": {
    "resolution": "1080P",
    "ratio": "16:9",
    "duration": 5,
    "watermark": false
  }
}

Parameters

input fields

Field Type Required Description
prompt string Yes Prompt describing the video to generate
negative_prompt string No Describes content that should not appear in the video
media object[] No List of reference media
media[].type string Yes Media type. Use first_frame for the first-frame image
media[].url string Yes URL of the reference image

parameters fields

Field Type Required Description
resolution string Yes Video resolution. Available values: 720P, 1080P
ratio string Yes Video aspect ratio. Available values: 1:1, 9:16, 16:9, 3:4, 4:3
duration integer Yes Video duration in seconds. Range: 415
watermark boolean No Whether to add a watermark. Defaults to false

Pricing

Resolution Unit Price (USD/second) Cost for 5 Seconds Cost for 15 Seconds
720P 0.14 0.70 2.10
1080P 0.18 0.90 2.70
Total Cost = Unit Price × Output Video Duration

Quick Start

This API uses an API Key for authentication. Get your API Key from https://icreat.ai/hub/keys.

Submit a request:

curl --fail-with-body --connect-timeout 10 --max-time 60 \
  -X POST https://api.icreat.ai/v1/task/submit/ali/happyhorse-1-1/text-to-video \
  -H "Authorization: Bearer ${ICREAT_API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
    "input": {
      "prompt": "一只奔跑的小猫",
      "negative_prompt": "小猫不应沿直线奔跑"
    },
    "parameters": {
      "resolution": "720P",
      "ratio": "1:1",
      "duration": 5,
      "watermark": false
    }
  }'

The server will return:

{
  "task_id": "task-xxx"
}

Poll the task status:

curl --connect-timeout 10 --max-time 60 \
  -X POST "https://api.icreat.ai/v1/task/query-status" \
  -H "Authorization: Bearer ${ICREAT_API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
  "task_id": "task-xxx"
}'

When the status is SUCCEEDED, retrieve the result:

curl --connect-timeout 10 --max-time 60 \
  -X POST "https://api.icreat.ai/v1/task/get-result" \
  -H "Authorization: Bearer ${ICREAT_API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
  "task_id": "task-xxx"
}'

Output

submit → task_id → query-status (SUCCEEDED) → get-result

After submitting the request, poll query-status with the returned task_id until the status becomes SUCCEEDED, then call get-result with the same task_id to retrieve the generated video (with natively synchronized audio).

Use Cases

Social short clips. 4–15 second teasers, loops, and clips sized for feeds and stories, with the aspect ratio matched to each platform.

E-commerce product animation. Use a product image as the first frame and drive the camera or product motion with a prompt — turn static images into dynamic showcases.

Short drama and narrative clips. Native audio-video synchronization and consistent characters make the model well suited to short-drama and multi-scene narrative production.

Low-cost fast iteration. At $0.70 for a 720P 5-second clip, test multiple creative directions cheaply before investing in premium renders.

Limitations

Duration is limited to 4–15 seconds; longer narratives must be split across multiple requests and stitched in post.

Only 720P and 1080P resolutions are available.

The current interface exposes a single reference media type (first_frame); other reference inputs (multi-image reference, video reference) are not supported on this endpoint.

resolution, ratio, and duration are required fields and must be included in every request.

FAQ

How do I get an API Key?

Create one at https://icreat.ai/hub/keys and pass it via the Authorization: Bearer header.

Can I start generation from an image?

Yes. Pass the image via input.media with "type": "first_frame" and its URL; the video starts from that frame. The text prompt is still required to describe the motion.

What does negative_prompt do?

Describes content that should not appear — e.g. "小猫不应沿直线奔跑" — without touching the main prompt.

Is audio generated?

The model natively synchronizes audio with video. Audio is generated together with the visuals — no separate audio-generation request is required.

Is the watermark on by default?

No. watermark defaults to false; set it to true to add the AI-generated mark.

How is the cost calculated?

Total Cost = Unit Price × Output Video Duration. For example, a 10-second 1080P video costs 0.18 × 10 = $1.80.

720P or 1080P?

Use 720P for fast, low-cost iteration; use 1080P for final delivery that needs more visible detail.