Введение
Изображение в видео для Veo 3.1: на входе первый кадр и, при желании, последний; на выходе клип 720p длиной 4–8 секунд со звуком.
| Характеристика | Значение |
|---|---|
| Ввод | Изображение |
| Вывод | Видео |
| Издатель | |
| Длина клипа | 4, 6 или 8 секунд |
| Разрешение | 720p: 1280x720 (16:9) или 720x1280 (9:16) |
| Соотношения сторон | 16:9, 9:16 |
| Частота кадров | 24 кадра/с |
| Звук | Создаётся в каждом клипе |
| Входные данные | Текст; первый кадр с необязательным последним |
Ключевые возможности и особенности
Кадр, построенный в том порядке, в котором вы его описали
В промпте попросили открыть купол, появиться телескопу и провести камеру вдоль перил. За 4 секунды в формате 9:16 створка раздвинулась от закрытого положения до полного открытия, внутри загорелся янтарный свет вокруг латунного телескопа, а камера поехала вперёд по изогнутым перилам, именно в таком порядке.
Точно прийти к последнему кадру
Первый кадр: женщина у телескопа спиной к нам. Последний: она опирается на перила, скрестив руки. За 4 секунды она развернулась, подошла к перилам и заняла финальную позу, а над куполом появилось больше звёзд.
Четырёх секунд хватает на одно действие
С одного первого кадра промпт был таким: «He folds the map and looks up.» За 4 секунды он сложил карту обеими руками, но на последнем кадре всё ещё смотрел вниз. Задавайте по одному действию на 4 секунды или выбирайте 8 секунд на два.
Продолжите клип из любой модели
Мы взяли 5-секундный клип, сделанный в другой модели, и попросили добавить 4 секунды: «The road continues along the sea.» Новая часть подхватила воздушный кадр над прибрежной дорогой и проследила за машиной на поворотах. На выходе получился один файл на 9 секунд того же размера, что и исходный клип, а оплачены только 4 новые секунды.
Параметры запроса
| Параметр | Обязательно | Описание |
|---|---|---|
prompt | Да | Обязательное поле. Опишите, что и как движется, куда направляется камера и что слышно, от первого кадра до конца клипа. Не менее 1 символов · Не более 4000 символов |
image_url | Да | Обязательно. Начальный кадр (JPEG, PNG или WebP). Не менее 1 символов |
last_image_url | Нет | Необязательно. Финальная картинка, к которой должен прийти клип. Не менее 1 символов |
aspect_ratio | Нет | auto (по умолчанию) сохраняет пропорции первого кадра; 16:9 или 9:16 обрезает его до этой формы. Цена одинакова. |
duration_seconds | Нет | Клип длится 4, 6 или 8 секунд, а если не указать, то 8. Чем длиннее, тем дороже. |
Стоимость
Оплата за клип по цене его 4, 6 или 8 секунд; соотношение сторон, звук и отправленные изображения ничего не добавляют. Запросы, завершившиеся ошибкой или отклонённые, бесплатны.
| Спецификация | Стоимость |
|---|---|
| $1.44 / запрос |
| $2.16 / запрос |
| $2.88 / запрос |
Сценарии использования
Финальный рендер после дешёвого черновика
Отработайте промпт, кадрирование и тайминг на Veo 3.1 Fast за $0.36 или Lite за $0.18 за клип по 4 секунды, а затем отправьте тот же запрос на Veo 3.1 для версии, которую оставите. Все три принимают одинаковые поля.
Предметный или видовой кадр, который должен начинаться и заканчиваться на снимках со съёмки
Передайте начальный и финальный кадр и опишите движение между ними. В нашем тесте клип дошёл до последнего кадра за 4 секунды.
Сцены длиннее 8 секунд
Сгенерируйте первые 8 секунд, затем продолжите их через продление видео: последний кадр клипа открывает новый сегмент в 4–8 секунд, и вы получаете один склеенный файл. Исходный клип длиной до 60 секунд не оплачивается.
Вертикальные клипы со звуком для соцсетей
Выберите 9:16 для клипа 720x1280. Звук создаётся вместе с картинкой, поэтому короткое видео готово без отдельной работы со звуком.
Руководство по промптам и практические советы
Пишите в том порядке, в котором всё происходит
Место и свет, субъект, действие, движение камеры, затем звук. Наш промпт про обсерваторию шёл в таком порядке, и клип проиграл события в той же последовательности.
Ставьте звук как кадр
Напишите, что должно звучать: «Sound: wind over sand, the dome's motor». Произносимые слова берите в кавычки. Google отмечает, что самые короткие реплики пока даются хуже всего, поэтому оставьте сцене с речью несколько секунд.
Согласуйте действие с длиной
Планируйте одно понятное действие на 4 секунды. В нашем тесте с 4 секундами «folds the map and looks up» дошло только до сгиба.
Берегите Veo 3.1 для финального дубля
При одинаковой длине Veo 3.1 стоит вчетверо дороже Fast и в восемь раз дороже Lite. Отработайте формулировку и кадрирование на более дешёвой ступени, а финальный рендер запустите здесь один раз.
Обзор
Veo 3.1 Изображение в видео начинает клип 720p с вашей картинки и анимирует её 4, 6 или 8 секунд со звуком. Если добавить последний кадр, клип проведёт сцену от первого изображения ко второму. Google сначала проверяет промпт и изображения; отклонённые запросы завершаются ошибкой без оплаты.
Как выбрать режим Veo 3.1
| Что есть | Что использовать |
|---|---|
| только описанная сцена | Veo 3.1 Текст в видео |
| статичная картинка для начала или для финала | Veo 3.1 Изображение в видео (вы здесь) |
| материал, который нужно продолжить | Veo 3.1 Продление видео |
Советы по промпту
- Тратьте промпт на движение и камеру: что в кадре, уже показывает картинка.
- Если кадров два, опишите, как сцена переходит от начальной картинки к финальной.
- Оставьте соотношение сторон на auto, чтобы сохранить форму первого кадра.
Нужно несколько референсных изображений? Режим «по референсам в видео» есть на странице Veo 3.1 Fast.
Быстрый старт API
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "google/veo-3.1/image-to-video",
"input": {
"aspect_ratio": "auto",
"duration_seconds": 8,
"image_url": "https://example.com/reference.png",
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
Аутентификация, полная схема, опрос статуса и обработка ошибок описаны в справочнике API.