More > JRiver Media Center 23 for Linux

Dedicated media keys on Corsair and Logitech keyboards still don't work for Linu

(1/3) > >>

Rizlaw:
I had hoped, by now, that the dedicated media keys on my Logitech (and new Corsair) keyboards would work. They don't. Does this have something to do with total lack of MPRIS support.

Also, what is best way to transfer all my settings from MC22 to MC23.0.10 beta? The MC23 Restore Library function doesn't work for me. Tried to restore my latest MC22 backup zip file to MC23 and no zip files were displayed using MC23's restore library function. There are about a dozen backup zip files for MC22 in the folder in question, but they aren't visible under MC23..  MY BAD, it works. I apparently changed the location of the backup folder from the default location. Found it. Everything is hopefully now fully restored.

Finally, what is best way to upgrade my Master License from 22 to 23?

bob:

--- Quote from: Rizlaw on June 22, 2017, 07:32:17 pm ---I had hoped, by now, that the dedicated media keys on my Logitech (and new Corsair) keyboards would work. They don't. Does this have something to do with total lack of MPRIS support.

Also, what is best way to transfer all my settings from MC22 to MC23.0.10 beta? The MC23 Restore Library function doesn't work for me. Tried to restore my latest MC22 backup zip file to MC23 and no zip files were displayed using MC23's restore library function. There are about a dozen backup zip files for MC22 in the folder in question, but they aren't visible under MC23..  MY BAD, it works. I apparently changed the location of the backup folder from the default location. Found it. Everything is hopefully now fully restored.

Finally, what is best way to upgrade my Master License from 22 to 23?

--- End quote ---
You are correct that MC doesn't support MPRIS at this time but it does support standard media keys that are part of the X protocol.

Master license upgrade:
https://jriver.com/purchase_23_master_as_upgrade.html

Rizlaw:
Thanks for the upgrade link Bob.

Both my Corsair and Logitech keyboards media keys work fine under Linux with several other Linux media players that support dedicated media keys (i.e., quod libet, gmusicbrowser, deadbeef and guayadeque). So, I'm not sure I understand what you mean by your statement that MC supports "standard media keys that are part of the X protocol".

bob:

--- Quote from: Rizlaw on June 26, 2017, 09:09:37 pm ---Thanks for the upgrade link Bob.

Both my Corsair and Logitech keyboards media keys work fine under Linux with several other Linux media players that support dedicated media keys (i.e., quod libet, gmusicbrowser, deadbeef and guayadeque). So, I'm not sure I understand what you mean by your statement that MC supports "standard media keys that are part of the X protocol".

--- End quote ---
MC is written to talk to the XServer at a very low level to allow us to do things like our own skinning. We do all of the interface without using any toolkits (unlike the players you mentioned above). The XServer supports several media keys without any add-ons such as MPRIS. We support those keys and so should any desktop/window manager.


--- Code: ---#define XF86XK_AudioLowerVolume 0x1008FF11   /* Volume control down        */
#define XF86XK_AudioMute 0x1008FF12   /* Mute sound from the system */
#define XF86XK_AudioRaiseVolume 0x1008FF13   /* Volume control up          */
#define XF86XK_AudioPlay 0x1008FF14   /* Start playing of audio >   */
#define XF86XK_AudioStop 0x1008FF15   /* Stop playing audio         */
#define XF86XK_AudioPrev 0x1008FF16   /* Previous track             */
#define XF86XK_AudioNext 0x1008FF17   /* Next track                 */
#define XF86XK_AudioPause 0x1008FF31   /* Pause audio playing        */

--- End code ---

Are the media keys we support.
If for some reason your system is messing with the mapping you can create a custom configuration thusly:

Run the `xev' program to determine the keycode for your media key (for example, Volume up)

    KeyPress event, serial 36, synthetic NO, window 0x1600001,
    root 0xd3, subw 0x0, time 487764, (115,96), root:(602,116),
    state 0x0, keycode 123 (keysym 0x1008ff13, XF86AudioRaiseVolume), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False


Yours will likely have something like: keysym 0x0, NoSymbol in place of the proper keysym 0x1008ff13, XF86AudioRaiseVolume seen above so you need to map it.

Create a file in your home directory. For example .Xmodmap with the following (adding any others you want to map in the same way):

keycode 123 = XF86AudioRaiseVolume

Invoke it by doing:

xmodmap ~/.Xmodmap

You can do that permanently by putting it in your .bash_profile or .profile so it gets run when you log in or in the Xstartup.


Rizlaw:
Thanks Bob for the X server explanation. I tried what you suggested.
While I get something meaningful - that looks like what you typed out - with normal keyboard keys (i.e., up, down, left, right arrow keys, etc), when I tried the dedicated Corsair keyboard media keys I got info that looked nothing like your example and was more or less gibberish to me (mostly a lot of zeros). For example, when I pressed the dedicated media key "Stop" playing I got something like the following:


--- Code: ---FocusIn event, serial 36, synthetic NO, window 0x5000001,
    mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 36, synthetic NO, window 0x0,
    keys:  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
--- End code ---

I'm not certain I copied the correct lines because it looks nothing like you're suggesting.

Navigation

[0] Message Index

[#] Next page

Go to full version