Диктування в будь-яке поле і секретар
До цього тижня застосунок слухав чуже мовлення. Тепер він слухає і ваше. Ви говорите російською, а текст з’являється там, де стоїть курсор: як сказано або перекладений англійською. До цього ми йшли трьома кроками.
Крок 1: російська й англійська одночасно (3 серпня)
Перше завдання — слухати змішане англійське й російське мовлення для живих субтитрів. В англійському розпізнавачі Apple російської немає взагалі. Ми перевірили перелік мов, які він підтримує на Маку: їх 30, і російської серед них немає. Російська живе в іншому розпізнавачі з того самого фреймворку — тому, що створений для диктування. Тож ми запускаємо обидва одночасно на одному звуці, а для кожної фрази вибираємо той, що певніший у почутому. Російська фраза лишається як є й не перекладається; англійська перекладається російською. На одну фразу вибирається одна мова: розпізнавач не вміє перемикатися посеред фрази, тому чуже слово всередині речення записується на слух мовою-переможницею.
У російського розпізнавача є вада, яку ми виміряли того самого дня: він не ставить розділових знаків, навіть коли їх просять. Речення приходить одним рядком без крапок. Читати таке незручно, а перекладати ще гірше: прохання «перепроверь» перетворилося на «I’ll double-check» — обіцянку замість прохання. Тому диктування ним не користується: російське диктування працює на окремій моделі, Parakeet, яка сама ставить розділові знаки. Пара розпізнавачів вище обслуговує живі субтитри.
Крок 2: диктування за поєднанням клавіш (4 серпня)
Два поєднання. Option-Пробіл вставляє в поле під курсором те, що ви сказали, як є. Option-Control-Пробіл спершу перекладає англійською. Текст вставляється одним шматком, коли ви закінчуєте. У вставки є захист: якщо в полі щось виділено або активне поле пароля, вона не затирає все підряд. Голосові розділові знаки теж працюють: назвали знак — отримали знак.
Крок 3: секретар (5 серпня)
Третє поєднання, Option-Command-Пробіл, запускає довгий сеанс. Ви говорите скільки потрібно, з паузами й відволіканнями, а кожен розпізнаний шматок одразу вставляється в те поле, де ви почали. Можна перемкнутися в іншу програму: текст і далі йде на початкове місце.
Це обіцянка, що потребує обережності. Перед кожною вставкою застосунок перевіряє, що програма-адресат досі працює, що фокус лишився в тому самому полі (а не в іншому полі тієї ж програми, наприклад у рядку пошуку), що там нічого не виділено і що система не в режимі введення пароля. Якщо фокус пішов, шматок чекає, а на панелі з’являється повідомлення — він не вставляється абиде. Сеанс завершується тим самим поєднанням, хрестиком на панелі або через 15 хвилин.
Клавішу Escape ми свідомо не перехоплюємо на весь сеанс. Інакше Escape перестав би працювати в усіх інших програмах, поки ви диктуєте, а сеанс триває хвилинами. Завершити його можна хрестиком на панелі.
Одна помилка, знайдена 5 серпня: у чат-застосунках на Electron вставка мовчки не спрацьовувала, якщо розкладка клавіатури була не латинська. Тепер на мить вставки ми перемикаємося на латинську розкладку.
Сьогодні: обидва способи злилися в одне диктування. Тримайте клавішу — фраза цілком, натисніть коротко — секретар. Обидва безкоштовні.