Skip to main content
Cet article présente la méthode d’intégration de l’API HappyHorse Videos. Cette interface prend en charge la génération de vidéos à partir de texte, la génération de vidéos à partir d’une image de première image, la génération de vidéos à partir d’images de référence et l’édition de vidéos via l’entrée unifiée /happyhorse/videos et le paramètre action.

Processus de demande

Pour utiliser l’API HappyHorse Videos, obtenez d’abord votre API Token dans la console Ace Data Cloud, à conserver en réserve. Si vous n’êtes pas encore connecté ou inscrit, vous serez automatiquement redirigé vers la page de connexion pour vous inviter à vous inscrire et à vous connecter, puis vous reviendrez automatiquement sur la page actuelle une fois terminé. Un seul API Token permet d’appeler tous les services de la plateforme, sans avoir besoin d’en demander un séparément pour chaque service. La première demande offre un quota gratuit, permettant une expérience gratuite ; lorsque le quota est insuffisant, vous pouvez recharger le solde universel dans la console.
📘 Documentation complète : HappyHorse Videos API →

Types d’opérations

action détermine le mode de génération de cette requête :
  • generate : génération de vidéo à partir de texte, action par défaut, prend en charge happyhorse-1.0-t2v et happyhorse-1.1-t2v, doit recevoir prompt.
  • image_to_video : génération de vidéo à partir d’une image de première image, prend en charge happyhorse-1.0-i2v et happyhorse-1.1-i2v, doit recevoir image_url.
  • reference_to_video : génération de vidéo à partir d’images de référence, prend en charge happyhorse-1.0-r2v et happyhorse-1.1-r2v, doit recevoir prompt et 1–9 image_urls.
  • video_edit : édition de vidéo, prend en charge happyhorse-1.0-video-edit, doit recevoir prompt et video_url, et peut recevoir en supplément 0–5 images de référence image_urls.
Chaque action utilise par défaut le modèle 1.1 ; video_edit ne propose actuellement que happyhorse-1.0-video-edit.

Utilisation de base

La génération de vidéo à partir de texte nécessite uniquement de fournir prompt, et peut également spécifier des paramètres tels que resolution, ratio et duration :
Un exemple de résultat retourné est le suivant :
Description des champs :
  • success : indique si cette requête a réussi.
  • task_id : ID de la tâche côté Ace Data Cloud, peut être utilisé pour consulter l’état de la tâche.
  • trace_id : ID de suivi de cette requête, utilisé pour résoudre les problèmes.
  • data : liste des résultats vidéo.
    • id : ID de la tâche côté HappyHorse.
    • video_url : adresse du lien CDN de la vidéo générée.
    • state : état de la tâche, parmi pending / succeeded / error.
    • duration : durée de la vidéo facturée, en secondes ; pour video_edit, il s’agit du total des durées des vidéos d’entrée et de sortie.
    • resolution : résolution de sortie.
    • ratio : rapport largeur-hauteur de sortie.
Le code CURL correspondant est le suivant :
Le code Python correspondant est le suivant :

Génération de vidéo à partir d’une image de première image

Lors de l’utilisation de image_to_video, image_url sera utilisée comme première image de la vidéo. Le rapport largeur-hauteur de sortie suivra autant que possible l’image de première image, cette action n’a donc pas besoin de transmettre ratio.

Génération de vidéo à partir d’images de référence

Lors de l’utilisation de reference_to_video, image_urls peut transmettre 1–9 images de référence. Dans le texte d’invite, vous pouvez utiliser character1, character2 et d’autres moyens pour référencer les images dans l’ordre correspondant.

Édition de vidéo

Lors de l’utilisation de video_edit, il est obligatoire de transmettre la vidéo à éditer video_url et l’intention d’édition prompt. Les image_urls optionnelles serviront d’images de référence, par exemple pour le changement de tenue, le transfert de style ou le remplacement localisé. audio_setting peut être auto ou origin, où origin signifie conserver l’audio de la vidéo originale.

Rappel asynchrone

La génération de vidéos nécessite un certain temps de traitement. Si vous ne souhaitez pas maintenir une connexion longue en attente, vous pouvez transmettre callback_url. Dans ce cas, l’API renverra immédiatement le task_id, et une fois la tâche terminée, le résultat final sera envoyé par POST à cette adresse :
Le résultat renvoyé immédiatement est le suivant :
Si vous souhaitez uniquement effectuer un sondage, sans avoir besoin de rappel, vous pouvez également transmettre "async": true, puis consulter le résultat de la tâche via l’API HappyHorse Tasks.

Explication de la facturation

HappyHorse facture selon le nombre de secondes de la vidéo produite et la résolution :
  • 720P : à partir d’environ 0,105 $ / seconde.
  • 1080P : à partir d’environ 0,18 $ / seconde.
  • video_edit : facturé selon la durée totale de la vidéo d’entrée et de la vidéo de sortie ; la durée réellement facturée est basée sur les statistiques après l’achèvement de la tâche.
Les tâches échouées ne sont pas facturées et ne consomment pas non plus le quota gratuit.

Gestion des erreurs

Lorsqu’un problème survient dans la requête, l’API renvoie le code d’erreur et l’explication correspondants. Les plus courants sont les suivants :
  • 400 : les paramètres de la requête sont incorrects, par exemple l’action et le modèle ne correspondent pas, prompt / image_url / video_url est manquant, ou duration dépasse la plage de 3 à 15 secondes.
  • 401 : échec de l’authentification, le token est invalide ou ne correspond pas à l’API.
  • 403 : solde insuffisant, ou le prompt a été refusé après avoir déclenché la modération de contenu.
  • 429 : les requêtes sont trop fréquentes, la limitation de débit est déclenchée, veuillez réessayer plus tard.
  • 500 : erreur interne du serveur ou échec de la génération.