Introduction
HappyHorse 1.1 Références vers vidéo construit un plan à partir d’une à neuf images de référence, envoyées dans reference_image_urls dans l’ordre où le prompt les cite. Il renvoie de 3 à 15 secondes entières en 720p ou 1080p, dans l’un des neuf formats d’image, avec une bande-son générée. Les références sont uniquement des images ; aucune référence vidéo ou audio n’est acceptée.
Choisir le mode selon le matériau de départ
| Matériau de départ | Mode |
|---|---|
| une scène écrite ou un script | HappyHorse 1.1 Texte vers vidéo |
| une image d’ouverture validée | HappyHorse 1.1 Image vers vidéo |
| une à neuf images de référence | HappyHorse 1.1 Références vers vidéo |
Fonctionnalités et points forts
Neuf emplacements ordonnés
Avec jusqu’à neuf images, une seule requête peut fixer un personnage, des pièces de costume, un véhicule, un lieu et des accessoires. L’exemple rider-jacket-bike-station s’appuie sur trois images pour garder identiques d’une prise à l’autre le motard, la veste ouverte, la moto et la station-service, en 3:4 et en 720p : le prompt n’a plus qu’à nommer l’action et la lumière.
Visage, accessoire et lieu dans une même prise
L’exemple three-plate-corridor donne à chaque image un rôle différent : la femme, la guitare rouge cerise qu’elle porte et le couloir de motel aux néons. Le prompt dit quelle image est laquelle, puis demande une seule prise en travelling arrière dans laquelle visage, accessoire et lieu doivent tenir ensemble.
Neuf formats sur ce point de terminaison
aspect_ratio propose neuf valeurs, 16:9 par défaut, dont 1:1, 4:5 et 5:4. L’exemple product-in-place est carré en 1080p : un pot de bougie tiré d’une image posé sur une étagère de marbre tirée d’une autre, éclairé en accord avec la lumière de fenêtre de l’étagère.
Paramètres de requête
| Paramètre | Obligatoire | Description |
|---|---|---|
prompt | Oui | Désignez chaque référence par [Image 1], [Image 2], etc., dans l’ordre d’envoi et avec les crochets, dites ce qu’elle apporte, puis décrivez le plan qu’elles doivent produire. 1 caractères minimum · 2500 caractères maximum |
reference_image_urls | Oui | Obligatoire, de une à neuf images dans l’ordre où le prompt les nomme. Un rôle par image. 1 éléments minimum · 9 éléments maximum |
aspect_ratio | Non | Neuf valeurs, 16:9 par défaut. Disponible ici, mais pas en image-to-video. |
resolution | Non | 720p ou 1080p. |
duration_seconds | Non | Secondes entières, de 3 à 15. |
seed | Non | Entier de 0 à 2147483647 pour le départ aléatoire ; sans lui, chaque exécution tire le sien. |
Tarification
| Spécification | Prix |
|---|---|
| $0.14 / seconde |
| $0.18 / seconde |
Cas d’utilisation
Un produit dans son décor
Envoyez le produit et le lieu comme images séparées et décrivez leur interaction. Dans product-in-place, la caméra avance lentement pendant que la mèche s’allume et qu’un filet de fumée monte, et la lueur chaude de la flamme ajoute une seconde lumière sur le marbre et le lin.
Même distribution et mêmes costumes sur une série
Réutilisez le même jeu de références pour chaque plan afin que l’interprète, le costume et le véhicule restent identiques d’une prise à l’autre, et ne changez que la ligne d’action du prompt. Envoyez les images chaque fois dans le même ordre, pour que les renvois par position désignent toujours la bonne image.
Travail de personnage sans censure ou stylisé
Comme image-to-video, ce chemin suit les images qu’il reçoit. Un travail de personnage sans censure que text-to-video rejetterait peut donc partir d’un jeu de références où la distribution, la tenue et le lieu sont chacun fixés par leur propre image.
Guide de prompt et conseils pratiques
Désigner les images par leur position
Dites ce que chaque image apporte avant de décrire le plan. Les exemples publiés utilisent deux styles positionnels : « Use the woman from the first image exactly as she appears » et « Place the candle jar from [Image 1] into the empty centre of the marble shelf in [Image 2] ». Téléversez les fichiers dans l’ordre où le prompt les nomme.
Un rôle par image
Neuf emplacements, c’est un plafond, pas un objectif. Plusieurs vues du même sujet sont moyennées au lieu d’être conciliées : donnez à chaque image un rôle distinct, par exemple identité, vêtement, accessoire ou lieu. Chaque image doit avoir un petit côté d’au moins 400 px et peser au plus 20 Mo.
Consacrer le prompt à l’action et à la lumière
Une fois l’identité réglée par les références, le prompt dit ce que fait le sujet, pas à quoi il ressemble : « he swings a leg over the tank and settles, the overhead light pressing down from directly above, moths in the beam ». Gardez les indications de lumière cohérentes avec l’image du lieu, comme product-in-place qui reprend la direction et la température de couleur de la lumière de l’étagère.
Démarrage rapide de l’API
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "alibaba/happyhorse-1.1/reference-to-video",
"input": {
"aspect_ratio": "16:9",
"duration_seconds": 5,
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"reference_image_urls": [
"https://example.com/reference.png"
],
"resolution": "720p"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
La référence API détaille l’authentification, le schéma complet, le polling et la gestion des erreurs.







