Media Keys não está funcionando no Ubuntu 17.10

4

Estou executando uma instalação Ubuntu 17.10 praticamente nova em um Thinkpad T470s.

Sempre que eu toco uma das teclas de mídia (reproduzir / pausar, pular, etc) em qualquer um dos meus teclados ou fones de ouvido Bluetooth, vejo este ícone:

pisca no monitor, mas nenhum dos meus players de mídia reage.

As chaves são reconhecidas em 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

Mas eles não aparecem em xev .

    
por Nils Borrmann 28.12.2017 / 17:42

4 respostas

2

Recentemente, enfrentei o mesmo problema e depois de perder muito tempo, encontrei uma resposta em algum fórum do Arch.

Essa edição toda parece que 'não é um bug, é um RECURSO' presente dos desenvolvedores do Gnome.

Em resumo: quando você pressiona um botão de mídia, ele gera um código de tecla que é então traduzido em um comando. Digamos que você pressione um botão Reproduzir / Pausar. Ele gera um código de tecla 162 e um comando XF86AudioPlay.

Agora, quase todos os aplicativos de mídia que podem estar aguardando esse evento (seja VLC, totem, kodi, spotify etc.) esperam receber o comando XF86AudioPlay puro. E o que o Gnome faz? Ele intercepta esse comando e o traduz em seu próprio comando "play". Por causa disso, nem xev nem xbindkeys mostram esse evento corretamente - eles nunca recebem um comando que possam entender.

Quando você pressiona um botão de mídia, o Gnome recebe o comando e verifica se há algum aplicativo que seja reconhecido como capaz de receber esse comando. Se houver (digamos totem, rhytmbox, talvez VLC), ele envia "play" que deve funcionar. Se não houver nenhum aplicativo reconhecido como capaz de receber esse comando, o Gnome mostrará o sinal que está anexado ao primeiro post e não enviará nenhum comando em lugar algum.

A solução é simples - torna o Gnome incapaz de interceptar eventos de chave de mídia. Instale o dconf-editor, vá para org.gnome.settings-daemon.plugins.media-keys e altere qualquer botão que deve funcionar de XF86SomeExapmle para none (''). Desta forma, qualquer aplicativo deve receber o comando chave diretamente.

    
por darkdude 01.03.2018 / 20:32
0

Se as teclas de mídia do teclado não funcionarem na área de trabalho do Ubuntu, você poderá usar o suporte do D-Bus para enviar os comandos apropriados para o Spotify. Valide os seguintes comandos no console:

Reproduzir / pausar

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

Próxima

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

Ativar atalho de chave de mídia

Para ligá-los ao teclado, vá para Configurações > Teclado > Atalhos > Atalhos personalizados e depois “Adicionar”. Use um dos comandos acima e, em seguida, pressione a tecla que deseja vincular ao novo comando.

Fonte

link

    
por foamboarder 25.08.2018 / 02:05
0

combinação das duas últimas respostas funciona para mim. Eu tenho o Ubuntu 18.04 o trabalho de teste 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

mas quando eu vou para Atividades - > Teclado e tentar fazer qualquer coisa com o Play / Next / Previous não funciona de todo. Quando eu desativei a associação de chaves padrão (invocar diálogo para associação de chaves, pressione backspace e clique em salvar) e criar um novo que funciona, muito útil foi a resposta de @foamboarder

agora parece que esta captura de tela da configuração do atalho funciona bem agora, mesmo depois de acordar o computador do modo de suspensão modo

    
por Václav Rak 19.09.2018 / 09:54
-1

Os códigos-chave parecem não ser mapeados de acordo. Você pode mapear manualmente as chaves conforme descrito na documentação do ubuntu: link

  1. Abra a visão geral de Atividades e comece a digitar o teclado.
  2. Clique no teclado para abrir o painel.
  3. Selecione a guia Atalhos.
  4. Selecione uma categoria no painel esquerdo e a linha da ação desejada à direita. A definição de atalho atual mudará para Novo acelerador…
  5. Mantenha pressionada a combinação de teclas desejada ou pressione Backspace para limpar.
por Arne Q 21.02.2018 / 15:05
___ qstntxt ___

Estou seguindo este tutorial sobre como configurar um cliente ubuntu sem disco.

  1. Estou usando duas VMs virtuais, um servidor e um cliente.
  2. Estou tentando inicializar o cliente usando o pxe, mas recebo um erro de kernel panic like ISTO
  3. Estou usando o Ubuntu 16.04.3 LTS (Xenial Xerus) no servidor e no cliente.
  4. O servidor é uma instalação COMPLETA, enquanto o cliente é uma instalação mínima.

O cliente se conecta ao servidor, obtém um IP e o processo de inicialização é iniciado, mas eu recebo um erro de kernel panic. Por favor, me diga o que estou fazendo de errado aqui. Eu segui o tutorial palavra por palavra.

Aqui está minha configuração:

O Ubuntu Server possui um servidor dhcp configurado para inicialização do pxe.

Eu executei os seguintes comandos no cliente ubuntu mínimo:

  1. sudo cp / boot / vmlinuz- %code% ~
  2. Alterado o sinalizador BOOT em /etc/initramfs-tools/initramfs.conf para BOOT = nfs
  3. Alterado o sinalizador MODULES em /etc/initramfs-tools/initramfs.conf para MODULES = netboot
  4. Coloque os módulos necessários para adaptadores de rede em / etc / initramfs-tools / modules
  5. Ran mkinitramfs mkinitramfs -o ~ / initrd.img- %code%
  6. Arquivos OS copiados para o servidor Ubuntu (192.168.2.3/nfsroot/):
    %pre%
  7. Kernel copiado e initrd para o tftp root.
  8. / tftpboot / now contém a imagem vmlinuz e initrd feita na etapa 5
  9. Configurado fstab em / nfsroot / etc / fstab. Ele contém as informações que o cliente usará para montar sistemas de arquivos na inicialização.

/ nfsroot / etc / fstab

%pre%

/tftpboot/pxelinux.cfg/default

%pre%

/ etc / default / tftpd-hpa

%pre%

/etc/default/dhcp/dhcpd.conf

%pre%

POR FAVOR, AJUDE !!!

    
___ tag123pxe ___ Perguntas relacionadas à inicialização via rede usando PXE ou Pre eXecution Environment. Nesse método de inicialização, um computador cliente (ou computador final) pode inicializar usando apenas sua placa de rede. ___ tag123kernel ___ Questões relacionadas ao kernel do Linux no Ubuntu. Os problemas podem incluir a atualização e instalação de kernels, compilação, patches e módulos do kernel. ___ ___ tag123localrepositório ___ nos ajude a editar este wiki ___ tag123releasemanagement ___ Perguntas sobre os procedimentos de liberação para uma versão, incluindo políticas, atualizações de versão estáveis e atualizações de distribuição. ___