INTERACT FORUM

More => Old Versions => JRiver Media Center 20 for Windows => Topic started by: AlexSind on November 26, 2014, 11:13:23 am

Title: Performance Robustness: JRiver vs Foobar2000
Post by: AlexSind on November 26, 2014, 11:13:23 am
Hello!
I'm in the process of switching from Foobar2000 to JRiver (not due to SQ, which is identical to my ears, but because I like JRiver's features and GUI).
I've recently solved (I hope for good) an occasional sound dropout issue with JRiver related to Windows Defender (for which I'm idebted to JRiver's wiki and Forum posts). However, this issue never occurred with Foobar2000. This made come up with a few related questions. I'd appreciate any thoughts on the below topics.
1) Foobar2000 allows one to set high CPU priority for its spawned threads (under Options --> Playback --> Advanced). JRiver has no such options. Is this because it's already optimized in this respect? As an example, I noticed that when I use the WASAPI event style in Foobar, it starts a new Windows process called WASAPIHost64 (or something to this effect), and this process gets a higher than Normal CPU priority. JRiver does not start a separate process.
The main reason I ask this question: does it make sense to try to increase CPU priority of some of JRiver related processes, to avoid potential sound dropouts in the future? But I'm also curious why Foobar's WASAPI gets dedicated Windows process initiated upon playback. Which implementation is better for performance and isolation from other 3rd party processes that may interfere with WASAPI playback?
2) Foobar2000's output buffer can be set up to 20 seconds. JRiver's - to, at most, 500ms. Why is this huge difference in allowed range? Or does Foobar's output buffer really correspond to JRiver's PRE-buffering, which can also be set up to 20 seconds? My understanding is that a bigger output buffer may improve stability.
Sorry for the long post. I may be trying to peek under the hood, which I'm not supposed to do. But getting an insight into these matters will make my transition to JRiver more comfortable.
Title: Re: Performance Robustness: JRiver vs Foobar2000
Post by: Matt on November 26, 2014, 12:09:23 pm
Is this because it's already optimized in this respect?

Yes, the threads are all ideally scheduled.


Quote
The main reason I ask this question: does it make sense to try to increase CPU priority of some of JRiver related processes, to avoid potential sound dropouts in the future?

No.  Increase buffering if you're having sound drop outs.


Quote
2) Foobar2000's output buffer can be set up to 20 seconds. JRiver's - to, at most, 500ms. Why is this huge difference in allowed range? Or does Foobar's output buffer really correspond to JRiver's PRE-buffering, which can also be set up to 20 seconds? My understanding is that a bigger output buffer may improve stability.

There are two types of buffering: prebuffering and hardware buffering.  You can set both in MC.
Title: Re: Performance Robustness: JRiver vs Foobar2000
Post by: pineim on December 03, 2014, 07:02:57 pm
Uhm First post, long time subscriber, Thank you for the wdm driver, think I have almost perfect sound? never enough but getting closer. Thank you.
Title: Re: Performance Robustness: JRiver vs Foobar2000
Post by: Matt on December 03, 2014, 08:22:01 pm
pineim, thanks for taking the time for the warm message.  Welcome.