Geração de vídeo

Vídeo com IA via MCP — duração, resolução e tier de preço, driving video/templates, lipsync com voz, timestamps por cena e avatares em cena.

Vídeo usa o mesmo pipeline dos jobs UGC (ugc_job_create com um model_key de outputKind: "video") — só muda o conjunto de params e de capabilities que importam. Veja o fluxo completo em UGC — Geração.

Escolhendo o modelo

ugc_models_list com output_kind: "video" — as capabilities que mandam:

CapabilitySignificado
durationsSec / durationRangeSec / maxDurationSecdurações discretas ou faixa contínua (segundos)
resolutionsex.: 720p, 1080p — muda o tier de preço
aspectRatios9:16, 16:9, 1:1
acceptsImageRefsaceita image_ref_media_ids (i2v)
acceptsDrivingVideoaceita driving video/template (motion)
lipsyncsuporta lipsync com voice_id
timestampsprompt com timestamps por cena

creditsByResolution mostra o teto por tier — mas o custo real do SEU input só sai no ugc_estimate (o leilão escolhe o provider mais barato que atende).

Job de vídeo

{
  "model_key": "seedance-2.0",
  "prompt": "a criadora apresenta o produto olhando pra câmera",
  "idempotency_key": "video-001",
  "params": {
    "duration_sec": 5,
    "aspect_ratio": "9:16",
    "resolution": "720p",
    "avatar_ids": ["avatar_id — o rosto em cena"],
    "scene_id": "cenário da biblioteca como fundo",
    "image_ref_media_ids": ["frame/referência visual"],
    "format": "mp4"
  }
}

duration_sec é obrigatório em vídeo (o estimate rejeita sem ele). resolution altera o preço — confirme com ugc_estimate antes.

Driving video & templates

Para motion/lipsync a partir de um vídeo de referência:

  • driving_video_media_id — file_id de um vídeo já subido
  • template_id — um driving template ingerido (ugc_templates_list traz os do workspace)

Exige modelo com acceptsDrivingVideo.

Lipsync & voz

{ "params": { "voice_id": "id da voz", "timestamps": true } }

lipsync no modelo + voice_id = rosto do avatar falando com a voz escolhida. timestamps: true ativa o prompt com marcação por cena (modelos com timestamps na capability).

Roteiro e organização

  • script_id — vincula um roteiro ao job.
  • mentions — tokens @nome do prompt ligados a avatar/cena/mídia: { "token": "@maria", "kind": "avatar", "id": "..." }.
  • project_id — agrupa o job num projeto UGC (ugc_projects_list).

Poll & custo

Igual a imagem: ugc_job_get até succeeded → resultUrl/resultMediaId (o mp4 final — reutilizável como driving_video_media_id depois). Falha → estorno; ugc_job_cancel → cancela + estorno. credits_balance antes de criar.

Ver também: UGC — Geração · Avatares