API Video Summarization
Soumettez une vidéo de n'importe quelle durée et recevez une vue d'ensemble structurée, des hashtags et des temps forts générés par IA. L'API prend en charge tous les types de contenus, des clips courts aux vidéos de plusieurs heures, depuis les principales plateformes et les fichiers téléversés localement, avec des paramètres de langue.
Sources Vidéo Prises en Charge
L'API accepte les URLs des plateformes suivantes : YouTube, Vimeo, Dailymotion, Kick, Twitch, TikTok, Facebook, Zoom, Rumble et plus encore.
Vous pouvez également utiliser des fichiers téléversés localement. Le téléversement local nécessite un abonnement Standard ou supérieur. Consultez l'API Upload pour plus de détails.
Flux de Travail
- Soumettez une tâche de résumé depuis une URL de vidéo
- Interrogez les résultats jusqu'à ce que le statut soit
SUCCEEDED
Soumettre une Tâche de Résumé
Soumettez une nouvelle tâche de résumé. C'est le point d'entrée pour toutes les fonctionnalités de résumé.
POST https://wayinvideo-api.wayin.ai/api/v2/summaries
Corps de la Requête
| Paramètre | Type | Obligatoire | Défaut | Description |
|---|
video_url | string | Oui | — | L'URL de la vidéo source ou l'identifiant du fichier téléversé |
source_lang | string | Non | null | Langue source de la vidéo (voir Langues prises en charge). Si null, le système détecte automatiquement la langue d'origine. |
target_lang | string | Non | null | Langue cible pour le contenu de sortie, y compris le résumé, les descriptions et les temps forts (voir Langues prises en charge). Si null, la langue de sortie correspond à source_lang. |
Exemple de Requête
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/summaries \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "x-wayinvideo-api-version: v2" \
-d '{
"video_url": "https://www.youtube.com/watch?v=example",
"target_lang": "en"
}'
Réponse
{
"data": {
"id": "sum_proj_001",
"name": "sample project name",
"status": "CREATED"
}
}
| Champ | Type | Description |
|---|
id | string | Identifiant de la tâche (utilisé dans les requêtes suivantes) |
name | string | Nom de la tâche |
status | string | CREATED, QUEUED, ONGOING, SUCCEEDED, FAILED |
Récupérer les Résultats du Résumé
Récupérez le résumé, les temps forts et les tags. Interrogez jusqu'à ce que status soit SUCCEEDED.
GET https://wayinvideo-api.wayin.ai/api/v2/summaries/results/{id}
Paramètres de Chemin
| Paramètre | Type | Obligatoire | Description |
|---|
id | string | Oui | L'ID de tâche retourné par l'endpoint de soumission |
Exemple de Requête
curl -X GET https://wayinvideo-api.wayin.ai/api/v2/summaries/results/sum_proj_001 \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "x-wayinvideo-api-version: v2"
Réponse
{
"data": {
"status": "SUCCEEDED",
"title": "sample title",
"video_thumbnail": "https://cdn.example.com/thumb/video_001.jpg",
"summary": "sample summary text",
"tags": ["#topic1", "#topic2", "#topic3"],
"highlights": [
{
"start": 0,
"end": 196000,
"desc": "sample section title",
"events": [
{
"timestamp": 160,
"desc": "sample event description"
},
{
"timestamp": 17920,
"desc": "sample event description"
}
]
}
],
"cost_usage": 54.0
}
}
Champs de la Réponse de Résumé
| Champ | Type | Description |
|---|
status | string | CREATED, QUEUED, ONGOING, SUCCEEDED, FAILED |
error_message | string | Raison de l'erreur (présent uniquement quand status est FAILED) |
title | string | Titre généré par IA |
video_thumbnail | string | URL de la miniature de la vidéo |
summary | string | Aperçu textuel complet |
tags | string[] | Hashtags générés par IA |
highlights | array | Segments de temps forts de la timeline (voir ci-dessous) |
cost_usage | number | Crédits API consommés pour cette requête |
Objet Highlight
| Champ | Type | Description |
|---|
start | number | Temps de début en millisecondes |
end | number | Temps de fin en millisecondes |
desc | string | Titre / description de la section |
events | array | Événements clés au sein du temps fort |
Objet Event
| Champ | Type | Description |
|---|
timestamp | number | Horodatage de l'événement en millisecondes |
desc | string | Description de l'événement |