kosareva.cloud

API для контент-завода: видео, озвучка и субтитры по одному ключу

Соберите конвейер роликов в своём коде. Расшифровка и субтитры, сценарии, голос за кадром, обложки, музыка и генерация видео — Veo 3.1, Kling, Seedance, Wan — по одному OpenAI-совместимому адресу. Оплата в рублях, без VPN.

Строки текста превращаются в светящиеся частицы, проходят сквозь стеклянную кнопку воспроизведения и выходят плёнкой с кадрами заката

Коротко: контент-завод — это код, который сам выпускает ролики: из длинной записи делает нарезки с субтитрами и обложками, из темы — короткие видео со сценарием, голосом и музыкой. Склейку и резку делает ваш скрипт, например на FFmpeg. Всё, где нужна нейросеть, — наш API: /v1/audio/transcriptions (текст и субтитры srt/vtt), /v1/chat/completions (сценарии, выбор фрагментов, описания), /v1/audio/speech (озвучка), /v1/images (обложки), /v1/videos (ролики по тексту) и /v1/music (треки). Ключ и рублёвый баланс — одни на всё. Пополнение картой РФ или по СБП от 50 ₽, юрлицам — по счёту.

Оплата в рублях

Карта РФ, СБП или счёт для юрлиц

OpenAI-совместимый API

Подходят официальные SDK

Сбой — деньги назад

Не получился ролик — списание вернётся само

Без VPN

Запросы к моделям — из России

/ Два конвейера

Что собирают на нашем API

Конвейер — это ваш скрипт, который по очереди вызывает модели. Мы даём модели на каждом шаге, резка и склейка остаются на вашей стороне.

/ Монтаж из отснятого

Длинное видео → шортсы с субтитрами

Интервью, подкаст, вебинар или стрим превращается в нарезку с субтитрами, заголовками и обложками, а при желании — в версию на другом языке.

  • Субтитры. Gemini 3.5 Transcribe делает srt или vtt с таймкодами по словам — около 0,55 ₽ за минуту записи.
  • Нарезка по смыслу. Gemini 3.8 Flash или Claude Sonnet 5.5 находит сильные 30–60 секунд и пишет заголовки, описания и хэштеги.
  • Резка и кроп 9:16. Ваш скрипт режет запись по таймкодам и накладывает субтитры — FFmpeg, MoviePy или Remotion.
  • Обложки. Seedream 4.5 рисует в нужной пропорции, 4,5 ₽ за картинку; удалить фон — 1,2 ₽.
  • Другой язык. Перевод субтитров в текстовой модели и озвучка готовым голосом.
  • Вставные планы. Короткий ролик по тексту на Seedance 2 Mini — 23 ₽ за 5 секунд.
Пример≈ 20 ₽ за три шортса из 10-минутной записи
/ Видео с нуля

Тема → готовый вертикальный ролик

Для Reels, Shorts и клипов, где снимать нечего: текстовая модель пишет сценарий, видеомодели делают планы, голос и музыку — отдельные модели.

  • Сценарий. Текст диктора и промпт к каждому плану пишет Claude Sonnet 5.5 или Gemini 3.8 Flash.
  • Планы по 5–8 секунд. Видеомодели по тексту: Seedance, Kling, Wan, Veo, Grok Imagine. Первый кадр описывается словами.
  • Голос за кадром. Speech 2.8 HD с русскими голосами, ElevenLabs или недорогой Grok Voice.
  • Музыка. Suno — 26,40 ₽ за два трека, только физлицам.
  • Склейка и титры. Ваш скрипт: надписи в кадре видеомодели искажают, их лучше наложить поверх.
Примерот ≈ 130 ₽ за 30-секундный ролик с голосом и музыкой
/ Состав

Из чего состоит ролик

Каждый шаг — отдельный адрес одного API. Ключ и баланс те же, меняются только адрес и значение model.

ШагАдрес, POSTМоделиЦена
Субтитры из речи/v1/audio/transcriptionsGemini 3.5 Transcribe≈ 0,55 ₽ за минуту записи
Сценарии и тексты/v1/chat/completions — сценарий, выбор фрагментов, заголовки, переводGPT-6 Luna, DeepSeek V4 Flash, Gemini 3.8 Flash, Claude Sonnet 5.5от 10,8 ₽ за 1 млн токенов на входе
Голос за кадром/v1/audio/speechGrok Voice TTS 1.0, Speech 2.8 Turbo, Speech 2.8 HD, ElevenLabs Turbo 2.5, ElevenLabs Multilingual v21,62–27 ₽ за 1 000 символов
Обложки и кадры/v1/images/generations, правка — /v1/images/editsZ-Image Base, FLUX.2 Pro, Seedream 4.5, GPT Image 2, Nano Banana Pro1–16 ₽ за изображение
Фон и апскейл/v1/images/editsRecraft Crisp Upscale, Recraft Remove Background, Topaz Image Upscale0,6–12,2 ₽ за изображение
Ролик по тексту/v1/videos, задачей17 моделей Google, ByteDance, Kling, Alibaba, xAI, MiniMax и PixVerse — таблица нижеот 10 ₽ за ролик
Музыка/v1/music, задачейSuno V6, V6 Mini, V6 Wild26,40 ₽ за два трека

Через API озвучка считается по факту символов, без округления до тысячи; минута речи — около 900 символов. Цены каждой модели — в каталоге.

/ Видеомодели

Какую видеомодель ставить в конвейер

Цена — за один ролик в указанном режиме, ровно как посчитает API. Черновики и пробы гоняйте на дешёвых моделях, финальные планы — на сильных.

ЗадачаМодельРежимЦена ролика
Черновики и проверка идейGrok Imagine Video, xAI6 с, 480p10 ₽
Массовые вертикальные планыSeedance 2 Mini, ByteDance5 с, 720p23 ₽
Недорого и со звукомPixVerse v65 с, 720p33 ₽
Со звуком, до 1080pWan 3.0, Alibaba5 с, 720p61 ₽
Быстро, без звукаKling 3.0 Turbo5 с, 720p61 ₽
Реклама и Reels со звукомVeo 3.1 Fast, Google8 с, 1080p143 ₽
Максимум качестваVeo 3.1, Google8 с, 1080p561 ₽
4KSeedance 2, ByteDance5 с, 4K675 ₽
Длинный планSeedance 2.5, ByteDance30 с, 720p1 248 ₽

У Veo цена не зависит от длины ролика (4, 6 или 8 секунд), у остальных моделей растёт с каждой секундой. Звук сразу в ролике дают Veo 3.1 и Veo 3.1 Fast, Kling 3.0 и 2.6, Wan 3.0 и 3.0 Prime, PixVerse v6, Seedance 2 Fast и 1.5 Pro; Kling 3.0 Turbo — без звука. Вертикальный кадр 9:16 есть у всех видеомоделей, кроме Hailuo 2. Цена приходит в ответе API, в поле price_rub: оценка списывается при постановке задачи, а если фактический расход меньше — разница возвращается. Все режимы и цены — в каталоге.

/ Сколько стоит

Два примера с ценами

Посчитано по ценам каталога. Генерации стоят ровно по прайсу, токены текстовых моделей — оценка с запасом.

Три шортса из 10-минутного интервью

≈ 20 ₽
субтитры, выбор фрагментов и три обложки
  • Субтитры srt на Gemini 3.5 Transcribe — ≈ 5,5 ₽
  • Выбор фрагментов, три заголовка и описания на Gemini 3.8 Flash — ≈ 1,5 ₽
  • Три обложки Seedream 4.5 — 13,5 ₽
  • Версия всей записи на английском: перевод субтитров ≈ 2,4 ₽ и озвучка Speech 2.8 HD ≈ 97 ₽

30-секундный ролик с нуля

≈ 178 ₽
на Seedance 2 Mini, с голосом, музыкой и обложкой
  • Сценарий, текст диктора и промпты планов на Claude Sonnet 5.5 — ≈ 3,7 ₽
  • Шесть планов Seedance 2 Mini по 5 секунд в 720p — 138 ₽
  • Голос Speech 2.8 HD, около 450 символов — ≈ 4,9 ₽
  • Трек Suno — 26,40 ₽
  • Обложка Seedream 4.5 — 4,5 ₽
  • То же на Grok Imagine Video, пять планов по 6 секунд в 720p, — ≈ 130 ₽; на Veo 3.1 Fast в 1080p со звуком, четыре плана по 8 секунд, — ≈ 612 ₽

Оценка токенов: выбор фрагментов — 8 тыс. на вход и 2 тыс. на выход, перевод — по 5 тыс., сценарий — 2 тыс. и 3 тыс. Английская озвучка — около 9 000 символов. Музыка Suno доступна только физлицам: для компании ролик дешевле на 26,40 ₽, фон берётся из своей библиотеки.

/ Для разработчиков

Первый конвейер за вечер

Субтитры, тексты, озвучка и картинки работают через официальный OpenAI SDK. Видео и музыка — задачей по обычному HTTP: поставили, опросили статус, скачали файл.

  1. /1

    Создайте ключ

    В кабинете, раздел «API-ключи». Положите его в переменную окружения KOSAREVA_API_KEY. Под каждый канал или клиента можно завести отдельный ключ.

  2. /2

    Поменяйте адрес

    base_url https://api.kosareva.cloud/v1 — остальной код как для OpenAI. Модель выбирается значением model, имена — в каталоге.

  3. /3

    Прогоните на дешёвом

    Первый прогон — на Seedance 2 Mini за 23 ₽ или Grok Imagine Video за 10 ₽, субтитры — на коротком фрагменте. Каждая генерация списывает деньги: не запускайте её в тестах и циклах без проверки.

import base64, os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["KOSAREVA_API_KEY"],
    base_url="https://api.kosareva.cloud/v1",
)

# 1. Субтитры. Звук из ролика: ffmpeg -i in.mp4 -vn audio.mp3
with open("audio.mp3", "rb") as audio:
    srt = client.audio.transcriptions.create(
        model="gemini-3-5-transcribe",
        file=audio,
        response_format="srt",  # или vtt, verbose_json
    )
open("subs.srt", "w", encoding="utf-8").write(srt)

# 2. Модель выбирает фрагменты для шортсов
plan = client.chat.completions.create(
    model="gemini-3-8-flash",
    messages=[{"role": "user", "content":
        "Вот субтитры интервью. Выбери 3 сильных фрагмента "
        "по 30–60 секунд и верни JSON: start, end, title, "
        "description.\n\n" + srt}],
)
print(plan.choices[0].message.content)

# 3. Обложка 16:9 — Seedream 4.5 держит пропорцию
cover = client.images.generate(
    model="seedream-4-5",
    prompt="Обложка ролика: ведущий подкаста у микрофона, "
           "тёплый свет, без текста",
    size="1920x1080",
)
open("cover.png", "wb").write(base64.b64decode(cover.data[0].b64_json))

# 4. Резку по start/end, кроп 9:16 и субтитры в кадре
#    делает ffmpeg у вас
import os, time, requests
from openai import OpenAI

KEY = os.environ["KOSAREVA_API_KEY"]
API = "https://api.kosareva.cloud/v1"
H = {"Authorization": f"Bearer {KEY}"}
client = OpenAI(api_key=KEY, base_url=API)

def run_task(kind, body, path):
    """Видео и музыка: поставить задачу, ждать, скачать файл."""
    url = f"{API}/{kind}"
    task = requests.post(url, headers=H, json=body, timeout=60).json()
    if "error" in task:  # нет денег или неверное поле
        raise RuntimeError(task["error"]["message"])
    while task["status"] in ("queued", "in_progress"):
        time.sleep(10)  # опрос раз в 10 секунд
        task = requests.get(f"{url}/{task['id']}", headers=H,
                            timeout=60).json()
    if task["status"] == "failed":  # деньги вернутся сами
        raise RuntimeError(task["error"]["message"])
    file = requests.get(f"{url}/{task['id']}/content", headers=H,
                        timeout=300)
    open(path, "wb").write(file.content)
    return task["price_rub"]

# 1. Текст диктора
voiceover = client.chat.completions.create(
    model="claude-sonnet-5-5",
    messages=[{"role": "user", "content":
        "Текст диктора на 30 секунд для Reels: три совета, "
        "как хранить кофе. Верни только текст."}],
).choices[0].message.content

# 2. Планы 9:16 по 5 секунд — 23 ₽ за план на Seedance 2 Mini
shots = [
    "Зёрна кофе сыплются в стеклянную банку, утренний свет",
    "Рука закрывает банку крышкой, тёплая кухня, медленный наезд",
]
for n, prompt in enumerate(shots, 1):
    run_task("videos", {"model": "seedance-2-mini", "prompt": prompt,
                        "seconds": 5, "resolution": "720p",
                        "aspect_ratio": "9:16"}, f"shot{n}.mp4")

# 3. Голос за кадром
client.audio.speech.create(
    model="speech-2-8-hd", voice="Russian_ReliableMan",
    input=voiceover,
).write_to_file("voice.mp3")

# 4. Фон без вокала: 26,40 ₽ за два трека (Suno — только физлицам)
run_task("music", {"model": "suno-v6", "instrumental": True,
                   "prompt": "Спокойный лоу-фай для фона"}, "music.mp3")

# 5. Склейку shot*.mp4 + voice.mp3 + music.mp3 делает ffmpeg у вас
# 1. Субтитры srt из звука ролика
curl https://api.kosareva.cloud/v1/audio/transcriptions \
  -H "Authorization: Bearer $KOSAREVA_API_KEY" \
  -F model=gemini-3-5-transcribe -F response_format=srt \
  -F file=@audio.mp3 -o subs.srt

# 2. Поставить задачу на план 9:16 — в ответе id и price_rub
curl https://api.kosareva.cloud/v1/videos \
  -H "Authorization: Bearer $KOSAREVA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"seedance-2-mini","prompt":"Руки монтажёра на клавиатуре, на мониторе таймлайн, тёплый свет","seconds":5,"resolution":"720p","aspect_ratio":"9:16"}'

# 3. Статус раз в 10 секунд: queued → in_progress → completed
curl https://api.kosareva.cloud/v1/videos/ID_ЗАДАЧИ \
  -H "Authorization: Bearer $KOSAREVA_API_KEY"

# 4. Скачать готовый ролик
curl https://api.kosareva.cloud/v1/videos/ID_ЗАДАЧИ/content \
  -H "Authorization: Bearer $KOSAREVA_API_KEY" -o broll.mp4

# 5. Фоновый трек без вокала (Suno — только физлицам)
curl https://api.kosareva.cloud/v1/music \
  -H "Authorization: Bearer $KOSAREVA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"suno-v6","prompt":"Спокойный лоу-фай для фона","instrumental":true}'

# Статус и файл — как у видео: /v1/music/ID_ЗАДАЧИ и /v1/music/ID_ЗАДАЧИ/content
Подключи в мой проект конвейер роликов через API kosareva.cloud.

1. Базовый адрес https://api.kosareva.cloud/v1, ключ бери из переменной окружения KOSAREVA_API_KEY и передавай в заголовке Authorization: Bearer. Сам ключ в код не вписывай. Для субтитров, текстов, озвучки и картинок возьми официальный OpenAI SDK с этим base_url.
2. Субтитры: POST /audio/transcriptions, модель gemini-3-5-transcribe, response_format srt или vtt. Файл — до 25 МБ, с таймкодами — до 30 минут записи: звук вынимай из ролика ffmpeg и длинную запись режь на части.
3. Тексты — выбор фрагментов, заголовки, описания, перевод: POST /chat/completions, модель gemini-3-8-flash; сценарии — claude-sonnet-5-5.
4. Озвучка: POST /audio/speech, модель speech-2-8-hd, voice Russian_ReliableMan, до 10 000 символов за запрос.
5. Обложки: POST /images/generations, модель seedream-4-5, size 1920x1080 или 1080x1920; картинка приходит в data[0].b64_json.
6. Видео — задачей, обычным HTTP-запросом: POST /videos с полями model (seedance-2-mini), prompt, seconds (5 или 10), resolution (480p или 720p), aspect_ratio (16:9, 9:16 или 1:1) возвращает id; GET /videos/{id} отдаёт статус queued, in_progress, completed или failed и цену в price_rub; GET /videos/{id}/content — готовый mp4. Музыка устроена так же: POST /music с полями model (suno-v6), prompt, instrumental, файл — GET /music/{id}/content.
7. Статус проверяй раз в 10 секунд, не чаще. Если задача упала, покажи текст из error.message.
8. Резку по таймкодам, кроп 9:16, наложение субтитров и склейку делай локально через ffmpeg.
9. Каждая генерация списывает деньги с баланса. Не запускай её в тестах и циклах без моего подтверждения.
/ Честно

Чего здесь нет

Мы даём нейросети на каждом шаге конвейера. Монтаж, хранение роликов и публикация остаются в вашем коде.

Нужна модель, которой нет в каталоге, или помощь с подключением?

Написать в Telegram
Нет монтажа и склейки

Резку по таймкодам, наложение субтитров, звука и титров делает ваш код (FFmpeg, MoviePy, Remotion) или видеоредактор. Мы даём нейросети на каждом шаге.

Видео из фото по API пока нет

Ролик делается только по тексту — первый кадр опишите словами. Ремикса и удаления роликов через API тоже нет.

Нет клонирования голоса и синхронизации губ

«Дубляж» — это перевод субтитров и озвучка готовым голосом. Русские голоса есть у Speech 2.8, у ElevenLabs голос выбирается по его id.

Субтитры не делят речь по говорящим

Через API приходит текст без разметки говорящих. Один файл — до 25 МБ и до 60 минут, с таймкодами — до 30: длинную запись режьте на части.

Музыка Suno — не для компаний

Suno не входит в набор моделей для юрлиц, по счёту её не оплатить. Физлицам — 26,40 ₽ за два трека, компаниям — фон из своей библиотеки.

Не публикуем в соцсети

Загрузку в YouTube, VK Видео или Telegram делает ваш скрипт через API площадки.

Бесплатных генераций нет

Каждый ролик провайдер модели считает за деньги. Черновики — от 10 ₽.

/ FAQ

Частые вопросы

Что такое контент-завод на нейросетях?

Программа, которая без ручной работы выпускает контент потоком: режет длинные записи на короткие ролики с субтитрами, пишет сценарии и делает по ним видео, озвучивает, рисует обложки и пишет описания. Нейросети выполняют отдельные шаги, а связывает их ваш код. Наш API даёт эти нейросети по одному ключу и с одного рублёвого баланса.

Можно смонтировать реальное видео через ваш API?

Нейросетевую часть — да. Gemini 3.5 Transcribe делает субтитры srt или vtt с таймкодами по словам, текстовая модель находит фрагменты и пишет заголовки, модели картинок рисуют обложки, озвучка добавляет голос на другом языке. Резать и склеивать файлы будет ваш скрипт, например на FFmpeg: монтажного сервиса у нас нет.

Сколько стоит один ролик?

Один план по тексту — от 10 ₽ (Grok Imagine Video, 6 секунд, 480p) до 561 ₽ (Veo 3.1, 8 секунд, 1080p); длинные планы и 4K дороже — например, Seedance 2.5 на 30 секунд в 720p стоит 1 248 ₽. 30-секундный ролик с голосом и музыкой выходит примерно в 130–612 ₽, в зависимости от видеомодели. Минута субтитров — около 0,55 ₽, обложка — от 1 ₽.

Как устроен API для видео и музыки?

Как видео-API OpenAI. POST /v1/videos с полями model, prompt, seconds, resolution и aspect_ratio возвращает id задачи, GET /v1/videos/{id} — статус queued, in_progress, completed или failed и цену в поле price_rub, GET /v1/videos/{id}/content — готовый mp4. Длительность или разрешение, которых у модели нет, заменяются ближайшими. Статус спрашивайте раз в 10 секунд: ролик считается несколько минут. Музыка устроена так же, через /v1/music. Деньги списываются при постановке задачи и возвращаются, если ролик не получился; если фактический расход ниже оценки, возвращается разница.

Можно оживить фото или задать первый кадр картинкой?

Пока нет: видеомодели в API работают только из текста. Запрос с картинкой (input_reference) вернёт понятную ошибку, и деньги не спишутся. Первый кадр опишите словами в prompt. Ремикса и удаления роликов через API тоже нет.

Можно платить как компания и делить расходы по каналам?

Да. Счёт от 1 000 ₽, договор и закрывающие документы — подробно на странице для бизнеса. На каждый канал или клиента заведите отдельный ключ с лимитом в рублях: расход на субтитры, тексты, озвучку и картинки виден по ключу. Ролики и музыка пока списываются с общего баланса, а не с лимита ключа — их цену API возвращает в поле price_rub, по нему удобно вести учёт в своём коде. Компаниям доступны видео, озвучка, картинки и субтитры, музыка Suno — нет.

Какую озвучку взять для русского?

Для роликов и курсов — Speech 2.8 HD (10,8 ₽ за 1 000 символов, русские голоса, например Russian_ReliableMan) или ElevenLabs Multilingual v2 (27 ₽, самое естественное звучание в каталоге, голос задаётся id голоса ElevenLabs). Для массовой черновой начитки — Grok Voice TTS 1.0 (1,62 ₽, пять голосов). Клонирования своего голоса через API нет.

Запустите первый конвейер

Регистрация за минуту. Пополнение картой РФ или по СБП от 50 ₽, компаниям — по счёту от 1 000 ₽. Черновой ролик — от 10 ₽, минута субтитров — около 0,55 ₽.

Получить ключ