Introduction
Video Sound Effects ajoute une bande son à un clip en le regardant. Envoyez la séquence dans video_url, décrivez si vous le souhaitez ce qu'on doit entendre dans prompt, et choisissez combien de secondes de son générer avec duration_seconds. L'outil produit des effets et une ambiance qui suivent l'action à l'écran, et renvoie la même image avec cette piste comme son.
Fonctionnalités et points forts
Un son qui suit l'image
La piste est générée à partir des images : chocs, pas, liquides versés et circulation qui passe tombent là où ils se produisent dans le plan, et non sur une boucle posée par-dessus. Une courte description oriente la palette, de la pluie sur une vitre au gravier sous les pas ou à une cuisine en plein service, et le prompt négatif écarte ce que vous ne voulez pas, comme la musique ou les voix.
Une durée choisie, un prix prévisible
La durée demandée va d'une à trente secondes et fixe à la fois la longueur du clip livré et son prix : vous payez les secondes demandées, pas le temps de calcul. L'image elle-même n'est pas modifiée, le cadrage et la résolution restent exactement ceux du clip envoyé.
Paramètres de requête
| Paramètre | Obligatoire | Description |
|---|---|---|
video_url | Oui | Le clip à sonoriser. L'image reste telle quelle. 1 caractères minimum |
prompt | Non | Les sons voulus, en courte liste : pluie sur une vitre, circulation lointaine, pas sur du gravier. 1 caractères minimum · 1000 caractères maximum |
duration_seconds | Non | Combien de secondes de son générer, de 1 à 30. La vidéo livrée est coupée à cette durée et ces secondes sont facturées même si le clip est plus court : alignez-la sur votre clip. |
negative_prompt | Non | Les sons à écarter, comme la musique, la voix ou le bruit du vent. 1000 caractères maximum |
ignore_visual_semantics | Non | Désactivé par défaut : le modèle choisit les sons d’après l’image et votre prompt. Valeur par défaut: |
guidance_scale | Non | À quel point le son suit votre description, de 0 à 20. La valeur par défaut convient à la plupart des clips ; augmentez-la un peu si le résultat ignore le prompt. |
steps | Non | Passes d'affinage, de 4 à 50. Plus de passes prennent plus de temps ; la valeur par défaut est un bon équilibre. |
Tarification
$0.0012 / seconde produite
Facturé à la seconde de son demandée avec duration_seconds, et non selon la durée de votre clip.
Cas d’utilisation
Finaliser les clips issus de modèles vidéo
La plupart des vidéos générées arrivent muettes. Ajouter ambiance et effets avant de publier donne un clip fini sans passer par une sonothèque ni par une séance de montage, et les clips courts reviennent en général en moins d'une minute.
Son provisoire pour premiers montages et plans produit
Un brouillon qui défile en silence est difficile à juger. Donnez aux premiers montages, aux clips culinaires et aux boucles produit un fond sonore crédible, et remplacez-le plus tard si la scène demande une musique.
Guide de prompt et conseils pratiques
Décrire des sources, pas des ambiances
Listez ce qui fait du bruit : un sifflement de machine à expresso, des tasses qui tintent et un léger brouhaha de café fonctionnent mieux qu'une atmosphère chaleureuse. Trois ou quatre sources suffisent ; les longues listes se fondent en bouillie.
Caler la durée sur le clip
Réglez duration_seconds sur la durée du clip, arrondie au-dessus. Demandez plus et vous payez des secondes qui n'apparaissent jamais, puisque la vidéo livrée s'arrête là où le clip se termine ; demandez moins et la vidéo est coupée à ce que vous avez demandé.
Laisser les réglages fins de côté au début
guidance_scale fixe à quel point le son suit vos mots et steps le nombre de passes d'affinage ; les valeurs par défaut conviennent à la plupart des clips. Augmentez un peu la guidance seulement si le résultat ignore le prompt, et attendez-vous à ce que plus d'étapes allongent le temps plutôt qu'elles n'améliorent nettement le son.
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": "spicyapi/foley-v1/video-to-audio",
"input": {
"duration_seconds": 8,
"video_url": "https://example.com/reference.mp4"
}
}'
# 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.




