INTERACT FORUM

More => Old Versions => JRiver Media Center 23 for Linux => Topic started by: bob on July 21, 2017, 02:45:26 pm

Title: JRiver Media Center 23.0.21 for Debian Jessie
Post by: bob on July 21, 2017, 02:45:26 pm
This is the latest version of MC23 for Linux.  Please post bugs here.  Please start a new thread for anything requiring discussion.  Non-bug posts will be deleted.

Download:
i386      http://files.jriver.com/mediacenter/channels/v23/latest/MediaCenter-23.0.21.deb
amd64  http://files.jriver.com/mediacenter/channels/v23/latest/MediaCenter-23.0.21-amd64.deb
arm      http://files.jriver.com/mediacenter/channels/v23/latest/MediaCenter-23.0.21-armhf.deb

Also in the latest repo.

23.0.21 (7/17/2017)

1. NEW: Implemented thread priorities. When running as a normal user requires system configuration to work. Falls back to non-prioritized threads if the system is not configured to allow prioritization.
2. FIXED: Memory leak in Linux thread parallelizer.

Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: bob on July 21, 2017, 02:46:36 pm
Note that these builds all require Jessie at a minimum.
The AMD64 build will eventually require Stretch when we can get some issues with the GCC 6 compiler ironed out.
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: bob on July 21, 2017, 02:50:38 pm
This build (23.0.21) implements thread priorities on linux.

The linux box must be configured to allow non-root users to do this. The easiest way is to add the following line to /etc/security/limits.conf

Code: [Select]
@audio - rtprio 100
This assumes the user is the audio group which on debian is allowed access to the raw audio devices (and which your user ought to be a member of).

A different method (if you didn't want to allow the whole audio group to be able to set priorities) would be to specify the existing MC user like this:

Code: [Select]
bob - rtprio 100
You need to log out and back in for the change to take effect.


Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: Awesome Donkey on July 21, 2017, 02:53:00 pm
Interesting, how do we know thread priorities is working (after making the changes to allow it)?
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: bob on July 21, 2017, 03:03:16 pm
Interesting, how do we know thread priorities is working (after making the changes to allow it)?
There are a couple of ways:
ps -T -eo pid,tid,class,rtprio,ni,pri,comm | grep mediacenter23

Or run install and run htop
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: bob on July 21, 2017, 03:04:05 pm
MC will run various things at different priorities if it can, and the highest priority is for the audio output thread.
If it can't get permission to run the thread with one of the SCHED_RR priorities it will echo that fact into the log and revert to default thread priority.
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: Awesome Donkey on July 21, 2017, 03:09:27 pm
What I'm getting on Linux Mint;

Code: [Select]
2779  2779 TS       -   0  19 mediacenter23
 2779  3479 TS       -   0  19 mediacenter23
 2779  3480 RR      56   -  96 mediacenter23
 2779  3481 RR      46   -  86 mediacenter23
 2779  3498 RR      99   - 139 mediacenter23
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: bob on July 21, 2017, 03:11:33 pm
What I'm getting on Linux Mint;

Code: [Select]
2779  2779 TS       -   0  19 mediacenter23
 2779  3479 TS       -   0  19 mediacenter23
 2779  3480 RR      56   -  96 mediacenter23
 2779  3481 RR      46   -  86 mediacenter23
 2779  3498 RR      99   - 139 mediacenter23
RR 99 is your friend (it's the audio output thread)!
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: Awesome Donkey on July 21, 2017, 03:15:03 pm
YAY! :D

Yeah, compare to Arch Linux before installing 23.0.21;

Code: [Select]
2946  2946 TS       -   0  19 mediacenter23
 2946  2956 TS       -   0  19 mediacenter23
 2946  2966 TS       -   0  19 mediacenter23
 2946  2967 TS       -   0  19 mediacenter23
 2946  2968 TS       -   0  19 mediacenter23
 2946  2970 TS       -   0  19 mediacenter23
 2946  2972 TS       -   0  19 mediacenter23

And Arch Linux after installing 23.0.21;

Code: [Select]
10059 10059 TS       -   0  19 mediacenter23
10059 11871 TS       -   0  19 mediacenter23
10059 11872 RR      56   -  96 mediacenter23
10059 11873 RR      46   -  86 mediacenter23
10059 11875 RR      99   - 139 mediacenter23

Double YAY! :D

On Debian-based distros, it should be easy to add yourself to the audio group by opening a terminal and using this command;

sudo usermod -a -G audio youruser

Replace youruser with your username.

For Arch Linux, the command is a little different;

sudo usermod -aG audio youruser

Again, just replace youruser with your username. Now, step two. With the terminal still open paste in the following;

Code: [Select]
sudo gedit /etc/security/limits.conf
Then add this to the bottom and save it (the added spaces don't matter, but I formatted it to look like the examples);

Code: [Select]
@audio           -       rtprio          100
Logout/reboot and profit. :)

I think I'll add this to the Debian/Ubuntu/Mint tutorial over the weekend. :)
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: mwillems on July 21, 2017, 03:41:17 pm
When adding the "mediacenter23native" list to my repo list on a pi (running jessie), I wind up with the wheezy repo, which has no MC23 builds.  Am I not supposed to us the native list?  Or is there not an arm repo running yet?
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: bob on July 21, 2017, 03:46:59 pm
When adding the "mediacenter23native" list to my repo list on a pi (running jessie), I wind up with the wheezy repo, which has no MC23 builds.  Am I not supposed to us the native list?  Or is there not an arm repo running yet?
Just fixed that. Since everything is jessie right now,  mediacenter23native will work.
I had made the changes to mediacenter23jessie.list because when I can get gcc 6 working with MC the amd64 build will be stretch.

Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: bob on July 21, 2017, 03:50:18 pm
I'm going to tweak the priorities a bit more but for now the most important thing is that the audio output thread is highest.
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: Rizlaw on July 21, 2017, 03:52:29 pm
AD,

For Ubuntu Gnome 17.04 I get the following:

Code: [Select]
2386  2386 TS       -   0  19 mediacenter23
 2386  2958 TS       -   0  19 mediacenter23
 2386 10276 TS       -   0  19 mediacenter23
 2386 10278 TS       -   0  19 mediacenter23
 2386 10280 TS       -   0  19 mediacenter23
 2386 10317 TS       -   0  19 mediacenter23

I tried the sudo usermod -a -G audio youruser command with no luck either. Yes, I did put in my correct "username".
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: mwillems on July 21, 2017, 03:52:55 pm
Just fixed that. Since everything is jessie right now,  mediacenter23native will work.
I had made the changes to mediacenter23jessie.list because when I can get gcc 6 working with MC the amd64 build will be stretch.

Thanks for the fix; just to note, it's fixed for latest, but not for stable (MC23native still pulls the empty wheezy repo on stable)
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: bob on July 21, 2017, 03:56:20 pm
AD,

For Ubuntu Gnome 17.04 I get the following:

Code: [Select]
2386  2386 TS       -   0  19 mediacenter23
 2386  2958 TS       -   0  19 mediacenter23
 2386 10276 TS       -   0  19 mediacenter23
 2386 10278 TS       -   0  19 mediacenter23
 2386 10280 TS       -   0  19 mediacenter23
 2386 10317 TS       -   0  19 mediacenter23

I tried the sudo usermod -a -G audio youruser command with no luck either. Yes, I did put in my correct "username".
You need to do the limits.conf thing too and logout and back in.
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: bob on July 21, 2017, 03:58:41 pm
Thanks for the fix; just to note, it's fixed for latest, but not for stable (MC23native still pulls the empty wheezy repo on stable)
Got that.
The only thing in stable now is 23.0.19 AMD64
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: Awesome Donkey on July 21, 2017, 04:10:32 pm
You need to do the limits.conf thing too and logout and back in.

Yes, for step 2;

Code: [Select]
sudo gedit /etc/security/limits.conf
Then add this to the bottom and save it (the spaces don't matter, but I formatted it to look like the examples);

Code: [Select]
@audio           -       rtprio          100
Logout/reboot and try again. :)
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: Rizlaw on July 21, 2017, 04:10:52 pm
You need to do the limits.conf thing too and logout and back in.

AD,

I added the code to the limits.conf file and now I get this:

Code: [Select]
13477 13477 TS       -   0  19 mediacenter23
13477 14010 RR      43   -  83 mediacenter23
13477 21304 TS       -   0  19 mediacenter23
13477 21305 RR      56   -  96 mediacenter23
13477 21306 RR      46   -  86 mediacenter23
13477 21331 RR      56   -  96 mediacenter23
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: Awesome Donkey on July 21, 2017, 04:12:39 pm
You're good now. :D
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: mcollier on July 24, 2017, 07:27:54 pm
What are the benefits of enabling thread prioritization?  Does it address some issue?
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: Hendrik on July 25, 2017, 01:28:55 am
What are the benefits of enabling thread prioritization?  Does it address some issue?

It allows the audio output thread to be higher priority, resulting in more stable playback when your system is busy.
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: geier22 on July 25, 2017, 05:38:36 am
I did this under Debian Buster (Xfce).
It seems that Mediacenter starts and stops much faster.
I can not find any other advantages.


Code: [Select]
ps -T -eo pid,tid,class,rtprio,ni,pri,comm | grep mediacenter23
 5677  5677 TS       -   0  19 mediacenter23
 5677  5905 TS       -   0  19 mediacenter23
 5677  5908 TS       -   0  19 mediacenter23
 5677  5911 TS       -   0  19 mediacenter23
 5677  5914 TS       -   0  19 mediacenter23
 5677  6707 TS       -   0  19 mediacenter23
 5677  8705 TS       -   0  19 mediacenter23
 5677  8707 TS       -   0  19 mediacenter23
 5677  8709 TS       -   0  19 mediacenter23
 5677  8711 TS       -   0  19 mediacenter23

 
Code: [Select]
~$ ps -T -eo pid,tid,class,rtprio,ni,pri,comm | grep mediacenter23
17058 17058 TS       -   0  19 mediacenter23
17058 17240 TS       -   0  19 mediacenter23
17058 17241 RR      56   -  96 mediacenter23
17058 17242 RR      46   -  86 mediacenter23
17058 17244 RR      99   - 139 mediacenter23
17058 17302 RR      43   -  83 mediacenter23
17058 17308 TS       -   0  19 mediacenter23
17058 17309 RR      46   -  86 mediacenter23
17058 17310 TS       -   0  19 mediacenter23
17058 17312 TS       -   0  19 mediacenter23
17058 17313 RR      46   -  86 mediacenter23
17058 17367 RR      46   -  86 mediacenter23
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: bob on July 25, 2017, 09:42:47 am
I did this under Debian Buster (Xfce).
It seems that Mediacenter starts and stops much faster.
I can not find any other advantages.
...

Here is an example of what it can help:
https://yabb.jriver.com/interact/index.php/topic,111435.0.html
Title: Re: JRiver Media Center 23.0.21 for Debian Jessie
Post by: Rizlaw on August 04, 2017, 10:25:43 am
I have noticed under 23.0.21 with the new thread priority feature that whenever I move my mouse off the MC window with the spectrum analyzer window open, that the spectrum analyzer goes into slow motion mode. The second I move the mouse cursor back onto any portion of the MC window(s) the spectrum analyzer starts to move in what I will call "normal" time with the music playing.  Is this the way it's supposed to work with thread priorities enabled?

I probably should make this a separate post, but is there any chance that the "now playing" mode can be designed to allow for user placement and sizing of the cover art TOGETHER with a display of the DSP studio spectrum analyzer side by side? Currently, trying to do this with the separate DSP window overlaying a portion of the main MC "now playing" window is a very poor substitute because the minute you click anywhere else on the screen, the DSP window automatically moves behind the main window of MC and disappears. Very inconvenient. I believe I posted about this a long while ago, but never got an answer from the Powers That Be.