Générez un modèle de liste de plans pour storyboard
Un storyboard utile commence par des choix, pas par des cases vides. Ce générateur transforme votre description de scène et le nombre de plans choisi en un modèle pratique pour préparer, dessiner, tourner ou valider une séquence.
Lancer gratuitement
Chaque ligne comprend un numéro, un type de plan suggéré, une durée estimée et une description directement liée à la scène. Le résultat est déterministe : une consigne identique produit toujours le même découpage lorsque votre équipe souhaite le reprendre ou le comparer.
Commencez par décrire des actions visibles
Précisez ce que le public peut voir, le lieu de l’action, les personnes ou éléments importants et la manière dont la scène évolue. Une bonne consigne peut indiquer une entrée, une découverte, une réaction et une sortie, plutôt que de se limiter à un thème tel qu’« un matin tendu ». Le générateur normalise les espaces puis divise le texte en temps narratifs selon les limites des phrases. Si la description ne comporte qu’une phrase, il peut aussi repérer des propositions plus courtes grâce à la ponctuation et aux mots de transition. Ces temps servent d’ancrage aux descriptions de la liste : l’outil organise et cadre donc les éléments fournis sans inventer de personnages, d’accessoires ni d’événements. Choisissez le nombre de plans selon le niveau de détail souhaité. Un insert bref peut demander trois plans, tandis qu’une scène riche en actions peut en demander huit ou douze. Le nombre est exact et doit être au moins égal à un.
Lisez chaque ligne comme une consigne de production
Chaque ligne générée comporte quatre champs opérationnels. Le numéro conserve l’ordre. Le type suggère le cadrage : la progression commence par un plan large de situation, puis propose des plans moyens, gros plans, plans par-dessus l’épaule, inserts de détail, réactions et nouveaux plans larges à mesure que la liste s’allonge. La durée, exprimée en secondes entières, dépend du cadrage et de la longueur du temps narratif attribué. Elle sert de base au rythme, sans préjuger du montage final. La description associe un objectif visuel à un élément tiré de la scène afin que les artistes ou l’équipe caméra sachent à la fois pourquoi le plan existe et ce qu’il couvre. Si vous demandez plus de lignes que la scène ne contient de temps distincts, l’algorithme les reprend et signale les passages suivants comme des variantes d’accent visuel, sans ajouter de faits absents de votre texte.
Intégrez le modèle à toute la préproduction
Le résultat structuré constitue un relais neutre entre écriture, storyboard, image, montage, animation et validation client. Copiez les lignes dans un document de production, transformez chaque description en vignette ou affectez-les comme tâches aux artistes et aux équipes caméra. La génération étant déterministe et dépourvue de modèle ou d’appel réseau, vous pouvez l’intégrer à une collecte automatisée et retrouver exactement la même structure pour la même entrée. Cette stabilité facilite la comparaison des versions : modifiez volontairement la description ou le nombre, puis observez l’évolution du découpage. La durée totale estimée additionne toutes les lignes et permet de repérer tôt un projet globalement trop long ou trop court. Prenez-la comme point de départ, car jeu, dialogues, transitions, mouvements et rythme du montage influencent la durée réelle. L’API coûte $0.002 par requête et la version navigateur exécute localement la même logique pure.
Cas d’usage
Préparer une courte scène narrative
Transformez des actions visibles en couverture ordonnée avant de dessiner les vignettes ou de préparer la caméra.
Briefer une équipe d’animation
Donnez aux artistes une série cohérente de cadres numérotés avec cadrage, durée et intention.
Normaliser la réception des projets vidéo
Convertissez les briefs clients en fiches prévisibles que la production peut valider, modifier et transférer.
Questions fréquentes
Combien coûte une requête ?
Une requête API coûte $0.002. L’outil du navigateur emploie localement la même logique déterministe.
Le générateur crée-t-il des images de storyboard ?
Non. Il produit un modèle textuel destiné à guider le dessin, la préparation caméra ou la mise en place d’une animation.
Le nombre de plans demandé est-il exact ?
Oui. La sortie contient exactement le nombre demandé ; les valeurs hors des limites publiées sont refusées.
Comment les durées sont-elles calculées ?
Chaque estimation repose sur une base stable liée au cadrage, légèrement augmentée pour les temps narratifs plus longs.
L’outil invente-t-il des actions absentes de la scène ?
Non. Les descriptions reprennent votre texte et toute couverture supplémentaire est clairement signalée comme une variante visuelle.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/video/storyboard-shot-list \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"scene_description":"At dawn, a cyclist enters an empty town square. She notices a red scarf tied to the fountain, stops, and looks toward the bell tower as the first bell rings.","shot_count":5}'const res = await fetch("https://api.kit.forhosting.com/video/storyboard-shot-list", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"scene_description": "At dawn, a cyclist enters an empty town square. She notices a red scarf tied to the fountain, stops, and looks toward the bell tower as the first bell rings.",
"shot_count": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/video/storyboard-shot-list",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"scene_description": "At dawn, a cyclist enters an empty town square. She notices a red scarf tied to the fountain, stops, and looks toward the bell tower as the first bell rings.",
"shot_count": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/video/storyboard-shot-list", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"scene_description":"At dawn, a cyclist enters an empty town square. She notices a red scarf tied to the fountain, stops, and looks toward the bell tower as the first bell rings.","shot_count":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"scene_description":"At dawn, a cyclist enters an empty town square. She notices a red scarf tied to the fountain, stops, and looks toward the bell tower as the first bell rings.","shot_count":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/video/storyboard-shot-list", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"scene_description": "At dawn, a cyclist enters an empty town square. She notices a red scarf tied to the fountain, stops, and looks toward the bell tower as the first bell rings.",
"shot_count": 5
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "video.storyboard_shot_list",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_chars | 10000 |
max_shots | 100 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |