Автоматичне генерування субтитрів до відео на основі Whisper large-v3

Відеоархів зростає швидше, ніж команда встигає його розшифровувати, і субтитри виходять із затримкою. Ми налаштовуємо автоматичне генерування субтитрів під ключ: від розбору архіву до передавання готових файлів за єдиними правилами розмітки. Час на підготовку випуску скорочується в рази, а якість перестає залежати від того, хто саме сидів за вичиткою.
Часті запитання

Чому автоматична генерація субтитрів ламається на реальних відео

Автоматична генерація субтитрів упевнено працює на демо-записі в тихій кімнаті й розвалюється на першому ж реальному матеріалі. У доріжці — музика, шум вентиляції, ехо конференц-залу, мікрофони з різною гучністю в учасників.

Модель розпізнавання мовлення, включно з актуальною гілкою Whisper, видає текст там, де людина чує одне слово, і дає помилки розпізнавання там, де запис об'єктивно чистий: два голоси перекриваються на півслові, і на виході виходить злита репліка, приписана не тому мовцю.

Другий клас збоїв — лексика. Галузевий жаргон, назви внутрішніх систем, абревіатури та латиниця всередині російської фрази розпізнаються «за звучанням» і перетворюються на безглуздий набір літер.

Окрема історія — зміна мови всередині запису: учасник переходить на англійську на два речення, і далі розшифрування відео в текст іде вже з чужою мовною моделлю, поки файл не наріжуть на сегменти вручну.

Третій клас — обсяг. Субтитри для архіву відео потрібні не на один ролик: це десятки годин лекцій, вебінарів і записів зустрічей.

Ручне розшифрування записів силами редактора дає прийнятну якість, але впирається в людино-години — на годину запису йде кілька годин роботи, і архів росте швидше, ніж його встигають розбирати. Коли черга вимірюється місяцями, завдання тихо перестає рухатися.

Розбираємо, як це закривається: де чинити вхідний звук, де підключати словник і розділення голосів, а де будувати контур пакетної обробки архіву.

Ефект від впровадження: швидкість, єдиний стандарт, охоплення

Розшифрування на Whisper іде швидше за реальний час: годинний випуск перетворюється на готову доріжку за хвилини, а не за зміну редактора.

Точність розпізнавання мовлення на студійному звуці достатня для публікації без правок, а на інтерв'ю з шумом і акцентами залишається вичитка — але точкова, за підсвіченими фрагментами, а не за всім текстом підряд.

На пілотному каталозі розрив за етапами виглядає так:

Метрика До впровадження Після
Випуск доріжки на годинне відео 6-8 годин ручної роботи 5-10 хвилин машинного проходу
Частка записів без правок редактора близько третини три чверті каталогу
Формат доріжок у кожного монтажера свій таймінг і розбивка єдиний шаблон субтитрів і тайм-кодів
Охоплення відеокаталогу лише нові релізи архів цілком, включно зі старими записами
Ручна вичитка суцільна по кожному ролику вибіркова за спірними фрагментами

Єдиний формат доріжок знімає цілий клас помилок ручного введення: розбіжності в тайм-кодах, загублені репліки, пунктуацію, що розповзається.

Коли розмітка вирівняна по всьому каталогу, пошук за субтитрами, авто-переклад і нарізка вертикальних версій починають працювати на всьому архіві, а не лише на останніх публікаціях.

Саме на цьому ефекті тримається сенс автоматичної генерації субтитрів: розшифрування перестає бути вузьким місцем випуску.

Способи отримати субтитри: пакетно, потоково, змішано

Режим роботи вибирають не за смаком, а за тим, звідки надходить відео і що потрібно на виході.

Архів, прямий ефір і окремі фрагменти потребують різної організації черги: десь важлива пропускна здатність, десь — затримка, а десь достатньо розшифрувати десять хвилин із тригодинного запису.

Пакетна обробка ставить файли в чергу й віддає готові доріжки пачкою, потокове розшифрування віддає текст услід за мовленням, а між ними лежать два компромісні сценарії. Нижче — чим вони відрізняються на практиці.

Варіант Коли підходить Обмеження
Пакетна обробка відео Обробка архіву записів: сотні файлів, результат потрібен до строку, а не хвилина в хвилину Субтитри з'являються лише після проходження черги — для ефіру не годиться
Потокове розшифрування Субтитри для вебінарів і трансляцій: текст іде услід за мовленням Затримка в кілька секунд, нижча стійкість до шуму, музики та голосів, що перекриваються
Гібридний режим Ефір з подальшим ручним доопрацюванням: чернетка автоматом, правка редактором Потрібна людина в процесі, інакше якість залишається чернетковою
Вибіркове розшифрування Потрібні лише ключові фрагменти довгого запису Потребує заздалегідь заданих меж — за таймкодами або за розпізнаним мовленням

Вибір режиму — це завжди розмін між затримкою та точністю: потоковий контур помиляється на іменах і термінах частіше, ніж пакетний, зате віддає текст одразу.

На практиці контури комбінують: ефір іде потоково, а запис після ефіру проганяється пакетно на моделі розпізнавання мовлення й замінює чернеткову доріжку. Розберемо, як це збирається в один процес.

Як будується впровадження: від аудиту архіву до передачі

Впровадження розшифрування починається не із запуску моделі, а з інвентаризації архіву: хронометраж фонду, мови та акценти, частка мовлення й музики, що перекриваються, якість звукових доріжок, наявність готових текстів і монтажних листів.

Від цих вступних залежить і профіль обробки, і обсяг ручної вичитки — тому аудит архіву відео йде першим етапом, а не з'ясовується на першій же партії.

  1. Аудит архіву відео та вимог. Розкладаємо фонд за категоріями та якістю звуку, відзначаємо, де потрібна ручна вичитка. Тут же узгоджуємо формати: вбудовані субтитри, окремі файли, розмітка мовців.
  2. Схема обробки. Визначаємо нарізку за тишею, порядок каналів при багатодоріжковому записі, поведінку системи на музиці та нерозпізнаних фрагментах.
  3. Налаштування під типи записів. Для інтерв'ю, вебінарів, лекцій і зйомок на вулиці задаємо свої профілі сегментації: єдині налаштування дають різну якість на різних жанрах.
  4. Словник термінів проєкту. Імена, абревіатури, назви продуктів, професійна лексика. Це найшвидший спосіб підняти точність без перенавчання моделі.
  5. Контрольна вибірка записів. Вимірюємо частку правильних слів, коректність міток часу, довжину рядків. Спірні випадки розбираємо до налаштування, а не після здачі.
  6. Регламент приймання доріжок. Фіксуємо вимірювані критерії: допустима частка помилок за категорією, довжина рядка, швидкість зміни, паузи. За ним ви приймаєте роботу покомпонентно.
  7. Передача. Віддаємо конфігурації, словники та інструкції, показуємо, як запускати обробку нових записів власними силами.

Після передачі залишається робочий контур і зрозумілий регламент приймання — нові матеріали проходять автоматичну генерацію субтитрів тим самим шляхом, без нашої участі.

Словники, конфігурації та правила розмітки на виході

Автоматична генерація субтитрів на базі Whisper з актуальної гілки закінчується не лише готовими файлами, а й набором артефактів, за якими ваша команда сама проганяє нові записи.

Конфігурації, словники та правила розмітки лежать у репозиторії проєкту, тому наступний матеріал розшифровується на тих самих налаштуваннях — без нас.

  • Профілі конфігурацій під типові сценарії. Окремі набори параметрів для інтерв'ю, лекцій із презентацією та записів із кількома мовцями: довжина рядка, пауза до нової доріжки, поведінка при перекритті мовлення.
  • Словник термінів проєкту. Назви продуктів, абревіатури, імена спікерів і варіанти їх написання. Підключається до генерації, тому частка помилок на вузькій лексиці падає без ручної вичитки.
  • Правила розмітки доріжок і розбиття за часом. Межі реплік прив'язані до смислових груп, а не до кількості символів: мінімальна тривалість напису, перенесення між рядками, розрив на паузі.
  • Документація з розшифрування. Формати вивантаження — SRT і VTT, кодування, нумерація доріжок, зіставлення голосів зі спікерами, зберігання вихідників.
  • Інструкція для редактора. Що правити обов'язково, які розбіжності допустимі, як відзначати спірні місця та оновлювати словник, щоб правка працювала на наступних запусках.
  • Порядок приймання результату. Контрольна вибірка, норма за часткою слів із розбіжностями, точки зупинки приймання до усунення зауважень.
  • Регламент повторного запуску. Як оновити профіль або словник і перегенерувати субтитри, не перезбираючи відеоряд.

Кейс: від ручної вичитки до потокового розшифрування архіву

Медіатека прийшла з архівом приблизно на 900 годин: інтерв'ю, лекції, записи конференцій. Розшифрування вели вручну — один редактор слухав і набирав текст, другий вичитував терміни та написання імен.

На одну доріжку йшло шість–вісім годин, тому субтитри випускали вибірково: приблизно до кожного третього запису.

Як організували обробку

Файли потрапляють у чергу, Whisper у великій конфігурації моделі віддає текст із мітками часу, а шар нормалізації приводить числа, абревіатури та написання імен до словника проєкту. Довгі сегменти ріжуться за паузами, щоб рядок не займав половину екрана.

Далі автоперевірка звіряє довжину тексту зі звуком, шукає порожні інтервали та спірну лексику — редактор відкриває лише позначені місця, а не доріжку цілком.

Що вийшло

Частка доріжок, опублікованих без правок, зросла з 31% до 86%. Час випуску однієї доріжки скоротився з шести годин до 35 хвилин: субтитри виходять разом із публікацією відео, а не через тиждень.

Архів розібрали за три тижні, далі потік іде безперервно — нові записи отримують розшифрування в день завантаження.

Розшифрування лежить поряд із відео як текстовий шар, тому пошук за медіатекою працює за репліками, а не лише за назвами файлів.

Чим відрізняється потокове розшифрування від пакетного?

Потокове розшифрування ріже звук на короткі вікна й віддає текст у міру надходження: затримка розшифрування вимірюється секундами, але модель бачить лише обмежений контекст.

На стиках сегментів рветься пунктуація, губляться імена та терміни, а мовлення двох мовців, що перекривається, згортається в одну репліку. Швидкість тут оплачена якістю: текст годиться для читання, але не для публікації без правки.

Пакетна обробка отримує файл цілком: перед розпізнаванням модель Whisper актуальної гілки працює з повним контекстом запису та таймкодами.

На складних матеріалах — шум, акцент, зміна мови всередині репліки, кілька голосів в одному каналі — придатний результат дає саме пакетний прогін. Плата за це — очікування: субтитри готові не в момент мовлення, а після завершення обробки.

Кожна схема ламається на своєму: потік не тягне інтерв'ю з перебиванням і титри поверх мовлення, пакет марний для ефіру, де субтитри потрібні в момент розмови. Тому режим вибирають не за довжиною файлу, а за вимогою до моменту появи тексту.

Гібридний режим обробки знімає цю суперечність: у потоці йде чернеткова доріжка із затримкою в секунди, а після публікації запис проганяється пакетно — з гарячими словами та словником термінів — і фінальний текст підміняє чернетку за таймкодами, без зміни посилання та налаштувань плеєра.

Режим підбираємо за типом контенту: прямий ефір — потік, архів курсу або інтерв'ю — пакет, подія із записом — гібрид.

Технічні сумніви: якість, мови, доступи

Більшість питань до автоматичної генерації субтитрів — не про саму модель розпізнавання мовлення Whisper, а про те, як вона поводиться на реальному архіві. Нижче — сумніви, які зазвичай виринають до старту: якість розпізнавання мовлення, підтримка мов, доступ до відеозаписів.

Як система дає раду шуму та перекриттю голосів?

Перекриття мовлення та фоновий шум — головне джерело помилок розпізнавання. Багатоканальні записи розводимо за доріжками, на змішаному звуці вмикаємо розділення за мовцями, щоб репліки двох людей не склеювалися в один рядок.

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

Що робити зі змішаними мовами в одному записі?

Мова визначається за фрагментом, а не за файлом цілком, тому короткі вставки іншою мовою розпізнаються у своїй мовній гілці. Імена, абревіатури та галузеві терміни потрапляють до словника замін, який збираємо з вашого глосарію — на них припадає основна частка правок.

Чи потрібен вам доступ до вихідних відеозаписів?

Обробляємо копію архіву на нашому контурі або розгортаємо все всередині вашого периметра — тоді вихідники не залишають інфраструктуру. Потрібні права на читання відео та запис субтитрів, видаємо їх окремим сервісним обліковим записом з обмеженим терміном.

У нас частково розмічений архів — це допоможе чи зашкодить?

Допоможе. Якщо частина записів уже має субтитри, використовуємо їх як еталон: звіряємо з авторозміткою, рахуємо частку збігів і налаштовуємо правила форматування. Десятої частини розміченого архіву зазвичай достатньо, щоб підтягнути якість на решті записів.

Що відбувається після правок редактора?

Правки зберігаються окремим шаром поверх машинного. Після зміни глосарію або налаштувань перегенеровуємо лише порушені ділянки, а не весь архів; історія версій і таймінги зберігаються, відкат — одна операція.

Обговоримо задачу: повернемося з оцінкою та планом

Щоб оцінка проєкту розшифрування була точною, а не «плюс-мінус порядок», нам потрібен мінімум вступних. Нижче — що надіслати для старту обговорення: цього достатньо, щоб порахувати ресурси та запропонувати план впровадження.

  • Обсяг і типи записів: скільки годин на місяць, формати контейнерів, скільки доріжок у кожному записі.
  • Приклади складних фрагментів: 3-5 шматків, де мовлення перекривається, багато термінів, імен або фонового шуму.
  • Вимоги до доріжок: яка доріжка основна, як відділяти голос від музики, чи потрібен мікс і дубляж.
  • Мови: основна мова, вставки іншими мовами, чи потрібна розмітка мови на льоту.
  • Вимоги до розмітки: формат файлу субтитрів, довжина рядка, кількість знаків за секунду, стилі, чи потрібні мітки мовців.
  • Обмеження щодо доступів: де зберігаються записи, чи можна вивантажувати їх назовні, хто і як переглядає результат.
  • Критерії приймання: як рахувати якість (частка помилок) і хто проводить вичитку.

У відповідь ми повертаємося не загальними словами: оцінкою проєкту розшифрування за обсягом, чернеткою плану впровадження та вимогами до доріжок під ваш матеріал.

Модель сімейства Whisper в актуальній гілці закриває основну частину роботи, але точність тримається на підготовці аудіо — тому приклади складних фрагментів найважливіші.

Опишіть задачу — повернемося з оцінкою та планом.

Напрямки AI-розробки

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1543
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1394
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1369
  • Розробка логотипу компанії B2B Advance
    Розробка логотипу компанії B2B Advance
    816
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1142