Vídeo
Geração de vídeo
Crie vídeos com Seedance, Kling, Omni, Wan, Grok, Veo, Vidu, PixVerse e MiniMax a partir de um prompt, de um primeiro fotograma (e, opcionalmente, de um último) ou de imagemns de referência, vídeos e áudio. Os vídeos demoram alguns minutos, por isso inicia a geração e consulta o resultado mais tarde.
/v1/videosIniciar, consultar, descarregar
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)Todos os modelos de vídeo funcionam da mesma forma: altere model e o pedido mantém-se igual. Os guias dos modelos explicam em que se destaca cada um: Seedance, Kling, Wan, Grok Imagine, Omni Flash, MiniMax H3, Veo, Vidu e PixVerse.
callback_url e o vídeo concluído é enviado por POST para o seu servidor, com assinatura, assim que estiver pronto. Consulte Callbacks.Parâmetros
modelstringobrigatório- O ID de um modelo de vídeo.
promptstring- O que acontece, até 8,000 caracteres (Kling lê até 2,500, Vidu reads up to 2,000, PixVerse reads up to 2,048, MiniMax reads up to 7,000). Obrigatório, exceto se fornecer um primeiro fotograma ou imagens de referência.
negative_promptstring- O que excluir do vídeo, até 2,500 caracteres. Kling and PixVerse leem este campo; os restantes modelos rejeitam-no.
secondsinteger- Duração em segundos inteiros, dentro do intervalo do modelo (consulte a tabela). Por predefinição, 5 ou a duração mais próxima que o modelo gera.
resolutionstring- Por exemplo,
480p,720p,1080p,2kou4k: as opções de cada modelo estão na tabela. Por predefinição, 720p ou a resolução mais baixa do modelo. aspect_ratiostring16:9,9:16,1:1,4:3,3:4,21:9ouadaptive(as proporções do primeiro fotograma; a predefinição quando fornece um). Caso contrário, a predefinição é16:9. Kling makes 16:9, 9:16, 1:1 e 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- Em vez da resolução e da proporção: píxeis, como
1280x720. generate_audioboolean- Som e fala gerados com o vídeo. Por predefinição,
true. (audiotambém funciona.) Kling and PixVerse cost menos sem som. seedinteger- A mesma seed e as mesmas definições produzem resultados semelhantes. Kling, Grok and Veo have no seed and ignore it.
first_framestring- Uma imagem com que o vídeo começa: um link ou um URL de dados. MiniMax takes none: give the image in reference_images.
last_framestring- Uma imagem com que o vídeo termina. Requer um primeiro fotograma. Seedance, Kling, Omni, Wan, Vidu and PixVerse take one.
reference_imagesarray- Imagens de personagens, produtos, locais ou de um estilo a usar: 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. Não podem ser combinadas com fotogramas.
reference_videosarray- Vídeos cujo aspeto, movimento ou trabalho de câmara pretende usar, ou um vídeo para editar ou prolongar: MP4 ou MOV, como links ou URLs de dados, mencionados no prompt como
@Video1,@Video2e assim por diante. Apenas Seedance 2.5, Seedance 2.0, Gemini Omni Flash e MiniMax H3. Cada segundo destes vídeos é cobrado a uma fração do preço por segundo ou, em alguns modelos, não é cobrado; consulte Vídeos e áudio de referência. reference_audioarray- Voz, música ou som a utilizar: MP3 ou WAV, como ligações ou URLs de dados, referidos como
@Audio1e assim por diante. Apenas Seedance 2.5, Seedance 2.0 e MiniMax H3, sem custos adicionais. reference_modestring- Com vídeos de referência: edite um (
edit), prolongue um (extend) ou crie um novo vídeo a partir das referências (reference). Por predefinição,auto: o modelo segue o prompt. Apenas Seedance 2.5. callback_urlstring- Um URL https para enviar o vídeo concluído (ou a indicação de falha), em vez de consultar o estado periodicamente. Consulte Callbacks.
A partir de imagens
Primeiro e último fotograma
Anime uma imagem estática: o vídeo começa exatamente em first_frame. Adicione last_frame para terminar nessa imagem e controlar ambas as extremidades do plano. Em alternativa, MiniMax starts a partir de imagens de referência.
{ "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"}Imagens de referência
Forneça até 10 imagens (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 e PixVerse take none) e mencione-as no prompt por ordem (@Image1, @Image2…): as pessoas, os produtos e os locais nelas presentes aparecem no vídeo.
{ "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"}Vídeos e áudio de referência
Forneça vídeos para reproduzir a aparência e os movimentos de uma pessoa, um movimento de câmara ou uma cena, e áudio para uma voz, uma melodia ou efeitos sonoros. Mencione-os no prompt por ordem, tal como as imagens: @Video1, @Audio1. Podem ser combinados com imagens de referência, mas não com um primeiro fotograma.
{ "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"}O modelo lê cada segundo de um vídeo de referência, pelo que esses segundos também são cobrados, a uma fração do preço por segundo: um vídeo de 5 s com uma referência de 10 s custa os seus 5 segundos mais 10 segundos de referência. O áudio de referência não tem custos adicionais. Cada objeto de vídeo mostra os segundos de referência cobrados (reference_seconds).
Editar e prolongar um vídeo
Defina reference_mode como edit para alterar um vídeo de referência (substituir uma pessoa ou um objeto, adicionar ou remover algo, mudar a música), ou como extend para o prolongar para a frente ou para trás. Indique o que pretende no prompt: “Substitua o carro em @Video1 pelo de @Image1”, “Continue @Video1 enquanto o bailarino sai do palco”.
- Uma edição mantém o formato e a duração do vídeo, por isso omita
aspect_ratioeseconds. O preço é calculado com base na duração do vídeo de referência mais longo, que deve ter entre 4 e 30 segundos. - Um prolongamento mantém o formato do vídeo;
secondsdefine a duração do novo vídeo. - Sem
reference_mode, o modelo decide com base no prompt, e um prompt interpretado como uma edição pode falhar sesecondsouaspect_ratioestiver definido (os vídeos que falham não são cobrados).
Regras para imagens
- PNG, JPEG ou WebP, como ligação pública
httpsou URL de dados, até 10 MB. - 300 a 6000 píxeis em cada lado, sem uma proporção superior a 5:2 na horizontal ou na vertical. Os URLs de dados que não cumpram estes limites são rejeitados de imediato, com uma mensagem a explicar o motivo. As ligações são lidas quando o vídeo começa: se uma não contiver uma imagem utilizável, o vídeo falha com
invalid_image, sem custos. - Fotogramas ou referências, nunca ambos no mesmo pedido.
- Os pedidos são em JSON: as imagens são enviadas como ligações ou URLs de dados, não como carregamentos multipart.
O objeto de vídeo
{ "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}Outros endpoints
Pagamento de vídeos
Um vídeo custa o preço por segundo (consoante a resolução) multiplicado pela duração; menos Kling e PixVerse cost por segundo sem som; os vídeos de referência acrescentam os seus segundos a uma fração desse preço. Ao iniciar um vídeo, o respetivo valor fica reservado no seu saldo; é cobrado quando o vídeo fica pronto e libertado se ocorrer uma falha. Um vídeo com falha não tem custos.
Tem dúvidas ou falta alguma coisa? Contacte a nossa equipa de apoio e responderemos por email, normalmente num minuto.