
Paramètres de métadonnées de l'API Vidéo d'OpenAI
Comprenez les métadonnées de l'API Vidéo d'OpenAI pour le suivi des tâches, les prompts, les ressources d'entrée, les réglages de rendu, le statut asynchrone, le catalogage, le débogage et les workflows.
Les métadonnées de l'API Vidéo d'OpenAI servent d'outil pour suivre et gérer les requêtes de génération de vidéos. Alors que les paramètres principaux comme prompt, model et seconds déterminent le rendu visuel, les champs de métadonnées tels que id, status et expires_at sont essentiels pour surveiller l'avancement des tâches et leur organisation.
Points clés à retenir :
- Suivi des tâches : les métadonnées suivent les états des tâches (
queued,in_progress,completed,failed) et les pourcentages de progression. - Métadonnées personnalisées : les développeurs peuvent ajouter des paires clé-valeur personnalisées (par exemple,
user_id,project_id) pour une meilleure organisation. - Horodatages : les champs comme
created_atetexpires_ataident à gérer les échéances des tâches et l'expiration des ressources. - Liens relationnels : les métadonnées relient les ressources via des champs comme
remixed_from_video_id, assurant la continuité entre les projets.
Pour les développeurs, comprendre et structurer efficacement les métadonnées améliore l'efficacité du workflow, du suivi des tâches jusqu'au catalogage des sorties vidéo.
Paramètres de métadonnées principaux dans les API compatibles OpenAI


Métadonnées liées au prompt
Un prompt est bien plus qu'une simple description : c'est un ensemble d'instructions qui influence chaque décision visuelle prise par le modèle. Imaginez que vous briefez un directeur de la photographie qui n'a aucune connaissance préalable de votre storyboard. Robin Koenig, d'OpenAI, l'explique bien :
« Pensez au prompting comme au briefing d'un directeur de la photographie qui n'a jamais vu votre storyboard. Si vous omettez des détails, il improvisera. » [6]
Les meilleurs prompts sont structurés en couches et précis. Ils incluent des détails sur la composition visuelle, les temps de mouvement, l'éclairage et la palette de couleurs. Par exemple, plutôt que de dire « une personne marche dans la rue », un prompt plus efficace pourrait être : « une femme fait quatre pas, s'arrête à un passage piéton, regarde à gauche - avec de l'asphalte mouillé, des reflets de néons et une lumière douce venant d'en haut. » Ce niveau de détail garantit un rythme et une ambiance précis.
Pour la synchronisation labiale, incluez les dialogues dans un bloc Dialogue: séparé. De même, si vous souhaitez reproduire un style cinématographique particulier, utilisez des termes précis comme « optiques sphériques fixes 32mm » ou « objectif anamorphique 2.0x, faible profondeur de champ ». Pour maintenir des couleurs cohérentes d'une scène à l'autre, nommez trois à cinq couleurs spécifiques (par exemple, « ambre, crème, brun noyer »). Évitez les termes vagues comme « tons chauds », car ils peuvent conduire à des résultats incohérents.
Ensuite, nous explorerons comment les ressources d'entrée affinent davantage la génération de vidéos.
Métadonnées des ressources d'entrée
Les ressources d'entrée sont définies par deux champs clés : input_reference et characters.
input_reference: ce champ accepte soit une URL d'image, soit un identifiant de fichier. La ressource fournie définit la composition et le style de la première image, tandis que le prompt textuel dicte les actions suivantes. Pour éviter les problèmes comme l'étirement ou la distorsion, assurez-vous que l'image source correspond au paramètresizecible [8].characters: ce champ prend un tableau d'identifiants de personnages générés via l'API Characters. Chaque identifiant est créé en téléversant un court clip de référence (2 à 4 secondes) avec une résolution comprise entre 720p et 1080p. Une seule génération de vidéo peut inclure jusqu'à deux références de personnages. Ces identifiants peuvent être réutilisés entre les projets pour garantir une cohérence visuelle [6].
Une fois le prompt et les ressources d'entrée définis, les réglages de rendu réunissent tous les éléments pour la sortie finale.
Métadonnées du comportement de rendu et de sortie
Les paramètres de rendu déterminent les dimensions, la durée et la qualité de la vidéo. Ces réglages sont définis dans l'appel API et ne peuvent pas être ajustés via le langage naturel dans le prompt.
Le champ model est le choix de rendu principal. Le modèle sora-2 est conçu pour la rapidité et les itérations rapides, tandis que sora-2-pro offre une sortie de meilleure qualité, incluant une résolution 1080p. Le paramètre size détermine les dimensions de sortie, spécifiées sous forme de chaîne {width}x{height}. Les résolutions prises en charge dépendent du modèle d'IA choisi. Le paramètre seconds contrôle la durée de la vidéo et accepte les valeurs « 4 », « 8 », « 12 », « 16 » ou « 20 », « 4 » étant la valeur par défaut [6].
| Paramètre | Valeurs prises en charge | Remarques |
|---|---|---|
model | sora-2, sora-2-pro | sora-2-pro est requis pour une sortie 1080p |
size | 1280x720, 720x1280, 1920x1080, 1080x1920, 1024x1792, 1792x1024 | Les options varient selon le modèle [6] |
seconds | « 4 », « 8 », « 12 », « 16 », « 20 » | Les clips plus courts offrent souvent une meilleure précision [6] |
variant | video, thumbnail, spritesheet | Détermine le format de la ressource de sortie |
Lors de la récupération d'une tâche terminée, le paramètre de requête variant vous permet de spécifier le format de sortie : la vidéo complète, une miniature (.webp) ou une planche de sprites (.jpg) [8]. La fréquence d'images n'est pas un paramètre autonome ; à la place, les effets cinématographiques comme « obturateur à 180° » ou « flou de mouvement filmique » sont obtenus via des instructions au niveau du prompt. Pour les workflows à grande échelle, l'API Batch permet de mettre en file d'attente plusieurs rendus vidéo en utilisant les mêmes paramètres de métadonnées que le point de terminaison standard POST /videos [8].
Ces réglages de rendu complètent le cadre des métadonnées, garantissant un processus de génération de vidéos cohérent et conscient du contexte.
Cas d'usage pratiques des métadonnées dans les API Vidéo
Les métadonnées pour les intégrations multi-modèles
Les métadonnées simplifient le processus d'orientation des requêtes vers le modèle approprié en fonction des exigences spécifiques de chaque tâche. Par exemple, vous pourriez utiliser le paramètre model pour choisir sora-2 à 0,10 $/seconde pour des itérations rapides et des brouillons en début de projet. Une fois vos prompts finalisés, vous pourriez passer à sora-2-pro à 0,70 $/seconde pour des sorties 1080p soignées et prêtes pour la production [9]. Les plateformes qui ont besoin d'accéder à une variété de modèles vidéo - comme Sora, Kling V3 et d'autres - peuvent tirer parti d'une API unifiée comme APIMart. Cela permet un routage multi-modèles fluide via un point d'intégration unique. De plus, comme les paramètres de métadonnées sont cohérents d'un modèle à l'autre, il n'est pas nécessaire de remanier votre logique de requête lorsque vous passez de l'un à l'autre.
Une autre stratégie d'économie consiste à conditionner la résolution. Par exemple, vous pouvez définir des rendus 720p par défaut et proposer le 1080p comme option premium, ce qui aide à gérer les coûts de rendu par seconde [7].
Ce type d'intégration flexible prend également en charge un suivi efficace des tâches et un traitement asynchrone, que nous explorerons ensuite.
Suivi des tâches et requêtes asynchrones
Les temps de rendu peuvent varier considérablement, de seulement 30 secondes à plusieurs minutes, selon le modèle et la résolution sélectionnés [9]. Chaque requête vidéo génère un objet de tâche contenant des identifiants clés comme id, status, progress et expires_at. Ces champs permettent de surveiller le processus de génération de manière asynchrone. Le champ expires_at est particulièrement utile, car il indique quand l'URL de téléchargement temporaire expirera - généralement dans l'heure pour les requêtes standards. Cela vous laisse suffisamment de temps pour automatiser le transfert des fichiers terminés vers des solutions de stockage durable comme S3 ou R2 [7].
Pour les workflows de production, les webhooks sont un choix judicieux pour réduire les appels API et la charge serveur. En écoutant des événements tels que video.completed et video.failed, vous pouvez rationaliser vos opérations. Lors de l'utilisation de l'API Batch, le champ custom_id de votre fichier JSONL peut faire correspondre les résultats à des enregistrements internes spécifiques une fois le lot terminé [10]. En associant cela à une base de données locale qui relie le video_id retourné à des balises de projet internes, des identifiants utilisateur ou des estimations de coûts, vous créez une piste d'audit claire. Cette configuration aide non seulement au débogage, mais simplifie aussi le suivi financier [11]. Ensemble, ces pratiques garantissent que chaque tâche est comptabilisée et récupérable, rendant le processus de génération de vidéos plus efficace.
Au-delà du suivi, les métadonnées jouent aussi un rôle clé dans l'organisation et la recherche des ressources vidéo.
Catalogage et optimisation de la recherche
Les métadonnées sont essentielles pour créer une bibliothèque vidéo bien organisée et facile à parcourir. En stockant des détails structurés sur le prompt - comme le sujet, le décor, l'angle de caméra et l'éclairage - aux côtés du video_id dans une base de données locale, vous pouvez activer un filtrage et une récupération avancés qui vont bien au-delà des simples recherches par mots-clés [11]. Pour les plateformes ayant des besoins organisationnels spécifiques, comme les outils d'e-learning qui utilisent des champs tels que lesson_number ou difficulty_level, ou les équipes marketing qui étiquettent les ressources par campagne, les paires clé-valeur personnalisées offrent un schéma flexible qui s'intègre parfaitement à la logique applicative [12].
Le champ remixed_from_video_id ajoute une autre couche d'organisation en suivant la lignée créative des ressources. Cela vous garantit de toujours pouvoir remonter une vidéo finale jusqu'à sa source [1]. De plus, les métadonnées de provenance C2PA, automatiquement incluses avec chaque sortie de Sora 2, fournissent un enregistrement traçable et auditable, du brouillon initial au produit final. Ces fonctionnalités soulignent à quel point les métadonnées sont au cœur de la gestion, de l'organisation et de la personnalisation des sorties vidéo tout au long du processus de génération [7].
Bonnes pratiques pour structurer et valider les métadonnées
Concevoir des schémas de métadonnées
En matière de schémas de métadonnées, obtenir la bonne structure est essentiel pour une génération de vidéos efficace. Une bonne approche consiste à utiliser une structure à double couche : une carte metadata plate (par exemple, en utilisant un BTreeMap en Rust) pour les clés standards et universellement compatibles, et une carte extra (ou additional_properties) pour les données JSON imbriquées ou spécifiques au fournisseur [3][14][4]. Cette configuration garde le schéma principal propre et adaptable tout en permettant des configurations spécifiques adaptées à chaque modèle. Cette conception prend directement en charge la personnalisation et le suivi des tâches, comme évoqué précédemment.
Pour la compatibilité entre différents modèles, restez-en à des noms de clés simples, plats et descriptifs. Des exemples comme remixed_from_video_id, user_id ou project_id sont faciles à indexer, à rechercher et à stocker dans les bases de données [1][13]. Réservez les structures imbriquées à la carte extra pour gérer les besoins spécifiques au fournisseur sans compliquer le schéma principal.
Pour les paramètres liés à la vidéo comme size et seconds, définissez-les comme des énumérations de chaînes plutôt que de les laisser ouverts [1][13]. Cela garantit la cohérence et évite les erreurs lors des requêtes en imposant des contraintes au niveau du schéma.
Valider les entrées de métadonnées
Une validation correcte des entrées de métadonnées est indispensable avant d'envoyer toute requête. Elle réduit les risques d'échec des tâches et s'aligne sur les stratégies de suivi et de débogage évoquées précédemment :
- Incluez toujours le prompt pour chaque tâche de génération de vidéo [14].
- Vérifiez que les valeurs
secondsetsizecorrespondent à leurs énumérations prises en charge [1][5]. - Vérifiez que les valeurs
progressrestent dans la plage d'entiers de 0 à 100 [13].
Dans les langages fortement typés, tirez parti des outils SDK intégrés. Par exemple, le VideoCreateParams.Builder de Java garantit les champs requis et les types corrects à la compilation [14]. De même, TypeScript utilise les littéraux VideoSeconds pour imposer des contraintes [2][4]. Ces vérifications à la compilation sont plus fiables que de se reposer uniquement sur des validations à l'exécution.
Si une requête échoue, analysez immédiatement l'objet VideoCreateError. Le champ code fournit un identifiant lisible par machine pour un traitement automatisé, tandis que le champ message offre une explication claire pour les journaux [1][13]. Cela facilite la détermination de l'origine du problème : un mauvais paramètre, un modèle non pris en charge ou un problème réseau.
Au-delà de la validation, les métadonnées jouent un rôle clé dans le débogage et la surveillance des performances.
Utiliser les métadonnées pour le débogage et la surveillance
Les métadonnées peuvent être précieuses pour identifier les problèmes et suivre les performances. L'inclusion des horodatages created_at et completed_at vous permet de calculer la latence et de détecter les régressions de performance [1][13]. Par exemple, si un modèle ou une résolution spécifique prend systématiquement plus de temps que prévu, ces horodatages peuvent aider à identifier le goulot d'étranglement.
Dans les workflows itératifs, le champ remixed_from_video_id peut être salvateur. Il aide à retracer les erreurs jusqu'à leur source lorsque des modifications inattendues surviennent [1][13]. Combinez cela avec un sondage côté serveur du champ status - en suivant les états comme "queued", "in_progress", "completed" et "failed" - pour détecter et traiter rapidement les tâches bloquées [13].
« Traitez votre prompt comme une liste de souhaits créative, pas comme un contrat. » - Robin Koenig, Joanne Shin et Annika Brundyn [6]
Ce conseil s'applique aussi aux métadonnées. Si une génération échoue, simplifiez la requête à sa forme la plus basique - figez la caméra ou simplifiez l'arrière-plan - puis réintroduisez progressivement la complexité, un paramètre à la fois [6]. Un schéma bien organisé rend ce processus de débogage itératif beaucoup plus facile.
Conclusion et points clés à retenir
Récapitulatif des avantages des métadonnées
Les métadonnées jouent un rôle crucial pour transformer un appel API en un processus bien organisé, traçable et reproductible - du moment où il entre dans la file d'attente jusqu'à l'étape finale de téléchargement [1][13]. Des fonctionnalités comme le suivi de l'expiration des ressources vous garantissent d'être averti avant que les URL de téléchargement n'expirent, tandis que les objets d'erreur avec des champs code lisibles par machine accélèrent le débogage en identifiant instantanément les problèmes. De plus, les cartes de métadonnées personnalisées permettent d'étiqueter les tâches avec des identifiants internes, simplifiant le catalogage et l'organisation [1][3].
Pour les workflows impliquant plusieurs modèles, les métadonnées agissent comme le ciment qui maintient l'ensemble. Elles relient les générations via des références id, maintiennent la cohérence des personnages et mappent les sorties par lot à l'aide de custom_id. Ces capacités reposent sur la présence d'une structure de métadonnées robuste [1][8]. Avec ces avantages à l'esprit, voici quelques étapes concrètes pour affiner votre approche.
Prochaines étapes pour les développeurs
Pour tirer le meilleur parti de votre cadre de métadonnées, commencez par auditer votre implémentation actuelle par rapport aux principes clés évoqués dans cet article. Assurez-vous que expires_at est suivi pour chaque tâche, car les URL de téléchargement ne restent valides que pendant 1 heure après la génération [8]. Intégrez une logique de sondage avec status et progress, ou passez aux webhooks video.completed pour réduire les appels API inutiles [8].
Si vous gérez des workflows sur plusieurs modèles, APIMart offre une solution pratique. Il donne accès à plus de 500 modèles d'IA via une seule API, tous structurés de manière cohérente avec les modèles de métadonnées décrits ici. Cela élimine la complexité de gérer des intégrations séparées pour chaque modèle et peut rationaliser votre processus de développement [13].
FAQ
Quels champs de métadonnées dois-je stocker dans ma base de données pour chaque tâche vidéo ?
Pour garder un œil sur les tâches de génération de vidéos, veillez à stocker des détails clés comme l'identifiant unique, le statut, le prompt, le modèle, la taille et la durée. Ajoutez des horodatages tels que created_at, completed_at et expires_at pour un suivi précis. Incluez toute information d'erreur pour faciliter le dépannage. Pour les vidéos remixées, utilisez le champ remixed_from_video_id pour retracer l'origine des ressources. Des outils comme APIMart rationalisent ce processus en fournissant une plateforme centralisée pour une intégration et une gestion faciles.
Comment maintenir la cohérence des personnages et du style entre plusieurs générations de vidéos ?
Pour maintenir la cohérence des personnages, tirez parti de l'API Characters en créant une référence à partir d'une vidéo téléversée. Incluez l'identifiant de personnage obtenu dans le tableau character_ids de votre requête de génération. Vous pouvez inclure jusqu'à deux personnages par génération à cette fin.
Pour la cohérence du style, utilisez le point de terminaison d'extension vidéo pour prolonger les clips de manière fluide tout en préservant des éléments comme l'éclairage et la profondeur de champ. Pour obtenir des transitions douces, veillez à spécifier des détails tels que le cadrage de la caméra, le type d'objectif et l'étalonnage des couleurs. Ces facteurs aident à garantir que la sortie finale s'aligne parfaitement avec votre vidéo originale.
Que dois-je faire avant que l'URL de téléchargement n'expire ?
Lorsque vous générez des ressources vidéo, gardez à l'esprit que les URL de téléchargement expirent généralement en l'espace d'une heure. Pour éviter de perdre l'accès, veillez à télécharger et enregistrer vos fichiers dans un emplacement sécurisé avant le moment d'expiration, que vous pouvez suivre à l'aide du champ expires_at dans l'objet vidéo. Pour une gestion plus facile des ressources vidéo dans vos workflows, APIMart fournit une intégration avec des modèles d'IA avancés, rendant des tâches comme la création et la production de vidéos plus efficaces.
Choisissez le modèle qui vous convient dans le marketplace
Essayez les modèles de chat, image et vidéo sur le marketplace APIMart, puis découvrez rapidement leurs capacités avec une API unifiée.