Субтитры для Reels и TikTok: из видеофайла в SRT

Перетащите аудио или видео или нажмите, чтобы выбратьMP3 · WAV · M4A · OGG · MP4 · до 30 минут
Пример результата – так выглядит готовая расшифровка
00:47РусскийСпикеры: 2
00:00Спикер 1

Давай коротко по срокам. Мы успеваем к пятнице или переносим на следующую неделю?

00:07Спикер 2

К пятнице успеваем, если макеты придут завтра. Если позже, то реалистичнее вторник, и это я ещё не закладываю правки после ревью.

00:18Спикер 1

Понял. Тогда я тереблю дизайн сегодня, а ты пока начинаешь с той части, которая от макетов не зависит.

00:25Спикер 2

Договорились. И ещё момент: на прошлой неделе мы забыли записать решение по интеграции, потом полчаса вспоминали. Давай в этот раз зафиксируем сразу.

AI-саммари

Фрагмент рабочего созвона: обсуждают сроки по задаче и договариваются, кто отвечает за следующий шаг.

У меня выходит восемнадцать вертикалок в неделю на четыре площадки. И субтитры для Reels и TikTok я делаю последними. Всегда. Ролик собран, публикация в восемь вечера, подписей нет. Дальше я набиваю текст пальцем в редакторе, тайминг гуляет на полсекунды, подписи вшиты в кадр намертво.

Зимой я поменял порядок. Сначала расшифровка с тайм-кодами и файл SRT, потом решаю, выжигать ли текст в пиксели. Оговорюсь сразу. Поля для ссылки нет, мы принимаем файл, так что ролик я скачиваю или экспортирую. Забираем мы 1–2% длительности, берём от 0,29 ₽/мин.

Зачем субтитры в соцсетях, если площадка рисует их сама

Метро. Очередь к врачу. Созвон, где я вырубил микрофон. Кровать в час ночи. Звука нет, и ролик без подписей молчит. Субтитры в тикток и субтитры в reels нужны мне ради этого зрителя. И мне пишут подписчики, которые плохо слышат.

Второй мотив приземлённее. Из расшифровки я вытаскиваю текст, он живёт дальше сам. Описание под видео. Пост в телеграм. А перепечатывать сценарий с экрана, останавливая плеер каждые пять секунд, я больше не сажусь. Пробовал. Сорок минут на один ролик.

Причина третья. Один исходник идёт у меня на Reels, TikTok, Shorts и ВК. Подписи площадки наружу не выходят, и я начинаю сначала. Мы отдаём один текст, я делаю четыре выгрузки.

Три вида субтитров и чем они отличаются на практике

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

Вшитые субтитры (hard-sub) я выжигаю в кадр при экспорте из CapCut. Здесь я хозяин всего. Шрифт, обводка, кегль, положение. А обратная сторона? В марте я заметил опечатку в фамилии спикера через два часа после публикации. Пересборка, экспорт, перезалив, просмотры обнулились.

Файл SRT или VTT ведёт себя иначе. Внутри обычный текст с тайм-кодами. Номер блока, строка вида 00:00:01,240 --> 00:00:03,900, реплика, пустая строка. Я открываю его блокнотом и импортирую в монтажную программу. Зритель в вертикалках видит вшитый текст, и SRT у меня исходник. Про форматы у нас есть разбор, субтитры SRT и VTT.

ВидГде живётКак правитсяПеренос
Автоподписив приложениипальцемнет
Вшитые (hard-sub)в пикселяхпересборкойда, с видео
Файл SRT или VTTрядом с видеов блокнотеда, с исходником

Как сделать субтитры для Reels и TikTok из видеофайла

Схема на четыре шага, времени просит один. Экспорт, загрузка, SRT, правка. Правка всё и съедает. Мы принимаем mp4, mov, mkv и webm. Если видеофайл тяжёлый, вытаскиваю дорожку в mp3, m4a, wav, ogg или aac. Картинка нам не нужна, мы слушаем. Отдаём txt, json, verbose_json, srt и vtt, для соцсетей беру srt.

  • Экспортирую ролик или дорожку. Если музыка поверх голоса, выгружаю до сведения, так мы распознаём точнее.
  • Загружаю файл в генератор субтитров и выбираю SRT. VTT беру, если ролик поедет в HTML5-плеер.
  • Читаю глазами, правлю имена и жаргон, режу длинные реплики. Одна мысль на кадр, максимум две строки.
  • Импортирую SRT в монтажную программу и настраиваю шрифт.

Про точность скажу цифрами. На бенчмарке из семи датасетов мы даём WER 7,10% и WAcc 92,9%, примерно одна ошибка на четырнадцать слов. Рядом ElevenLabs с 6,88%, AssemblyAI с 7,03% и Whisper-large-v3 с 7,44%. Мы в одном коридоре, по третьему знаку я бы не выбирал. Получасовое интервью мы проходим за 25 секунд, у Yandex SpeechKit уходит около 2 минут, у OpenAI около 10 минут. А на моей минутной вертикалке? Разницы я не замечаю.

Отдельно про то, как сделать субтитры в инстаграм. Спрашивают чаще всего. Мобильные редакторы дружат только со своими автоподписями, чужой .srt туда не закинешь. Я правлю файл на компьютере, отдаю в CapCut, публикую с подписями. Крюк? Да. Зато текст я вычитал один раз, и он расходится по площадкам. А длинный исходник я гоню целиком, и транскрибация видео в текст даёт тайм-коды по всему интервью.

Ошибки, из-за которых субтитры портят ролик

Моя самая частая ошибка? Текст уезжает под интерфейс. TikTok закрывает низ кадра описанием и кнопками, справа колонка иконок, Reels добавляет элементы сверху и снизу. В феврале я выложил ролик, где цена легла под кнопку подписки. На мониторе идеально, на телефоне цены не видно. Теперь я держу текст ближе к центру вертикального кадра и проверяю с телефона. До публикации. Не после.

Вторая ошибка растёт из природы расшифровки. Мы пишем дословно. Все мои «ну» и «э-э» попадут в SRT, потому что я их произнёс. Для интервью это достоинство. Для сорокасекундной вертикалки мусор под зачистку. Реплику мы отдаём целиком, а в вертикальный кадр влезают две строки.

Остальное короче.

  • Музыка громче голоса. Трек забивает речь и роняет точность у любого движка, и у нас. Расшифровывайте до сведения.
  • Двое говорят одновременно. Для диалогов я включаю диаризацию, и реплики разъезжаются по спикерам.
  • Склейка посреди слова. Монтаж рубит окончания, и на стыке мы теряем хвост.
  • Иноязычные вставки. Языков мы держим около сотни, включая русский и языки СНГ, но расшифровываем на языке речи. Английская фраза в русском ролике английской и останется, перевода у нас нет.

Что сделать с ближайшим роликом

Субтитры в reels вы ставите редактором площадки? Экспортируйте последний ролик в mp4 и прогоните через нас. Сравните наш SRT с тем, что дал редактор. Я так и сделал в январе. Автоподписи переврали название продукта в трёх роликах. Десять минутных роликов стоят примерно 2,9 ₽ по тарифу 0,29 ₽/мин. Подписки у нас нет, секунды округляем вниз, баланс не сгорает. А хотите проверить нас на своём голосе? Отправьте файл в Telegram-бот @VoicePalatineBot. До 100 транскрибаций в день бесплатно.

А если роликов десятки в неделю? Ручная загрузка теряет смысл, и я подключил API, там распознавание файлов и поток по WebSocket, документация на docs.speech.palatine.ru. Инфраструктуру мы держим в четырёх ЦОД Tier III в России, передаём по TLS, работаем по 152-ФЗ, и на ваших записях модели не обучаются.

Сегодня вечером у меня один сорокасекундный ролик. Экспорт, загрузка, SRT, пятнадцать минут на текст и шрифт.