# HappyHorse 1.1 image en vidéo : guide de l'API et 5 vrais clips

> Appeler HappyHorse 1.1 image en vidéo depuis Python : champs de la requête, filigrane et son, le prix par seconde d'Alibaba et 5 clips tirés de nos photos.

- Canonical HTML: https://omniakey.com/fr/blog/happyhorse-1-1-image-to-video
- Markdown: https://omniakey.com/fr/blog/happyhorse-1-1-image-to-video.md
- Published: 2026-11-02 (updated 2026-11-02)
- Author: Kiki, COO at OmniaKey
- Language: fr
- Category: API setup
- Reading time: 11 min
- All posts: https://omniakey.com/blog/llms.txt

---

Pour animer une image fixe avec [HappyHorse 1.1](https://omniakey.com/fr/happyhorse-1-1) image en vidéo, envoyez-la comme `first_frame` à `https://api.omniakey.com/v1/media/tasks` avec l'ID de modèle `happyhorse-1.1-i2v`, interrogez la tâche, puis téléchargez le MP4. Nos cinq clips de 5 secondes en 720P ont pris entre 92 et 158 secondes le 2 novembre 2026. Chaque clip contenait une musique que nous n'avions pas demandée, et le réglage par défaut ajoute un filigrane "Happy Horse".

## Réponse courte

- La requête : modèle `happyhorse-1.1-i2v`, opération `image_to_video` et exactement un `first_frame` dans `input.media`.
- Format d'image : le clip suit votre photo, car il n'y a pas de champ `ratio`.
- Durée et taille : de 3 à 15 secondes en 480P, 720P ou 1080P ; envoyez `resolution` à chaque fois, car la valeur par défaut d'Alibaba est 1080P.
- Filigrane : actif par défaut, désactivé avec `watermark: false`.
- Son : les cinq clips avaient de la musique, l'API d'Alibaba ne liste aucun interrupteur audio, et `ffmpeg` retire la piste.

## De quoi avez-vous besoin avant votre premier appel à HappyHorse 1.1 image en vidéo ?

Trois choses : une clé, Python 3 et une image fixe que les règles d'Alibaba acceptent.

- La clé dans `OMNIAKEY_API_KEY`. Le script l'envoie comme jeton Bearer, elle ne reste donc pas dans le code.
- Python 3 sans rien installer. Le script n'utilise que la bibliothèque standard.
- Une image fixe conforme à [la référence de l'API image en vidéo d'Alibaba](https://www.alibabacloud.com/help/en/model-studio/happyhorse-image-to-video-api-reference) : JPEG, JPG, PNG ou WEBP ; largeur et hauteur d'au moins 300 pixels ; jusqu'à 20 MB ; rapport d'image de 1:2.5 à 2.5:1. Alibaba n'indique aucun maximum de pixels.

La difficulté vient de la taille : une image intégrée voyage dans le corps de la requête, qui doit tenir dans 1 MiB, Base64 compris ([présentation de l'API média d'OmniaKey](https://docs.omniakey.com/en/media/overview), vérifiée le 2 novembre 2026). Le script s'arrête au-delà de 700 KB ; au-delà, réduisez l'image ou passez une URL HTTPS publique. Notre image 2K pesait 2 254 819 octets, et cette commande macOS l'a ramenée à 92 212 octets :

```bash
sips -s format jpeg -s formatOptions 85 -Z 1280 still.jpg --out still-small.jpg
```

## Quels champs contient la requête ?

Neuf champs définissent la tâche : trois au niveau supérieur, deux dans `input` et quatre dans `parameters`.

|Champ|Valeur|Remarques|
|-|-|-|
|`model`|`happyhorse-1.1-i2v`|l'ID du modèle 1.1 image en vidéo|
|`type`|`video`|le type de fichier que crée la tâche|
|`operation`|`image_to_video`|nom sans préfixe|
|`input.prompt`|texte|OmniaKey l'exige, l'API d'Alibaba le traite comme facultatif ; jusqu'à 5,000 caractères non chinois ou 2,500 caractères chinois, le texte plus long est coupé|
|`input.media`|exactement un `{"type": "first_frame", "url": ...}`|une URL HTTPS publique ou un data URI|
|`parameters.resolution`|`480P`, `720P` ou `1080P`|envoyez-le toujours : la valeur par défaut d'Alibaba est 1080P|
|`parameters.duration`|secondes entières, de 3 à 15|obligatoire sur OmniaKey|
|`parameters.watermark`|`true` (par défaut) ou `false`|`false` retire le texte "Happy Horse"|
|`parameters.seed`|0 à 2147483647|la même seed ne garantit pas le même clip|

Quatre détails se remarquent mal.

- Il n'y a pas de champ `ratio` : le clip garde le rapport d'image de votre photo (référence de l'API image en vidéo d'Alibaba, vérifiée le 2 novembre 2026).
- Les pages d'Alibaba n'affichent aucun champ de prompt négatif.
- Chaque appel de création demande un en-tête `Idempotency-Key`. Le rejouer avec le même corps renvoie la tâche d'origine et ne facture jamais deux fois ; avec un autre corps, il renvoie `409 idempotency_key_reused` ([documentation de l'API vidéo](https://docs.omniakey.com/en/media/video) d'OmniaKey, vérifiée le 2 novembre 2026).
- La taille de sortie varie : dans la documentation d'OmniaKey, une photo de 1200×630 en 720P revient en 1324×696.

## Le script Python

C'est le fichier exact que nous avons exécuté, avec seulement la bibliothèque standard.

```python
"""Animate one still with HappyHorse 1.1 image-to-video through the OmniaKey media API.

Usage:
    export OMNIAKEY_API_KEY="your-omniakey-api-key"
    python3 hh_i2v.py still.jpg "The camera slowly orbits the headphones." clip.mp4

The still can be a local JPEG or PNG (sent inline as a data URL) or a public https:// URL.
"""
import base64
import json
import mimetypes
import os
import sys
import time
import urllib.error
import urllib.request
import uuid

API = "https://api.omniakey.com/v1/media/tasks"
HEADERS = {
    "Authorization": "Bearer " + os.environ["OMNIAKEY_API_KEY"],
    "Content-Type": "application/json",
    "User-Agent": "happyhorse-i2v-example/1.0",
}
POLL_SECONDS = 10
GIVE_UP_AFTER = 15 * 60  # most clips finish in 1-5 minutes


def call(method, url, body=None, extra_headers=None):
    data = json.dumps(body).encode() if body is not None else None
    req = urllib.request.Request(url, data=data, method=method, headers={**HEADERS, **(extra_headers or {})})
    for attempt in range(3):
        try:
            with urllib.request.urlopen(req, timeout=60) as resp:
                return json.load(resp)
        except urllib.error.HTTPError as err:
            sys.exit(f"HTTP {err.code}: {err.read().decode(errors='replace')}")
        except (urllib.error.URLError, TimeoutError, ConnectionError) as err:
            if attempt == 2:
                raise
            print("network error, retrying:", err)  # a retried POST keeps its Idempotency-Key
            time.sleep(5)


def first_frame_url(image):
    if image.startswith("https://"):
        return image
    raw = open(image, "rb").read()
    if len(raw) > 700_000:  # Base64 adds a third, and the whole request must stay under 1 MiB
        sys.exit("The still is over 700 KB. Resize it or pass a public https:// URL instead.")
    mime = mimetypes.guess_type(image)[0] or "image/jpeg"
    return f"data:{mime};base64,{base64.b64encode(raw).decode()}"


def main(image, prompt, out_path):
    task = call("POST", API, {
        "model": "happyhorse-1.1-i2v",
        "type": "video",
        "operation": "image_to_video",
        "input": {"prompt": prompt, "media": [{"type": "first_frame", "url": first_frame_url(image)}]},
        "parameters": {"resolution": "720P", "duration": 5, "watermark": False},  # watermark is on by default
    }, {"Idempotency-Key": str(uuid.uuid4())})
    print("task", task["id"], task["status"])

    start = time.time()
    while task["status"] in ("queued", "processing"):
        if time.time() - start > GIVE_UP_AFTER:
            sys.exit(f"Still {task['status']} after 15 minutes. Do not submit it again; "
                     f"check it later with GET {API}/{task['id']}")
        time.sleep(POLL_SECONDS)
        task = call("GET", f"{API}/{task['id']}")
    print(task["status"], "after", round(time.time() - start), "s")
    if task["status"] != "succeeded":
        sys.exit(json.dumps(task.get("error") or task))

    # The signed download URL is short-lived, so save the file right away.
    req = urllib.request.Request(task["assets"][0]["url"], headers={"User-Agent": HEADERS["User-Agent"]})
    with urllib.request.urlopen(req, timeout=300) as resp, open(out_path, "wb") as f:
        f.write(resp.read())
    print("saved", out_path)


if __name__ == "__main__":
    main(*sys.argv[1:4])
```

Enregistrez-le sous `hh_i2v.py` et lancez :

```bash
export OMNIAKEY_API_KEY="your-omniakey-api-key"
python3 hh_i2v.py still.jpg "The camera slowly orbits the headphones." clip.mp4
```

Notre exécution avec `watermark: false` a affiché ceci :

```text
task task_QqK3ZdAd72vmK1DSOuOxXSytBSaJ244v queued
succeeded after 91 s
saved data/clips/c5-orbit-nowm.mp4
```

Cinq points du script comptent.

- Il interroge toutes les 10 secondes.
- Il abandonne au bout de 15 minutes avec un message qui demande de ne pas renvoyer la tâche.
- En cas d'erreur réseau, il réessaie, et la création relancée garde son `Idempotency-Key`, vous récupérez donc la tâche d'origine au lieu d'une seconde facturation.
- Il enregistre le fichier dès que la tâche réussit, car l'URL de téléchargement signée est de courte durée.
- Il envoie un User-Agent à chaque requête : celui de Python par défaut a reçu un HTTP 403 avec `error code: 1010` de Cloudflare lors de notre test de [Kling 3.0 API](https://omniakey.com/fr/blog/kling-3-0-api) le 29 octobre 2026.

## Cinq clips que nous avons réalisés

Nous avons généré quatre images fixes avec [Nano Banana 2.1](https://omniakey.com/fr/gemini-nano-banana-2-1) et lancé l'image du casque deux fois pour tester le filigrane. Cela a donné cinq clips, tous de 5 secondes et en 720P, le 2 novembre 2026. Les clips portrait, lac et renard sont sortis avec les réglages par défaut, le filigrane apparaît donc sur ces images.

### Orbite du casque

```prompt
The camera slowly orbits about 90 degrees to the right around the headphones while a soft band of light sweeps across the ear cups. The headphones stay perfectly still on the pedestal. Smooth, steady product-commercial camera move.
```

![Huit images d'un casque noir sur un socle en pierre. La caméra passe d'un côté à l'autre et, sur les images du milieu, le bord courbe d'un décor apparaît derrière.](https://omniakey.com/_img/blog/happyhorse-1-1-image-to-video/c5-orbit-nowm-frames.a561e2e5.1280.webp)

_Huit images du clip d'orbite dans l'ordre chronologique, de 0.0 à 4.85 secondes, filigrane sur false. HappyHorse 1.1 via l'API OmniaKey, image en vidéo, 5 secondes, 720P, réalisé le 2 novembre 2026._

La caméra passe d'un côté du casque à l'autre, et le casque reste sur le socle. Sur les images du milieu, le bord courbe d'un décor absent de la photo apparaît derrière, et la bande de lumière demandée dans le prompt se voit à peine.

Nous avons lancé le même prompt sur la même photo deux fois, une fois avec les réglages par défaut et une fois avec `watermark: false`, et le coin montre la différence.

![Le coin inférieur droit de deux clips. Celui du haut affiche le texte blanc Happy Horse, celui du bas, avec le filigrane sur false, est propre.](https://omniakey.com/_img/blog/happyhorse-1-1-image-to-video/watermark-corner.f1918105.1048.webp)

_Coin inférieur droit de la dernière image de chaque clip d'orbite, agrandi. En haut : réglages par défaut. En bas : filigrane sur false. HappyHorse 1.1 via l'API OmniaKey, image en vidéo, 5 secondes, 720P, réalisé le 2 novembre 2026._

### Portrait sous la pluie

```prompt
She slowly turns her head toward the camera and gives a small smile while light rain keeps falling. The neon signs behind her flicker softly and the camera pushes in a little.
```

![Quatre images d'une femme en imperméable jaune dans une rue néon mouillée. Elle tourne la tête de la gauche vers la caméra et sourit, tandis que le plan passe de la taille aux épaules à un gros plan.](https://omniakey.com/_img/blog/happyhorse-1-1-image-to-video/c2-smile-frames.b5f07e60.1280.webp)

_Quatre images du clip portrait sous la pluie dans l'ordre chronologique, de 0.0 à 4.85 secondes, avec le filigrane par défaut. HappyHorse 1.1 via l'API OmniaKey, image en vidéo, 5 secondes, 720P, réalisé le 2 novembre 2026._

Elle passe du regard vers la gauche au visage tourné vers la caméra et sourit, dans l'ordre donné par le prompt, et le filigrane est sur chaque image. Le prompt demandait un léger travelling avant, et le plan passe de la taille aux épaules à un gros plan de son visage.

### Travelling avant sur le lac

```prompt
Slow aerial push-in over the water toward the rowboat. Mist drifts across the lake, the boat rocks gently and small ripples spread from its hull, and the golden light grows a little brighter.
```

![Huit images d'une barque en bois sur un lac brumeux au lever du jour. La caméra avance jusqu'à ce que la barque remplisse presque tout le cadre, et des ondulations partent de la coque.](https://omniakey.com/_img/blog/happyhorse-1-1-image-to-video/c3-pushin-frames.eb8d9567.1280.webp)

_Huit images du clip du lac dans l'ordre chronologique, de 0.0 à 4.85 secondes, avec le filigrane par défaut. HappyHorse 1.1 via l'API OmniaKey, image en vidéo, 5 secondes, 720P, réalisé le 2 novembre 2026._

La caméra avance vers la barque, comme demandé. À la fin, la barque remplit presque tout le cadre, et des ondulations partent de la coque.

### Illustration du renard

```prompt
The fox turns a page of the book with its paw and its ears twitch. A few orange leaves drift down from the tree and the branches sway gently. Keep the flat illustration style.
```

![Quatre images d'une illustration plate d'un renard qui lit sous un arbre d'automne. Des feuilles orange tombent et la vue zoome de l'arbre entier vers le renard.](https://omniakey.com/_img/blog/happyhorse-1-1-image-to-video/c4-page-frames.42eebfe3.1280.webp)

_Quatre images du clip du renard dans l'ordre chronologique, de 0.0 à 4.85 secondes, avec le filigrane par défaut. HappyHorse 1.1 via l'API OmniaKey, image en vidéo, 5 secondes, 720P, réalisé le 2 novembre 2026._

Le style d'illustration plate tient de la première à la dernière image pendant que des feuilles orange tombent. La caméra zoome de l'arbre entier vers une vue rapprochée du renard, ce que le prompt n'a jamais demandé ; les pages du livre se soulèvent, mais les images ne confirment pas que la patte en tourne une.

![À gauche : la photo du renard que nous avons envoyée, avec l'arbre entier. À droite : la dernière image du clip, beaucoup plus près du renard et de son livre ouvert, dans le même style plat, avec un filigrane Happy Horse.](https://omniakey.com/_img/blog/happyhorse-1-1-image-to-video/c4-page-first-last.809384e0.1872.webp)

_À gauche : la photo envoyée comme première image. À droite : la dernière image du clip du renard. HappyHorse 1.1 via l'API OmniaKey, image en vidéo, 5 secondes, 720P, réalisé le 2 novembre 2026._

Sur 2 de nos 4 prompts, la caméra a bougé plus que demandé, vérifiez donc le cadrage avec un essai court. Un clip de 3 secondes en 480P est le plus court et le plus bas que listent les documents (référence de l'API image en vidéo d'Alibaba, vérifiée le 2 novembre 2026).

### Ce que les fichiers mesuraient

|Clip|Format|Pixels|Images|Durée|Octets|
|-|-|-|-|-|-|
|Orbite, par défaut|16:9|1286×716|123|128 s|1 486 548|
|Orbite, `watermark: false`|16:9|1286×716|121|98 s|1 320 527|
|Portrait sous la pluie|9:16|716×1286|123|158 s|2 108 577|
|Lac|16:9|1286×716|123|131 s|2 691 558|
|Renard|1:1|960×960|123|92 s|2 405 557|

Chaque fichier indique 5.16 secondes alors que nous avions demandé 5 : c'est la piste audio, tandis que la piste vidéo dure 5.13 secondes à 123 images et 5.04 secondes à 121 images. Les cinq sont en H.264 à 24 fps avec une piste AAC stéréo, et un script de détection de coupes n'en a trouvé aucune.

Nos clips ont pris de 92 à 158 secondes entre l'envoi et le téléchargement, contre les 1 à 5 minutes qu'indiquent les documents d'Alibaba pour les tâches image en vidéo (référence de l'API image en vidéo d'Alibaba, vérifiée le 2 novembre 2026). Nous n'avons pas testé 480P, 1080P, d'autres durées, `seed`, une URL d'image publique, HappyHorse 1.0 ni le point de terminaison d'Alibaba. Pour choisir entre modèles, voyez [HappyHorse 1.1 face à Seedance 2.0](https://omniakey.com/fr/blog/happyhorse-1-1-vs-seedance-2-0) et [HappyHorse 1.1 face à Kling 3.0](https://omniakey.com/fr/blog/happyhorse-1-1-vs-kling-3-0). Pour refaire un clip sans code, HappyHorse 1.1 est dans le [générateur de vidéo IA](https://omniakey.com/fr/ai-video-generator).

## Pourquoi les clips ont-ils du son ?

HappyHorse 1.1 a ajouté une bande-son aux cinq clips, alors qu'aucun de nos prompts n'en demandait. Personne ne les a écoutés : nous avons demandé à [Gemini 3.8 Flash](https://omniakey.com/fr/gemini-3-8-flash), via l'API OmniaKey, de décrire chaque piste.

|Clip|Ce que le modèle a décrit|Sonie moyenne|
|-|-|-|
|Orbite, par défaut|« Un rythme hip-hop avec des percussions syncopées, des claquements et des accords de synthé doux. »|−19.5 dB|
|Orbite, `watermark: false`|« Une musique électronique calme et rythmée, avec un tempo régulier et des sons de synthé mélodiques »|−20.5 dB|
|Portrait sous la pluie|« Une mélodie de piano lente, mélancolique et douce, avec une ambiance atmosphérique légère »|−22.6 dB|
|Lac|« Une mélodie de piano lente, douce et sentimentale »|−20.2 dB|
|Renard|« Une mélodie d'ambiance calme et douce jouée avec des sons de cloche », plus « des pas qui craquent sur du gravier »|−27.4 dB|

Il n'a signalé aucune voix dans les clips. Le même prompt et la même photo, lancés deux fois, ont donné deux pistes différentes.

La référence image en vidéo d'Alibaba ne liste aucun champ audio ni option de silence, même si sa note de version 1.1 mentionne la synchronisation entre son et image ([page des modèles récemment publiés](https://www.alibabacloud.com/help/en/model-studio/newly-released-models) d'Alibaba, vérifiée le 2 novembre 2026). Pour obtenir un fichier silencieux, retirez la piste après le téléchargement :

```bash
ffmpeg -i clip.mp4 -an -c:v copy silent.mp4
```

Nous l'avons lancé sur le clip avec `watermark: false`, et le résultat a une piste vidéo et aucune piste audio. L'image reste exactement la même, car `-c:v copy` copie la piste au lieu de la réencoder.

## Combien de temps les résultats restent-ils disponibles ?

Sur OmniaKey, le lien signé vers votre MP4 dure environ 1 heure, et l'enregistrement de la tâche est conservé 24 heures ; interrogez de nouveau la tâche pour obtenir une URL fraîche (présentation de l'API média d'OmniaKey, vérifiée le 2 novembre 2026). Sur l'API propre d'Alibaba, l'URL de la vidéo et l'ID de la tâche durent tous deux 24 heures, puis une requête renvoie `UNKNOWN` et le fichier a disparu. Téléchargez dès qu'une tâche réussit.

## Quelles erreurs allez-vous rencontrer ?

Aucune de nos cinq exécutions n'a échoué, cette liste vient donc de la documentation de l'API vidéo d'OmniaKey, vérifiée le 2 novembre 2026.

|Statut|Ce que cela signifie|Que faire|
|-|-|-|
|400 `invalid_request`|corps mal formé, ou tâche sans `input.prompt`|vérifiez la forme de la requête ci-dessus|
|400 `model_price_error`|durée hors de la plage du modèle, ou résolution sans prix|utilisez une durée et une résolution prises en charge|
|403 `model_not_allowed`|votre clé ou votre groupe n'inclut pas le modèle|vérifiez l'accès au modèle de la clé|
|409 `idempotency_key_reused`|la même clé a déjà été envoyée avec un autre corps|ne réutilisez une clé que pour des reprises identiques|
|503 `no_available_channel`|aucun canal ne sert le modèle ou l'opération en ce moment|réessayez plus tard, ou regardez le tableau de bord|

Une tâche qui finit en `failed` est remboursée automatiquement, un rendu refusé ne coûte donc que votre temps (présentation de l'API média d'OmniaKey, vérifiée le 2 novembre 2026).

L'erreur à éviter est de lire un délai d'attente de votre côté comme une tâche échouée. Interrogez le même ID de tâche ; un nouvel envoi démarre une seconde tâche et une seconde facturation. Si vous renvoyez vraiment, gardez le même `Idempotency-Key` et le même corps, et vous récupérez la tâche d'origine.

## Combien coûte un clip HappyHorse 1.1 ?

Un clip de 5 secondes en 720P coûte $0.70 au prix catalogue d'Alibaba à Singapour. Voici les prix par seconde d'Alibaba, tirés de sa [page tarifaire](https://www.alibabacloud.com/help/en/model-studio/model-pricing) vérifiée le 2 novembre 2026 :

|Résolution|Singapour|Pékin et Global|
|-|-|-|
|480P|$0.07|$0.0618845|
|720P|$0.14|$0.123769|
|1080P|$0.18|$0.165026|

La facture est le prix par seconde multiplié par les secondes de sortie. Les requêtes échouées ne sont pas facturées. Singapour comprend aussi un quota gratuit de 10 secondes, valable 90 jours. Sur la page tarifaire, les prix Global s'appliquent à Francfort, à la Virginie et à Tokyo.

OmniaKey facture à la seconde de sortie rendue et débite d'avance à la création de la tâche, les tâches échouées ou annulées étant remboursées automatiquement ; pour les tarifs actuels, voyez la [page HappyHorse 1.1](https://omniakey.com/fr/happyhorse-1-1).

## Peut-on appeler Alibaba Cloud directement ?

Oui. HappyHorse est servi sur Alibaba Cloud Model Studio, avec des points de terminaison régionaux pour Singapour, les États-Unis (Virginie), Pékin, Francfort et Tokyo (référence de l'API image en vidéo d'Alibaba, vérifiée le 2 novembre 2026). Nos exécutions sont passées par l'API d'OmniaKey, ce qui suit vient donc des documents d'Alibaba.

- Créez avec `POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/video-generation/video-synthesis` pour Singapour.
- Envoyez l'en-tête `X-DashScope-Async: enable`, sinon la requête échoue avec "current user api does not support synchronous calls".
- Interrogez `GET .../api/v1/tasks/{task_id}` environ toutes les 15 secondes ; le statut passe par `PENDING`, `RUNNING`, `SUCCEEDED`, `FAILED`, `CANCELED`, `UNKNOWN`.
- Gardez le modèle, le point de terminaison et la clé dans la même région, car les appels entre régions échouent.
- Une clé obtient 5 requêtes par seconde et 5 tâches simultanées ([page des limites de requêtes](https://www.alibabacloud.com/help/en/model-studio/rate-limit) d'Alibaba, vérifiée le 2 novembre 2026).

La page tarifaire liste Tokyo, mais celle des limites de requêtes n'y liste pas image en vidéo 1.1, Tokyo reste donc non confirmé.

## Questions fréquentes

### Faut-il un prompt pour HappyHorse image en vidéo ?

Sur OmniaKey, oui : une tâche sans `input.prompt` reçoit `400 invalid_request` (documentation de l'API vidéo d'OmniaKey, vérifiée le 2 novembre 2026). L'API propre d'Alibaba traite le prompt comme facultatif et prend la première image seule. Dans les deux cas, nommez le mouvement et le déplacement de caméra, comme nos prompts ci-dessus.

### Comment retirer le filigrane Happy Horse ?

Envoyez `parameters.watermark: false`. La valeur par défaut `true` dessine un petit texte blanc "Happy Horse" dans le coin inférieur droit ; notre second clip d'orbite, envoyé avec `false`, est revenu propre.

### Comment régler le rapport d'image ?

Recadrez la photo. Image en vidéo n'a pas de champ `ratio` et le clip suit la forme de la première image, notre photo 16:9 a donc donné un clip 16:9 et le portrait un clip 9:16. Gardez le recadrage entre 1:2.5 et 2.5:1.

### Existe-t-il un HappyHorse 1.5 ?

Rien après 1.1 n'apparaît dans la [liste des modèles](https://www.alibabacloud.com/help/en/model-studio/models), les tableaux tarifaires ni la page de cycle de vie d'Alibaba au 2 novembre 2026, et la version la plus récente de ces pages est `happyhorse-1.1-i2v`, publiée le 16 juin 2026. Certains sites utilisent le nom "Happy Horse 1.5".

### HappyHorse 1.1 est-il meilleur que 1.0 pour image en vidéo ?

Alibaba dit que 1.1 améliore la qualité visuelle, le rendu du mouvement et la cohérence entre clips, et sa page tarifaire liste un palier 480P uniquement pour 1.1. 1.1 est sorti le 16 juin 2026 et 1.0 le 22 avril 2026. Au tarif de Singapour d'Alibaba, 1080P coûte $0.18 par seconde en 1.1 contre $0.24 en 1.0.

## Sources vérifiées

- [Alibaba Cloud : référence de l'API image en vidéo HappyHorse](https://www.alibabacloud.com/help/en/model-studio/happyhorse-image-to-video-api-reference), vérifiée le 2 novembre 2026
- [Alibaba Cloud : tarifs des modèles](https://www.alibabacloud.com/help/en/model-studio/model-pricing), vérifiée le 2 novembre 2026
- [Alibaba Cloud : modèles](https://www.alibabacloud.com/help/en/model-studio/models), vérifiée le 2 novembre 2026
- [Alibaba Cloud : modèles récemment publiés](https://www.alibabacloud.com/help/en/model-studio/newly-released-models), vérifiée le 2 novembre 2026
- [Alibaba Cloud : limites de requêtes](https://www.alibabacloud.com/help/en/model-studio/rate-limit), vérifiée le 2 novembre 2026

Documentation propre d'OmniaKey, vérifiée le 2 novembre 2026 : [API vidéo](https://docs.omniakey.com/en/media/video) et [présentation de l'API média](https://docs.omniakey.com/en/media/overview).
