Руководство по использованию
Veo 3.1 Видео из изображения: превратите один кадр в короткий рекламный ролик через API
От одного продуктового кадра за $0.03 до вертикального ролика 9:16 с нативным аудио всего за 115 секунд — запустите полный рабочий процесс veo-3.1/image-to-video в task API hiapi, включая реальные выходные данные, цикл черновиков на быстром уровне и пакетный конвейер.
В производстве коротких видео есть жестокая арифметика: TikTok и Reels выигрывают за счёт объёма публикаций, но один отполированный продуктовый ролик может съесть целый день на съёмку, монтаж и звуковой дизайн. Модель Veo 3.1 «изображение в видео» от Google (veo-3.1/image-to-video) сжимает этот конвейер до двух вызовов API — дешёвый кадр, задача на видео — и возвращает вертикальный ролик, в котором уже сведено нативное аудио.
Ниже — полный результат, который этот конвейер сгенерировал для статьи. Исходное изображение за $0.03, один вызов API, ожидание 115 секунд:
Включите звук — глухой удар при приземлении, низкочастотный пульс окружения и шипение тумана полностью сгенерированы моделью. Здесь ничего не проходило ручной монтаж, цветокоррекцию или звуковой дизайн. В этом руководстве мы построим этот ролик от начала до конца через task API hiapi, а затем масштабируем тот же рабочий процесс в пакетный конвейер для производства коротких вариантов.
Почему «изображение в видео» — правильный инструмент для короткого формата
Текст в видео отлично подходит для исследований, но короткий коммерческий контент обычно начинается с материала, который у вас уже есть: фотографий продукта, изображений упаковки, кадров постера. «Изображение в видео» сохраняет эту визуальную идентичность и добавляет движение. Для формата TikTok/Reels у veo-3.1/image-to-video особенно важны три свойства:
- Выходные данные следуют за соотношением сторон входного изображения. Параметра
aspect_ratioнет — модель наследует композицию от предоставленного изображения. Дайте ей вертикальный кадр 9:16, и вы получите вертикальное видео 9:16. Оба ролика в этой статье выводятся точно в 1080×1920 и 720×1280, потому что исходные кадры имеют формат 9:16. Ваши композиционные решения достаточно принять один раз на этапе изображения. - Нативное аудио. Каждый ролик сопровождается дорожкой AAC 48 кГц, сгенерированной по вашему промпту — фоли, эмбиент и музыкальные текстуры. Для короткого формата автовоспроизведение без звука конвертирует хуже, чем контент со звуком, а это избавляет от целого этапа монтажа.
- Разрешения под платформы.
720pдля черновиков,1080pдля вертикали качества ленты,4kдля ролика, который одновременно служит мастер-копией для других площадок.
Структура входных параметров (проверено на живом API)
Перед написанием руководства мы протестировали живой эндпоинт. Структура параметров строгая — неизвестные поля отклоняются с 400, так что не гадайте:
| Поле | Обязательно | Тип | Значения |
|---|---|---|---|
prompt |
Рекомендуется | string | Указания по движению, камере и аудио |
image_url |
Да | string | Публично доступный URL изображения |
resolution |
Да | string | 720p, 1080p, 4k |
duration |
Да | integer | 4, 6 или 8 (секунд) |
Две вещи, о которых стоит знать заранее: image_url в единственном числе — это модель с одним референсом, а не мультиимиджевый микшер — и URL должен быть публично доступен для скачивания (разместите его на собственном CDN или объектном хранилище; подписанные ссылки на localhost не подойдут).
Шаг 1 — сгенерируйте исходный кадр
Подойдёт любое изображение 9:16, включая настоящие фотографии продукта. Мы сгенерировали исходное изображение в gpt-image-2 за $0.03, чтобы весь конвейер остался внутри одного API:

curl -X POST https://api.hiapi.ai/v1/tasks \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2/text-to-image",
"input": {
"prompt": "Vertical product hero shot of a chunky retro basketball sneaker in wolf-gray suede with volt yellow laces, floating at a slight tilt above a wet concrete pedestal, dramatic teal-to-amber gradient backdrop, fine mist and dust particles suspended in hard rim light, ultra-sharp commercial product photography, no text, no logos",
"aspect_ratio": "9:16",
"resolution": "1K"
}
}'
Правила композиции для хорошего исходника i2v те же, что вы дали бы фотографу предметной съёмки, плюс одно: оставьте запас для движения. Наш кроссовок парит над постаментом именно для того, чтобы у видеомодели было явное физическое действие — уронить кроссовок на камень. Субъект, застывший в действии, даёт Veo завершаемую историю; статичное центрированное изображение упаковки не даёт ничего, и вы получите лишь заполнение дрейфующим кадром.
Шаг 2 — отправьте задачу на видео
Тот же эндпоинт /v1/tasks, другая модель. Промпт должен направлять три канала одновременно: движение субъекта, камеру и аудио.
curl -X POST https://api.hiapi.ai/v1/tasks \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "veo-3.1/image-to-video",
"input": {
"prompt": "The sneaker slowly rotates about 90 degrees as the camera pushes in from a low angle. Dust particles drift through the rim light. The shoe settles onto the wet stone pedestal with a deep, satisfying thud, sending a soft ring of mist rolling off the edges. A warm light sweep travels across the suede texture. Subtle bass-heavy electronic pulse builds in the background with a low whoosh on the landing. Cinematic product commercial, smooth stabilized motion, no text overlays.",
"image_url": "https://your-cdn.example.com/stills/sneaker-916.jpg",
"resolution": "1080p",
"duration": 6
}
}'
Ответ немедленно возвращает ID задачи:
{"code": 200, "data": {"taskId": "tk-hiapi-01KXCTHP6F6VXQ9XZCSCCEEEMM"}, "message": "success"}
Обратите внимание, что промпт написан в порядке воспроизведения ролика: вращение → наезд → приземление → световой проход, а аудиоподсказки прикреплены к моментам, которым они принадлежат («глухой удар» при приземлении, пульс под ним). Veo очень буквально следует порядку событий в промпте — именно поэтому его можно скриптовать.
Шаг 3 — опрашивайте и скачивайте
Задачи на видео асинхронны. Опрашивайте задачу, пока status не переключится на success, а затем немедленно скачайте результат — этот URL является временной ссылкой с меткой expireAt, а не постоянным хранилищем:
import os, time, requests
API = "https://api.hiapi.ai/v1/tasks"
HEADERS = {"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"}
def wait_and_download(task_id: str, out_path: str, timeout_s: int = 900):
deadline = time.time() + timeout_s
while time.time() < deadline:
task = requests.get(f"{API}/{task_id}", headers=HEADERS, timeout=30).json()["data"]
if task["status"] == "success":
url = task["output"][0]["url"] # temp link — expires!
clip = requests.get(url, timeout=120).content
with open(out_path, "wb") as f:
f.write(clip) # persist to your own storage now
return out_path
if task["status"] == "fail":
raise RuntimeError(task.get("error"))
time.sleep(10)
raise TimeoutError(task_id)
В нашем запуске 6-секундный ролик 1080p занял 115 секунд от отправки до завершения. Это достаточно быстро, чтобы встроить в контент-конвейер без очереди на входе.
Дешёвые черновики, финальная доводка: двухуровневый рабочий процесс
У Veo 3.1 есть быстрый уровень — veo-3.1-fast/image-to-video — с точно такой же структурой входных данных и ценой менее половины за секунду. Это открывает рабочий процесс, позаимствованный у фотографии: сначала полароид, потом плёнка. Итерируйте промпт движения на быстром уровне в 720p и перерендеривайте только победивший промпт на стандартном уровне.
Ниже черновик на быстром уровне с точно тем же промптом и исходным кадром (6 секунд, 720p, $1.50, готово за 58 секунд):
Черновик ловит те же биты — вращение, приземление, туман — но детализация текстуры заметно проще, а аудиомикс площе. Для итераций промпта это всё, что нужно: вы проверяете режиссуру, а не финальную полировку. Оба ролика в этой статье сняты с первого дубля; быстрый уровень — это способ убедиться, что стандартный дубль — единственный, за который вы платите.
Масштабирование до массового производства
Стратегия короткого формата — игра объёмов: на каждый продукт вам нужно 5–10 вариантов для тестирования хуков. Поскольку всё работает через один асинхронный эндпоинт, пакетная обработка сводится к циклу: сначала отправьте все задачи, потом соберите результаты.
STILLS = [
("sneaker-916.jpg", "rotates and lands on the pedestal with a deep thud..."),
("bottle-916.jpg", "condensation beads race down the glass as camera orbits..."),
("headphones-916.jpg","earcup unfolds in slow motion, soft click, synth swell..."),
]
task_ids = []
for still, motion in STILLS:
r = requests.post(API, headers=HEADERS, json={
"model": "veo-3.1-fast/image-to-video", # draft tier for the first sweep
"input": {
"prompt": motion,
"image_url": f"https://your-cdn.example.com/stills/{still}",
"resolution": "720p",
"duration": 6,
},
}, timeout=60).json()
task_ids.append(r["data"]["taskId"])
for i, tid in enumerate(task_ids):
wait_and_download(tid, f"draft-{i}.mp4")
Отправка до сбора важна: ролики генерируются параллельно на стороне платформы, поэтому десять черновиков займут примерно столько же времени, сколько один, а не в десять раз больше.
Сколько это стоит
Согласно ценам hiapi, оба уровня тарифицируются по секундам выходного видео:
| Модель | Цена | Ролик 4 секунды | Ролик 6 секунд | Ролик 8 секунд |
|---|---|---|---|---|
veo-3.1/image-to-video |
$0.57/s | $2.28 | $3.42 | $4.56 |
veo-3.1-fast/image-to-video |
$0.25/s | $1.00 | $1.50 | $2.00 |
Всё, что показано в этой статье — один исходный кадр, одно изображение обложки, один быстрый черновик, один финальный вариант 1080p — обошлось в $4.98 по API. Рабочий процесс из трёх быстрых черновиков плюс одного стандартного финала стоит около $8 за готовую вертикаль, что на порядок отличается от съёмочного дня.
Частые вопросы
Как управлять соотношением сторон? Никак — выходные данные наследуют формат входного изображения. Для TikTok/Reels сгенерируйте или обрежьте исходный кадр до 9:16 перед отправкой. Наш кадр 9:16 дал точный вывод 1080×1920.
Аудио действительно генерируется? Да. Оба ролика выше содержат сгенерированную моделью дорожку AAC 48 кГц — фоли (глухой удар при приземлении), эмбиент и музыкальные текстуры, всё управляется промптом. Описывайте звуки в промпте в те моменты, когда они должны происходить.
Сколько времени занимает генерация? В наших измеренных запусках: 6 секунд/720p на быстром уровне — 58 секунд, 6 секунд/1080p на стандартном уровне — 115 секунд. Планируйте несколько минут на ролик, а для пакетной обработки используйте схему «сначала отправить всё, потом собрать».
Можно ли использовать настоящие фотографии продукта вместо сгенерированных кадров? Конечно — это основной сценарий использования. Изображение должно быть публично доступно по URL. Сохраняйте чёткость субъекта, оставляйте запас для движения и описывайте желаемое движение в промпте.
Когда стоит платить за 4k? Когда вертикаль одновременно служит мастер-активом — обрезайте источник 4k для размещений в ленте, веб-баннеров и платных блоков. Для доставки только в ленту 1080p — это разрешение, до которого платформа всё равно перекодирует.
Опубликуйте свой первый ролик
Весь конвейер — это два POST и один опрос: кадр на входе, вертикальная реклама со звуком на выходе, примерно две минуты. Получите свой API key, направьте фрагменты кода выше на лучшую фотографию продукта, запустите быстрый черновик 720p — шесть секунд за $1.50, это самый дешёвый кастинг, который вы можете заказать. Полные параметры и живые примеры — на странице модели veo-3.1/image-to-video, а если вы сравниваете движки i2v, наши рецепты промптов для Hailuo 2.3 «изображение в видео» отлично подойдут для сравнения бок о бок.
Похожие статьи
Все статьи →-
Руководство по использованию
Руководство по началу работы с seedream-5.0-pro/image-to-image: возможности, цены и ключевые моменты интеграции
Границы возможностей модели редактирования изображений ByteDance, принципы тарификации и практика инженерной интеграции
-
Руководство по использованию
Руководство по использованию seedream-5.0-pro text-to-image: границы возможностей, интеграция API и контроль затрат
Практический взгляд для разработчиков: от ключевых параметров до оценки стоимости $0.05 за изображение
-
Руководство по использованию
Руководство по началу работы с Hailuo 2.3 Fast для генерации видео из изображений: границы возможностей, цены и практика интеграции
Ключевые моменты выбора и интеграции модели MiniMax для генерации видео из изображений для разработчиков