Media Keys funktionieren nicht unter Ubuntu 17.10


20

Ich starte eine brandneue Ubuntu 17.10-Installation auf einem Thinkpad T470s.

Wenn ich eine der Medientasten (Wiedergabe / Pause, Überspringen usw.) auf einer meiner Tastaturen oder Bluetooth-Headsets drücke, wird dieses Symbol angezeigt:

Popup auf der Medientaste zeigt an, dass keine Aktion zulässig ist

Auf dem Monitor blinkt, aber keiner meiner Mediaplayer reagiert.

Die Schlüssel werden erkannt in showkey:

~$ sudo showkey -k
press any key (program terminates 10s after last keypress)...
keycode 163 press
keycode 163 release
keycode 165 press
keycode 165 release
keycode 164 press
keycode 164 release

Aber sie erscheinen nicht in xev.


Ich habe ein ähnliches Problem. Außer, dass es funktionierte, bevor ich das neue Kubuntu 17.10.1 neu installierte
innen am

Gibt pulseaudio in Ihrem Terminal eine beängstigende Meldung aus? Hilft das Hinzufügen von swh-Plugins?
Covener

Dieses Symbol bedeutet, dass die Desktop-Umgebung den Medienschlüssel erkennt, sich jedoch keine Anwendung als Medienbefehlsbenutzer registriert hat. Welche Mediaplayer haben / hatten Sie (zu der Zeit) am Laufen? Sie können sich auch die Tastenkombinationen von GNOME in ansehen gnome-control-center keyboard shortcuts.
David Foerster

Ich wollte kodi mit einer mx3 air mouse steuern. Im Gnome-Control-Center habe ich die Medientasten für Play / Play Pause / Next / Previous deaktiviert und jetzt kann ich sie in Kodi verwenden. Aber der schnelle Vor- und Rücklauf funktioniert nicht, hier kommt das obige Symbol und ich kann nicht sehen, wo ich sie im Gnomenkontrollzentrum deaktivieren kann.

Antworten:


20

Diese ganze Ausgabe sieht aus wie ein "Es ist kein Bug, es ist ein FEATURE" -Geschenk von Gnome.

Kurz gesagt: Wenn Sie eine Medientaste drücken, wird ein Schlüsselcode generiert, der in einen Befehl übersetzt wird. Angenommen, Sie drücken eine Play / Pause-Taste. Es generiert einen Schlüsselcode 162 und einen Befehl XF86AudioPlay.

Nun erwartet fast jede Medienanwendung, die auf dieses Ereignis wartet (sei es VLC, Totem, Kodi, Spotify usw.), einen reinen XF86AudioPlay-Befehl. Und was macht der Gnom? Es fängt diesen Befehl ab und übersetzt ihn in seinen eigenen Befehl "play". Aus diesem Grund zeigen weder xev noch xbindkeys dieses Ereignis richtig an - sie erhalten niemals einen Befehl, den sie verstehen können.

Wenn Sie eine Medientaste drücken, empfängt Gnome den Befehl und prüft, ob eine App erkannt wurde, die diesen Befehl empfangen kann. Wenn es gibt (sagen wir Totem, Rhytmbox, vielleicht VLC), sendet es "Play", das funktionieren sollte. Wenn keine App erkannt wird, die diesen Befehl empfangen kann, zeigt Gnome das Zeichen an, das an den ersten Beitrag angehängt ist, und sendet keinen Befehl an eine andere Stelle.

Die Lösung ist einfach: Gnome kann wichtige Medienereignisse nicht abfangen. Installieren Sie dconf-editor, gehen Sie zu org.gnome.settings-daemon.plugins.media-keys und ändern Sie alle Schaltflächen, die funktionieren sollen, von XF86SomeExample (z. B. XF86AudioPlay) in none (''). Auf diese Weise sollte jede App den Tastaturbefehl direkt erhalten.


1
Das funktioniert super. Wenn Sie die Wiedergabe / Pause in Gnome-Einstellungen-Tastatur-Medientasten deaktivieren, kann Kodi sie verwenden. Aber für den schnellen Vor- und Rücklauf wird immer noch das Symbol "Nicht funktioniert" von oben angezeigt, aber ich weiß nicht, was ich deaktivieren soll. Schnelles FF / BW wird in den Medientasten nicht erwähnt.

Dies war die geheime Sauce, die ich brauchte. Dies und eine Kombination aus playerctlund xbindkeysund jetzt kann meine Tastatur alle meine Player steuern, nicht nur Rhythmbox.
Adrian

Ich habe auch neu gestartet, nachdem ich diese Änderungen vorgenommen hatte (An- und Abmelden ist wahrscheinlich genug), damit sie funktionieren
Salami

1
Dies funktioniert immer noch für Ubuntu 18.04 und zumindest für mich gab es keine Notwendigkeit, neu zu starten oder sich sogar
abzumelden

17

Wenn die Tastaturmedientasten auf Ihrem Ubuntu-Desktop nicht funktionieren, können Sie mithilfe der D-Bus-Unterstützung die richtigen Befehle an Spotify senden. Überprüfen Sie die folgenden Befehle von der Konsole aus:

Spielpause

dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.PlayPause

Nächster

dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Next

Bisherige

dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Previous

Aktivieren Sie die Media-Tastenkombination

Um diese an die Tastatur zu binden, gehen Sie zu Einstellungen> Tastatur> Verknüpfungen> Benutzerdefinierte Verknüpfungen und dann mit "Hinzufügen" +. Verwenden Sie einen der obigen Befehle und drücken Sie dann die Taste, die Sie mit dem neuen Befehl verknüpfen möchten.

Bildbeschreibung hier eingeben

Quelle

https://fabianlee.org/2016/05/25/ubuntu-enabling-media-keys-for-spotify/


Hervorragend, genau das habe ich gesucht. Danke vielmals!
Josh Crozier

Dies funktionierte für mich in Ubuntu 14.04, außer dass ich Compiz verwende, sodass ich das CompizConfig Settings Manager-Applet "Commands" verwenden musste, um die Verknüpfungen zuzuweisen.
Tyler Collier

Dies funktioniert unter Ubuntu 18.04, Linux-Kernel Version 4.15.0-51-generic, mit Spotify Version 1.1.5.153.gf614956d. Vielen Dank!
Gormador

Das hat bei mir funktioniert, wenn ich auch die Antwort von darkdude befolgt habe .
Totymedli

Sie können diese Arbeit mit den Spielern machen andere als Spotify, nur ändern spotifyzu vlc, rhythmboxusw. in dem Befehl.
Totymedli

6

Ich stellte fest, dass ich mit Ubuntu 18.04 LTS ab dem 01.02.2019 nur noch Folgendes tun musste:

  • installiere den dconf-editor
  • Navigieren Sie zu org / gnome / settings-daemon / plugins / media-keys
  • Für jeden Schlüssel, der nicht funktioniert:
    • Deaktivieren Sie "Standardwert verwenden"
    • Drücken Sie auf Übernehmen
    • wiederhole "Standardwert verwenden"
    • Drücken Sie erneut auf Übernehmen

Die fraglichen Medientasten sollten jetzt sofort funktionieren.

Kein Wert zu verwenden, wie von darkdude empfohlen, hat bei mir nicht funktioniert.


Als ich dconf-editor öffnete, stellte ich fest, dass die Standardeinstellungen für Wiedergabe / Pause, vorherigen und nächsten Titel bereits deaktiviert waren. Das Überprüfen der Standardeinstellungen für diese drei Schlüssel hat mein Problem behoben.
Dericke

Ich verstehe nicht wirklich, warum das Umschalten auf "Standardwert verwenden" funktioniert hat, aber es hat auch bei mir funktioniert +1
Miroslav Glamuzina

3

Die Kombination der letzten beiden Antworten funktioniert bei mir. Ich habe mit Ubuntu 18.04 die Tastatur getestet

~$ sudo showkey -k
press any key (program terminates 10s after last keypress)...
keycode 163 press
keycode 163 release
keycode 165 press
keycode 165 release
keycode 164 press
keycode 164 release

aber wenn ich zu Aktivitäten -> Tastatur gehe und versuche, irgendetwas mit Wiedergabe / Weiter / Zurück zu tun, funktioniert es überhaupt nicht. Als ich die standardmäßige Tastenzuordnung deaktiviert habe (rufe den Dialog für die Tastenzuordnung auf, drücke die Rücktaste und klicke auf Speichern) und erstelle eine brandneue, die funktioniert, war die Antwort von @foamboarder sehr hilfreich

Jetzt sieht es so aus, als ob dieser Screenshot aus dem Shortcut-Setup funktioniert, auch nachdem der Computer aus dem Ruhemodus geweckt wurde


1
+1, weil dies schließlich für mich funktioniert hat, aber Sie sollten die Befehle enthalten, die Sie in den benutzerdefinierten Tastaturkürzeln verwendet haben: dbus-send --print-reply --dest=org.mpris.MediaPlayer2.rhythmbox /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.PlayPauseund ... Previousund ...Next
Bitinerant

1

Die obige Antwort von @ Václav zu verwenden, funktionierte für mich auf Ubuntu 18.04, wo er sagte

msgstr "... Standardschlüsselzuordnung deaktiviert (Dialog für Schlüsselzuordnung aufrufen, Rücktaste drücken und auf Speichern klicken) und neue erstellen".

Ich verwende Rhythmbox. Hier sind die Befehle, die ich für jeden benutzerdefinierten Shorcut für Rhythmbox eingegeben habe:

Für Vorherige:

`dbus-send --print-reply --dest=org.mpris.MediaPlayer2.rhythmbox /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Previous`  

Fürs nächste:

`dbus-send --print-reply --dest=org.mpris.MediaPlayer2.rhythmbox /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Next`  

Für Play / Stop:

`dbus-send --print-reply --dest=org.mpris.MediaPlayer2.rhythmbox /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.PlayPause`  

Hoffe das hilft jemandem eines Tages


2
Ich habe es installiert playerctlund es kann die meisten von mir verwendeten Mediaplayer automatisch finden und steuern.
Adrian

1
rhythmbox-client --play-pause, rhythmbox-client --next,rhythmbox-client --previous
Ctrl-C

0

Die Tastencodes scheinen nicht entsprechend zugeordnet zu sein. Sie können Schlüssel wie in der Ubuntu-Dokumentation beschrieben manuell zuordnen: https://help.ubuntu.com/stable/ubuntu-help/keyboard-shortcuts-set.html

  1. Öffnen Sie die Aktivitätenübersicht und geben Sie Tastatur ein.
  2. Klicken Sie auf Tastatur, um das Panel zu öffnen.
  3. Wählen Sie die Registerkarte Verknüpfungen.
  4. Wählen Sie im linken Bereich eine Kategorie und rechts die Zeile für die gewünschte Aktion. Die aktuelle Definition der Verknüpfung wird in Neuer Beschleuniger geändert.
  5. Halten Sie die gewünschte Tastenkombination gedrückt, oder drücken Sie die Rücktaste, um die Auswahl aufzuheben.
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.