Видео

Асинхронная генерация видео с опциональным закадровым текстом и последовательными сценами.

В отличие от других категорий, видео обрабатывается асинхронно: вызов немедленно возвращает job_id (HTTP 202), а не конечный результат. Отслеживайте состояние через GET /v1/jobs/{job_id}.

Запуск генерации

http
POST /v1/video/generate
json
{
  "prompt": "Un drone survole une plage au coucher du soleil.",
  "image_url": null,
  "duration_seconds": 5,
  "narration_text": null,
  "scenes": null,
  "model": null,
  "routing_strategy": "auto"
}
json
{ "job_id": "8b2a3be3-...", "status": "queued" }

Отслеживание состояния

http
GET /v1/jobs/{job_id}
json
{
  "id": "8b2a3be3-...",
  "category": "video",
  "type": "text_to_video",
  "status": "completed",
  "provider": "vidu",
  "model": "viduq1",
  "result_url": "https://cdn.uploadscenter.com/file_...",
  "error": null,
  "created_at": "2026-08-31T17:14:04Z",
  "updated_at": "2026-08-31T17:24:41Z"
}

status принимает значения queued, processing, completed или failed. Опрашивайте статус через регулярные интервалы (например, каждые 5 секунд) до достижения одного из двух конечных состояний. Официальные SDK предоставляют сокращение .wait(), которое делает этот опрос за вас.

Закадровый текст (озвучка)

Укажите narration_text, чтобы наложить синтезированную закадровую озвучку на сгенерированное видео. Это произносимый текст, отдельный от визуального prompt, который описывает только сцену для генератора видео — ни один поставщик видео не генерирует аудио нативно, озвучка синтезируется отдельно (голос ElevenLabs), а затем объединяется с видео.

json
{
  "prompt": "Documentaire sous-marin, poissons tropicaux, recif corallien.",
  "narration_text": "Sous la surface, un monde silencieux et colore s'anime au rythme des courants.",
  "duration_seconds": 5
}

Сцены (видео длиннее одного клипа)

Клип, сгенерированный за один вызов поставщика, обычно длится несколько секунд, независимо от запрошенной длительности. Для более длинного видео (особенно полезно при длинной озвучке) укажите scenes — визуальное описание для каждого сегмента длительностью около duration_seconds, последовательно соединённых. Каждая сцена — это отдельный вызов поставщика, тарифицируемый отдельно.

json
{
  "prompt": "Presentation d'un chaton qui joue avec une balle.",
  "scenes": [
    "Un chaton tigre tapote une balle rouge dans un salon ensoleille, camera basse.",
    "Le chaton poursuit la balle sous le canape puis la ramene fierement, gros plan."
  ],
  "duration_seconds": 5,
  "narration_text": "Voici Moka, un chaton joueur qui pourchasse sa balle rouge avec entrain."
}

Если указан scenes, поле prompt игнорируется при генерации (поле остаётся обязательным — используйте в качестве значения краткое резюме).

Стартовое изображение

image_url превращает генерацию «текст в видео» в генерацию «изображение в видео» (первый клип анимирует предоставленное изображение).

Поставщики

Vidu, OpenAI (Sora).