Kuaishou
Kling 3.0
kling-3.0/motion-control
Série unifiée de génération vidéo multimodale, prenant en charge la génération de vidéo à partir de texte, d'image, de référence, ainsi que l'édition au sein de la vidéo, avec synchronisation labiale native et audio multilingue
Essayer kling-3.0/motion-control
Entrée
Créations
Voir toutes les créationsSortie
Tarifs
kling-3.0/motion-control per second
| Spécifications | Prix unitaire |
|---|---|
| 720P | $0.100 |
| 1080P | $0.172 |
Positionnement
kling-3.0/motion-control est une voie de génération vidéo pilotée par le mouvement : on fournit une image de référence d'une personne et une vidéo de référence contenant un mouvement, et le modèle produit une nouvelle vidéo dont le mouvement est repris de cette vidéo. L'apparence du personnage provient de l'image, le mouvement et les expressions proviennent de la vidéo, et une invite facultative sert à préciser la scène, le style et le cadrage. Cette voie convient aux développeurs qui souhaitent transférer une performance réelle sur un personnage donné, par exemple pour des mini-séries, des vidéos de présentation face caméra ou des présentations e-commerce où il faut réutiliser un même jeu de séquences de mouvement.
Points clés
- Entrées découplées pour le personnage et le mouvement — l'apparence du personnage dépend de l'image de référence, le rythme du mouvement dépend de la vidéo de référence ; une même performance peut être appliquée à différents visuels de personnage.
- Durée de sortie adaptée au mode d'orientation du personnage — jusqu'à 30 secondes lorsque l'orientation du personnage suit la vidéo, et jusqu'à 10 secondes lorsqu'elle suit l'image, au choix selon le type de plan.
- Conservation de la bande-son originale de la vidéo de référence — la piste audio de la vidéo de référence est conservée par défaut, le mouvement et le son sont donc produits en synchronisation, ce qui évite une étape de calage séparée.
Description des capacités
Transfert de mouvement piloté par deux supports : il faut obligatoirement fournir une image de personnage et une vidéo de mouvement ; l'image détermine l'apparence du personnage, la vidéo détermine le mouvement et les expressions, et le résultat généré hérite des deux.
Bascule du mode d'orientation du personnage : character_orientation accepte video ou image ; le premier convient aux mouvements complexes, avec une durée maximale de 30 secondes ; le second convient aux mouvements de caméra, avec une durée maximale de 10 secondes.
Invite pour préciser la scène et le cadrage : l'invite facultative peut atteindre 2500 caractères ; elle sert à préciser la scène, le style et l'évolution du cadrage, sans modifier le mouvement ni les expressions déterminés par la vidéo de référence.
Résolution au choix et conservation de la piste audio : la sortie peut être en 720p ou 1080p, et il est possible de choisir de conserver ou non la bande-son originale de la vidéo de référence ; une résolution plus élevée correspond à une facturation plus élevée.
Cas d'usage
- Créateurs de mini-séries et de vidéos face caméra réutilisant des séquences de mouvement — téléverser une photo du personnage et une vidéo de performance pour obtenir une vidéo finale du même personnage avec le même mouvement, destinée à une production de contenu en série.
- E-commerçants et marques réalisant des démonstrations produit incarnées par un personnage — associer une image de mannequin ou d'avatar à une vidéo de démonstration produit pour produire un court film de présentation du personnage, utilisé sur les pages de détail et dans les campagnes publicitaires.
- Contenus de mouvement nécessitant la conservation du son original — en activant la conservation du son original, obtenir directement une vidéo avec une piste audio synchronisée, destinée à la publication en vidéo courte sur les réseaux sociaux.
Limites et conseils de sélection
Les deux supports d'entrée ont des exigences strictes : l'image du personnage doit montrer clairement la tête, les épaules et le torse, avec un rapport largeur-hauteur compris entre 2:5 et 5:2 et une taille inférieure à 10 Mo ; la vidéo de référence doit durer de 3 à 30 secondes, être un plan unique continu avec un sujet visible, et ne pas dépasser 100 Mo. Le mouvement et les expressions sont déterminés par la vidéo de référence ; l'invite ne peut ajuster que la scène et le style, sans pouvoir réécrire le mouvement lui-même. Pour une génération purement textuelle ou une génération vidéo à partir d'une image, il faut choisir d'autres voies de la même série ; les contenus narratifs longs nécessitent encore une génération par segments puis un assemblage.
Nouveautés
Voir le journal des modifications →- Nouveau modèle Nouveau modèle : Kling 3.0 Omni (可灵 O3), appelé via POST /v1/tasks. kling-3.0-omn…
Questions fréquentes
Voir toutes les questions →-
Kling 3.0 Image-to-Video nécessite-t-il de téléverser une image ?
Oui. Actuellement, kling-3.0/image-to-video est une voie de génération de vidéo à partir d'image : l'image d'entrée définit le sujet et la composition initiale, tandis que le Prompt gère les actions, les mouvements de caméra et les changements d'environnement.
-
Quelles durées et résolutions Kling 3.0 Image-to-Video prend-il en charge ?
Le contrat de requête actuel de HiAPI prend en charge 3–15s, avec des résolutions de sortie de 720p, 1080p et 4K. Les valeurs disponibles sont celles indiquées dans le panneau de paramètres de la page et la documentation API.
-
Comment la fonctionnalité Image-to-Video de Kling 3.0 est-elle facturée ?
Les tâches sont facturées en fonction de la durée de sortie et du palier choisi. La page affiche le prix en temps réel selon l'unité monétaire globale, et la facturation finale se base sur l'enregistrement des tâches réussies.
-
Comment améliorer la stabilité du sujet dans la génération de vidéo à partir d'une image ?
Utilisez une image d'entrée dont le sujet est net, peu masqué et bien composé ; dans le Prompt, décrivez d'abord l'action principale et le cadrage, puis énumérez les éléments d'apparence, de matière et les relations avec l'arrière-plan qui doivent être préservés. Pour un premier test, il est recommandé d'utiliser une durée courte.
Créer une tâche de génération
https://api.hiapi.ai/v1/tasks En-têtes
AuthorizationstringRequisClé API du compte. Requise sur chaque requête. Exemple : Bearer YOUR_HIAPI_API_KEY. Obtenir une clé API
Content-TypestringOptionnelLe corps de la requête est toujours analysé en JSON ; s'il est envoyé, seul application/json (charset facultatif) est accepté — toute autre valeur renvoie 415. Exemple : application/json.
Idempotency-KeystringOptionnelClé d'idempotence, jusqu'à 255 octets. Les reprises avec la même clé du même compte ne créent la tâche qu'une seule fois ; les rejeux renvoient le taskId d'origine.
En cas de timeout réseau ou de relance automatique du client, la même clé ne crée la tâche qu'une seule fois, sans double facturation (portée = le compte de la clé API). Utilisez un identifiant métier unique (ex. "order-42") ; les rejeux renvoient le taskId d'origine et les clés expirent 24 h après la première requête. La matrice complète des scénarios est dans la présentation de l'API asynchrone unifiée.
Corps
modelstringRequisValeur fixe actuelle : kling-3.0/motion-control
routestringOptionnelValeur fixe actuelle : default
inputobjectRequis
Objet de paramètres métier pour kling-3.0/motion-control et la route default — voir le tableau des paramètres ci-dessous.
promptstringOptionnelmaxLength 2500Invite facultative décrivant la scène, le style et le plan. Les actions et expressions des personnages proviennent de la vidéo de référence, et l'apparence du personnage de l'image de référence ; si ce champ est vide, on se base sur les matériaux de référence eux-mêmes.
image_urlstringRequisImage de référence du personnage, formats jpeg/png/jpg pris en charge, taille maximale 10 Mo, largeur et hauteur doivent toutes deux être supérieures à 340 px, rapport largeur/hauteur compris entre 2:5 et 5:2 ; la tête, les épaules et le torse doivent être clairement visibles.
video_urlstringRequisVidéo de référence pour le mouvement, formats mp4/mov pris en charge, taille maximale 100 Mo, durée de 3 à 30 secondes, tournage continu en un seul plan avec la tête, les épaules et le torse du sujet visibles ; la durée de sortie suit celle de cette vidéo, avec un maximum de 10 secondes lorsque character_orientation vaut image, et de 30 secondes lorsqu'il vaut video.
resolutionstringOptionnelDéfaut: "720p"Résolution de sortie ; plus la résolution est élevée, plus le coût est important ; par défaut 720p.
720p1080pkeep_original_soundbooleanOptionnelDéfaut: trueIndique si l'audio original de la vidéo de référence est conservé dans la sortie ; par défaut true, c'est-à-dire conservé par défaut.
character_orientationstringOptionnelDéfaut: "video"Source de l'orientation du personnage : lorsque la valeur est video, l'orientation suit la vidéo de référence, ce qui convient aux mouvements complexes, avec une durée maximale de 30 secondes ; lorsque la valeur est image, l'orientation suit l'image de référence, ce qui convient aux mouvements de caméra, avec une durée maximale de 10 secondes. Par défaut video.
videoimagecallbackobjectOptionnel
Configuration de notification d'état terminal. Sans elle, aucun callback — interrogez la tâche vous-même.
Fournissez callback.url à la création et HiAPI envoie un POST à votre service à l'état terminal — plus besoin de polling. Le corps du rappel reprend la structure du détail de tâche ; vérification de signature, relances et idempotence sont décrits dans la présentation de l'API asynchrone unifiée.
urlstringRequisObligatoire si callback est présent. Un POST est envoyé vers cette URL à l'état terminal ; doit être une URL http(s) valide.
whenstringOptionnelDéfaut: "final"Seul final est pris en charge pour l'instant — notifié sur success et fail.
finalstoragestringOptionnelDéfaut: "temp"Niveau de stockage des artefacts : temp (par défaut, ~7 jours) ou persistent (long terme, facturé au volume). Solde insuffisant ou dépassement de limite ⇒ rétrogradation silencieuse en temp ; le niveau effectif figure dans la réponse de détail.
temppersistentExemples de requête
# Soumet une tâche asynchrone ; renvoie immédiatement un taskId (n'attend pas la génération)
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kling-3.0/motion-control",
"input": {
"image_url": "…",
"video_url": "…",
"resolution": "720p",
"keep_original_sound": true,
"character_orientation": "video"
}
}' const res = await fetch("https://api.hiapi.ai/v1/tasks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.HIAPI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "kling-3.0/motion-control",
input: {
"image_url": "…",
"video_url": "…",
"resolution": "720p",
"keep_original_sound": true,
"character_orientation": "video"
}
}),
});
const task = await res.json();
// { code: 200, message: "success", data: { taskId } } import os, requests
res = requests.post(
"https://api.hiapi.ai/v1/tasks",
headers={"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"},
json={
"model": "kling-3.0/motion-control",
"input": {
"image_url": "…",
"video_url": "…",
"resolution": "720p",
"keep_original_sound": True,
"character_orientation": "video"
}
},
)
print(res.json()) # { code, message, data: { taskId } } 200 OK
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR"
}
} 400 Bad Request
{
"code": 400,
"message": "invalid request",
"data": null,
"error_code": "INVALID_REQUEST"
} Obtenir le détail de la tâche
https://api.hiapi.ai/v1/tasks/:id Champs de réponse
taskIdstringRequisIdentifiant de tâche, toujours préfixé tk-hiapi-.
modelstringRequisNom complet résolu du modèle. Les tâches envoyées avec le paramètre route renvoient base@route (ex. gpt-image-2/text-to-image@ext) ; sinon identique au nom fourni.
routestringOptionnelPrésent uniquement si le paramètre route explicite a été utilisé ; renvoie la valeur soumise.
statusstringRequisStatut de la tâche.
queued En file, pas encore démarrée.
handling En cours de traitement.
archiving Traitement terminé, préparation des artefacts.
success Terminal : terminé, artefacts disponibles (output renvoyé).
fail Terminal : échec (error renvoyé).
Après soumission, suivez status : success et fail sont terminaux, le reste non terminal. Interrogez toutes les 1–3 s jusqu'à l'état terminal. En cas de succès, téléchargez les artefacts via output[].url et transférez-les avant expireAt ; pour une conservation longue durée, indiquez storage: "persistent" à la création.
creatednumberRequisDate de création de la tâche (secondes Unix).
completednumberRequisSecondes Unix de l'état terminal ; 0 tant que non terminal.
outputarrayOptionnel
Présent uniquement si status == success. Liste d'artefacts — toujours un tableau ; une tâche peut renvoyer plusieurs types à la fois (ex. video + first_frame).
Array [ object ]
Éléments du tableau
urlstringRequisURL de l'artefact, téléchargeable directement.
typestringRequisValeurs possibles actuelles : video, image, audio, first_frame, last_frame, thumbnail ; d'autres pourront s'ajouter.
expireAtnumberRequisSecondes Unix de disponibilité de l'artefact ; téléchargez ou transférez avant l'expiration.
errorobjectOptionnel
Présent uniquement si status == fail.
codestringRequisCode d'erreur métier.
messagestringRequisDescription de l'erreur.
Exemples de réponse
Succès
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR",
"model": "happyhorse-1-0",
"status": "success",
"created": 1777282033,
"completed": 1777282099,
"output": [
{
"url": "https://cdn.hiapi.ai/tasks/.../video.mp4",
"type": "video",
"expireAt": 1777886899
}
]
}
} En cours (non terminal)
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "archiving",
"created": 1777282033,
"completed": 0
}
} Échec
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "fail",
"created": 1777282033,
"completed": 1777282099,
"error": {
"code": "TASK_FAILED",
"message": "task failed"
}
}
} Articles
Voir tous les articles →-
Tutoriel
Comment appeler hailuo-2.3-fast/image-to-video via l'API HiAPI : curl et Python en pratique
La première requête exploitable du palier image-vers-vidéo rapide et économique — de l'ID du modèle au téléchargement du MP4
-
Tutoriel
Tutoriel pour kandinsky-6.0-pro/image-to-video sur HiAPI : curl + Python
Lancer une requête image-vers-vidéo exploitable sur HiAPI : de l'envoi de la première image à l'interrogation asynchrone jusqu'au téléchargement final
-
Tutoriel
Comment utiliser kling-4.0/text-to-video via l'API HiAPI : curl, Python et un exemple de requête fonctionnel
Guide pratique pour les développeurs : prompts cinématographiques, audio synchronisé, interrogation asynchrone et téléchargement des sorties
-
Tutoriel
Utiliser Kandinsky 6.0 Pro texte-vers-vidéo sur HiAPI : tutoriel curl et Python
Démonstration pratique axée sur la requête : construire l'appel du prompt au clip vidéo, soumettre la requête, interroger l'état d'achèvement et télécharger le résultat
-
Tutoriel
Comment appeler kling-4.0/image-to-video sur HiAPI : curl, Python et interrogation périodique
-
Tutoriel
Comment appeler hailuo-2.3/text-to-video via l'API HiAPI : curl, Python et exemples de requêtes exécutables
Modèles associés
Voir tous les modèles →Même type
-
LTX 2.5 Fast Lightricks $0.086 /seconde -
Runway Gen 4.5 Runway $0.172 /seconde -
Veo 3.1 Lite Google $0.060 /seconde -
Vidu Q4 Preview Vidu $0.051 /seconde -
Grok Imagine 1.5 xAI $0.011 /seconde -
Kandinsky 6.0 Pro $1.93 /vidéo -
Seedance 2.0 ByteDance $0.017 /seconde -
Gemini Omni Google -- -
Wan 2.7 Video Alibaba $0.100 /seconde -
Vidu Q3 Vidu $0.149 /seconde -
HappyHorse 1.1 Alibaba $0.160 /seconde -
Seedance 2.5 ByteDance $0.121 /seconde



