Alibaba Happyhorse 1.1 Video Extend

Alibaba Happyhorse 1.1 Video Extend

Playground

Try it on WaveSpeedAI!

Alibaba HappyHorse 1.1 Video Extend extends existing videos with seamless AI-generated continuation, supporting 720P / 1080P output while preserving visual continuity and motion consistency. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

Features

Alibaba Happy Horse 1.1 Video Extend continues an existing video clip with new AI-generated footage, seamlessly extending the scene from where the original ends. Upload a source video, describe how the video should continue, and generate a coherent continuation in 720p or 1080p.


Why Choose This?

  • Seamless video continuation
    Extend an existing clip with newly generated footage that picks up naturally from the original ending.

  • Prompt-guided scene progression
    Describe how the action, camera movement, atmosphere, or story should continue using natural language.

  • Cinematic motion
    Generate smooth, expressive motion while preserving the overall feel and flow of the source video.

  • Flexible resolution options
    Choose 720p for lower-cost iteration or 1080p for higher-resolution output.

  • Production-ready API
    Access the model through a REST inference API for scalable integration into creative workflows.


Parameters

ParameterRequiredDescription
videoYesSource video to extend.
promptYesText description of the desired continuation.
resolutionNoOutput resolution: 720p default or 1080p.
durationNoTotal output duration in seconds. Range: 3–15, default 5.
seedNoRandom seed for reproducibility. Range: 0–2147483647.

How to Use

  1. Upload your source video — Provide the clip you want to continue.
  2. Write your prompt — Describe how the scene, subject, camera, or atmosphere should progress after the original ending.
  3. Choose resolution — Use 720p for lower-cost iteration or 1080p for higher-resolution output.
  4. Set duration — Choose the total output duration between 3 and 15 seconds.
  5. Set a seed optional — Use a fixed seed if you want more reproducible results.
  6. Submit — Generate and download the extended video.

Example Prompt

Continue the scene with a slow forward camera movement, the subject walking deeper into the alley, soft rain beginning to fall, stronger reflections on the ground, and a cinematic moody nighttime atmosphere.


Pricing

Per 5 Seconds

ResolutionCost
720p$0.70
1080p$0.945

Per Second

ResolutionCost
720p$0.14
1080p$0.189

Example Costs

Resolution3s5s10s15s
720p$0.42$0.70$1.40$2.10
1080p$0.567$0.945$1.89$2.835

Best Use Cases

  • Scene continuation — Extend cinematic clips with natural motion and coherent progression.
  • Storyboarding and concept work — Explore how a shot or sequence might continue without manual video production.
  • Ad creative development — Expand short promo clips into longer variations for campaigns and testing.
  • Social media content — Create longer edits from short source footage for platform-specific needs.
  • Atmospheric scene building — Continue motion, lighting, and mood from an existing clip into a richer sequence.
  • Creative prototyping — Quickly test alternate continuations before investing in full production.

Pro Tips

  • Use a source video with a clear ending frame for smoother continuation.
  • Be explicit about what should happen next, including subject action, camera motion, lighting, and atmosphere.
  • Keep prompts visually concrete, such as “camera slowly pushes in,” “the subject turns and walks away,” or “fog begins to roll in.”
  • Use 720p for quick testing, then switch to 1080p for higher-resolution output.
  • Reuse the same seed when you want more reproducible generations.
  • Start with shorter durations to validate continuity before generating longer clips.


## Authentication

For authentication details, please refer to the [Authentication Guide](/api-authentication).

## API Endpoints

### Submit Task & Query Result

<ApiTabs submitUrl={model.submitUrl} resultUrl={model.resultUrl} payload={model.defaultValues} />

## Parameters

### Task Submission Parameters

#### Request Parameters

<RequestParams params={model.params} />

#### Response Parameters

<SubmitResponse />

#### Result Request Parameters

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| id | string | Yes | - | Task ID |

#### Result Response Parameters

| Parameter | Type | Description |
|-----------|------|-------------|
| code | integer | HTTP status code (e.g., 200 for success) |
| message | string | Status message (e.g., "success") |
| data | object | The prediction data object containing all details |
| data.id | string | Unique identifier for the prediction |
| data.model | string | Model ID used for the prediction |
| data.outputs | array&lt;string \| object&gt; | Array of generated outputs (empty when status is not completed). Items are usually URL strings, but may be text strings or structured result objects, depending on the model. |
| data.urls | object | Object containing related API endpoints |
| data.urls.get | string | URL to poll for the prediction result |
| data.status | string | Status: `created`, `processing`, `completed`, or `failed` |
| data.created_at | string | ISO timestamp of when the request was created |
| data.error | string | Error message (empty if no error occurred) |
| data.timings | object | Object containing timing details |
| data.timings.inference | integer | Inference time in milliseconds |
© 2026 WaveSpeedAI. All rights reserved.