Имитация медиа ключей в терминале

У меня есть новый телефон Android, на котором есть несколько приложений для общения через соединение ssh. Я хотел бы знать, могу ли я использовать команды ssh, если я могу имитировать нажатие клавиш, в частности, клавиши мультимедиа (громкость паузы воспроизведения). Я бы предпочел не устанавливать дополнительное программное обеспечение.

Примечание: я знаю, что есть приложения, которые делают это из коробки, это просто для лучшего понимания.

24
задан 2 January 2013 в 08:52

1 ответ

Ответ xdotool, и это могло бы уже быть установлено в Вашей системе Ubuntu. Это может моделировать нажатия клавиш. См. также [1].

Некоторые команды:

  • игра/пауза

    xdotool key XF86AudioPlay
    
  • предыдущий/следующий

    xdotool key XF86AudioPrev 
    xdotool key XF86AudioNext
    
  • объем вниз /

    xdotool key XF86AudioLowerVolume 
    xdotool key XF86AudioRaiseVolume
    
  • бесшумный режим

    xdotool key XF86AudioMute
    

Для большего количества XF86 команды видят [2].

Вместо того, чтобы делать объем шаг за шагом можно также установить его с помощью alsamixer или (рекомендуемый) pulseaudio. Принятие Вас использует устройство 0 (можно проверить это с alsamixer или pacmd list-sinks) можно регулировать громкость к, например, 80% с

  • alsamixer (-c 0 указывает идентификатор звукового устройства),

    amixer -c 0 sset Master,0 80%
    
  • pulseaudio (0 перед 80% является идентификатором звукового устройства),

    pactl set-sink-volume 0 80%
    

Для получения дополнительной информации об этих командах см. их страницы справочника.


Править: При попытке сделать команды xdotool по ssh и получить следующее сообщение об ошибке

Error: Can't open display: (null)
Segmentation fault

необходимо установить переменную ДИСПЛЕЯ:

export DISPLAY=':0.0'

После этого это должно работать без проблем


[1] http://www.semicomplete.com/projects/xdotool/xdotool.xhtml
[2] http://wiki.linuxquestions.org/wiki/XF86_keyboard_symbols

43
ответ дан 2 January 2013 в 08:52

Другие вопросы по тегам:

Похожие вопросы: