Skip to main content
Cet article présente une documentation sur l’API de génération de vidéos SeeDance, qui permet de générer des vidéos officielles de SeeDance en entrant des paramètres personnalisés.

Processus de demande

Pour utiliser l’API de génération de vidéos SeeDance, commencez par obtenir votre jeton API sur le tableau de bord Ace Data Cloud et conservez-le pour référence. Si vous n’êtes pas encore connecté ou inscrit, vous serez automatiquement redirigé vers la page de connexion pour vous inscrire et vous connecter, après quoi vous serez automatiquement renvoyé à la page actuelle. Un jeton API suffit pour appeler tous les services de la plateforme, sans avoir à en demander un pour chaque service. La première demande vous donnera un quota gratuit pour une expérience sans frais ; si le quota est insuffisant, vous pouvez recharger le solde général sur le tableau de bord.
📘 Documentation complète : API de génération de vidéos SeeDance →

Utilisation de base

Tout d’abord, comprenez la méthode d’utilisation de base, qui consiste à entrer le mot-clé content.text, le type content.type=text et le modèle model, pour obtenir le résultat traité, dont le contenu est le suivant :

Nous pouvons voir ici que nous avons défini les en-têtes de requête, y compris :
  • accept : le format de réponse souhaité, ici rempli avec application/json, c’est-à-dire au format JSON.
  • authorization : la clé pour appeler l’API, que vous pouvez sélectionner directement après la demande.
De plus, nous avons défini le corps de la requête, y compris :
  • model : le modèle pour générer la vidéo.
    • Série Seedance 1.x : doubao-seedance-1-0-pro-250528, doubao-seedance-1-0-pro-fast-251015, doubao-seedance-1-5-pro-251215, doubao-seedance-1-0-lite-t2v-250428, doubao-seedance-1-0-lite-i2v-250428.
    • Série Seedance 2.0 (supporte les références multimodales audio et vidéo) : doubao-seedance-2-0-260128 (standard), doubao-seedance-2-0-fast-260128 (rapide), doubao-seedance-2-0-mini-260615 (léger).
    • Seedance 2.5 : doubao-seedance-2-5-260628, supporte jusqu’à 30 secondes, référence audio pure, plus de matériel, montage vidéo et prolongation.
  • content : tableau de contenu d’entrée, type peut être text (mot-clé), image_url (image de référence), audio_url (audio de référence), video_url (vidéo de référence). Les images peuvent être spécifiées par role : first_frame (première image) / last_frame (dernière image) / reference_image (référence de personnage / sujet).
  • resolution : résolution de sortie, options 480p / 720p / 1080p / 4k. 2.5 supporte 480p, 720p, 1080p ; 2.0 Fast/Mini supporte 480p, 720p ; 2.0 Standard supporte jusqu’à 4k.
  • ratio : rapport d’aspect, options 16:9 / 4:3 / 1:1 / 3:4 / 9:16 / 21:9 / adaptive.
  • duration : durée de la vidéo (secondes, entier). Série 1.0 2–12 ; 1.5 Pro 4–12 ; séries 2.0 4–15 ; 2.5 de 4 à 30. 1.5/2.x supporte -1 (durée automatique).
  • seed : graine aléatoire, entier, -1 à 4294967295.
  • camerafixed : caméra fixe ou non, true / false.
  • watermark : ajout d’un filigrane ou non, true / false.
  • generate_audio : génération de vidéo avec son ou non, true / false, supporté par Seedance 1.5 Pro et séries 2.x.
  • return_last_frame : retourner l’URL de la dernière image de la vidéo dans le résultat.
  • omni_reference_task_type : uniquement 2.5 ; auto / reference / edit / extend.
  • output_format : uniquement 2.5 ; mp4 / mov, par défaut mp4.
  • tools : uniquement 2.5 ; actuellement supporte l’outil de recherche en ligne web_search, peut limiter le nombre de résultats, le nombre de mots-clés et la source de recherche.
  • priority : 2.5 priorité de tâche optionnelle, entier 0–9, par défaut 0.
  • safety_identifier : identifiant d’utilisateur terminal anonyme stable de 64 caractères maximum ; veuillez utiliser un hachage ou un ID anonyme interne, ne pas entrer de nom, d’email ou de numéro de téléphone.
  • execution_expires_after : temps d’expiration de la tâche (secondes), plage 3600–259200.
  • callback_url : adresse de rappel asynchrone, une fois définie, l’API renvoie immédiatement task_id, et lorsque la tâche est terminée, elle POST les résultats à cette adresse.
  • async : optionnel, si défini sur true, l’interface renvoie immédiatement task_id, sans avoir besoin de fournir callback_url, puis interrogez l’interface de requête de tâche correspondante pour obtenir les résultats.
Après avoir fait votre sélection, vous pouvez voir que le code correspondant a également été généré à droite, comme indiqué dans l’image :

Cliquez sur le bouton « Essayer » pour effectuer un test, comme indiqué ci-dessus, et nous avons obtenu le résultat suivant :
Le résultat de retour contient plusieurs champs, décrits comme suit :
  • success, l’état de la tâche de génération de vidéo à ce moment.
  • task_id, l’ID de la tâche de génération de vidéo à ce moment.
  • trace_id, l’ID de suivi de la génération de vidéo à ce moment.
  • data, la liste des résultats de la tâche de génération de vidéo à ce moment.
    • task_id, l’ID côté serveur de la tâche de génération de vidéo à ce moment.
    • video_url, le lien vidéo de la tâche de génération de vidéo à ce moment.
    • status, l’état de la tâche de génération de vidéo à ce moment.
      • model, le modèle utilisé pour générer la vidéo.
Nous pouvons voir que nous avons obtenu des informations vidéo satisfaisantes, il nous suffit de récupérer la vidéo SeeDance générée à partir de l’URL de la vidéo dans data. De plus, si vous souhaitez générer le code d’intégration correspondant, vous pouvez le copier directement, par exemple, le code CURL est le suivant :

Description des paramètres en ligne

À la fin du texte dans content[].text, vous pouvez passer des paramètres de génération en ajoutant --parameter value (ancienne méthode, vérification faible, en cas d’erreur, les valeurs par défaut seront automatiquement utilisées). La liste complète des paramètres est la suivante :
Pratique recommandée : Utilisez directement les champs de niveau supérieur correspondants (comme resolution, ratio, etc.) dans le corps de la requête pour un mode de vérification stricte, les erreurs de paramètres renverront des messages d’erreur clairs, facilitant le diagnostic des problèmes.

Génération de vidéos avec son

Seedance 1.5 Pro et la série 2.x supportent la génération de vidéos avec audio via le paramètre generate_audio :
La série 1.0 ne supporte pas ce paramètre.

Génération, édition et prolongation multimodale complète de Seedance 2.5

doubao-seedance-2-5-260628 supporte 480p / 720p / 1080p, 4–30 secondes ou durée automatique, et augmente la limite de matériel à 30 images de référence, 10 vidéos de référence, 10 audios de référence (maximum de 50 au total). La version 2.5 supporte également l’envoi uniquement d’audio de référence, sans exiger de fournir simultanément des images ou des vidéos. La génération multimodale ordinaire peut omettre omni_reference_task_type, le définissant sur auto, ou le définissant explicitement sur reference. L’édition et la prolongation de vidéos doivent inclure reference_video :
  • reference : Au moins un reference_image, reference_video ou reference_audio doit être fourni ; la version 2.5 supporte uniquement l’audio de référence.
  • edit : Doit utiliser ratio: adaptive et duration: -1 ; la durée de sortie est facturée selon le résultat réel.
  • extend : Doit utiliser ratio: adaptive ; duration peut être de 4 à 30 ou -1.
  • auto : Le modèle choisit automatiquement de générer, d’éditer ou de prolonger en fonction des mots-clés et du matériel.
  • Si le type de tâche ne correspond pas au matériel ou aux mots-clés, la tâche échouera et renverra une erreur de paramètre localisable ; veuillez ajuster selon les contraintes ci-dessus et soumettre à nouveau.

Génération de la première image vidéo

Si vous souhaitez générer une vidéo à partir d’une image, le paramètre content doit d’abord contenir un élément de type image_url, le champ image_url doit être au format objet : {"url": "https://..."} ou au format Base64 {"url": "data:image/png;base64,..."}.
Remarque : image_url ne supporte pas l’entrée directe au format chaîne (comme "image_url": "https://cdn.acedata.cloud/e724d7f13d.png"), il doit être au format objet "image_url": {"url": "https://..."}, sinon une erreur 400 sera renvoyée.
Le code correspondant :
En cliquant sur exécuter, vous pouvez constater que vous obtiendrez immédiatement un résultat, comme suit :
Vous pouvez voir que l’effet généré est une vidéo créée à partir d’une image, le résultat est similaire à celui mentionné ci-dessus.

Génération de la première et de la dernière image vidéo

Si vous souhaitez générer la première et la dernière image d’une vidéo, le paramètre content doit d’abord inclure un type image_url, et définir respectivement role sur first_frame et last_frame, vous pouvez spécifier le contenu suivant :
  • role : spécifie la première ou la dernière image.
  • image_url
    • url lien de l’image En même temps, content doit également inclure un type text comme mot-clé d’invite.
Le code correspondant :
Cliquez sur exécuter, vous pouvez constater que vous obtiendrez immédiatement un résultat, comme suit :
On peut voir que l’effet généré est une vidéo générée par le personnage, le résultat est similaire à ce qui précède.

Références multimodales pour personnages et audio/vidéo (Seedance 2.0)

Série Seedance 2.0 (doubao-seedance-2-0-260128, doubao-seedance-2-0-fast-260128, doubao-seedance-2-0-mini-260615) prend en charge reference_image, reference_audio et reference_video. Vous pouvez utiliser des matériaux propres ou autorisés pour maintenir la cohérence des personnages, des sujets, des actions, des mouvements de caméra, des sons et des rythmes.
Veuillez uniquement télécharger des matériaux réels et de personnages qui vous appartiennent ou qui sont autorisés. Les différentes modèles prennent en charge les matériaux réels de manière différente ; le format de la demande reste inchangé, si le matériel ne répond pas aux exigences, une erreur claire sera renvoyée.
Points d’utilisation :
  • Seules les séries Seedance 2.0 prennent en charge reference_image ; pour les modèles 1.x, veuillez utiliser first_frame / last_frame (première et dernière image générées par l’image).
  • La première image générée par l’image, la première et la dernière image générées par l’image et la référence multimodale sont trois scénarios mutuellement exclusifs : first_frame / last_frame ne peuvent pas être mélangés avec reference_image / reference_video / reference_audio.
  • Si vous souhaitez spécifier la première et la dernière image dans la référence multimodale, veuillez marquer l’image comme reference_image et indiquer dans le prompt “image 1 comme première image” ou “image 2 comme dernière image” ; si vous avez besoin de verrouiller strictement la première et la dernière image, utilisez uniquement first_frame / last_frame.
  • Limite du nombre de références multimodales : image_url au maximum 9 images ; 2.0 prend également en charge audio_url (rôle reference_audio, au maximum 3) et video_url (rôle reference_video, au maximum 3).
  • Exigences pour les matériaux audio de référence (audio_url) : formats wav / mp3 ; durée unique de 2 à 15 secondes, au maximum 3 et durée totale ne dépassant pas 15 secondes ; chaque fichier ne doit pas dépasser 15 Mo. Dépasser la durée entraînera un échec lors de la phase de traitement des matériaux.
  • Exigences pour les matériaux vidéo de référence (video_url) : formats mp4 / mov ; durée unique de 2 à 15 secondes, au maximum 3 et durée totale ne dépassant pas 15 secondes.
  • Il est recommandé d’utiliser des photos de personnes, de face, claires et sans obstruction pour les images de référence, plus le visage est clair, plus la similarité est élevée.

Exemple 1 : Gros plan pour maintenir l’apparence du personnage

Transmettez une photo de visage, permettant à ce personnage de sourire et de faire un signe de la main à la caméra. Le code correspondant :
Le résultat retourné est comme suit, la vidéo générée maintient la cohérence du personnage avec la photo de référence :

Exemple 2 : Placer la même personne dans un tout nouveau décor

La puissance de reference_image réside dans le fait de ne conserver que l’identité du personnage, tandis que le décor, les vêtements et les actions sont entièrement déterminés par le prompt. Voici comment, avec la même photo de visage, faire marcher ce personnage en manteau beige dans un parc d’automne :
Le résultat retourné est comme suit, l’apparence du personnage est conservée, tandis que le décor a été changé pour un parc d’automne :
💡 Si vous souhaitez que les personnages reproduisent précisément la composition de la photo (plutôt que « la même personne dans un autre décor »), vous pouvez utiliser first_frame (première image du vidéo généré), pour que la vidéo commence à bouger à partir de cette photo.

Appel asynchrone

Étant donné que le temps de génération de l’API SeeDance Videos Generation est relativement long (environ 1 à 2 minutes), vous pouvez utiliser le champ callback_url pour activer le mode asynchrone, évitant ainsi une occupation prolongée de la connexion HTTP. Processus global : lorsque le client initie une demande en spécifiant callback_url, l’API renvoie immédiatement une réponse contenant task_id ; une fois la tâche terminée, la plateforme envoie les résultats générés au format JSON POST à callback_url, les résultats contenant également task_id pour permettre l’association.
Lorsque la tâche est terminée, le contenu envoyé par la plateforme à callback_url est le suivant :
Le champ task_id dans les résultats est identique à celui renvoyé lors de la demande, permettant ainsi d’associer les tâches.

Gestion des erreurs

Lors de l’appel de l’API, si une erreur se produit, l’API renverra le code d’erreur et les informations correspondantes. Par exemple :
  • 400 token_mismatched : Mauvaise requête, probablement en raison de paramètres manquants ou invalides.
  • 400 api_not_implemented : Mauvaise requête, probablement en raison de paramètres manquants ou invalides.
  • 401 invalid_token : Non autorisé, jeton d’autorisation invalide ou manquant.
  • 429 too_many_requests : Trop de demandes, vous avez dépassé la limite de taux.
  • 500 api_error : Erreur interne du serveur, quelque chose s’est mal passé sur le serveur.

Exemple de réponse d’erreur

Conclusion

Grâce à ce document, vous avez compris comment utiliser l’API Seedance Videos Generation pour générer des vidéos à partir de texte, des images de début et de fin, ainsi que des références multimodales, et comment utiliser Seedance 2.5 pour éditer ou prolonger des vidéos. Nous espérons que ce document vous aidera à réaliser l’intégration de l’API ; si vous avez des questions, veuillez contacter le support technique.