У программного обеспечения Audacity есть глобальные комбинации клавиш?

Вопрос или проблема

Можно ли записывать/остановить/воспроизводить в Audacity, не имея фокуса на окне Audacity? То есть, глобальные горячие клавиши?

Audacity не поддерживает глобальные горячие клавиши, поэтому необходимо использовать сторонний инструмент. Я буду использовать бесплатный AutoHotkey.

Следующий скрипт AutoHotkey назначит следующие горячие клавиши:

  • Win+P, обозначающий Воспроизведение, на Space для окон, принадлежащих процессу audacity.exe
  • Горячая клавиша Win+S для Остановки сделает то же самое и добавлена здесь исключительно для ясности
  • Горячая клавиша Win+R для Записи будет назначена на клавишу R.

Это скрипт AutoHotkey:

#r::   ;запись
  if WinExist("ahk_exe audacity.exe")
    ControlSend, , r, ahk_exe audacity.exe
  return

#s::   ;остановка
#p::   ;воспроизведение
  if WinExist("ahk_exe audacity.exe")
    ControlSend, , {Space}, ahk_exe audacity.exe
  return

После установки AutoHotKey сохраните скрипт в файл .ahk и дважды щелкните
по нему, чтобы протестировать. Вы можете остановить скрипт, щелкнув правой кнопкой мыши на зелёной иконке H в
панели задач и выбрав Выход.
Чтобы он выполнялся при входе в систему, разместите его в группе Автозагрузка по адресу
C:\Users\USER-NAME\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup.

Полезная документация по AutoHotkey:

Я внес некоторые изменения в скрипт в ответе harrymc:

  • обновлено для AutoHotKey 2
  • вторая комбинация для паузы, что позволяет использовать одну клавишу
#Requires AutoHotkey v2.0

#r:: { ; Windows+R: Запись
    if WinExist("ahk_exe audacity.exe") {
        hwnd := WinExist("ahk_exe audacity.exe") ; Получение дескриптора окна Audacity
        if hwnd {
            PostMessage(0x100, 0x52, 0, , hwnd) ; Сообщение WM_KEYDOWN для клавиши Space
            PostMessage(0x101, 0x52, 0, , hwnd) ; Сообщение WM_KEYUP для клавиши Space
        }
    }
}

#s:: { ; Windows+S: Остановка/Воспроизведение
    if WinExist("ahk_exe audacity.exe") {
        hwnd := WinExist("ahk_exe audacity.exe") ; Получение дескриптора окна Audacity
        if hwnd {
            PostMessage(0x100, 0x20, 0, , hwnd) ; Сообщение WM_KEYDOWN для клавиши Space
            PostMessage(0x101, 0x20, 0, , hwnd) ; Сообщение WM_KEYUP для клавиши Space
        }
    }
}

#p::PauseResume() ; Windows+P
Pause::PauseResume() ; клавиша Пауза/Перерыв

PauseResume() {
    if WinExist("ahk_exe audacity.exe") {
        hwnd := WinExist("ahk_exe audacity.exe") ; Получение дескриптора окна Audacity
        if hwnd {
            PostMessage(0x100, 0x50, 0, , hwnd) ; Сообщение WM_KEYDOWN для клавиши Space
            PostMessage(0x101, 0x50, 0, , hwnd) ; Сообщение WM_KEYUP для клавиши Space
        }
    }
}

Ответ или решение

Audacity – это популярное программное обеспечение для редактирования аудио, которое широко используется как профессионалами, так и любителями. Однако одним из ограничений Audacity является отсутствие встроенной поддержки глобальных горячих клавиш (шорткатов). Это значит, что для управления процессами, такими как запись, остановка и воспроизведение аудио, необходимо, чтобы окно Audacity находилось в фокусе.

Для пользователей, которым необходимо управлять Audacity без активного фокуса на его окне, существует решение — использование стороннего программного обеспечения, такого как AutoHotkey. Это бесплатный инструмент, позволяющий создавать скрипты для автоматизации задач и назначения горячих клавиш для управления различными приложениями.

Как использовать AutoHotkey для глобальных горячих клавиш в Audacity

AutoHotkey позволяет реализовать такие шорткаты, как запись, остановка и воспроизведение, даже когда Audacity неактивен.

Пример скрипта AutoHotkey

Скрипт ниже иллюстрирует, как можно настроить горячие клавиши для управления Audacity:

#Requires AutoHotkey v2.0

#r:: { ; Windows+R: Запись
    if WinExist("ahk_exe audacity.exe") {
        hwnd := WinExist("ahk_exe audacity.exe") ; Получение дескриптора окна Audacity
        if hwnd {
            PostMessage(0x100, 0x52, 0, , hwnd) ; Отправка сообщения WM_KEYDOWN для клавиши R
            PostMessage(0x101, 0x52, 0, , hwnd) ; Отправка сообщения WM_KEYUP для клавиши R
        }
    }
}

#s:: { ; Windows+S: Стоп/Воспроизведение
    if WinExist("ahk_exe audacity.exe") {
        hwnd := WinExist("ahk_exe audacity.exe") ; Получение дескриптора окна Audacity
        if hwnd {
            PostMessage(0x100, 0x20, 0, , hwnd) ; Отправка сообщения WM_KEYDOWN для пробела
            PostMessage(0x101, 0x20, 0, , hwnd) ; Отправка сообщения WM_KEYUP для пробела
        }
    }
}

#p::PauseResume() ; Windows+P
Pause::PauseResume() ; Клавиша Pause/Break

PauseResume() {
    if WinExist("ahk_exe audacity.exe") {
        hwnd := WinExist("ahk_exe audacity.exe") ; Получение дескриптора окна Audacity
        if hwnd {
            PostMessage(0x100, 0x50, 0, , hwnd) ; Отправка сообщения WM_KEYDOWN для клавиши P
            PostMessage(0x101, 0x50, 0, , hwnd) ; Отправка сообщения WM_KEYUP для клавиши P
        }
    }
}

Инструкция по установке и запуска

  1. Скачайте и установите AutoHotkey с официального сайта AutoHotkey.

  2. Создайте новый текстовый файл с расширением .ahk и вставьте в него предложенный скрипт.

  3. Запустите скрипт, двойным кликом по файлу. Вы сможете управлять Audacity с помощью горячих клавиш, не активируя окно программы.

  4. Для автоматического запуска скрипта при загрузке Windows, добавьте его в автозагрузку, переместив файл скрипта в папку C:\Users\USER-NAME\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup.

Заключение

Хотя Audacity не поддерживает внедрение глобальных горячих клавиш, пользователи могут легко обойти это ограничение с помощью AutoHotkey. Настройка таких простых и функциональных горячих клавиш позволяет значительно улучшить процесс работы с программой, особенно в тех случаях, когда требуется активное многозадачное управление.

Оцените материал
Добавить комментарий

Капча загружается...