INTERACT FORUM

Linux => JRiver Media Center 31 for Linux => Topic started by: jmz on November 07, 2023, 09:32:07 am

Title: Pipewire
Post by: jmz on November 07, 2023, 09:32:07 am
I'm using JRiver on Windows for a few years now. I have only licence for Windows.

I like this app... but would like to try it on Linux with PipeWire.

I have a few questions how to start this.

1. Which Linux distribution will be best (I use Intel NUC 8I5BEH with m.2 nvme for system and 4TB ssd for flac music files)

2. On Windows I use ASIO driver provided by my DAC manufacturer

3. On Linux I would like to try PipeWire

4. Will android app also work with Linux version of JRiver ?

5. I would like to try it first... how long is trial period for JRiver on Linux ?

6. How to upgrade to Master Licence (Each year I purchase early upgrade for Windows from this link)
    https://yabb.jriver.com/interact/index.php/topic,135680.0.html
Tried to use my licence for JRiver 31 to check possible upgrade to Master Licence... but got answer that licence is not recognised for this type of upgrade.

I'm thinking that when I purchase upgrade for JRiver, maybe it would be wise to switch to Master Licence as it is only a few $ more expensive.

Title: Re: JRiver on Linux... how to start.
Post by: bob on November 07, 2023, 03:27:52 pm
I'm not seeing any advantages of implementing pipewire over the existing ALSA low level interface.
Can you point any out?
Title: Re: JRiver on Linux... how to start.
Post by: Awesome Donkey on November 07, 2023, 03:35:23 pm
Technically, unless I'm mistaken (so please correct me if I'm wrong) but it should already go through PipeWire if you have pipewire-alsa and wireplumber installed (which are as far as I know in some distros like Ubuntu and Fedora). Regardless I've had and used PipeWire/WirePlumber for a year now, with an ALSA hw: output in MC, and I don't hear a difference or anything.

Just don't use the Pulse output, that won't be a good time going through the system mixer.
Title: Re: JRiver on Linux... how to start.
Post by: Awesome Donkey on November 07, 2023, 03:44:17 pm
Actually, I take it back. I'm reading the config ALSA (https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Config-ALSA) article on PipeWire's site and it seems pipewire-alsa uses the pipewire: output for ALSA, is that correct? So it doesn't outright override/tunnel all ALSA? Does the pipewire: output even show up as an output in MC? There's a chance even with PipeWire/WirePlumber installed MC doesn't/can't use it, and even if it does show up as an output it's probably not a good idea to use it over other outputs like hw:, front:, plughw:, etc.
Title: Re: JRiver on Linux... how to start.
Post by: bob on November 07, 2023, 03:57:04 pm
Actually, I take it back. I'm reading the config ALSA (https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Config-ALSA) article on PipeWire's site and it seems pipewire-alsa uses the pipewire: output for ALSA, is that correct? So it doesn't outright override/tunnel all ALSA? Does the pipewire: output even show up as an output in MC? There's a chance even with PipeWire/WirePlumber installed MC doesn't/can't use it, and even if it does show up as an output it's probably not a good idea to use it over other outputs like hw:, front:, plughw:, etc.
It doesn't show up in the Audio selections so it's not "replacing" ALSA or pluseaudio.
As far as I can tell reading the pipewire sites it's not a low lever driver.
Title: Re: JRiver on Linux... how to start.
Post by: max096 on November 07, 2023, 04:20:39 pm
It doesn't show up in the Audio selections so it's not "replacing" ALSA or pluseaudio.

Pipewire is ment to be a replacement for pulseaudio. Alsa you are gonna run regardless. There is is a compatibility layer for now pipewire-pulse that will make pipewire compatible with software that works with pulse-audio. It then pretends to be pulse-audio as best it can. If mc canīt use pipewire directly that should work at least.
Title: Re: JRiver on Linux... how to start.
Post by: jmz on November 07, 2023, 04:21:59 pm
I'm not seeing any advantages of implementing pipewire over the existing ALSA low level interface.
Can you point any out?

Curiosity... ?? ;-)

In the meantime I managed to install Debian 12 and JRiver.

So far... so good.

Debian 12 have PipeWire included.

The only problem now is to upgrade to Master Licence... without waiting to April 2024 when I will be able to pre-order JRiver 32 and then I will switch to Master Licence.

Wish to be able do it now...
Title: Re: JRiver on Linux... how to start.
Post by: bob on November 07, 2023, 04:31:37 pm
I followed this guide for Ubuntu 22.04 on my 2009 Macbook pro.
https://ubuntuhandbook.org/index.php/2022/04/pipewire-replace-pulseaudio-ubuntu-2204/

I did have to reboot after following all of the instructions for the pactl info to show the right info.
Then in MC I have an added audio output choice:
pipewire [ALSA]

It works to the built in audio output. I have no idea if anything is different, it sounds the same to me.
Title: Re: JRiver on Linux... how to start.
Post by: jmz on November 07, 2023, 04:34:37 pm
Thank you.

I will stay with Debian for a few moments. Then will try Ubuntu.
Title: Re: JRiver on Linux... how to start.
Post by: bob on November 07, 2023, 04:42:05 pm
Thank you.

I will stay with Debian for a few moments. Then will try Ubuntu.
Debian works just fine for me. I prefer a simpler system, I have been using xfce desktop forever.

I just use Ubuntu on the old Macbook pro for testing. It does have an old NVidia video chipset and Ubuntu handles that much better.
Title: Re: JRiver on Linux... how to start.
Post by: Awesome Donkey on November 07, 2023, 05:43:48 pm
It works to the built in audio output. I have no idea if anything is different, it sounds the same to me.

Is it direct or through the system mixer? Any resampling (e.g. to 48 kHz like PulseAudio)?
Title: Re: Pipewire
Post by: max096 on November 08, 2023, 11:43:59 am
Is it direct or through the system mixer? Any resampling (e.g. to 48 kHz like PulseAudio)?

Using pipewire (alsa) interface it also still gets routed through pipewire. It's the same deal as with the pipewire pulse outputs. The clients thinks it is talking to alsa, but it isn't. It's maybe not what one would expect, but it's useful if you need to run an application that only works with alsa and still want to do virtually anything else sound related at the same time.

Wasnīt 100% sure either. But I did try that. My dac has little blinking lights to show what khz it gets so there is no quality guessing involved here. It does down / upsample to whatever you set your pipewire output to be.

---

If you put multiple allowed clock rates into your pipewire config, pipewire will also switch output khz. But (at least with the pipewire (alsa) output) it's not very consistent about doing that ocassionally it does switch. Most of the time it does not. I think it does stop trying to switch when you have multiple things playing sound (last time I tried this did not work at all ever, now at least it works sometimes). Would be great if that worked consistently. As it is now it does not. Not sure if using pipewire directly would provide a way to force it to switch what it samples to. Having that would be great as it would allow you to have no resampling for music while still being able to use your PC like a normal person. The ability to listen to multiple programs simulaniously isn't really optional unless your PCs existance is dedicated to listening to music. Like, sure do I really need bit perfect background music when talking on discord? Maybe not. But id still prefer to have my cake and eat it too.
Title: Re: Pipewire
Post by: bob on November 09, 2023, 09:03:47 am
Using pipewire (alsa) interface it also still gets routed through pipewire. It's the same deal as with the pipewire pulse outputs. The clients thinks it is talking to alsa, but it isn't. It's maybe not what one would expect, but it's useful if you need to run an application that only works with alsa and still want to do virtually anything else sound related at the same time.

Wasnīt 100% sure either. But I did try that. My dac has little blinking lights to show what khz it gets so there is no quality guessing involved here. It does down / upsample to whatever you set your pipewire output to be.

---

If you put multiple allowed clock rates into your pipewire config, pipewire will also switch output khz. But (at least with the pipewire (alsa) output) it's not very consistent about doing that occassionally it does switch. Most of the time it does not. I think it does stop trying to switch when you have multiple things playing sound (last time I tried this did not work at all ever, now at least it works sometimes). Would be great if that worked consistently. As it is now it does not. Not sure if using pipewire directly would provide a way to force it to switch what it samples to. Having that would be great as it would allow you to have no resampling for music while still being able to use your PC like a normal person. The ability to listen to multiple programs simulaniously isn't really optional unless your PCs existance is dedicated to listening to music. Like, sure do I really need bit perfect background music when talking on discord? Maybe not. But id still prefer to have my cake and eat it too.
It still is pretty raw so it will likely improve. It's not even the default on Ubuntu 22.04.
Like you said, MC is still using ALSA calls but it's talking to pipewire instead.
It's a little like using a plughw: alsa device though since MC's DSP output format controls the output sampling rate but there is also the resampler in pipewire in the chain.
Title: Re: JRiver on Linux... how to start.
Post by: jmz on November 09, 2023, 03:11:17 pm
Debian works just fine for me. I prefer a simpler system, I have been using xfce desktop forever.

I just use Ubuntu on the old Macbook pro for testing. It does have an old NVidia video chipset and Ubuntu handles that much better.

I must say that I hadn't had much experience with Debian.  Now after a few days I like it.

I'm using Debian 12.2 with gnome.

Managed to configure JRiver the same way like I did it under Windows.

The only problem that I have is usb remote control (air mouse) which fully working on Windows but only works as air mouse under Debian.

After a few days I think that sound quality is bit better under Windows (maybe because of dedicated drivers for my USB DAC).
Title: Re: Pipewire
Post by: Awesome Donkey on November 09, 2023, 03:40:44 pm
Well, if you're using the PipeWire output, it's being resampled somewhere in the chain. If you care about bit-perfect audio output, this is a dealbreaker. Try using a hw: or front: output for your DAC instead of pipewire: or pulse: or anything like that.
Title: Re: Pipewire
Post by: jmz on November 09, 2023, 05:18:49 pm
Well, if you're using the PipeWire output, it's being resampled somewhere in the chain. If you care about bit-perfect audio output, this is a dealbreaker. Try using a hw: or front: output for your DAC instead of pipewire: or pulse: or anything like that.

No... I didn't used PipeWire.

I used hw: something ALSA something MY DAC something... direct access and no changes will be made

Another interesting discovery (Windows related) after long time of using ASIO (dedicated and actual driver for my DAC) I switched to WASPI and again... I think that it may sounds bit better.

Title: Re: Pipewire
Post by: rifergom on December 07, 2023, 02:59:00 am
Based on my humble experience, I must say that at least in my case, the sound I get from a Sound Blaster X7 with pipewire, I never got it with windows and the driver of the card. I am using MX Linux 23.1. to which I have added the pipewire and wirepumbler repositories, which ensures that I have the latest software available, and at the time of writing this entry pipewire has been updated to version 1.0.

Server String: /run/user/1000/pulse/native
Library Protocol Version: 35
Server Protocol Version: 35
Is Local: yes
Client Index: 66
Tile Size: 65472
User Name: XXXXXXX
Host Name: XXXXXXX
Server Name: PulseAudio (on PipeWire 1.0.0)
Server Version: 15.0.0
Default Sample Specification: float32le 2ch 96000Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.usb-Creative_Technology_Ltd_Sound_Blaster_X7_0000007J-00.analog-stereo
Default Source: alsa_output.usb-Creative_Technology_Ltd_Sound_Blaster_X7_0000007J-00.analog-stereo.monitor
Cookie: 4a5d:1b30

I don't use any effect, but the connection is direct to the DAC/AMP and from there to the speakers.

https://forum.manjaro.org/t/howto-set-up-a-hi-res-audiophile-usb-dac-cambridge-audio/80724

After that, and I get a clear sound, which together with fast and detailed boxes, results in a more than excellent sound.

https://i.postimg.cc/hG5rsFTX/Jriver31.png




.


Title: Re: JRiver on Linux... how to start.
Post by: jmz on December 22, 2023, 03:31:34 pm
Technically, unless I'm mistaken (so please correct me if I'm wrong) but it should already go through PipeWire if you have pipewire-alsa and wireplumber installed (which are as far as I know in some distros like Ubuntu and Fedora). Regardless I've had and used PipeWire/WirePlumber for a year now, with an ALSA hw: output in MC, and I don't hear a difference or anything.

Just don't use the Pulse output, that won't be a good time going through the system mixer.

I just wanted to find alternative for Windows.

Ended with Debian 12.4 Xfce and ALSA hw

JRiver Media works great... I'm very happy.

But Debian Xfce is a huge pain to configure. I managed today to configure remote controller with almost everything working (except Volume Up and Down).

Now stuck on automatic login, automatic volume mount, and folder share (SMB).