KI-Clipping API
Senden Sie ein Video beliebiger Länge und erhalten Sie alle nach Viralpotenzial geordneten Clips. Jeder Clip enthält automatisch erkannte Start-/Endzeiten, KI-generierte Titel, Beschreibungen und Hashtags. Optional werden gerenderte Clip-Videos mit KI-Reframing und animierten Untertiteln exportiert.
Unterstützte Videoquellen
YouTube, Vimeo, Dailymotion, Kick, Twitch, TikTok, Facebook, Zoom, Rumble und weitere.
Lokale Uploads erfordern einen Standard-Plan oder höher. Weitere Details in der Upload-API.
Clipping-Aufgabe einreichen
POST https://wayinvideo-api.wayin.ai/api/v2/clips
Anfragekörper
| Parameter | Typ | Erforderlich | Standard | Beschreibung |
|---|---|---|---|---|
video_url | string | Ja | — | Quellvideo-URL oder Dateikennung von der Upload-API. |
project_name | string | Nein | "" | Benutzerdefinierter Aufgabenname |
source_lang | string | Nein | null | Quellsprache des Videos. Wenn null, automatische Erkennung. |
target_lang | string | Nein | null | Zielsprache für Titel, Beschreibungen und Untertitel. |
target_duration | string | Nein | DURATION_0_90 | Erwartete Clip-Dauer: DURATION_0_30, DURATION_0_90, DURATION_30_60, DURATION_60_90, DURATION_90_180, DURATION_180_300. |
limit | number | Nein | null | Maximale Anzahl zurückzugebender Clips. |
enable_export | boolean | Nein | false | false: nur Metadaten; true: sofortiges Rendern mit Download-Link. |
resolution | string | Nein | SD_480 | Auflösung: SD_480, HD_720, FHD_1080, QHD_2K, UHD_4K. |
enable_caption | boolean | Nein | false | Animierte Untertitel beim Rendern hinzufügen. |
caption_display | string | Nein | original | Untertitelmodus: both, original, translation. |
cc_style_tpl | string | Nein | temp-7 | Untertitelstil-Vorlagen-ID (siehe Untertitelstile). |
enable_ai_hook | boolean | Nein | false | KI-generierten Aufmerksamkeitstext am Anfang oder Ende hinzufügen. |
ai_hook_script_style | string | Nein | serious | Hook-Textstil: serious, casual, informative, conversational, humorous, parody, inspirational, dramatic, empathetic, persuasive, neutral, excited, calm. |
ai_hook_position | string | Nein | beginning | Position: beginning, end. |
enable_ai_reframe | boolean | Nein | false | KI-Reframing aktivieren. Wenn true, ist ratio erforderlich. |
ratio | string | Erforderlich wenn enable_ai_reframe true | — | Seitenverhältnis: RATIO_9_16, RATIO_1_1, RATIO_4_5, RATIO_16_9. |
reframe_layout | string | Nein | Auto | KI-Reframing-Layout. Siehe Layout-Werte. |
enable_more_results | boolean | Nein | false | Mehr Clips generieren. Nur mit Enterprise-Abonnement. |
enable_express_mode | boolean | Nein | false | Express-Modus: halber API-Einheitenverbrauch. Nur mit Enterprise-Abonnement. |
Reframing-Layout-Werte
ratio | Erlaubte reframe_layout-Werte |
|---|---|
RATIO_16_9 | Auto, Full, Fit, Grid 4, Split 2, Trio, PiP, OTS, Screen First |
RATIO_9_16 | Auto, Full, Fit, Grid 4, Split 2, Trio, PiP, Screen First, Gameplay A, Gameplay B |
RATIO_1_1 | Auto, Full, Fit, Grid 4, Trio |
RATIO_4_5 | Auto, Full, Fit, Grid 4, Split 2, Trio, PiP, Screen First, Gameplay A, Gameplay B |
enable_export auf true gesetzt. Clips werden gerendert, jeder enthält export_link.
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/clips \
-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_duration": "DURATION_30_60", "enable_export": true, "resolution": "HD_720", "enable_caption": true, "enable_ai_reframe": true, "ratio": "RATIO_9_16"}'
{"data": {"id": "proj_xyz789", "name": "sample project name", "status": "CREATED"}}
enable_export weggelassen oder false. Nur Metadaten, kein Rendering.
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/clips \
-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_duration": "DURATION_30_60"}'
{"data": {"id": "proj_abc123", "name": "sample project name", "status": "CREATED"}}
Clipping-Ergebnisse abrufen
GET https://wayinvideo-api.wayin.ai/api/v2/clips/results/{id}
Inkrementelle Ergebnisse: Wenn
statusONGOINGist, gibt jeder Aufruf die bisher generierten Clips zurück.
{
"data": {"id": "proj_xyz789", "status": "SUCCEEDED", "expire_at": 1741824000000, "cost_usage": 120.0,
"clips": [{"idx": 0, "title": "sample title", "begin_ms": 15000, "end_ms": 75000,
"tags": ["insight"], "desc": "sample description", "score": 81,
"export_link": "https://cdn.example.com/export/clip_001.mp4"}]}
}
{
"data": {"id": "proj_abc123", "status": "SUCCEEDED", "expire_at": 1741824000000, "cost_usage": 120.0,
"clips": [{"idx": 0, "title": "sample title", "begin_ms": 15000, "end_ms": 75000,
"tags": ["insight"], "desc": "sample description", "score": 81}]}
}
Antwortfelder
| Feld | Typ | Beschreibung |
|---|---|---|
id | string | Eindeutige Aufgaben-ID |
name | string | Aufgabenname |
status | string | CREATED, QUEUED, ONGOING, SUCCEEDED, FAILED |
error_message | string | Fehlerursache (nur wenn FAILED) |
expire_at | integer | Ablauf-Zeitstempel in Millisekunden |
cost_usage | number | Verbrauchte API-Einheiten |
clips | array | Liste der Clip-Objekte |
Clip-Objekt
| Feld | Typ | Beschreibung |
|---|---|---|
idx | integer | Clip-Index (ab 0, nach Viralpotenzial sortiert) |
title | string | KI-generierter Titel |
begin_ms | number | Startzeit in Millisekunden |
end_ms | number | Endzeit in Millisekunden |
thumbnail | string | Miniaturansicht-URL |
tags | string[] | KI-generierte Hashtags |
desc | string | KI-generierte Beschreibung |
score | number | Viralpotenzial-Score (0–100) |
export_link | string | Download-URL des gerenderten Videos. Läuft nach 24 Stunden ab. |
Bestehende Clips erneut exportieren
Verwenden Sie die Clips-Export-API zum späteren Rendern oder Neuexportieren mit anderen Einstellungen.