API Clips Export
Utilisez cette API lorsque vous avez déjà créé une tâche AI Clipping ou Find Moments et souhaitez rendre des clips ultérieurement, ou les ré-exporter avec un style de sous-titres différent, un format d'image, un AI Hook ou d'autres paramètres d'export.
Le project_id doit être l'ID de tâche original retourné par :
POST /api/v2/clipsPOST /api/v2/clips/find-moments
Soumettre une Tâche d'Export
POST https://wayinvideo-api.wayin.ai/api/v2/clips/export
Corps de la Requête
| Paramètre | Type | Obligatoire | Défaut | Description |
|---|---|---|---|---|
project_id | string | Oui | — | L'ID de tâche AI Clipping ou Find Moments original. |
clip_indices | integer[] | Non | null | Indices des clips à exporter. Si omis, le système exporte tous les clips du projet. |
target_lang | string | Non | null | Langue cible pour le contenu de sortie, y compris les sous-titres (voir Langues prises en charge). Si null, la langue de sortie correspond à la langue de la tâche source. |
resolution | string | Non | SD_480 | Résolution de sortie : SD_480, HD_720, FHD_1080, QHD_2K, UHD_4K. |
enable_caption | boolean | Non | false | Ajouter des sous-titres animés lors du rendu. Si true, caption_display et cc_style_tpl prennent effet ; si false, l'export n'a pas de sous-titres animés. |
caption_display | string | Non | original | Mode de sous-titres : both, original, translation. Utilisé uniquement quand enable_caption est true. |
cc_style_tpl | string | Non | temp-7 | ID du modèle de style de sous-titres (voir Styles de sous-titres). Utilisé uniquement quand enable_caption est true. |
enable_ai_hook | boolean | Non | false | Ajouter un texte d'accroche généré automatiquement au début ou à la fin de chaque clip exporté. Si true, ai_hook_script_style et ai_hook_position prennent effet ; si false, aucun AI Hook n'est ajouté. |
ai_hook_script_style | string | Non | serious | Style du texte d'accroche généré. Valeurs autorisées : serious, casual, informative, conversational, humorous, parody, inspirational, dramatic, empathetic, persuasive, neutral, excited, calm. Utilisé uniquement quand enable_ai_hook est true. |
ai_hook_position | string | Non | beginning | Position du texte d'accroche généré. Valeurs autorisées : beginning, end. Utilisé uniquement quand enable_ai_hook est true. |
ai_hook_keywords | string | Non | null | Mots-clés optionnels pour orienter le texte d'accroche IA généré. Utilisé uniquement quand enable_ai_hook est true. |
ai_hook_text_duration | integer | Non | null | Durée de l'overlay de texte AI Hook en millisecondes. Utilisé uniquement quand enable_ai_hook est true. |
enable_ai_reframe | boolean | Non | false | Activer l'AI Reframe. Si true, ratio est obligatoire ; si false, le clip est exporté avec son format d'origine inchangé. |
ratio | string | Oui si enable_ai_reframe est true | — | Format d'image : RATIO_9_16, RATIO_1_1, RATIO_4_5, RATIO_16_9. Obligatoire quand enable_ai_reframe est true. |
Exemple de Requête
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/clips/export \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "x-wayinvideo-api-version: v2" \
-d '{
"project_id": "proj_abc123",
"clip_indices": [0, 2],
"resolution": "UHD_4K",
"enable_caption": true,
"caption_display": "both",
"cc_style_tpl": "word-focus",
"enable_ai_hook": true,
"ai_hook_script_style": "serious",
"ai_hook_position": "beginning",
"enable_ai_reframe": true,
"ratio": "RATIO_9_16"
}'
Réponse de Soumission
{
"data": {
"export_task_id": "export_task_xyz789",
"name": "sample export task",
"status": "CREATED"
}
}
| Champ | Type | Description |
|---|---|---|
export_task_id | string | Identifiant unique de la tâche d'export. Utilisez cette valeur pour interroger la progression de l'export. |
name | string | Nom de la tâche d'export |
status | string | CREATED, QUEUED, ONGOING, SUCCEEDED, FAILED |
Récupérer les Résultats d'Export
Interrogez la tâche d'export jusqu'à ce que status soit SUCCEEDED.
GET https://wayinvideo-api.wayin.ai/api/v2/clips/export/{taskId}
Paramètres de Chemin
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
taskId | string | Oui | L'export_task_id retourné par l'endpoint de soumission d'export |
Exemple de Requête
curl -X GET https://wayinvideo-api.wayin.ai/api/v2/clips/export/export_task_xyz789 \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "x-wayinvideo-api-version: v2"
Exemple de Réponse
{
"data": {
"export_task_id": "export_task_xyz789",
"name": "sample export task",
"status": "SUCCEEDED",
"expire_at": 1775831883112,
"cost_usage": 48.0,
"clips": [
{
"idx": 0,
"title": "sample title",
"begin_ms": 15000,
"end_ms": 75000,
"thumbnail": "https://cdn.example.com/thumb/clip_001.jpg",
"tags": ["insight", "analysis"],
"desc": "sample description",
"score": 81,
"export_link": "https://cdn.example.com/export/clip_001.mp4"
}
]
}
}
Champs de la Réponse
| Champ | Type | Description |
|---|---|---|
export_task_id | string | Identifiant unique de la tâche d'export |
name | string | Nom de la tâche d'export |
status | string | CREATED, QUEUED, ONGOING, SUCCEEDED, FAILED |
error_message | string | Raison de l'erreur (présent uniquement quand status est FAILED) |
expire_at | integer | Horodatage d'expiration en millisecondes (epoch). Après cette date, la tâche expire et les résultats ne peuvent plus être récupérés via l'endpoint des résultats d'export. |
cost_usage | number | Crédits API consommés pour cette requête d'export |
clips | array | Liste des objets clips exportés. Quand status est ONGOING, peut contenir des résultats d'export partiels ; quand status est SUCCEEDED, contient tous les clips exportés. |
Les objets clips retournés par l'endpoint des résultats d'export utilisent la même structure que les objets clip dans l'endpoint des résultats principal, y compris export_link pour chaque clip rendu.