Транскрибувати аудіо в субтитри
Перший запуск завантажує мовну модель — близько 45 МБ для швидкого рівня, 81 МБ для точного, віддається цим сайтом і після цього кешується браузером. Нічого не надсилається, а транскрипт робить машина: вичитайте формулювання й таймінги, перш ніж публікувати.
Параметри
Два рівні однієї моделі. Швидша — близько 45 МБ, транскрибує приблизно вдвічі швидше; точніша — близько 81 МБ, краще передає великі літери й пунктуацію. Обидві працюють тут, і завантаження відбувається раз на браузер. На довгому записі спершу спробуйте швидший рівень, щоб перевірити, чи правильно визначено мову.
Мова, якою говорять у записі. Автоматичного варіанта немає: ця збірка моделі не визначає мову, і без вибору вона припускає англійську. Китайський запис, прочитаний як англійський, не падає — він дає плавну на вигляд нісенітницю, яку помітити набагато важче. Вибирайте мову, яку насправді чуєте.
.srt відтворюється всюди, зокрема в старіших редакторах і телевізорах; .vtt — вебформат і несе трохи більше структури. Обидва містять точно ті самі репліки з точно тими самими таймінгами, тож вибирайте той, який очікує наступний інструмент у вашому ланцюжку.
Ця сторінка слухає запис і записує те, що чує, як файл субтитрів: одна репліка на речення, а початок і кінець кожної репліки стоять там, де слова справді звучать. Перетягніть інтерв’ю, лекцію, голосову нотатку або звукову доріжку фільму, у якого немає субтитрів узагалі, і отримайте .srt або .vtt, який грає в будь-якому плеєрі. Заздалегідь нічого не потрібно — це сторінка для випадку, коли витягати нічого.
Слухання відбувається у вкладці. Модель мовлення працює на WebAssembly через onnxruntime, файли моделі віддає цей сайт, і єдиний мережевий трафік — це те завантаження: близько 45 МБ для швидкої моделі й близько 81 МБ для точної, після чого їх кешує браузер. Запис нікуди не надсилається. Якщо відкрити панель Network, поки файл транскрибується, буде видно запити вниз за даними моделі й жодного байта вгору.
Те, що виходить, — найкращий здогад машини, а не транскрипт для протоколу. Слова, які вона почула неправильно, лишаються неправильними, а таймкоди точні приблизно до довжини фрази, а не до кадру. Вичитайте текст перед публікацією й ставтеся до нього як до першого проходу швидкої людини, яка не знала теми. Це те саме правило чесності, якого дотримуються сторінки OCR, і саме тому сторінка каже про це на початку, а не в зносці.
Запис ріжуть на вікна по 30 секунд із перекриттям 5 секунд, і кожне вікно транскрибують окремо. Це дає змогу обробляти довгі файли, не тримаючи годину звуку в моделі одразу, і саме тому скасування діє на початку наступного вікна, а не миттєво. Речення, які перетинають межу, дедуплікують, відкидаючи все, що наступне вікно повідомляє до кінця попереднього, — попереднє прочитання перемагає, бо воно чуло фразу цілком.
Довгі речення ділять на межах речень, а потім за двома обмеженнями: репліка не довша за сім секунд і не ширша за 84 символи, із перенесенням до 42 символів у рядку. Це ті самі межі, які задає більшість мовників, тому результат зазвичай проходить першу перевірку відповідності без редагування.
Часті запитання
Що буде, якщо запис не англійською?
Треба вказати сторінці, якою мовою говорять, бо ця збірка моделі не визначає мову сама. Автоматичного варіанта немає, і це навмисно: без вибраної мови модель припускає англійську. Китайський запис, прочитаний як англійський, не падає — він повертає впевнені на вигляд англійські слова, які віддалено нагадують оригінал, і це помітити значно важче, ніж повідомлення про помилку. Вибирайте мову, яку справді чуєте; якщо сумніваєтеся, транскрибуйте спершу пів хвилини швидкою моделлю й перевірте.
Наскільки точні таймкоди порівняно з ручними субтитрами?
Достатньо, щоб грало, недостатньо, щоб віддавати в ефір без правок. Початок і кінець кожної репліки походять із меж сегментів самої моделі, а вони лягають на краї фраз, а не на точний кадр, де починається слово. Там, де дві репліки перекрилися б, пізнішу зсувають уперед, а правку рахують у списку втрат, тож нічого не перекривається й нічого не йде назад у часі. Якщо замовникові потрібна точність до кадру — студія, яка здає мовникові, — чесна відповідь: це чернетка, яку треба виставити руками, а не готовий матеріал.
Навіщо взагалі швидка модель, якщо є точна?
Бо на довгому файлі різниця — це різниця між дочекатися і здатися. На хвилині чистого мовлення швидка модель витрачає близько 3,7 секунди, а точна — близько 7,5, тобто приблизно вдвічі більше очікування за кожну хвилину звуку. Швидка модель також агресивніше ставить великі літери й іноді вигадує розділові знаки; точна ближча до того, що написала б людина. Поширений порядок — прогнати годинне інтерв’ю швидкою моделлю, щоб перевірити мову й якість звуку, а потім повторити точною, коли файл визнано придатним.
Що означає «мови не розпізнано», коли я чую розмову?
Це означає, що модель не почула нічого, що могла б записати; звичайних причин три: мова в налаштуваннях не збігається з тією, якою говорять, мовлення потонуло в музиці або шумі, або звукова доріжка дуже тиха. Сам файл цілий — сторінка відрізняє це від випадку, коли звук узагалі не вдалося декодувати, бо виправлення там різні. Змініть мову мовлення або перевірте, що ви перетягли саме ту доріжку (коментар до фільму — інший потік, ніж діалог).
Чи можна зупинити транскрипцію, яка триватиме надто довго?
Так, і сторінка прямо каже, коли саме вона спиниться. Завантаження моделі можна скасувати будь-якої миті. Під час розпізнавання модель не можна перервати посеред вікна, тому скасування діє на початку наступного 30-секундного вікна, а це на швидкій моделі за кілька секунд. Часткового результату не пропонують для завантаження. Модель лишається в кеші, тому повторна спроба не завантажує її знову.
Чи зберігає готовий .srt підписи мовців або розділові знаки?
Він зберігає ті розділові знаки, які поставила модель: зазвичай розумні, але не надійні. Підписів мовців він не вигадує: ця модель не розділяє голоси, тому двоє людей, які говорять, перетворюються на один потік тексту. Додавання підписів тут — ручна робота. Якщо вони потрібні, транскрибуйте, а потім редагуйте: файл відкривається в будь-якому редакторі субтитрів, а репліки вже розбиті на межах речень, що робить прохід значно швидшим, ніж починати з порожньої шкали.