Seedance 2.5 из изображения в видео: руководство по API
Seedance 2.5 превращает статичную картинку в клип от 4 до 30 секунд со звуком. Дайте первый кадр — и видео начнётся ровно с этой картинки; дайте первый и последний кадр — и оно перейдёт от одного к другому. Ниже запрос для каждого варианта и код, который можно запустить.
Два способа начать с картинки
| Режим | Поле | Что вы получаете |
|---|---|---|
| Первый кадр | image_url | Клип открывается вашей картинкой и развивается дальше, как сказано в промпте. |
| Первый и последний кадр | image_url + end_image_url | Клип начинается с одной картинки и заканчивается другой. Одна и та же картинка дважды даёт цикл. |
| Референсные изображения | image_urls (до 30) | Картинки задают внешний вид (лицо, продукт, место), не фиксируя первый кадр. См. видео по референсам. |
Оживить одну картинку (первый кадр)
Установите aspect_ratio в adaptive, и видео сохранит форму вашей картинки: фото 9:16 даст клип 9:16. Описывайте, что движется, а не то, что уже есть на картинке: модель её видит.
# One Idempotency-Key per job, made once: resend with the same $KEY after a timeout, a 429 or a 5xx
KEY=$(uuidgen)
curl https://api.revana.si/v1/generations \
-H "Authorization: Bearer $REVANA_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $KEY" \
-d '{
"model": "seedance-2.5",
"input": {
"prompt": "The model turns her head toward the camera and smiles as the wind lifts her hair, slow push-in, city traffic in the background",
"image_url": "https://example.com/portrait.jpg",
"duration": 6,
"resolution": "720p",
"aspect_ratio": "adaptive",
"audio": true
},
"max_cost_usd": 3
}'От одной картинки к другой (первый и последний кадр)
Добавьте end_image_url. Подходит для превращений (до и после, день в ночь, пустая комната в обставленную) и для бесшовных циклов.
# One Idempotency-Key per job, made once: resend with the same $KEY after a timeout, a 429 or a 5xx
KEY=$(uuidgen)
curl https://api.revana.si/v1/generations \
-H "Authorization: Bearer $REVANA_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $KEY" \
-d '{
"model": "seedance-2.5",
"input": {
"prompt": "Time-lapse: the empty plot becomes a finished house, workers moving fast, clouds racing",
"image_url": "https://example.com/plot.jpg",
"end_image_url": "https://example.com/house.jpg",
"duration": 8,
"resolution": "720p",
"aspect_ratio": "adaptive"
},
"max_cost_usd": 3
}'Из файла на вашем компьютере, на Python
Референсы должны быть https-ссылками. Для локального файла POST /v1/uploads даёт ссылку, куда отправить байты через PUT, и url, который передаётся как image_url (действует 14 дней). Изображения до 30 МБ.
import os, time, uuid, requests
API = "https://api.revana.si/v1"
H = {"Authorization": f"Bearer {os.environ['REVANA_API_KEY']}"}
# 1. Upload the picture from your computer (skip this if it already has a public https link).
up = requests.post(f"{API}/uploads", headers=H, json={"content_type": "image/jpeg", "bytes": os.path.getsize("product.jpg"), "filename": "product.jpg"}).json()
with open("product.jpg", "rb") as fh:
requests.put(up["upload_url"], data=fh, headers=up["upload_headers"]).raise_for_status()
# 2. Quote, then animate it. The clip starts on exactly this picture.
body = {"model": "seedance-2.5", "input": {
"prompt": "The bottle slowly turns on the marble counter as morning light sweeps across the label, water droplets glisten",
"image_url": up["url"], "duration": 5, "resolution": "720p", "aspect_ratio": "adaptive", "audio": True}}
quote = requests.post(f"{API}/generations/quote", headers=H, json=body).json()
print("price", quote["quoted_usd"])
key = str(uuid.uuid4()) # made once: resend with the same key after a timeout, a 429 or a 5xx
job = requests.post(f"{API}/generations", headers={**H, "Idempotency-Key": key},
json={**body, "max_cost_usd": quote["reserved_usd"]}).json()
# 3. Wait, then download.
while job["status"] in ("queued", "running"):
time.sleep(5)
job = requests.get(f"{API}/generations/{job['id']}", headers=H).json()
if job["status"] == "succeeded":
open("product.mp4", "wb").write(requests.get(f"{API}/generations/{job['id']}/content", headers=H).content)Сколько стоит видео из изображения
Та же посекундная ставка, что и для текста в видео: 480p $0.09 · 720p $0.21 · 1080p $0.52, звук включён. Первый кадр может немного добавить к прайсовой ставке, поэтому эндпоинт quote (бесплатный) называет точную цену каждого запроса; передайте его reserved_usd как max_cost_usd. Неудачные генерации не оплачиваются. Калькулятор цены.
Промпты, которые работают для видео из изображения
- Говорите, что меняется. «Она поворачивается и уходит из кадра» лучше, чем описание женщины, которая уже есть на фото.
- Одно движение камеры. Медленный наезд, облёт, панорама влево или статичная камера. Два движения сразу в коротком клипе обычно мешают друг другу.
- Сохраняйте свет. Упомяните свет, который есть на картинке («тёплый свет из окна»), чтобы клип не уплыл в другой стиль.
- Добавьте звук. Seedance 2.5 создаёт его вместе с картинкой: «шаги по гравию, далёкий поезд».
- Используйте чистую, резкую картинку примерно в формате результата. Текст и логотипы на картинке могут искажаться в движении; добавьте их в редакторе.
Больше примеров в руководстве по промптам Seedance 2.5.
Другие модели «из изображения в видео» на том же ключе
| Модель | Длительность | Разрешения | Первый и последний кадр | 720p за секунду со звуком |
|---|---|---|---|---|
| Seedance 2.5 | 4–30 s | 480p, 720p, 1080p | Да | $0.21 |
| Seedance 2.0 | 4–15 s | 480p, 720p, 1080p, 4K | Да | $0.15 |
| Kling 4.0 | 3–30 s | 720p, 1080p | Да | $0.18 |
| Kling 3.0 | 3–15 s | 720p, 1080p, 4K | Да | $0.13 |
| Veo 3.1 | 4, 6, 8 s | 720p, 1080p, 4K | Да | $0.40 |
| Wan 3.0 | 2–30 s | 480p, 720p, 1080p | Да | $0.07 |
| MiniMax H3 | 4–15 s | 768p, 2K | Да | $0.03 (768p) |
FAQ
Умеет ли Seedance 2.5 делать видео из изображения?
Да. Отправьте image_url для первого кадра или image_url и end_image_url для первого и последнего кадра в том же запросе POST /v1/generations, что и для текста в видео. Клипы — от 4 до 30 секунд со звуком.
Сколько стоит Seedance 2.5 из изображения в видео?
480p $0.09 · 720p $0.21 · 1080p $0.52 за секунду со звуком на Revana. Первый кадр может немного добавить к цене; бесплатный эндпоинт quote называет точную цену.
Какие форматы и размеры картинок подходят?
Любая публичная https-ссылка на картинку JPEG, PNG или WebP или файл, загруженный через POST /v1/uploads (изображения до 30 МБ).
Сохранит ли видео соотношение сторон моей картинки?
Да, если aspect_ratio равен adaptive: клип принимает форму первого кадра.
Можно ли сделать бесшовный цикл?
Да: передайте одну и ту же картинку как image_url и end_image_url и опишите движение, которое возвращается к началу.
Создайте своё первое видео в Seedance 2.5
Один API-ключ для Seedance 2.5 и всех остальных видео- и графических моделей. Предоплаченные кредиты от $10, бесплатные стартовые кредиты, без подписки, оплачиваются только полученные клипы.