INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: JRiver 31 under Debian with Inteset MCE Receiver module  (Read 1935 times)

Outlaw Audio

  • Junior Woodchuck
  • **
  • Posts: 69
  • Dogs......because people suck
JRiver 31 under Debian with Inteset MCE Receiver module
« on: September 12, 2023, 11:05:38 pm »

I recently moved one of my media clients from Windows over to Linux.  No issues on the move, everything came up working as expected.  The original IR receiver was an PHT-IR module that provided full remote capability for JRiver running under windows.  As part of the migration, I replaced the PHT-IR module with an Inteset IRS5 module mainly because it is one of the only modules that will start any motherboard from a dead off condition.  However, despite the fact that the module claims complete control of all functions on an MSC RS6 remote, there are a lot of functions that do not work properly (Play/Pause, Select, Page Down, Page Up).  I believe he issue is the IRS5 module, but I am confused as to how to fix this (if it is even possible).  Is anyone familiar with the IRS5 module and making it work with JRiver?
Logged

mwillems

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 5234
  • "Linux Merit Badge" Recipient
Re: JRiver 31 under Debian with Inteset MCE Receiver module
« Reply #1 on: September 13, 2023, 08:11:04 am »

So my experience is that remote control is very different in MC for Linux than on MC for Windows, even when using the exact same hardware so your issue may not be a problem with your hardware.  Some remote codes are not implemented in MC for Linux by default (the number keys do not work correctly, for example), and others work differently (for example my "ok" or "select" button worked as an enter press on Windows, but on Linux sent a different code, etc.).  Other remote codes may be consumed by your Linux operating system/desktop environment such that MC never sees them (Gnome is particularly willing to "eat" media key presses).

So there are some troubleshooting steps you can take to see if your hardware is working and if so which keycodes your remote is sending, and some workarounds you can do.  You'll need to install the ir-keytable and showkey utilities from the repos (both are in the debian repos).  If you then run "ir-keytable -t" you can get a list of keyboard codes. Then run show-key and try pressing the various remote buttons that aren't working as expected.  show-key will tell you if the buttons are working at a hardware level and what keypresses they're sending to the computer, and you can compare the codes to the ones in keytable to figure out if they're mismapped or if something else is the issue.  I eventually managed to get almost all of the remote functions I wanted to work working by remapping keys using the write function of ir-keytable.  There are even ways to work around the OS consuming media keypresses (as an example, Gnome eats volume up and volume down media keys, but MC responds to the plus and minus keys by changing the volume as well so you can remap the volume controls to send those instead, etc.)

Hopefully that should be enough to start with, I hope this helps!
Logged

Outlaw Audio

  • Junior Woodchuck
  • **
  • Posts: 69
  • Dogs......because people suck
Re: JRiver 31 under Debian with Inteset MCE Receiver module
« Reply #2 on: September 13, 2023, 06:05:50 pm »

Sweet mwillems, this is good information.  Ill start digging into this in a more focused manner now. 
Logged

Outlaw Audio

  • Junior Woodchuck
  • **
  • Posts: 69
  • Dogs......because people suck
Re: JRiver 31 under Debian with Inteset MCE Receiver module
« Reply #3 on: September 25, 2023, 11:49:43 pm »

OK, I managed to change the keycodes and got a few features / buttons working using ir-keytable but cannot get play, pause, page up and page down to work despite trying ever MCE keycode I can find.  Anyone have some tricks to try?
Logged

mwillems

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 5234
  • "Linux Merit Badge" Recipient
Re: JRiver 31 under Debian with Inteset MCE Receiver module
« Reply #4 on: September 26, 2023, 10:25:08 am »

OK, I managed to change the keycodes and got a few features / buttons working using ir-keytable but cannot get play, pause, page up and page down to work despite trying ever MCE keycode I can find.  Anyone have some tricks to try?

So JRiver Mediacenter interprets the space bar as a "play" command, or as a "pause" command if already playing, so you can remap the play and pause buttons to send a "space" key, which works 100% as expected in my testing.  Similarly, you can set the page up and down remote control buttons to send the keycodes for the literal page up and page down keys (like on a fullsize keyboard), and it works as expected for me. 

If you tried either or both of those approaches and they didn't work, can you provide some more information about what you see in show-key when you press the remapped buttons?
Logged

Outlaw Audio

  • Junior Woodchuck
  • **
  • Posts: 69
  • Dogs......because people suck
Re: JRiver 31 under Debian with Inteset MCE Receiver module
« Reply #5 on: September 27, 2023, 12:00:37 am »

Focusing on the play/pause function:

Using ir-keytable -t the scan code for my RC6 remote pause key is 0X800F0418

Using show-key, the key code for the space bar is 0X0039

In my custom key map file, I have the line 0X800F0418 0X0039.  When I load my custom key map file using ir-keytable -c -w and then testing with ir-keytable -t, I see that the pause key on the remote correctly maps to KEY_SPACE (0X0039).  Show-key responds with 0X39 when I press the pause button.  However, JRiver has no response.
Logged

mwillems

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 5234
  • "Linux Merit Badge" Recipient
Re: JRiver 31 under Debian with Inteset MCE Receiver module
« Reply #6 on: September 27, 2023, 08:47:03 am »

Focusing on the play/pause function:

Using ir-keytable -t the scan code for my RC6 remote pause key is 0X800F0418

Using show-key, the key code for the space bar is 0X0039

In my custom key map file, I have the line 0X800F0418 0X0039.  When I load my custom key map file using ir-keytable -c -w and then testing with ir-keytable -t, I see that the pause key on the remote correctly maps to KEY_SPACE (0X0039).  Show-key responds with 0X39 when I press the pause button.  However, JRiver has no response.

That's odd.  Does JRiver respond as expected if you press the normal space bar on the keyboard (i.e. does it play or pause then)?  Also, this may seem like a dumb question, but is the JRiver window focused when you're pressing the IR key (I wouldn't expect it to work when JRiver is out of focus, but usually when I'm using the IR Remote I'm in theater view, so focus usually isn't an issue)?
Logged

BryanC

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 2661
Re: JRiver 31 under Debian with Inteset MCE Receiver module
« Reply #7 on: September 27, 2023, 09:43:03 am »

If you can run custom commands (using your DE, Inteset software or a third-party integration) you can use MCWS calls to perform commands:

Code: [Select]
curl -s -o /dev/null -u username:password http://localhost:52199/MCWS/v1/Control/MCC?Command=10000
Logged

bob

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 13870
Re: JRiver 31 under Debian with Inteset MCE Receiver module
« Reply #8 on: September 27, 2023, 10:16:10 am »

If you can run custom commands (using your DE, Inteset software or a third-party integration) you can use MCWS calls to perform commands:

Code: [Select]
curl -s -o /dev/null -u username:password http://localhost:52199/MCWS/v1/Control/MCC?Command=10000
Or use the mc31 stub at /usr/lib/jriver/Media Center 31/mc31 to run send MCC commands. No need for the username:password then.
Logged

Outlaw Audio

  • Junior Woodchuck
  • **
  • Posts: 69
  • Dogs......because people suck
Re: JRiver 31 under Debian with Inteset MCE Receiver module
« Reply #9 on: September 27, 2023, 09:05:09 pm »

That's odd.  Does JRiver respond as expected if you press the normal space bar on the keyboard (i.e. does it play or pause then)?  Also, this may seem like a dumb question, but is the JRiver window focused when you're pressing the IR key (I wouldn't expect it to work when JRiver is out of focus, but usually when I'm using the IR Remote I'm in theater view, so focus usually isn't an issue)?

Yes, JRiver responds as expected when I press the space bar on the keyboard and yes the JRiver windows is focused when I'm using the IR Remote.  At first I thought it was it might be that I was leaving a terminal window open during testing, but closing the terminal window had no change in behavior.

I was wondering if my flavor of Debian / GNOME was "eating" the scan codes before JRiver could "see" them.  However, the terminal window running show-key responds when the pause button is pressed on the remote  so I discounted this theory.
Logged

Outlaw Audio

  • Junior Woodchuck
  • **
  • Posts: 69
  • Dogs......because people suck
Re: JRiver 31 under Debian with Inteset MCE Receiver module
« Reply #10 on: September 27, 2023, 09:08:48 pm »

If you can run custom commands (using your DE, Inteset software or a third-party integration) you can use MCWS calls to perform commands:


I was doing something like this when I used an iPad mini and IRule but moved away from that solution when I obtained the now current Logitech system.  Of couse, now that Logitech has abandoned the remote-control arena, I may be forced to return to previous solutions.
Logged

mwillems

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 5234
  • "Linux Merit Badge" Recipient
Re: JRiver 31 under Debian with Inteset MCE Receiver module
« Reply #11 on: September 29, 2023, 09:09:36 pm »

Yes, JRiver responds as expected when I press the space bar on the keyboard and yes the JRiver windows is focused when I'm using the IR Remote.  At first I thought it was it might be that I was leaving a terminal window open during testing, but closing the terminal window had no change in behavior.

I was wondering if my flavor of Debian / GNOME was "eating" the scan codes before JRiver could "see" them.  However, the terminal window running show-key responds when the pause button is pressed on the remote  so I discounted this theory.

So with show-key running pressing the space bar and pressing the pause button the remote are producing the exact same scan code in show-key, but are exhibiting different behavior in JRiver?  That's very odd indeed and I'm not sure how to troubleshoot that.
Logged

Outlaw Audio

  • Junior Woodchuck
  • **
  • Posts: 69
  • Dogs......because people suck
Re: JRiver 31 under Debian with Inteset MCE Receiver module
« Reply #12 on: October 01, 2023, 12:42:32 pm »

So with show-key running pressing the space bar and pressing the pause button the remote are producing the exact same scan code in show-key, but are exhibiting different behavior in JRiver?  That's very odd indeed and I'm not sure how to troubleshoot that.

Agreed, this is confusing the heck out of me.  When I run showkey, I get the same result pressing the space bar and the pause button on the remote.  However, i noticed a difference in the command window (terminal on Debian).  The arrow keys on the remote behave exactly as the arrow keys on the keyboard.  However, the pause button (mapped to the space bar) has no effect.  There is also no effect running an XEV window.  Im kind of thinking that the DE is intercepting the codes (at least for space)

Further testing shows this same behavior on Debian 10,11 and 12, running GNOME or Cinamon DE's as well as Ubuntu.  I haven't tried Mint or some of the other distros because frankly, Im tired of the load/unload process.  Searching the web, I found tons of posts and tons of supposed solutions, none of which seem to actually work.  I even found a post from you (mwillems) from 2016 on the subject which had two nice links.  Went the dconf route to no avail.   Given the pervasiveness of this issue, the length of time its been in the wild, I suspect this is going to be an illusive problem to solve.  As much as I like the more compact code and speed of execution of Linux the apparent issues regarding the media keys and JRiver may not be worth the drama.  I can't believe adding a remote to a home theater box would be so obscure.   Im about to scrap linux altogether and move back to Windows and just shell out for a faster processor and be done with it. ?
Logged

mwillems

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 5234
  • "Linux Merit Badge" Recipient
Re: JRiver 31 under Debian with Inteset MCE Receiver module
« Reply #13 on: October 01, 2023, 06:23:30 pm »

Agreed, this is confusing the heck out of me.  When I run showkey, I get the same result pressing the space bar and the pause button on the remote.  However, i noticed a difference in the command window (terminal on Debian).  The arrow keys on the remote behave exactly as the arrow keys on the keyboard.  However, the pause button (mapped to the space bar) has no effect.  There is also no effect running an XEV window.  Im kind of thinking that the DE is intercepting the codes (at least for space)

Further testing shows this same behavior on Debian 10,11 and 12, running GNOME or Cinamon DE's as well as Ubuntu.  I haven't tried Mint or some of the other distros because frankly, Im tired of the load/unload process.  Searching the web, I found tons of posts and tons of supposed solutions, none of which seem to actually work.  I even found a post from you (mwillems) from 2016 on the subject which had two nice links.  Went the dconf route to no avail.   Given the pervasiveness of this issue, the length of time its been in the wild, I suspect this is going to be an illusive problem to solve.  As much as I like the more compact code and speed of execution of Linux the apparent issues regarding the media keys and JRiver may not be worth the drama.  I can't believe adding a remote to a home theater box would be so obscure.   Im about to scrap linux altogether and move back to Windows and just shell out for a faster processor and be done with it. ?

The only remaining suggestion I can make (and I understand if this is not an attractive suggestion for you) is to try a lighter weight desktop environment like XFCE.  My experience is that XFCE eats far fewer keystrokes than Gnome does so it might be useful to test with.  I also know that one of the devs frequently uses xfce as his test environment so there's a chance things might be more deterministic there.  It truly is a puzzler though.
Logged

jmz

  • Recent member
  • *
  • Posts: 43
Re: JRiver 31 under Debian with Inteset MCE Receiver module
« Reply #14 on: December 23, 2023, 11:36:20 am »

The only remaining suggestion I can make (and I understand if this is not an attractive suggestion for you) is to try a lighter weight desktop environment like XFCE.  My experience is that XFCE eats far fewer keystrokes than Gnome does so it might be useful to test with.  I also know that one of the devs frequently uses xfce as his test environment so there's a chance things might be more deterministic there.  It truly is a puzzler though.


Please try this solution. I just tested it on Ubuntu 23.10 with Gnome



To disable multimedia keys (stop Linux from using or intercept them) you have to install dconf-editor.

Then go there:

org/gnome/settings-daemon/plugins/media-keys

then disable all XF86Audio* keys

Then go to keyboard settings and create custom shortcuts using JRiver commands and selecting our multimedia keys.
Logged
Pages: [1]   Go Up