Runflow
Back to Gallery

alibaba/happy-horse/video-edit

HappyHorse video editing supports advanced video editing through natural language instructions. It allows for local or global editing of video elements using up to 5 reference images.

$0.28/second 2026-04-28

Install

pip install requests

Run the model

import requests

response = requests.post(
    "https://api.runflow.io/v1/run/happy-horse/video-edit",
    headers={"Authorization": "Bearer RUNFLOW_API_KEY"},
    json={
    "prompt": "Replace the underwater background with deep cosmic space, the jellyfish becom...",
    "video_url": "https://public.runflow.io/images/models/_shared/source-videos/jellyfish-1080.mp4",
    "resolution": "720p"
    },
)

data = response.json()
print(data["video"]["url"])

Input schema

ParameterTypeDescription
promptstringText prompt describing the desired edit. Reference any supplied reference images using @Image1, @Image2, ... up to @Image5. Max 2500 characters.
video_urlvideoURL of the source video to edit. Formats: MP4, MOV (H.264 recommended). Duration: 3-60 s. Longer side ≤ 2160 px, shorter side ≥ 320 px. Aspect ratio between 1:2.5 and 2.5:1. Frame rate > 8 fps. Max 100 MB. The output video preserves the source aspect ratio. Output duration matches the input video, capped at 15 s (longer inputs are truncated to the first 15 s).
audio_settingstringAudio handling. 'auto': model decides whether to regenerate audio. 'origin': preserve the original audio from the input video.
enable_safety_checkerbooleanEnable content moderation for input and output.
reference_image_urlsimage_listOptional reference images used to guide the edit (up to 5). Formats: JPEG, JPG, PNG, WEBP. Dimensions must be at least 300px. Aspect ratio between 1:2.5 and 2.5:1. Max 10 MB each.
resolutionstringOutput video resolution tier.
seedintegerRandom seed for reproducibility (0-2147483647).

Output schema

FieldTypeDescription
outputsjsonUnified output array — one entry per generated artifact with url/type/width/height/duration/etc.
seedjsonDeterministic seed used for generation, or null if the provider doesn't return one.
timingjsonProvider timing info (inference_ms etc.), or null.
nsfw_detectedjsontrue if the provider flagged output as NSFW, false if cleared, null if not checked.

Related models

Start generating with Happy Horse Video Edit

Get API access in minutes. No GPU setup, no infrastructure to manage.