Словарь

Что такое глобальный хук клавиатуры

Марк Весёлый · основатель «Потока» · ~4 мин
Что такое глобальный хук клавиатуры

Глобальный хук клавиатуры — механизм, который позволяет программе перехватывать нажатия клавиш во всей системе, а не только в своём окне: это то, что нужно, чтобы горячая клавиша диктовки срабатывала в любом приложении. У «Потока» (potok.now) горячая клавиша — по умолчанию Ctrl+Space — тоже работает в любом приложении, где стоит курсор, а не только в окне самой программы.

Словосочетание «глобальный хук клавиатуры» встречается в технической документации программ и в объяснениях того, как работают горячие клавиши, — не самое понятное название для того, кто просто хочет надиктовать текст. На деле это обычный программный механизм, без которого горячие клавиши в принципе не работали бы.

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

Термин пришёл из документации Windows: она описывает хук как способ отслеживать сообщения — события вроде нажатия клавиши, — которые операционная система рассылает программам. Официальное определение звучит так: «A global hook monitors messages for all threads in the same desktop as the calling thread. A thread-specific hook monitors messages for only an individual thread» — глобальный хук следит за сообщениями всех потоков (thread) на одном рабочем столе, а не только за своим собственным потоком, как это делает хук уровня потока.

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

ТерминЧто значитПример
Глобальный хук клавиатурымеханизм, позволяющий программе перехватывать нажатия клавиш во всей системе, а не только в своём окнеглобальный хук клавиатуры нужен, чтобы хоткей диктовки работал в любом приложении
Core Audio (macOS)низкоуровневая система обработки звука в macOS, через которую работают все аудиоприложения, включая диктовкуCore Audio отвечает за то, как macOS получает сигнал с микрофона
Голосовой доступ (Voice Access)функция специальных возможностей Windows 11 для управления компьютером и надиктовки текста голосом, работающая локально на устройствев отличие от голосового ввода (Win+H), голосовой доступ работает без интернета
Симуляция ввода с клавиатурыспособ вставки текста, при котором программа имитирует нажатие клавиш вместо копирования через буфер обменасимуляция ввода полезна там, где вставка из буфера обмена запрещена или недоступна
Три шага диктовки в «Потоке»: зажал Ctrl + Space, сказал фразу вслух, текст появился в активном поле
Диктовка в «Потоке»: горячая клавиша, речь, готовый текст в том окне, где стоит курсор.

Пример из диктовки

Именно поэтому у диктовки горячая клавиша не привязана к одному приложению: глобальный хук клавиатуры нужен, чтобы хоткей диктовки работал в любом приложении, а не только в окне самой программы распознавания. У «Потока» горячую клавишу (по умолчанию Ctrl+Space) можно зажать в браузере, в почте, в мессенджере или в любом другом окне — сказал, отпустил, и текст встаёт туда, где стоял курсор.

Без такого механизма пришлось бы каждый раз возвращаться в окно самой программы диктовки, чтобы включить запись, — то есть терять ровно то, ради чего голосовой ввод и нужен: возможность не отрываться от текущей задачи. Похожий системный уровень работы — у голосового ввода Windows: подробнее разобрано в статье про Win+H.

Разбор темы в три шага: Что такое глобальный хук клавиатуры технически → Пример из диктовки → Что известно о горячей клавише «Потока»
О чём страница по шагам: Что такое глобальный хук клавиатуры технически → Пример из диктовки → Что известно о горячей клавише «Потока».

Что известно о горячей клавише «Потока»

Поток — облачный сервис: распознавание идёт на серверах в России, и без интернета он не работает. Горячая клавиша (по умолчанию Ctrl+Space) у «Потока» срабатывает в любом приложении, где стоит курсор, а не только в его собственном окне.

Сравнение «Потока» и Win+H по строкам: платформы, бесплатно, оплата из рф, распознавание
«Поток» и Win+H: условия по официальным сайтам сервисов.

Частые вопросы

Нужен ли глобальный хук клавиатуры для горячей клавиши голосового ввода

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

Как начать

«Поток» есть для Windows, macOS и Linux. Две недели всё открыто бесплатно, дальше — 2500 слов в неделю без оплаты. «Поток» — облачный сервис: распознавание идёт на серверах в России, без интернета он не работает.

Скачать «Поток»

Готовые записи расшифровывает Telegram-бот «Потока» @potok_now_bot: пришлите файл или ссылку на YouTube, VK Видео или RuTube — текст придёт в чат. Подписка «Потока» снимает лимит и в боте.

Встроенная диктовка и «Поток»

По справке Microsoft и Apple.
СредствоГде работаетРусский языкГде распознаётся речь
Голосовой ввод Windows (Win+H)Windows 10 и 11только в Windows 11облако Microsoft, без интернета не работает
Диктовка macOSmacOSестьна устройстве или на серверах Apple
ПотокWindows, macOS, Linuxосновной языкоблако, серверы в России, без интернета не работает

Первоисточники: learn.microsoft.com · support.microsoft.com

Марк Весёлый — основатель «Потока». Пишет о голосовом вводе на русском: как диктовать в рабочих программах, что мешает и чем это чинится.
© Поток · Липатников Владимир Олегович · ИНН 502915859701 · Оферта Сравнения · Вопросы и ответы · О проекте Бесплатный голосовой ввод · Голосовой ввод для нейросетей · Данные и 152-ФЗ · Голосовой ввод на Mac · Тарифы бота · 14 дней Pro за отзыв