Медиа-ключи не работают на Ubuntu 17.10

Я использую довольно новую версию Ubuntu 17.10 на Thinkpad T470s.

Всякий раз, когда я нажимаю одну из клавиш мультимедиа (воспроизведение / пауза, пропуск и т. Д.) На любой из моих клавиатур или Bluetooth-гарнитуры, я вижу этот значок:

popup on media key indicating no action allowed

мигают на мониторе, но ни один из моих медиаплееров не реагирует.

Ключи распознаются в 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

Но они не отображаются в xev.

16
задан 19 February 2018 в 14:49

8 ответов

Недавно я столкнулся с той же проблемой, и, потеряв МНОГО времени, нашел ответ на каком-то форуме Arch.

Весь этот выпуск выглядит как подарок «это не ошибка, это ОСОБЕННОСТЬ» от разработчиков Gnome.

Короче говоря: при нажатии кнопки мультимедиа генерируется код клавиши, который затем преобразуется в команду. Допустим, вы нажимаете кнопку воспроизведения / паузы. Он генерирует ключевой код 162 и команду XF86AudioPlay.

Теперь почти каждое мультимедийное приложение, которое может ожидать этого события (будь то VLC, totem, kodi, spotify и т. Д.), Ожидает получения чистой команды XF86AudioPlay. А что делает Гном? Он перехватывает эту команду и переводит ее в свою собственную команду «play». Из-за этого ни xev, ни xbindkeys не показывают это событие должным образом - они никогда не получают команду, которую они могут понять.

Когда вы нажимаете мультимедийную кнопку, Gnome получает команду и проверяет, существует ли какое-либо приложение, которое признано способным принимать эту команду. Если есть (скажем, тотем, rhytmbox, может быть, VLC), он посылает «play», которая должна работать. Если нет приложения, признанного способным принимать эту команду, Gnome покажет знак, прикрепленный к первому сообщению, и никуда не отправит команду.

Решение простое - сделать Gnome неспособным перехватывать ключевые медиа-события. Установите dconf-editor, перейдите в org.gnome.settings-daemon.plugins.media-keys и измените любую кнопку, которая должна работать, с XF86SomeExapmle на none (''). Таким образом, любое приложение должно получать ключевые команды напрямую.

10
ответ дан 19 February 2018 в 14:49

Если мультимедийные клавиши клавиатуры не работают с вашего рабочего стола Ubuntu, вы можете использовать поддержку D-Bus для отправки соответствующих команд в Spotify. Проверьте из консоли следующие команды:

Воспроизведение / Пауза

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

Далее

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

Предыдущий

dbus-send --print-reply --dest = org.mpris.MediaPlayer2.spotify / org / mpris / MediaPlayer2 org.mpris.MediaPlayer2.Player. Назад

Включение сочетания клавиш мультимедиа

Чтобы связать их с клавиатурой, перейдите в «Настройки»> «Клавиатура»> «Сочетания клавиш»> «Пользовательские сочетания клавиш», затем «Добавить». Используйте одну из приведенных выше команд, затем нажмите клавишу, которую хотите связать с новой командой.

Источник

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

7
ответ дан 19 February 2018 в 14:49
  • 1
    Примите во внимание, что файл конфигурации системы в/etc/ssh/config может содержать дополнительные строки, которые Вы хотите сохранить в своей пользовательской конфигурации. You' ll должны скопировать их в Ваш пользовательский файл конфигурации в ~/.ssh/config для хранения тех настроек. – Steven Maude 23 January 2017 в 19:35
  • 2
    Примите во внимание, что файл конфигурации системы в/etc/ssh/config может содержать дополнительные строки, которые Вы хотите сохранить в своей пользовательской конфигурации. You' ll должны скопировать их в Ваш пользовательский файл конфигурации в ~/.ssh/config для хранения тех настроек. – Steven Maude 23 January 2017 в 19:35
  • 3
    Примите во внимание, что файл конфигурации системы в/etc/ssh/config может содержать дополнительные строки, которые Вы хотите сохранить в своей пользовательской конфигурации. You' ll должны скопировать их в Ваш пользовательский файл конфигурации в ~/.ssh/config для хранения тех настроек. – Steven Maude 23 January 2017 в 19:35
  • 4
    Примите во внимание, что файл конфигурации системы в/etc/ssh/config может содержать дополнительные строки, которые Вы хотите сохранить в своей пользовательской конфигурации. You' ll должны скопировать их в Ваш пользовательский файл конфигурации в ~/.ssh/config для хранения тех настроек. – Steven Maude 23 January 2017 в 19:35
  • 5
    Примите во внимание, что файл конфигурации системы в/etc/ssh/config может содержать дополнительные строки, которые Вы хотите сохранить в своей пользовательской конфигурации. You' ll должны скопировать их в Ваш пользовательский файл конфигурации в ~/.ssh/config для хранения тех настроек. – Steven Maude 23 January 2017 в 19:35
  • 6
    Примите во внимание, что файл конфигурации системы в/etc/ssh/config может содержать дополнительные строки, которые Вы хотите сохранить в своей пользовательской конфигурации. You' ll должны скопировать их в Ваш пользовательский файл конфигурации в ~/.ssh/config для хранения тех настроек. – Steven Maude 23 January 2017 в 19:35

Я обнаружил, что с Ubuntu 18.04 LTS по состоянию на 2019/2/1 все, что мне нужно было сделать, это:

  • установить dconf-editor
  • перейти к org / gnome / settings-daemon / plugins / media-keys
  • для каждого ключа не работает:
    • снимите флажок «Использовать значение по умолчанию»
    • , нажмите «применить»
    • , повторно отметьте «Использовать значение по умолчанию»
    • снова примените

Соответствующие клавиши мультимедиа теперь должны работать немедленно.

Использование без значения, как рекомендовано темным чуваком, не сработало для меня.

2
ответ дан 19 February 2018 в 14:49

Сочетание последних двух ответов работает для меня. У меня Ubuntu 18.04 работает тестовая клавиатура

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

, но когда я захожу в Активности -> Клавиатура и пытаюсь что-то сделать с помощью Play / Next / Previous, он вообще не работает. Когда я деактивировал связывание клавиш по умолчанию (вызовите диалог для связывания клавиш, нажмите клавишу Backspace и нажмите «Сохранить») и создал новый, он работает, очень полезным был ответ от @foamboarder

, теперь он выглядит как этот скриншот из настройка ярлыков теперь все работает нормально даже после выхода компьютера из спящего режима

2
ответ дан 19 February 2018 в 14:49

Использование приведенного выше ответа @ Václav помогло мне в Ubuntu 18.04, где он сказал

«... деактивировано связывание клавиш по умолчанию (вызовите диалог для связывания клавиш, нажмите клавишу Backspace и нажмите« Сохранить ») и создать новый ".

Я использую Rhythmbox, вот команды, которые я ставил для каждого пользовательского ярлыка для Rhythmbox:

Для предыдущего:

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

Для следующего:

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

Для воспроизведения / остановки:

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

Надеюсь, это поможет кому-нибудь однажды

0
ответ дан 19 February 2018 в 14:49

Коды клавиш, похоже, не отображаются соответственно. Вы можете вручную сопоставить ключи, как описано в документации по Ubuntu: https://help.ubuntu.com/stable/ubuntu-help/keyboard-shortcuts-set.html

  1. Откройте обзор «Действия» и начните вводить «Клавиатура».
  2. Нажмите на клавиатуре, чтобы открыть панель.
  3. Выберите вкладку «Ярлыки».
  4. Выберите категорию на левой панели и строку для желаемого действия справа. Текущее определение ярлыка изменится на Новый ускоритель…
  5. Удерживая нажатой нужную комбинацию клавиш, или нажмите клавишу Backspace, чтобы очистить.
-1
ответ дан 19 February 2018 в 14:49

Для некоторых это может быть связано с браузером, например (Google Chrome) "удерживает" мультимедийные клавиши. Даже без носителей браузера ключи выделены для Chrome.

Решение:

  1. Вставьте chrome://flags/#hardware-media-key-handling в Chrome;
  2. Выберите «Отключено» для «Обработка аппаратного мультимедийного ключа» — это первый вариант;
  3. Chrome следует попросить «перезапустить», принять и продолжить пользоваться приложениями!
19
ответ дан 14 May 2020 в 20:28

TLDR: ошибка, исправленная в Eoan (19.10), должна решить эти проблемы.

В gnome-settings-daemon была ошибка, которая была исправлена ​​в версии 3.32.1. Ubuntu 19+ использует эту версию или более позднюю, поэтому все, кто работает с 18 или ниже, затронуты, если они не исправят GSD.

Следуйте инструкциям в этом комментарии: https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/issues/45#note_444348

Дифф можно получить здесь: https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/cea632bf682760e80654df19cfef6206efca868a.diff

Я исправил 3.28.1 (последний в 18.04.4 LTS, на момент этого сообщения) и мультимедийные клавиши работают намного лучше.

Если вы чувствуете себя достаточно уверенно, чтобы установить патч, я бы посоветовал это сделать! Или обновитесь до eoan.

После запуска исправленной версии вам не нужно возиться с переназначением мультимедийных клавиш, и это снова станет «функцией».

1
ответ дан 19 May 2020 в 19:58

Другие вопросы по тегам:

Похожие вопросы: