Ubuntu 17.10でメディアキーが機能しない


20

Thinkpad T470でかなり新しいUbuntu 17.10インストールを実行しています。

キーボードまたはBluetoothヘッドセットのいずれかのメディアキー(再生/一時停止、スキップなど)を押すたびに、このアイコンが表示されます。

アクションが許可されていないことを示すメディアキーのポップアップ

モニターで点滅しますが、メディアプレーヤーが反応しません。

キーは次の場所で認識され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


同様の問題があります。私は新しいKubuntuの17.10.1を再インストールする前に、それが働いていたことを除いて
insidesin

ターミナルのpulseaudioには恐ろしいメッセージがありますか?swh-pluginの追加は役立ちますか?
コベナー

この記号は、デスクトップ環境がメディアキーを認識しているが、メディアコマンドユーザーとして登録されているアプリケーションがないことを意味します。どのメディアプレーヤーを(その時点で)実行/実行しましたか?でGNOMEのキーボードショートカットマッピングを確認することもできgnome-control-center keyboard shortcutsます。
デビッドフォースター

mx3エアマウスでkodiを制御したかった。gnome-control-centerでは、再生/再生一時停止/次/前のメディアキーを不均衡にしましたが、それらをkodiで使用できるようになりました。しかし、早送りと早戻しは機能しません。ここでは上のアイコンが表示され、gnome-control-centerでそれらを無効にできる場所がわかりません。

回答:


20

この問題全体は、Gnomeからの「バグではなく、機能」のように見えます。

つまり、メディアボタンを押すと、キーコードが生成され、コマンドに変換されます。再生/一時停止ボタンを押したとします。キーコード162とコマンドXF86AudioPlayを生成します。

現在、このイベントを待機しているほとんどすべてのメディアアプリケーション(VLC、トーテム、kodi、spotifyなど)は、純粋なXF86AudioPlayコマンドを受信することを期待しています。そして、Gnomeは何をしますか?このコマンドをインターセプトし、独自のコマンド「play」に変換します。このため、xevもxbindkeysもこのイベントを適切に表示しません-彼らが理解できるコマンドを受け取ることはありません。

メディアボタンを押すと、Gnomeはコマンドを受信し、このコマンドを受信できると認識されているアプリがあるかどうかを確認します。(トーテム、rhytmbox、VLCなど)がある場合は、動作するはずの「再生」を送信します。このコマンドを受信できると認識されたアプリがない場合、Gnomeは最初の投稿に添付されたサインを表示し、どこにもコマンドを送信しません。

解決策は簡単です-Gnomeがメディアキーイベントを傍受できないようにします。dconf-editorをインストールし、org.gnome.settings-daemon.plugins.media-keysに移動して、XF86SomeExampleから動作するボタン(例:)XF86AudioPlayをnone( '')に変更します。このように、アプリはキーコマンドを直接受信する必要があります。


1
これはうまく機能します。Gnome Settings-Keyboard-Media KeysでPlay / Pauseを無効にすると、Kodiはそれを使用できます。しかし、早送りと早戻しのために、上記の「動作しない」シンボルが表示されますが、無効にするものがわかりません。高速FF / BWはメディアキーに記載されていません。

これは私が必要とした秘密のソースでした。これに加え、現在のキーボードの組み合わせによりplayerctlxbindkeysRhythmboxだけでなく、すべてのプレーヤーを制御できます。
エイドリアン

また、これらの変更を行った後に再起動しました(ログインとログアウトで十分である可能性があります)。それらを機能させるために
Salami

1
これはまだUbuntu 18.04で機能し、少なくとも私にとっては、再起動したりログアウトしたりする必要はありませんでした
N1mr0d

17

キーボードのメディアキーが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.Previous

メディアキーのショートカットを有効にする

これらをキーボードに関連付けるには、[設定]> [キーボード]> [ショートカット]> [カスタムショートカット]に移動し、で[追加]をクリックし+ます。上記のコマンドのいずれかを使用して、新しいコマンドに関連付けるキーを押します。

ここに画像の説明を入力してください

ソース

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


素晴らしい、これはまさに私が探していたものです。どうもありがとう!
ジョシュクロジャー

これはUbuntu 14.04で機能しましたが、Compizを使用しているため、CompizConfig Settings Managerの「コマンド」アプレットを使用してショートカットを割り当てる必要がありました。
タイラーコリアー

これは、Ubuntu 18.04、Linuxカーネルバージョン4.15.0-51-generic、Spotifyバージョン1.1.5.153.gf614956dで動作します。ありがとう!
ゴルマドール

darkdudeの答えが示唆することをした場合、これは私にとってはうまくいきました。
totymedli

これをSpotify以外のプレーヤーで動作させるには、コマンドで、などに変更spotifyします。vlcrhythmbox
totymedli

6

私は、Ubuntu 18.04 LTSが2019/2/1の時点で、私がする必要があるのは次のことであることがわかりました:

  • dconf-editorをインストールします
  • org / gnome / settings-daemon / plugins / media-keysに移動します
  • 動作していないキーごとに:
    • 「デフォルト値を使用する」のチェックを外します
    • 当てはまる
    • 「デフォルト値を使用」を再確認します
    • もう一度適用します

問題のメディアキーはすぐに動作するはずです。

darkdudeが推奨しているように、値を使用しないと、うまくいきませんでした。


dconf-editorを開いたとき、再生/一時停止、前のトラック、次のデフォルトがすでにチェックされていないことがわかりました。これら3つのキーのデフォルトをチェックすると、問題が解決しました。
dericke

「デフォルト値を使用する」の
切り替え

3

最後の2つの答えの組み合わせは、私にとってはうまくいきます。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で何でもしようとすると、まったく機能しません。デフォルトのキーの関連付けを無効にし(キーの関連付けのダイアログを呼び出し、バックスペースを押して[保存]をクリック)、動作する新しいものを作成すると、@ foamboarderからの回答が非常に役に立ちました

ショートカットモードのこのスクリーンショットは、コンピューターをスリープモードから復帰させた後でもすべて正常に動作するようになりました。


1
+1これは最終的に私のために働いたので、カスタムキーボードショートカットで使用したコマンドを含める必要があります:dbus-send --print-reply --dest=org.mpris.MediaPlayer2.rhythmbox /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.PlayPauseand ... Previousand Next
...-bitinerant

1

@Václavによる上記の回答を使用すると、Ubuntu 18.04で私のために働いた、と彼は言った

「...デフォルトのキーの関連付けを無効にし(キーの関連付けのダイアログを呼び出し、バックスペースを押して[保存]をクリックします)、新しいものを作成します」。

私は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`  

これがいつか誰かを助けることを願っています


2
インストールするplayerctlと、使用するほとんどのメディアプレーヤーを自動的に検索して制御できます。
エイドリアン

1
rhythmbox-client --play-pauserhythmbox-client --nextrhythmbox-client --previous
はCtrl-C

0

キーコードはそれに応じてマップされていないようです。ubuntuのドキュメントの説明に従って、手動でキーをマッピングできます:https : //help.ubuntu.com/stable/ubuntu-help/keyboard-shortcuts-set.html

  1. アクティビティの概要を開き、キーボードの入力を開始します。
  2. キーボードをクリックしてパネルを開きます。
  3. [ショートカット]タブを選択します。
  4. 左側のペインでカテゴリを選択し、右側で目的のアクションの行を選択します。現在のショートカット定義は、新しいアクセラレータに変更されます…
  5. 目的のキーの組み合わせを押したままにするか、Backspaceキーを押してクリアします。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.