Генерация видео · prunaai

P-Video-Avatar

prunaai-p-video-avatar

P-Video-Avatar — генерация видео от prunaai, доступная через единый Ranvik API. Поддерживаемые возможности: async, image_to_video, text_to_video.

от 7 ₽ / сек

Технические характеристики

МодальностьГенерация видео
Провайдерprunaai
СтатусАктивна
ID для запросовprunaai-p-video-avatar

Возможности

  • Async
  • Image-to-video
  • Text-to-video

Цены

ЕдиницаЦена
за секунду · 720p7 ₽
за секунду · 1080p28 ₽

Цены указаны в рублях. Списываются с баланса проекта при каждом успешном запросе.

Поддерживаемые параметры

Параметры передаются вендору как есть (pure proxy) — мы не валидируем их у себя на стороне. Если вендор не примет — вернётся его ошибка.

ПараметрТипДиапазон / valuesDefaultОписание
positivePromptstring Опциональный текстовый промпт описывающий сцену / контекст.
resolutionenum720p, 1080p720p Resolution preset. Aspect ratio автоматически наследуется из inputs.frameImages (портрета).
seedintegermin: 0 · max: 2147483647 Seed для воспроизводимой генерации (32-bit).
inputs.frameImagesrequiredarray of strings or objectsmin: 1 Портрет аватара. Каждый item — либо строка, либо объект {image, frame}. Модель поддерживает только first-frame anchoring.
2 формата ввода
Format 1: string[]

Image input — URL / UUID / Data URI / Base64.

[
  "https://example.com/portrait.jpg"
]
Format 2: object[]
ПолеТипЗначенияОписание
imagereqstring Image input (UUID / URL / Data URI / Base64).
frameenumfirst, 0 Только first / 0.
[
  {
    "image": "https://example.com/portrait.jpg",
    "frame": "first"
  }
]
inputs.audiostring Готовая аудио-дорожка с речью (UUID / URL). Взаимоисключаемо с speech.text — выбери ОДИН источник аудио.
примеры значений
Примеры
https://example.com/voice.mp3
speech.textstringmin: 1 · max: 5000 Текст для синтеза речи (TTS). Используется вместо inputs.audio. Требует speech.voice.
примеры значений
Примеры
Привет! Сегодня я расскажу вам про новейший AI-сервис.
speech.voiceenumZephyr (Female), Puck (Male), Charon (Male), Kore (Female), Fenrir (Male), Leda (Female), Orus (Male), Aoede (Female), Callirrhoe (Female), Autonoe (Female), Enceladus (Male), Iapetus (Male), Umbriel (Male), Algenib (Male), Despina (Female), Erinome (Female), Laomedeia (Female), Achernar (Female), Algieba (Male), Schedar (Male), Gacrux (Female), Pulcherrima (Female), Achird (Male), Zubenelgenubi (Male), Vindemiatrix (Female), Sadachbia (Male), Sadaltager (Male), Sulafat (Female), Alnilam (Male), Rasalgethi (Male)Zephyr (Female) Голос для TTS. 30 предустановленных голосов (15 женских / 15 мужских).
speech.languageenumen, en-US, en-GB, es, es-ES, fr, fr-FR, de, de-DE, it, it-IT, pt-BR, ja, ja-JP, ko, ko-KR, hi, hi-INen-US Язык речи. 18 поддерживаемых кодов / локалей.
settings.promptUpsamplingbooleanfalse Автоматическое расширение/улучшение prompt-а моделью.
settings.safetyFilterbooleantrue Включить safety-фильтр на prompt / входные данные.
settings.voicePromptstringSay the following. Инструкция стиля речи (тон, темп, эмоция). Управляет, как именно аватар будет произносить speech.text.
примеры значений
Примеры
Speak in an enthusiastic, fast-paced narrator tone.
numberResultsintegermin: 1 · max: 41 Сколько вариаций сгенерировать (разные seeds). Каждая считается отдельно.
outputFormatenumMP4, WEBM, MOVMP4 Контейнер для финального видео.
outputQualityintegermin: 20 · max: 9995 Качество компрессии (20–99). Выше — лучше визуально и больше размер файла.
safety.checkContentbooleanfalse Включить проверку контента на NSFW / запрещёнку. При true default-режим safety.mode становится fast.
safety.modeenumnone, fast, fullnone Режим safety-сканера: none — выключен, fast — проверяет ключевые кадры, full — все кадры (медленнее).
webhookURLstring URL для POST-уведомления при готовности задачи. При numberResults > 1 webhook триггерится на каждый результат отдельно.
примеры значений
Примеры
https://yourapp.com/webhooks/runware
uploadEndpointstring Presigned URL (S3 / GCS / Azure / HTTP PUT) для автозагрузки готового видео. Сырое binary в body PUT-запроса.
примеры значений
Примеры
https://bucket.s3.amazonaws.com/result.mp4?X-Amz-Signature=...

Параметры ответа

Что возвращает API. У медиа-моделей формат зависит от режима: sync — сразу результат, async — task_id для опроса через GET /v1/tasks/{id}. Эта модель работает только в async-режиме.

Async (HTTP 202)

HTTP 202. Видео-генерация всегда async — нет sync-режима.

ПолеТипЗначенияОписание
idstring task_id для GET /v1/tasks/{id}.
objectstringvideo.task
statusenumqueued, processing, completed, failed
modelstring
createdinteger

Опрос статуса (GET /v1/tasks/{id})

GET /v1/tasks/{id} — опрос статуса.

ПолеТипЗначенияОписание
idstring
statusenumqueued, processing, completed, failed, canceled
modalitystringvideo
modelstring
dataarray
Каждый элемент:
  • url— string · CDN URL .mp4 / .webm / .mov.
errorstring

Пример запроса

from openai import OpenAI

client = OpenAI(api_key="rk_live_...", base_url="https://api.ranvik.ru/v1")
resp = client.videos.generate(
    model= "prunaai-p-video-avatar",
    "inputs.frameImages": [],
    positivePrompt= "Пример промпта",
    resolution= "720p",
    seed= 1073741824,
    "inputs.audio": "Пример промпта",
    "speech.text": "Пример промпта",
    "speech.voice": "Zephyr (Female)",
    "speech.language": "en-US",
    "settings.promptUpsampling": False,
    "settings.safetyFilter": True,
    "settings.voicePrompt": "Say the following.",
    numberResults= 1,
    outputFormat= "MP4",
    outputQuality= 95,
    "safety.checkContent": False,
    "safety.mode": "none",
    webhookURL= "https://example.com/...",
    uploadEndpoint= "value",
)
print(resp)

Замените rk_live_... на ваш ключ из кабинета.