SRTGen.com LogoSRTGen.com

API Вшивания видео

Отправляйте проекты в наш высокопроизводительный кластер рендеринга для генерации видео с вшитыми субтитрами и профессиональным оформлением.

POST/api/v1/burn
Быстрая реализация
curl -X POST https://api.srtgen.com/api/v1/burn \
  -H "x-api-key: <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
  "projectId": "proj_8k2n9m1b",
  "resolution": "1080p"
}'
POSThttps://api.srtgen.com/api/v1/burn

Параметры

ПараметрТипОбязателенОписание
Основные параметры
projectIdStringYes

Уникальный идентификатор проекта, содержащего видео и субтитры.

resolutionStringNo

Желаемое разрешение выходного видео.

Варианты: original, 1080p, 720p, 480p | По умолчанию: оригинальное

fileNameStringNo

Пользовательское имя для сгенерированного файла MP4.

languageStringNo

Целевой язык для вшитых субтитров.

По умолчанию: Активный язык проекта

Поддержка нескольких языков (двойные субтитры)
languagesArrayNo

Конфигурации для нескольких дорожек субтитров в одном видео.

Лимит: макс. 3 языка

-language
StringYes*

Код для этого слота языка (например, 'zh' или 'original').

-lineBreakRules
ObjectNo

Переопределение сегментации для конкретного языка.

-styleSettings
ObjectNo

Стилизация для конкретного языка (важно для позиционирования двойных субтитров).

Правила переноса строк (lineBreakRules)
lineBreakRulesObjectNo

Вложенный объект для логики сегментации субтитров.

-maxChars
NumberNo

Максимально допустимое количество символов в строке.

Диапазон: 5 - 100 | По умолчанию: 45

-maxWords
NumberNo

Максимально допустимое количество слов в строке.

Диапазон: 1 - 20 | По умолчанию: 10

-balanceLines
BooleanNo

Выравнивает длину строк в многострочных субтитрах.

По умолчанию: true

-sentenceSplit
BooleanNo

Предпочитать разрыв строк в конце предложений.

По умолчанию: true

-gapThreshold
NumberNo

Максимальная пауза (в секундах) между словами в строке.

Диапазон: 0.1 - 2.0 | По умолчанию: 0.4

Основы стиля (styleSettings)
uppercaseBooleanNo

Принудительно перевести весь текст в верхний регистр.

styleSettingsObjectNo

Вложенный объект для переопределения визуального оформления.

-preset
StringNo

Применить встроенный пресет стиля в качестве основы.

Варианты: standard-stream, classic-apple, etc.

-fontSize
NumberNo

Размер шрифта как отношение к высоте видео.

По умолчанию: 0.045

-fontFamily
StringNo

Стандартное имя шрифта, используемое для рендеринга.

По умолчанию: Arial

-bold
BooleanNo

Применить жирное начертание к тексту.

По умолчанию: false

-italic
BooleanNo

Применить курсив к тексту.

По умолчанию: false

Цвета и границы
-primaryColor
HexNo

Hex-код основного цвета текста.

По умолчанию: #FFFFFF

-secondaryColor
HexNo

Вторичный цвет (используется для эффектов караоке).

По умолчанию: #00FFFF

-outlineColor
HexNo

Цвет контура текста.

По умолчанию: #000000

-outline
NumberNo

Толщина контура (отношение к высоте).

По умолчанию: 0.002

-shadow
NumberNo

Глубина тени (отношение к высоте).

По умолчанию: 0.001

Позиционирование (коэффициенты 0-1)
-alignment
NumberNo

Код выравнивания ASS (1-9). Снизу по центру — 2.

Диапазон: 1 - 9 | По умолчанию: 2

-posX
NumberNo

Горизонтальное положение (0 = слева, 1 = справа).

По умолчанию: 0.5

-posY
NumberNo

Коэффициент вертикального положения (0 = сверху, 1 = снизу). По умолчанию: 0.88.

-marginV
NumberNo

Коэффициент вертикального отступа от низа/верха. По умолчанию: 0.056.

Анимация и эффекты
-fadeIn
NumberNo

Длительность появления в миллисекундах.

-fadeOut
NumberNo

Длительность затухания в миллисекундах.

-karaoke
StringNo

Тип тега караоке (k, kf, ko, ks).

Пример: Стандартный стиль стрима
curl -X POST https://api.srtgen.com/api/v1/burn \
  -H "x-api-key: <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
  "projectId": "proj_8k2n9m1b",
  "resolution": "1080p",
  "styleSettings": {
    "preset": "standard-stream",
    "fontSize": 0.055,
    "bold": true
  }
}'
POSThttps://api.srtgen.com/api/v1/burn
Дополнительно: Двуязычное вшивание
curl -X POST https://api.srtgen.com/api/v1/burn \
  -H "x-api-key: <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
  "projectId": "proj_8k2n9m1b",
  "languages": [
    {
      "language": "original",
      "styleSettings": {
        "preset": "classic-apple",
        "posY": 0.85
      }
    },
    {
      "language": "es",
      "styleSettings": {
        "preset": "classic-apple",
        "posY": 0.75,
        "primaryColor": "#FFFF00"
      }
    }
  ]
}'
POSThttps://api.srtgen.com/api/v1/burn

Статус и ответ

1. Асинхронная инициализация

Задачи по вшиванию в облаке асинхронны. API немедленно ответит с burnId, как только задача будет принята кластером рендеринга.

Используйте эндпоинт статуса экспорта, чтобы опрашивать прогресс и получить финальный URL видео.

Ответ: 200 OK
{
  "success": true,
  "burnId": "brnc_abc123",
  "status": "running"
}

2. Отслеживание и получение

Чтобы получить финальный результат, опрашивайте статус проекта, используя burnId, полученный при инициализации:

curl -X POST https://api.srtgen.com/api/v1/export/proj_xxx \
  -H "x-api-key: <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
  "output": "mp4",
  "burnId": "brnc_abc123"
}'
POSThttps://api.srtgen.com/api/v1/export/proj_xxx

По завершении статус изменится на completed, и будет предоставлен resultUrl (видео для скачивания).

Отслеживание через эндпоинт экспорта
{
  "status": "completed",
  "resultUrl": "https://cdn.b2.com/video.mp4"
}

Коды ошибок

СтатусКод ошибкиОписание
400missing_parameterprojectId обязателен.
400missing_videoК проекту не прикреплено исходное видео.
401unauthorizedКлюч API отсутствует или недействителен.
403insufficient_balanceНедостаточно кредитов для длительности этого видео.
404not_foundID проекта не существует.
500burn_submission_failedКластер рендеринга переполнен или недоступен.
500export_errorПроизошла ошибка при обработке субтитров.
500server_errorНепредвиденная внутренняя ошибка сервера.
Была ли эта страница полезна?
API Вшивания видео | SRTGen.com