Video
Videogenerierung
Erstelle Videos mit Seedance, Kling, Omni, Wan, Grok, Veo, Vidu, PixVerse und MiniMax aus einem Prompt, einem Startbild (und optional einem Endbild) oder Referenzbildern, Videos und Audio. Videos brauchen ein paar Minuten: Starte die Generierung und prüfe später das Ergebnis.
/v1/videosStarten, Status prüfen, herunterladen
import os, time, requestsAPI = "https://api.zurelay.com/v1"HEADERS = {"Authorization": f"Bearer {os.environ['ZURELAY_API_KEY']}"}# 1. Start the videoresponse = requests.post(f"{API}/videos", headers=HEADERS, json={ "model": "seedance-2.0", "prompt": "A paper boat drifting down a rain-soaked street at night, neon reflections, slow dolly shot", "seconds": 5, "resolution": "720p", "aspect_ratio": "16:9",})response.raise_for_status() # a 4xx says what to fixjob = response.json()# 2. Poll until it's done (usually 2 to 6 minutes)while job["status"] in ("queued", "in_progress"): time.sleep(10) job = requests.get(f"{API}/videos/{job['id']}", headers=HEADERS).json()if job["status"] == "failed": raise SystemExit(job["error"]["message"])# 3. Download the MP4video = requests.get(f"{API}/videos/{job['id']}/content", headers=HEADERS)open("boat.mp4", "wb").write(video.content)Alle Videomodelle funktionieren gleich: Ändere model, der Rest der Anfrage bleibt gleich. In den Modell-Guides erfährst du, wofür sich jedes Modell am besten eignet: Seedance, Kling, Wan, Grok Imagine, Omni Flash, MiniMax H3, Veo, Vidu und PixVerse.
callback_url hinzu: Sobald das Video fertig ist, wird es signiert per POST an deinen Server gesendet. Siehe Callbacks.Parameter
modelstringerforderlich- Die ID eines Videomodells.
promptstring- Beschreibe, was passiert, mit bis zu 8,000 Zeichen (Kling verarbeitet bis zu 2,500, Vidu reads up to 2,000, PixVerse reads up to 2,048, MiniMax reads up to 7,000). Erforderlich, wenn du weder ein Startbild noch Referenzbilder angibst.
negative_promptstring- Was im Video nicht vorkommen soll, mit bis zu 2,500 Zeichen. Kling and PixVerse berücksichtigen das; andere Modelle lehnen es ab.
secondsinteger- Länge in ganzen Sekunden innerhalb des Bereichs des Modells (siehe Tabelle). Standard: 5 oder die nächstgelegene Länge, die das Modell erzeugen kann.
resolutionstring- Zum Beispiel
480p,720p,1080p,2koder4k: Die Optionen pro Modell stehen in der Tabelle. Standard: 720p oder die niedrigste Auflösung des Modells. aspect_ratiostring16:9,9:16,1:1,4:3,3:4,21:9oderadaptive(das Seitenverhältnis des Startbilds; wenn du eines angibst, wird es standardmäßig übernommen). Andernfalls ist der Standard16:9. Kling makes 16:9, 9:16, 1:1 und 21:9; Omni and Veo make 16:9 and 9:16; Kling makes 16:9, 9:16 and 1:1; Grok, Vidu and PixVerse make 16:9, 9:16, 1:1, 4:3 and 3:4.sizestring- Statt Auflösung und Seitenverhältnis: Pixelangaben wie
1280x720. generate_audioboolean- Ton und Sprache werden zusammen mit dem Video erzeugt. Standard:
true. (audiofunktioniert auch.) Kling and PixVerse cost kostet ohne Ton weniger. seedinteger- Mit demselben Seed und denselben Einstellungen erhältst du ähnliche Ergebnisse. Kling, Grok and Veo have no seed and ignore it.
first_framestring- Ein Bild, mit dem das Video beginnt: als Link oder Daten-URL. MiniMax takes none: give the image in reference_images.
last_framestring- Ein Bild, mit dem das Video endet. Erfordert ein Startbild. Seedance, Kling, Omni, Wan, Vidu and PixVerse take one.
reference_imagesarray- Bilder von Figuren, Produkten, Orten oder einem Stil, die verwendet werden sollen: Seedance up to 9, Kling up to 10, Omni up to 10, Wan up to 10, Grok up to 3, MiniMax up to 9; Veo, Vidu and PixVerse take none. Nicht zusammen mit Start- oder Endbildern.
reference_videosarray- Videos, deren Look, Bewegung oder Kameraführung übernommen werden soll, oder ein Video zum Bearbeiten oder Verlängern: MP4 oder MOV als Links oder Daten-URLs, im Prompt als
@Video1,@Video2usw. erwähnt. Nur Seedance 2.5, Seedance 2.0, Gemini Omni Flash und MiniMax H3. Die Sekunden werden zu einem Teil des Preises pro Sekunde abgerechnet, bei manchen Modellen gar nicht; siehe Referenzvideos und Audio. reference_audioarray- Stimme, Musik oder Sound: MP3 oder WAV, als Links oder Daten-URLs. Erwähne sie als
@Audio1usw. Nur bei Seedance 2.5, Seedance 2.0 und MiniMax H3, ohne Aufpreis. reference_modestring- Mit Referenzvideos: ein
edit, einextendoder ein neues Video aus den Referenzen erstellen (reference). Standardmäßigauto: Das Modell richtet sich nach dem Prompt. Nur bei Seedance 2.5. callback_urlstring- Eine https-URL, an die das fertige (oder fehlgeschlagene) Video gesendet wird, statt den Status abzufragen. Siehe Callbacks.
Mit Bildern starten
Erstes und letztes Frame
Animiere ein Standbild: Das Video beginnt genau mit first_frame. Mit last_frame endet es bei diesem Bild – so bestimmst du Anfang und Ende der Aufnahme. MiniMax starts stattdessen aus Referenzbildern.
{ "model": "seedance-2.0", "first_frame": "https://example.com/storefront-day.jpg", "last_frame": "https://example.com/storefront-night.jpg", "prompt": "Time passes from afternoon to night; lights come on inside the shop.", "seconds": 6, "resolution": "720p"}Referenzbilder
Gib bis zu 10 Bilder (Seedance up to 9, Kling up to 10, Omni up to 10, Wan up to 10, Grok up to 3, MiniMax up to 9; Veo, Vidu und PixVerse take none) an und erwähne sie im Prompt der Reihe nach (@Image1, @Image2…): Die Personen, Produkte und Orte darauf erscheinen im Video.
{ "model": "seedance-2.5", "reference_images": [ "https://example.com/chef.jpg", "https://example.com/kitchen.jpg", "https://example.com/dish.jpg" ], "prompt": "The chef from @Image1 plates the dish from @Image3 in the kitchen from @Image2, close-up, warm light.", "seconds": 8, "resolution": "720p", "aspect_ratio": "9:16"}Referenzvideos und Audio
Nutze Videos als Vorlage für das Aussehen und die Bewegungen einer Person, eine Kamerafahrt oder eine Szene. Audio dient als Vorlage für eine Stimme, Melodie oder Soundeffekte. Erwähne sie im Prompt der Reihe nach, wie Bilder: @Video1, @Audio1. Du kannst sie mit Referenzbildern kombinieren, aber nicht mit einem ersten Frame.
{ "model": "seedance-2.5", "reference_images": ["https://example.com/singer.jpg"], "reference_videos": ["https://example.com/dance-moves.mp4"], "reference_audio": ["https://example.com/chorus.mp3"], "prompt": "The singer from @Image1 performs the dance from @Video1 on a rooftop at dusk, singing to @Audio1.", "seconds": 8, "resolution": "720p"}Das Modell verarbeitet jede Sekunde eines Referenzvideos. Diese Sekunden werden ebenfalls berechnet, zu einem Teil des Preises pro Sekunde: Ein 5 s langes Video mit einer 10 s langen Referenz kostet die 5 Sekunden des Videos plus 10 Referenzsekunden. Referenz-Audio kostet nichts extra. Jedes Videoobjekt zeigt die berechneten Referenzsekunden (reference_seconds).
Video bearbeiten und verlängern
Setze reference_mode auf edit, um ein Referenzvideo zu bearbeiten (eine Person oder ein Objekt austauschen, etwas hinzufügen oder entfernen, die Musik ändern), oder auf extend, um es vorwärts oder rückwärts fortzusetzen. Beschreibe im Prompt, was passieren soll: „Ersetze das Auto in @Video1 durch das aus @Image1“, „Setze @Video1 fort, während die Tänzerin die Bühne verlässt“.
- Beim Bearbeiten bleiben Format und Länge des Videos erhalten. Lass daher
aspect_ratioundsecondsweg. Berechnet wird die Länge des längsten Referenzvideos; dieses muss 4 bis 30 Sekunden lang sein. - Beim Verlängern bleibt das Videoformat erhalten; mit
secondslegst du die Länge des neuen Videos fest. - Ohne
reference_modeentscheidet das Modell anhand des Prompts. Ein Prompt, der wie eine Bearbeitung klingt, kann mit gesetztemsecondsoderaspect_ratiofehlschlagen (fehlgeschlagene Videos sind kostenlos).
Regeln für Bilder
- PNG, JPEG oder WebP, als öffentlicher
https-Link oder Daten-URL, bis zu 10 MB. - 300 bis 6000 Pixel pro Seite und höchstens im Seitenverhältnis 5:2. Daten-URLs außerhalb dieser Grenzen werden sofort mit einer Begründung abgelehnt. Links werden beim Start des Videos abgerufen: Führt ein Link zu keinem verwendbaren Bild, schlägt das Video mit
invalid_imagefehl – kostenlos. - Entweder Frames oder Referenzen, nicht beides in einer Anfrage.
- Anfragen sind JSON: Bilder werden als Links oder Daten-URLs übergeben, nicht als Multipart-Uploads.
Das Videoobjekt
{ "id": "video_abc123", "object": "video", "model": "seedance-2.0", "status": "completed", "progress": 100, "created_at": 1790870400, "completed_at": 1790870562, "expires_at": 1793462400, "seconds": 5, "resolution": "720p", "aspect_ratio": "16:9", "size": "1280x720", "generate_audio": true, "url": "https://...signed link...", "url_expires_at": 1790956962, "cost": 1.035, "error": null}Weitere Endpunkte
Videokosten
Ein Video kostet den Sekundenpreis (je nach Auflösung) mal seine Länge; Kling und PixVerse cost weniger pro Sekunde ohne Ton; Sekunden von Referenzvideos werden zu einem Teil dieses Preises berechnet. Wenn du es startest, wird der Preis von deinem Guthaben reserviert. Abgebucht wird erst, wenn das Video fertig ist. Schlägt es fehl, wird der Betrag wieder freigegeben. Ein fehlgeschlagenes Video ist kostenlos.
Fragen oder fehlt etwas? Frag unser Support-Team und wir antworten per E-Mail, meist innerhalb einer Minute.