Produza o vídeo final
direto do seu código
Um POST coloca uma renderização na fila dos nossos workers e um webhook assinado entrega-lhe o mp4. Sem instalar ffmpeg, sem alugar GPU, sem vigiar fila nenhuma.
POSThttps://autostud.ai/api/v1/actions/renders.createTrês chamadas, da timeline ao mp4
Crie o vídeo uma vez e renderize-o as vezes que precisar.
- 1
Crie o vídeo
Um vídeo guarda a timeline: camadas, áudio, legendas, formato. Crie-o numa chamada ou reutilize o que a sua equipa montou no editor.
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
Ponha a renderização na fila
Aponte renders.create ao id do vídeo, ajuste o que este trabalho precisa e ele segue para um worker de imediato. A resposta é o trabalho, não o ficheiro.
# 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
Recolha o mp4
O render.completed chega com o URL de saída. Se a sua stack prefere polling, releia antes as renderizações filtradas pelo id do vídeo.
# 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.
O que uma renderização aceita
Dois campos para a lançar, um cabeçalho para repetir em segurança, um id para a seguir.
video_idO vídeo a renderizar. Toda a composição já vive nele.
render_settingsAjustes opcionais para este trabalho: formato, qualidade, o intervalo de frames que quiser.
Idempotency-KeyUm cabeçalho. Envie a mesma chave duas vezes e recebe a primeira renderização, nunca um duplicado.
render_idDevolvido pela chamada e transportado por cada webhook, para que um mp4 terminado aponte sempre ao trabalho que o pediu.
O que sai
As renderizações são mp4 H.264 no formato definido no vídeo. Vertical para TikTok e Reels, quadrado para o feed, horizontal para o YouTube: a mesma timeline, outra saída.
Deixe o polling
Uma renderização demora minutos, não milissegundos. Registe um webhook e três eventos dizem-lhe quando um worker pegou no trabalho, quando o ficheiro está pronto e quando algo falhou.
render.startedrender.completedrender.failedO que os programadores perguntam primeiro
Quanto demora uma renderização?
Minutos, em proporção com a duração do vídeo e o número de camadas. A chamada responde assim que o trabalho entra na fila, por isso nada bloqueia na sua aplicação.
Quanto custa uma renderização?
As renderizações são faturadas em créditos e o registo lê-se pela API. Uma chave pode ficar limitada apenas a renders:read, para um painel acompanhar o gasto sem poder lançar trabalhos.
Posso repetir uma chamada falhada em segurança?
Sim. Envie um cabeçalho Idempotency-Key e uma chamada repetida devolve a renderização original em vez de pôr uma segunda na fila, a garantia que cada ação de execução da API dá.
Onde fica alojado o ficheiro?
No nosso CDN, e o URL está no registo da renderização e no payload de render.completed. Descarregue-o e guarde-o consigo se precisar dele para sempre.
Pronto para criar?
Comece a gerar vídeos virais em minutos. Não é necessário cartão de crédito para o teste gratuito.