Media Keys no funciona en Ubuntu 17.10


20

Estoy ejecutando una instalación bastante nueva de Ubuntu 17.10 en un Thinkpad T470s.

Cada vez que presiono una de las teclas multimedia (reproducir / pausar, omitir, etc.) en cualquiera de mis teclados o auriculares bluetooth, veo este icono:

ventana emergente en la tecla multimedia que indica que no se permite ninguna acción

parpadea en el monitor pero ninguno de mis reproductores multimedia reacciona.

Las claves se reconocen en 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

Pero no aparecen en xev.


Tengo un problema similar. Excepto que estaba funcionando antes de reinstalar el nuevo Kubuntu 17.10.1
dentro del

¿Pulseaudio en su terminal da algún mensaje aterrador? ¿Ayuda agregar swh-plugins?
Covener

Este símbolo significa que el entorno de escritorio reconoce la clave multimedia pero ninguna aplicación se registró como usuario de comando multimedia. ¿Qué reproductor (es) de medios tiene / tenía corriendo (en ese momento)? También puede echar un vistazo a las asignaciones de atajos de teclado de GNOME en gnome-control-center keyboard shortcuts.
David Foerster

Quería controlar kodi con un mouse aéreo mx3. En gnome-control-center deshabilité las teclas multimedia para reproducir / reproducir pausa / siguiente / anterior y ahora puedo usarlas en kodi. Pero el avance rápido y el retroceso rápido no funcionan, aquí aparece el icono de arriba y no puedo ver dónde puedo desactivarlos en el centro de control de gnomos.

Respuestas:


21

Todo este problema parece un regalo "no es un error, es una CARACTERÍSTICA" de Gnome.

En resumen: cuando presiona un botón multimedia, genera un código clave que luego se traduce en un comando. Digamos que presionas un botón Reproducir / Pausa. Genera un código clave 162 y un comando XF86AudioPlay.

Ahora, casi todas las aplicaciones de medios que pueden estar esperando este evento (ya sea VLC, totem, kodi, spotify, etc.) esperan recibir el comando XF86AudioPlay puro. ¿Y qué hace Gnome? Intercepta este comando y lo traduce a su propio comando "play". Debido a esto, ni xev ni xbindkeys muestran este evento correctamente; nunca reciben un comando que puedan entender.

Cuando presiona un botón multimedia, Gnome recibe el comando y comprueba si hay alguna aplicación que se reconozca como capaz de recibir este comando. Si lo hay (digamos totem, rhytmbox, quizás VLC), envía "play" que debería funcionar. Si no hay una aplicación reconocida como capaz de recibir este comando, Gnome mostrará el letrero adjunto a la primera publicación y no enviará ningún comando a ninguna parte.

La solución es simple: hacer que Gnome no pueda interceptar eventos clave de medios. Instale dconf-editor, vaya a org.gnome.settings-daemon.plugins.media-keys y cambie cualquier botón que funcione de XF86SomeExample (por ejemplo, XF86AudioPlay) a none (''). De esta manera, cualquier aplicación debería recibir el comando de teclado directamente.


1
Esto funciona muy bien. Si desactiva Play / Pause en Gnome Settings-Keyboard-Media Keys, Kodi puede usarlo. Pero para avance rápido y retroceso rápido, todavía aparece el símbolo "no funciona" desde arriba, pero no sé qué deshabilitar. Fast FF / BW no se menciona en las teclas multimedia.

Esta era la salsa secreta que necesitaba. Esto, más una combinación de playerctly xbindkeysahora mi teclado puede controlar a todos mis jugadores, no solo a Rhythmbox.
Adrian

También reinicié después de hacer estos cambios (iniciar y cerrar sesión es bastante probable) para que funcionen
Salami

1
Esto todavía funciona para Ubuntu 18.04 y al menos para mí no había necesidad de reiniciar o incluso cerrar sesión
N1mr0d

17

Si las teclas multimedia del teclado no funcionan desde el escritorio de Ubuntu, puede usar la compatibilidad con D-Bus para enviar los comandos adecuados a Spotify. Valide los siguientes comandos desde la consola:

Reproducir pausar

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

próximo

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

Anterior

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

Habilitar acceso directo de tecla multimedia

Para vincularlos al teclado, vaya a Configuración> Teclado> Accesos directos> Accesos directos personalizados, luego “Agregar” con +. Use uno de los comandos anteriores, luego presione la tecla que desea vincular al nuevo comando.

ingrese la descripción de la imagen aquí

Fuente

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


Excelente, esto es exactamente lo que estaba buscando. ¡Muchas gracias!
Josh Crozier el

Esto funcionó para mí en Ubuntu 14.04, excepto que uso Compiz, así que tuve que usar el applet "Comandos" de CompizConfig Settings Manager para asignar los accesos directos.
Tyler Collier

Esto funciona en Ubuntu 18.04, Linux kernel versión 4.15.0-51-generic, con Spotify versión 1.1.5.153.gf614956d. ¡Gracias!
Gormador

Esto funcionó para mí si también hice lo que sugirió la respuesta de darkdude .
totymedli

Usted puede hacer este trabajo con otros jugadores de Spotify, sólo cambia spotifya vlc, rhythmbox, etc en el comando.
totymedli

6

Descubrí que, con Ubuntu 18.04 LTS a partir de 2019/2/1, todo lo que tenía que hacer era:

  • instalar dconf-editor
  • navegue a org / gnome / settings-daemon / plugins / media-keys
  • para cada tecla que no funciona:
    • desmarque "Usar valor predeterminado"
    • presionar aplicar
    • vuelva a marcar "Usar valor predeterminado"
    • presione aplicar nuevamente

Las teclas multimedia en cuestión ahora deberían funcionar de inmediato.

El uso de ningún valor, según darkdude recomienda, no funcionó para mí.


Cuando abrí dconf-editor, encontré los valores predeterminados ya sin marcar para reproducción / pausa, pista anterior y siguiente. Verificar los valores predeterminados de estas tres claves solucionó mi problema.
dericke

Realmente no entiendo por qué funcionó alternar "Usar valor predeterminado", pero también funcionó para mí +1
Miroslav Glamuzina

3

La combinación de las dos últimas respuestas me funciona. Tengo Ubuntu 18.04 el trabajo de prueba de teclado

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

pero cuando voy a Actividades -> Teclado e intento hacer algo con Reproducir / Siguiente / Anterior, no funciona en absoluto. Cuando desactivé la asociación de teclas predeterminada (invoque el cuadro de diálogo para la asociación de teclas, presione la tecla de retroceso y haga clic en guardar) y cree una nueva, funciona, fue muy útil la respuesta de @foamboarder

ahora parece que esta captura de pantalla de la configuración de acceso directo funciona bien incluso después de activar la computadora desde el modo de suspensión


1
+1 porque esto finalmente funcionó para mí, pero debería haber incluido los comandos que usó en los atajos de teclado personalizados: dbus-send --print-reply --dest=org.mpris.MediaPlayer2.rhythmbox /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.PlayPausey ... Previousy ...Next
bitinerante

1

Usar la respuesta anterior de @ Václav funcionó para mí en Ubuntu 18.04, donde dijo

"... se desactivó la asociación de teclas predeterminada (invoque el diálogo para la asociación de teclas, presione la tecla de retroceso y haga clic en guardar) y cree una nueva".

Uso Rhythmbox, estos son los comandos que estaba poniendo para cada Shorcut personalizado para Rhythmbox:

Para el anterior:

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

Para el siguiente:

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

Para jugar / parar:

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

Espero que esto ayude a alguien algún día


2
Lo instalé playerctly puede encontrar y controlar la mayoría de los reproductores multimedia que uso automáticamente.
Adrian

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

0

Los códigos clave parecen no estar asignados en consecuencia. Puede asignar teclas manualmente como se describe en la documentación de ubuntu: https://help.ubuntu.com/stable/ubuntu-help/keyboard-shortcuts-set.html

  1. Abra la descripción de Actividades y comience a escribir Teclado.
  2. Haga clic en Teclado para abrir el panel.
  3. Seleccione la pestaña Accesos directos.
  4. Seleccione una categoría en el panel izquierdo y la fila para la acción deseada a la derecha. La definición actual de acceso directo cambiará a Nuevo acelerador ...
  5. Mantenga presionada la combinación de teclas deseada o presione Retroceso para borrar.
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.