5

I'm running a pretty-much brand-new Ubuntu 17.10 installation on a Thinkpad T470s.

Whenever I'm hitting one of the media keys (play/pause, skip, etc) on any one of my keyboards or bluetooth-headset I'm seeing this icon:

popup on media key indicating no action allowed

flash on the monitor but none of my media players react.

The keys are recognized 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

But they don't show up in xev.

  • I have a similar issue. Except that it was working before I reinstalled the new Kubuntu 17.10.1 – insidesin Jan 22 '18 at 23:43
  • Does pulseaudio in your terminal give any scary message? Does adding swh-plugins help? – covener Feb 16 '18 at 2:26
  • This symbol means that the desktop environment recognises the media key but no application registered itself as a media command user. Which media player(s) do/did you have running (at the time)? You can also take a look at the keyboard shortcut mappings of GNOME in gnome-control-center keyboard shortcuts. – David Foerster Feb 21 '18 at 14:06
  • I wanted to control kodi with a mx3 air mouse. In gnome-control-center I disbaled the media keys for play/play pause/next/previous and now I can use them in kodi. But the fast foward and fast backward do not work, here the icon above comes and I cannot see where I can disable them in the gnome-control-center. – jms Apr 26 '18 at 6:51
10

I recently faced the same issue and after losing a LOT of time I found an answer on some Arch forum.

This whole issue looks like 'it's not a bug, it's a FEATURE' present from Gnome devs.

In short: when you press a media button it generates a keycode which is then translated into a command. Let's say you press a Play/Pause button. It generates a keycode 162 and a command XF86AudioPlay.

Now almost every media application that may be waiting for this event (be it VLC, totem, kodi, spotify etc.) expect to receive pure XF86AudioPlay command. And what Gnome does? It intercepts this command and translate it into it's own command "play". Because of this neither xev nor xbindkeys show this event properly - they never receive a command they can understand.

When you press a media button Gnome receives the command and checks if there is any app that its recognized as capable of receiving this command. If there is (let's say totem, rhytmbox, maybe VLC) it sends "play" that should work. If there is no app recognised as capable of receiving this command Gnome will show the sign that is attached to first post and won't send any command anywhere.

The solution is simple - make Gnome unable to intercept media key events. Install dconf-editor , go to org.gnome.settings-daemon.plugins.media-keys and change any button that should work from XF86SomeExapmle to none (''). This way any app should receive key command directly.

  • 1
    This works great. If you disable Play/Pause in Gnome Settings-Keyboard-Media Keys, Kodi can use it. But for fast forward and fast backward, still the "not-works" symbol from above appears but I do not know what to disable. Fast FF/BW ist not mentioned in the media keys. – jms Apr 22 '18 at 21:04
  • This was the secret sauce I needed. This, plus a combination of playerctl and xbindkeys and now my keyboard can control all my players, not just Rhythmbox. – Adrian Dec 24 '18 at 15:51
  • I also restarted after making these changes (logging in and out is likely enough) to make them work – Salami Jan 4 at 2:30
  • This still works for Ubuntu 18.04 and at least for me there was no need to restart or even logout – N1mr0d May 3 at 22:59
7

If the keyboard media keys do not work from your Ubuntu desktop, you can use D-Bus support to send the proper commands to Spotify. Validate the following commands from the console:

Play/Pause

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

Next

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

Previous

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

Enable Media Key Shortcut

To tie these to the keyboard, go to Settings > Keyboard > Shortcuts > Custom Shortcuts, then “Add”. Use one of the command above, then hit the key that you want to tie to the new command.

Source

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

  • Excellent, this is exactly what I was looking for. Many thanks! – Josh Crozier Nov 3 '18 at 16:23
  • This worked for me in Ubuntu 14.04, except I use Compiz so I had to use the CompizConfig Settings Manager "Commands" applet to assign the shortcuts. – Tyler Collier Dec 15 '18 at 22:49
  • This works on Ubuntu 18.04, linux kernel version 4.15.0-51-generic, with Spotify version 1.1.5.153.gf614956d. Thanks! – Gormador Jun 13 at 13:23
2

combination of last two answers works for me. I have Ubuntu 18.04 the keyboard test work

~$ 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

but when I go to Activities -> Keyboard and try to do anything with Play / Next / Previous it not work at all. When I deactivated default key association (invoke dialog for key association, press backspace and click save) and create brand new one it works, very helpful was answer from @foamboarder

now it looks like this screenshot from shortcut setup all works fine now even after wake up the computer from sleep mode

  • +1 because this eventually worked for me, but you should have included the commands you used in the custom keyboard shortcuts: dbus-send --print-reply --dest=org.mpris.MediaPlayer2.rhythmbox /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.PlayPause and ...Previous and ...Next – bitinerant Feb 28 at 8:38
1

I found that, with Ubuntu 18.04 LTS as of 2019/2/1, all I needed to do was:

  • install dconf-editor
  • navigate to org/gnome/settings-daemon/plugins/media-keys
  • for each key not working:
    • uncheck "Use default value"
    • hit apply
    • re-check "Use default value"
    • hit apply again

Media keys in question should now work immediately.

Using no value, as per darkdude recommended, didn't work for me.

  • When I opened dconf-editor, I found the defaults already unchecked for play/pause, previous track, and next. Checking the defaults for these three keys fixed my problem. – dericke Apr 21 at 19:11
0

Using the above answer by @Václav worked for me on Ubuntu 18.04, where he said

"... deactivated default key association (invoke dialog for key association, press backspace and click save) and create brand new one".

I use Rhythmbox, here are the commands I was putting for each Custom Shorcut for Rhythmbox:

For Previous:

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

For Next:

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

For Play/Stop:

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

Hope this helps someone one day

  • I installed playerctl and it can find and control most of the media players I use automatically. – Adrian Dec 24 '18 at 15:53
-1

The key-codes seem not to be mapped accordingly. You can manually map keys as described in the ubuntu documentation: https://help.ubuntu.com/stable/ubuntu-help/keyboard-shortcuts-set.html

  1. Open the Activities overview and start typing Keyboard.
  2. Click on Keyboard to open the panel.
  3. Select the Shortcuts tab.
  4. Select a category in the left pane, and the row for the desired action on the right. The current shortcut definition will change to New accelerator…
  5. Hold down the desired key combination, or press Backspace to clear.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.