Wyrenderuj gotowe wideo
prosto z własnego kodu
Jeden POST kolejkuje renderowanie na naszych workerach, a podpisany webhook oddaje ci plik mp4. Bez instalowania ffmpeg, bez wynajmowania GPU, bez pilnowania kolejki.
POSThttps://autostud.ai/api/v1/actions/renders.createTrzy wywołania, od osi czasu do mp4
Utwórz wideo raz, a potem renderuj je tyle razy, ile potrzebujesz.
- 1
Utwórz wideo
Wideo trzyma oś czasu: warstwy, audio, napisy, format. Utwórz je jednym wywołaniem albo użyj tego, co twój zespół złożył w edytorze.
export AUTOSTUD_API_KEY="sk_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" # A video is the timeline. Create one, or skip this step and reuse # a video your team already built in the editor. curl -X POST https://autostud.ai/api/v1/actions/videos.create \ -H "Authorization: Bearer $AUTOSTUD_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "video_name": "Launch teaser", "video_format": "portrait", "video_lang": "en" }' - 2
Zakolejkuj renderowanie
Skieruj renders.create na id wideo, nadpisz to, czego wymaga to zadanie, i trafi ono na workera od razu. Odpowiedzią jest zadanie, nie plik.
# The Idempotency-Key makes this call safe to retry: send it twice # and you get the same render back, never a second job. curl -X POST https://autostud.ai/api/v1/actions/renders.create \ -H "Authorization: Bearer $AUTOSTUD_API_KEY" \ -H "Content-Type: application/json" \ -H "Idempotency-Key: launch-teaser-v3" \ -d '{ "video_id": "0f4c8b71-2d95-47a3-9e6c-15b8ad7f3c20", "render_settings": { "quality": "high" } }' - 3
Odbierz mp4
render.completed przychodzi z adresem pliku wyjściowego. Jeśli twój stos woli odpytywanie, odczytaj renderowania z filtrem po id wideo.
# Register once. Every render reports itself from then on. curl -X POST https://autostud.ai/api/v1/webhooks \ -H "Authorization: Bearer $AUTOSTUD_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "url": "https://your-app.com/hooks/autostud", "events": ["render.started", "render.completed", "render.failed"], "description": "Rendering" }' # The signing secret comes back once, in this response. Store it.
Co przyjmuje renderowanie
Dwa pola, by je uruchomić, jeden nagłówek dla bezpiecznych ponowień, jeden id, by je śledzić.
video_idWideo do wyrenderowania. Cała kompozycja już w nim siedzi.
render_settingsOpcjonalne nadpisania dla tego zadania: format, jakość, wybrany zakres klatek.
Idempotency-KeyNagłówek. Wyślij ten sam klucz dwa razy, a dostaniesz pierwsze renderowanie, nigdy duplikat.
render_idZwracany przez wywołanie i niesiony przez każdy webhook, więc gotowy mp4 zawsze wskazuje zadanie, które go zamówiło.
Co wychodzi
Renderowania to mp4 H.264 w formacie ustawionym na wideo. Pionowo dla TikToka i Reels, kwadratowo do feedu, poziomo na YouTube: ta sama oś czasu, inne wyjście.
Koniec z odpytywaniem
Renderowanie trwa minuty, nie milisekundy. Zarejestruj jeden webhook, a trzy zdarzenia powiedzą ci, kiedy worker wziął zadanie, kiedy plik jest gotowy i kiedy coś się zepsuło.
render.startedrender.completedrender.failedO co programiści pytają najpierw
Ile trwa renderowanie?
Minuty, proporcjonalnie do długości wideo i liczby warstw. Wywołanie odpowiada, gdy tylko zadanie trafi do kolejki, więc nic w twojej aplikacji się nie blokuje.
Ile kosztuje renderowanie?
Renderowania rozliczamy w kredytach, a rejestr czyta się przez API. Klucz można ograniczyć wyłącznie do renders:read, żeby panel śledził wydatki bez możliwości uruchamiania zadań.
Czy mogę bezpiecznie ponowić nieudane wywołanie?
Tak. Wyślij nagłówek Idempotency-Key, a powtórzone wywołanie zwróci pierwotne renderowanie zamiast kolejkować drugie: tę samą gwarancję daje każda akcja wykonawcza API.
Gdzie hostowany jest plik?
Na naszym CDN, a adres znajdziesz w rekordzie renderowania i w ładunku render.completed. Pobierz go i przechowaj u siebie, jeśli ma zostać na zawsze.
Gotowy do tworzenia?
Zacznij generować wiralowe filmy w kilka minut. Karta kredytowa nie jest wymagana do bezpłatnej wersji próbnej.