Introduction
Seedance 2.0 Mini image vers vidéo commence le clip sur une image que vous fournissez et l’anime jusqu’à 15 secondes. Ajoutez une image de fin et le plan doit y arriver, ce qui rend les transitions reproductibles.
Seedance 2.0 Mini est le plus petit niveau de la gamme Seedance 2.0 de ByteDance. Il publie les trois mêmes points de terminaison que Seedance 2.0 Fast et renvoie des clips de 4 à 15 secondes en 480p ou 720p, avec un son généré dans la même passe.
Choisir le mode Seedance 2.0 Mini selon votre matériau de départ
| Matériau de départ | Mode |
|---|---|
| Un script ou la description d’une scène | Seedance 2.0 Mini Texte vers vidéo |
| Une image de départ validée | Seedance 2.0 Mini Image vers vidéo |
| Des références séparées pour l’apparence, le mouvement ou le son | Seedance 2.0 Mini Références vers vidéo |
Fonctionnalités et points forts
Le même contrat que Seedance 2.0 Fast
Mini publie les mêmes points de terminaison et les mêmes champs que Seedance 2.0 Fast : format adaptatif plus six formats fixes, 4 à 15 secondes ou -1 pour une durée choisie par le modèle, son natif et seed, avec une résolution plafonnée à 720p. Un pipeline écrit pour Mini passe à Fast en changeant l’identifiant du modèle, pas la requête.
Conçu pour le volume
Mini est le niveau à choisir quand le débit compte plus que la qualité supplémentaire des modèles Seedance 2.0 plus grands. Chaque point de terminaison est asynchrone : envoyez un Idempotency-Key avec chaque requête, conservez les identifiants de tâche et laissez le polling ou les callbacks les résoudre. La clé est honorée pendant 24 heures, donc une nouvelle tentative après une coupure renvoie la tâche d’origine.
Des séquences plus longues avec la prolongation vidéo
Pour dépasser quinze secondes, envoyez un clip terminé au point de terminaison video-extend : sa dernière image ouvre un nouveau plan Seedance 2.0 Mini et vous récupérez un seul fichier où les deux parties sont assemblées. Chaque étape ne facture que les secondes qu’elle ajoute, et le résultat assemblé peut être prolongé de nouveau.
Paramètres de requête
| Paramètre | Obligatoire | Description |
|---|---|---|
prompt | Non | Facultatif, mais utile : dites ce qui se passe après l’image plutôt que de répéter ce qui est déjà visible — l’action, le mouvement de caméra, le passage du temps, le son. 1 caractères minimum |
image_url | Oui | Lien public et directement téléchargeable vers la première image ; obligatoire. |
last_image_url | Non | Image de fin facultative. Elle décide de l’image sur laquelle le plan se pose : une transition, un avant-après, ou une boucle qui s’ouvre et se ferme sur la même image. |
aspect_ratio | Non | Cadrage de sortie, adaptive par défaut : le clip reprend les proportions de votre première image, rien n’est donc rogné. |
resolution | Non | Résolution de sortie : 480p ou 720p par défaut. |
duration_seconds | Non | Durée du clip final en secondes entières, de 4 à 15, 5 par défaut, et quantité facturée ; -1 laisse le modèle choisir, l’estimation comptant alors 15 secondes. |
generate_audio | Non | Détermine si une bande-son native est rendue en synchronisation avec l’image. Actif par défaut ; le couper ne fait pas baisser le tarif dans cette variante. Valeur par défaut: |
enable_web_search | Non | Désactivé par défaut. Activé, le modèle peut chercher sur le web des informations liées à votre prompt avant le rendu. Valeur par défaut: |
seed | Non | Seed entière ; omettez-la et chaque tirage tire la sienne. Fixez-la, tout le reste étant constant, pour juger ce qu’une retouche de prompt a réellement changé. |
return_last_frame | Non | Renvoie en plus la dernière image du clip, sous forme d’image distincte à côté de la vidéo. Valeur par défaut: |
bitrate_mode | Non | Débit d’encodage du fichier livré : |
watermark | Non | Ajoute à la vidéo le filigrane visible « AI generated » propre au modèle. Valeur par défaut: |
Tarification
| Spécification | Prix |
|---|---|
| $0.0246078 / seconde |
| $0.05292 / seconde |
| $0.036 / seconde |
| $0.072 / seconde |
Cas d’utilisation
Des photos de catalogue qui s’animent
Une photo de produit ou de rayon devient quelques secondes de mouvement sans nouveau tournage. L’exemple publié remplit un rayon réfrigéré canette par canette en quatre secondes, caméra fixe, avec les petits tintements et le ronronnement du frigo.
Un time-lapse entre deux images
Avec last_image_url, le clip doit arriver sur l’image de fin. L’un des exemples fait passer le même chemin de la fin de l’été au cœur de l’automne en dix secondes, caméra fixe, sans coupe.
Des moments que le filtre textuel refuserait
L’image de départ porte le contenu : le prompt n’a qu’à décrire le mouvement. Quand la couche propre à Seedance refuse une scène écrite en texte, la faire porter par une première image permet d’y arriver.
Guide de prompt et conseils pratiques
Préparez l’image de départ
image_url est obligatoire et fixe la composition, le rendu et le plafond de qualité ; chaque côté doit mesurer entre 300 et 6000 pixels. Retirez d’abord textes, filigranes et logos, car ils passent dans la vidéo.
Dites ce qui change, pas ce qui est là
Le prompt est facultatif. Décrivez l’action, le mouvement de caméra et le son qui suivent l’image ; sans prompt, le modèle décide seul du mouvement. Validez le mouvement à 4 ou 5 secondes avant de payer pour 15, car un plan porté par une seule image dérive d’autant plus qu’il dure.
Adaptez l’exemple fourni
L’exemple publié utilise aspect_ratio 16:9, duration_seconds 4, generate_audio true et resolution 720p, avec la photo d’un rayon en image_url.
A gloved hand enters from the right and fills the gap in the upper row can by can, facing each label forward, then withdraws. Camera locked off on the shelf. Small metallic clinks, chiller hum, fluorescent light unchanged throughout.
Quatre secondes suffisent pour une action claire en plan fixe. Remplacez la photo par celle de votre produit et gardez ce mouvement unique.
Donnez à l’image de fin le même format
last_image_url doit avoir les mêmes proportions que l’image de départ ; sinon, elle est recadrée pour correspondre. Gardez caméra et lumière stables entre les deux images et changez un seul état clair, comme la saison dans l’exemple du chemin.
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": "bytedance/seedance-2.0-mini/image-to-video",
"input": {
"aspect_ratio": "adaptive",
"bitrate_mode": "standard",
"duration_seconds": 5,
"enable_web_search": false,
"generate_audio": true,
"image_url": "https://example.com/reference.png"
}
}'
# 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.
















