Guias de mídia

Geração de Vídeo

Gere vídeos com operações públicas explícitas, polling assíncrono e entradas de mídia específicas do modelo.

A geração de vídeo é assíncrona. POST /v1/videos/generations retorna uma identidade de tarefa pública e geralmente um poll_url; o vídeo final aparece em respostas de status posteriores.

Envie URLs HTTP(S) públicas ou data URLs compatíveis nos campos de imagem do modelo escolhido. Elas seguem o processamento normal de mídia e não criam automaticamente IDs de materiais reutilizáveis.

Se um material indicado explicitamente ainda estiver sendo preparado, POST /v1/videos/generations retorna 409 seedance_material_preparing com inactive_asset_ids. Consulte esses materiais até ACTIVE e tente novamente com os mesmos IDs. Em caso de FAILED, veja error_message e corrija ou importe novamente antes de repetir.

Operações compatíveis

Use operation explícito em produção. O TokenLab pode inferir algumas operações a partir das entradas, mas valores de operação explícitos tornam a validação, suporte e tentativas mais claros.

OperaçãoEntrada necessária ou típicaCaso de uso
text-to-videopromptGerar apenas a partir de texto
image-to-videoimage_url ou image compatívelAnimar uma imagem inicial
reference-to-videoreference_images e video_urls / audio_urls opcionais em modelos suportadosManter identidade, estilo ou referências de ativos
start-end-to-videostart_image, end_imageControlar os primeiros e últimos quadros
video-to-videovideo_url ou task_id específico do modeloTransformar ou aumentar um clipe existente
motion-controlimage_url mais video_urlAplicar referência de movimento a um sujeito
audio-to-videoaudio_urlFluxos de vídeo condicionados por áudio
video-extensiontask_id, extend_at ou campos de extensão específicos do modeloContinuar um vídeo gerado

Descoberta de Modelos

curl "https://api.tokenlab.sh/v1/models?recommended_for=video" \
  -H "Authorization: Bearer sk-your-api-key"

Use os IDs de modelo mostrados pelo TokenLab em model e escolha variantes de recurso com operation e as entradas de mídia correspondentes. Exemplos: wan-2.7, happyhorse-1.0, viduq3, viduq3-mix, pixverse-v6, veo3.1 e seedance-2.0; não use sufixos específicos de operação como nomes de modelo do TokenLab.

Leia os detalhes do modelo selecionado antes de confiar em campos especializados, como reference_images, kling_elements, output_audio, duration, resolution ou aspect_ratio.

Criar Solicitação

curl https://api.tokenlab.sh/v1/videos/generations \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "veo3.1",
    "operation": "text-to-video",
    "prompt": "Uma cena cinematográfica calma de um gato andando por um jardim ensolarado",
    "duration": 4,
    "aspect_ratio": "16:9"
  }'

Para entrada de mídia em produção, prefira URLs públicas https em vez de URLs data: inline. Se você usar URLs temporárias, mantenha-as válidas até o TokenLab terminar de criar a tarefa.

Entradas E Campos Específicos do Modelo

O áudio depende do modelo e da operação. Um vídeo pode conter som mesmo sem um seletor de áudio. Omitir o campo não equivale a enviar false.

  • veo3.1 e veo3.1-fast sempre geram áudio conforme a Gemini API. A geração de vídeo de wan-2.6 e wan-2.7 também não permite silenciar. Omita output_audio ou use true quando os detalhes do modelo permitirem.
  • hailuo-h3 e os modelos de vídeo Grok geram áudio nativo. Não adicione seletores ausentes dos detalhes do modelo.
  • Seedance 1.5/2.x e viduq3-pro / viduq3-turbo ativam áudio por padrão e permitem saída silenciosa. PixVerse C1/V5.6/V6 desativam áudio por padrão. Use output_audio apenas nas operações que o declaram; Vidu também aceita seu campo booleano declarado audio.
  • audio_url / audio_urls fornecem áudio de entrada ou referência, não são controles de saída. Edição, transferência de movimento e de estilo podem manter a faixa original. Preservar o áudio original não significa silenciar.

Consulte os detalhes do modelo para valores permitidos e preços de áudio. Os aliases compatíveis outputAudio, generate_audio e o booleano audio devem coincidir com output_audio quando combinados. Versões e operações podem ter controles diferentes.

  • Para a família Seedance 2.0, leia o guia de modelos de vídeo Seedance 2.0 antes de usar saída 4K, limites Fast/Mini ou entradas de referência multimodais.
  • Para video-to-video com grok-imagine-video, envie prompt e uma URL HTTPS pública .mp4 em video_url. Essa operação não usa os seletores duration, resolution ou aspect_ratio.

PixVerse e HappyHorse

ModeloOperaçõesEntradasResoluçãoDuraçãoSeletor de áudio
pixverse-c1, pixverse-v6text-to-video, image-to-video, start-end-to-video, reference-to-videoprompt; image_url; start_image + end_image; reference_images360p, 540p, 720p, 1080pQualquer número inteiro de 1 a 15 segundosoutput_audio, padrão false
pixverse-v5.6text-to-video, image-to-video, start-end-to-video, reference-to-videoMesmos campos que C1 e V6360p, 540p, 720p, 1080p5, 8 ou 10 segundos; 1080p suporta 5 ou 8 segundosoutput_audio, padrão false
happyhorse-1.0text-to-video, image-to-video, reference-to-video, video-to-videoprompt; image_url; reference_images; video_url + reference_images720p, 1080p3 a 15 segundos para operações de geração; a saída de video-to-video é limitada a 15 segundosNão envie output_audio

No TokenLab, os modelos PixVerse acima não aceitam operation=video-extension.

curl https://api.tokenlab.sh/v1/videos/generations \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "pixverse-v6",
    "operation": "image-to-video",
    "prompt": "A slow camera move through a neon-lit street",
    "image_url": "https://example.com/start.jpg",
    "resolution": "1080p",
    "duration": 5,
    "output_audio": true
  }'

Resultados de Polling

Use o poll_url retornado primeiro. Se precisar de um endpoint fixo, use GET /v1/tasks/{id} com o mesmo id / task_id da resposta de criação.

Tarefas de vídeo concluídas podem retornar video_url, video ou videos, dependendo do modelo e da contagem de saída. Trate billing_transaction_id como um identificador de cobrança, não como um identificador de tarefa.

Armadilhas Comuns

  • Não codifique caminhos de status de vídeo antigos; prefira poll_url.
  • Não combine campos de primeiro quadro com fluxos dedicados de imagem de referência, a menos que o detalhe do modelo permita.
  • Não assuma que duration descreve o comprimento do vídeo de referência de entrada; geralmente controla o comprimento da saída gerada.
  • Não tente recriar solicitações após um timeout sem verificar se uma tarefa já foi criada.

Referência da API

TópicoReferência
Criar VídeoCriar Vídeo
Obter Status do VídeoObter Status do Vídeo
Obter Status da TarefaObter Status da Tarefa
Cancelar TarefaCancelar Tarefa
Cobrança & PreçosCobrança & Preços

APIs de vídeo estilo OpenAI e compatíveis com Volc

Use /v1/videos/generations para a API unificada de vídeo da TokenLab entre modelos. Se você estiver migrando uma integração Seedance 2.0 que já usa content[] ou solicitações Action no estilo Volc, use os endpoints de compatibilidade Seedance em /api/v3. Ambos os estilos usam TokenLab Bearer API keys e polling assíncrono, mas seus formatos de solicitação e resposta são diferentes.

Hailuo H3-Max gera vídeos de 5 a 15 segundos em 480p ou 768p a partir de texto, de um primeiro quadro ou de um primeiro e um último quadro. Seu fluxo voltado à velocidade é útil para transformar rapidamente uma ideia de tomada em um clipe curto.

{
  "model": "hailuo-h3-max",
  "operation": "text-to-video",
  "prompt": "A slow camera move through a quiet garden",
  "resolution": "768p",
  "duration": 5,
  "aspect_ratio": "16:9"
}

Nesta página