Simula le chiavi multimediali nel terminale


25

Ho un nuovo telefono Android che ha un numero di app per comunicare attraverso una connessione ssh. Vorrei sapere se posso usare i comandi ssh se posso simulare il tasto premuto, in particolare i tasti multimediali (riproduci volume pausa). Preferirei non installare software aggiuntivo.

Nota: so che ci sono app che lo fanno immediatamente, questo è semplicemente per una migliore comprensione.

Risposte:


44

La risposta è xdotoole potrebbe già essere installata sul tuo sistema Ubuntu. Può simulare i tasti premuti. Vedi anche [1].

Alcuni comandi:

  • play pausa

    xdotool key XF86AudioPlay
    
  • Precedente Successivo

    xdotool key XF86AudioPrev 
    xdotool key XF86AudioNext
    
  • volume giù / su

    xdotool key XF86AudioLowerVolume 
    xdotool key XF86AudioRaiseVolume
    
  • muto

    xdotool key XF86AudioMute
    

Per ulteriori comandi XF86, vedere [2].

Invece di fare il volume passo dopo passo, puoi anche impostarlo usando alsamixer o pulseaudio (raccomandato). Supponendo di utilizzare il dispositivo 0 (è possibile verificarlo con alsamixero pacmd list-sinks) è possibile impostare il volume su ad esempio l'80% con

  • alsamixer (-c 0 specifica l'id del dispositivo audio)

    amixer -c 0 sset Master,0 80%
    
  • pulseaudio (lo 0 davanti all'80% è l'id del dispositivo audio)

    pactl set-sink-volume 0 80%
    

Per ulteriori informazioni su questi comandi, consultare le loro manpage.


EDIT: Se stai provando a eseguire i comandi xdotool su ssh e ricevi il seguente messaggio di errore

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

devi impostare la variabile DISPLAY:

export DISPLAY=':0.0'

Dopodiché dovrebbe funzionare senza problemi


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


Cosa è necessario affinché questo funzioni su SSH? L'uso di questi comandi in una shell remota comporta la simulazione su una macchina locale o su una macchina remota.
— earthmeLon

3
@earthmeLon Sei sicuro di eseguire il comando sul computer remoto? Perché per me funziona benissimo su ssh. Avevo bisogno di impostare la variabile DISPLAY, vedi la mia modifica.
— Gerhard Burger

Impostare il display come suggerito per aver risolto il problema. Grazie: D
— earthmeLon

2
Si noti che quando si associano questi ad alcuni tasti in xfce4, è necessario utilizzare la --clearmodifiersbandiera, qualcosa del genere:xdotool key --clearmodifiers XF86AudioPlay
— cab404

Ciò che @ cab4040 menzionato si applica anche a GNOME. Se si desidera aggiungere tasti multimediali personalizzati su una tastiera che li manca, si può andare alla Keyboard Shortcutssezione nelle impostazioni e aggiungere un'associazione tra una scorciatoia da tastiera e un xdotool keycomando con --clearmodifiers, vedere sopra.
— Pierre Thalamy,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.