AISubs

Субтитры с подсветкой произносимого слова

Распознаёт речь в видео и вшивает субтитры, подсвечивая слово, которое диктор произносит прямо сейчас — как в роликах VK, TikTok и Reels.

работает офлайн без подписок и ключей Windows 10 / 11 100+ языков
Открыть на GitHub
Окно AISubs: очередь видео, предпросмотр на кадре, настройки стиля

Предпросмотр показывает кадр из вашего видео в масштабе 1:1 — субтитры лягут ровно так же

Что умеет

Всё считается на вашем компьютере: видео и звук никуда не отправляются.

Пословная подсветка

Цветная плашка под текущим словом, смена цвета текста (караоке) или простые субтитры без подсветки.

Точное распознавание

Whisper large-v3 с пословными таймкодами. На видеокарте NVIDIA, с автоматическим переходом на процессор.

Пакетная обработка

Перетащите хоть десяток роликов — обработаются очередью, с прогрессом по каждому.

Любые шрифты

Все установленные в Windows плюс 14 из комплекта. Фильтр «только с кириллицей» проверяет реальные глифы, а не название.

Живой предпросмотр

Кадр из вашего видео 1:1: размер шрифта, отступы и переносы видны такими, какими попадут в результат.

Пресеты стиля

Пять готовых; свои сохраняются и удаляются в один клик. Хранятся простым JSON.

Интерфейс по частям

Окно поделено на три колонки: слева — что обрабатываем, в центре — как это выглядит, справа — как это настроить.

Левая панель: очередь видео и настройки распознавания

Слева: видео и распознавание

что обрабатываем

Очередь видео
Перетащите файлы в окно или нажмите на зону выбора. Роликов может быть сколько угодно — они обработаются по очереди. Кружок слева от имени показывает состояние: ожидает, обрабатывается, готово или ошибка. Клик по строке открывает файл в плеере, крестик убирает из очереди.
Модель Whisper
От large-v3 (лучшее качество) до base (черновик). Подсказка под списком говорит, скачана ли модель и сколько весит загрузка, если нет. Скачивание идёт при запуске обработки и показывает проценты.
Язык
Автоопределение или явный выбор. Явный язык надёжнее, когда в ролике есть иностранные вкрапления — иначе распознавание может переключиться на них.
Устройство
По умолчанию видеокарта с откатом на процессор, если она не подошла. Можно задать жёстко. В правом верхнем углу окна написано, какая видеокарта найдена.
Центральная панель: предпросмотр на кадре видео

В центре: предпросмотр

как это выглядит

Кадр из вашего видео
Не абстрактная картинка, а настоящий кадр в масштабе 1:1. Размер шрифта, отступы и перенос строк видны такими, какими лягут в результат — подбирать можно не запуская рендер.
Рамка текстового поля
Пунктиром показана область, доступная под текст, а подпись рядом — её размер в пикселях исходного видео. Сразу видно, сколько места осталось и не упрётся ли текст в края.
Сколько слов помещается
Предпросмотр показывает ровно столько слов, сколько поместит движок при текущих настройках — если строка вмещает два слова, их и будет два.
Галерея пресетов и поле сохранения

Ниже: пресеты

готовые стили

Галерея
Пять готовых стилей: плашка в духе VK-роликов, караоке, жирный заголовочный, минимальный и розовая плашка. Клик применяет стиль целиком.
Сохранение и удаление
Введите название и нажмите «Сохранить» — стиль появится в галерее. Удалить: наведите на карточку и нажмите крестик, затем подтвердите. Пресеты лежат в папке presets/ обычными JSON-файлами, их можно править руками и передавать другим.
Правая панель: шрифт, размер, регистр, цвет, обводка, тень

Справа: шрифт и текст

как это настроить

Шрифт с поиском
Все шрифты системы плюс комплектные. Число рядом с заголовком — сколько сейчас в списке. Переключатель «Только с кириллицей» оставляет те, что реально умеют русские буквы: проверяются сами глифы, а не название.
Размер шрифта
В пикселях исходного видео, а не экрана. Для вертикального ролика 1080×1920 обычно 80–110.
Регистр
ЗАГЛАВНЫЕ, строчные или как распознано. Последний вариант сохраняет заглавные буквы в именах и начале предложений.
Цвет текста, обводка, тень
Цвет задаётся палитрой или кодом. Обводка нужна на пёстром фоне, тень мягче — у неё отдельно настраиваются размытие и прозрачность.
Настройки подсветки слова и положения блока

Справа ниже: подсветка и положение

главное отличие от обычных субтитров

Тип выделения слова
Плашка — цветной прямоугольник под текущим словом. Цвет — слово просто меняет цвет, классическое караоке. Без — обычные субтитры без подсветки.
Цвет плашки и текста на ней
Отдельные цвета: на светлой плашке белый текст читается плохо, поэтому активное слово можно делать тёмным.
Скругление и отступы
Скругление углов плашки и её поля вокруг слова по горизонтали и вертикали. Высота плашки при этом остаётся постоянной по всей строке, даже если у слов разные «хвосты».
Позиция и отступ от края
Верх, центр или низ кадра плюс отступ в пикселях исходника. Для вертикальных роликов низ обычно поднимают на 150–250, чтобы текст не попал под интерфейс соцсети.
Строк максимум и ширина блока
Сколько строк показывать одновременно и какую долю ширины кадра занимать. Чем меньше строк, тем короче реплики и быстрее темп.

Типографика без ручной правки

Мелочи, из-за которых обычно приходится поправлять субтитры вручную.

Предлоги не висят

«в», «и», «на», «что» переносятся вместе со следующим словом и никогда не показываются отдельным кадром.

Плашка выровнена оптически

Строится по заглавным буквам, поэтому слова с хвостами (Д, Ц, Щ, У) не съезжают, а высота не скачет по строке.

Текст не вылезает за кадр

При крупном шрифте или длинном слове строка ужимается ровно настолько, чтобы уместиться.

Как всё устроено

Два независимых шага: распознать речь и нарисовать субтитры. Разделение сделано специально — стиль можно перебирать сколько угодно, речь распознаётся один раз.

Ваше видео mp4, mov, mkv… Распознавание Whisper на GPU тайминг каждого слова кэш words.json повторно не считается Отрисовка кадры с текстом, плашкой и тенью стиль / пресет меняется мгновенно Сборка ffmpeg, H.264 MP4 готово

Распознавание

Whisper через faster-whisper выдаёт не просто текст, а время начала и конца каждого слова — именно это позволяет подсвечивать слово в такт речи. Считается на видеокарте, при её отсутствии на процессоре.

Кэш расшифровки

Результат сохраняется рядом с проектом. Поменяли шрифт или цвет — повторный рендер занимает секунды, речь заново не распознаётся.

Отрисовка

Каждое состояние строки рисуется как картинка поверх кадра: текст, обводка, тень и плашка. Здесь же работают правила переносов и оптическое выравнивание плашки.

Сборка

Кадры накладываются на исходное видео и кодируются в H.264 со звуком оригинала. Разрешение и частота кадров сохраняются.

Интерфейс

Нативное окно Windows, внутри — HTML-страница. Никакого браузера ставить не нужно, всё работает на встроенном движке системы.

Ничего наружу

Единственные обращения в сеть — разовая загрузка модели и шрифтов при установке. Сами видео и расшифровки никуда не отправляются.

Почему это важно для монтажа. Распознавание — самая долгая часть, и она отделена от оформления. Можно распознать пачку роликов один раз, а потом за минуту перебрать десяток стилей и выбрать подходящий, не трогая видеокарту повторно.

Установка

Python и ffmpeg ставить отдельно не нужно — установщик принесёт их в папку проекта.

  1. Скачайте репозиторий:
    git clone https://github.com/jimmorisedu-boop/aisubs-local.git
  2. Запустите setup.bat — поставит Python, ffmpeg, библиотеки CUDA (если есть видеокарта NVIDIA) и предложит на выбор модель распознавания: от small (~500 МБ) до large-v3 (~3 ГБ).
  3. Запустите run.bat — откроется окно приложения.
  4. Перетащите видео и нажмите «Создать субтитры». Если от модели вы отказались, она скачается сама при первой обработке — дальше всё работает офлайн.

Требования

Операционная системаWindows 10 или 11, 64 бита
ВидеокартаNVIDIA с CUDA — желательно. Без неё работает на процессоре, но медленнее
Место на дискеоколо 5 ГБ: окружение и модель распознавания
Интернеттолько для установки и разовой загрузки модели