Re: [ubuntu-studio-devel] Ubuntu Studio on Gnome (23.04)

2023-07-09 Thread Erich Eickmeyer

Hi Ross,

I was following-up on this and what the implications are for Mantic an 
the future. Where the problem lies is that we have no implementation 
for a JACK-PipeWire bridge in the same way that we have a 
JACK-PulseAudio bridge, hence when using JACK proper (as opposed to the 
PipeWire emulation that is now the default), we need to remove PipeWire 
and install PulseAudio. However, it appears as though GNOME development 
has gone toward depending on PipeWire for the sound server and 
deprecating PulseAudio altogether, which is why we're finding ourselves 
in this situation.


However, as I read the PipeWire release notes, it might be unnecessary 
to use PulseAudio altogether and we might be able to deprecate it as 
well. Ubuntu 23.04 contains PipeWire 0.3.65. PipeWire 0.3.71 was 
released on 17 May and contains the following notable highlight:


A new zero-latency jackdbus bridge was added. This works similar to 
what PulseAudio has to offer and creates a sink/source when jackdbus 
is started. It is however much more efficient and runs the complete 
PipeWire graph as a synchronous JACK client with no added latency.


How this works, I'm not quite certain. I'm assuming that, if jackdbus 
is started, that PipeWire simply bridges itself. What's nice is the 
zero-latency bit since we know that PulseAudio adds quite a bit of 
latency.


Another highlight in that release is notable as well:

The JACK notify callback implementation was reworked to emulate 
better what JACK does, improving compatibility with ardour7 and the 
JACK stress test.


This was one of Robin's major concerns. With that, it seems as though 
PipeWire is making great strides toward the Pro Audio space.


Then, a week ago, PipeWire 0.3.72 was released with this notable 
highlights:


A new module-netjack2-driver and module-netjack2-manager were added 
that are compatible with NETJACK2. This allows PipeWire to become a 
NETJACK2 manager or a driver between JACK2 or PipeWire 
servers.Support was added for firewire devices with FFADO. This is 
untested for now and MIDI is not implemented yet.


I know these were items that Len was looking for, so it would be good 
to see these implemented somehow. Len is out until mid-July so once 
he's back I'd love to see some feedback or ideas on this.


For Mantic, I have taken the pieces that switch between the PipeWire 
config an the PulseAudio/JACK config and moved them to their own 
application (called Ubuntu Studio Audio Config). It also allows one to 
configure the PIPEWIRE_QUANTUM variable that sets the buffer and sample 
rate at boot, which currently defaults at 1024/48000 for the greatest 
compatibility. However, if we deprecate PulseAudio, then having the 
metapackages change the configuration would be moot because then all 
that would have to be done is adding/removing a symlink, running 
ldconfig, and a reboot in order to use JACK proper and having it bridge 
to PipeWire. That might take me doing some experimentation.


Anyhow, this is what I'm thinking Mantic (23.10) since, if it works, it 
would improve compatibility across all platforms and we wouldn't have 
to worry about the adding/removing of whole packages in order to avoid 
major conflicts like we are having to do in 23.04.

--
Erich Eickmeyer
Project Leader - Ubuntu Studio
Technical Lead - Edubuntu

On Sun, Jul 9 2023 at 08:22:13 AM -07:00:00, Erich Eickmeyer 
 wrote:

Hi Ross!

I see what's going on. They made pipewire-audio a hard Depends of 
ubuntu-desktop. pipewire-audio itself is a metapackage which has a 
hard Depends on pipewire-alsa. ubuntu-desktop having a hard Depends 
on pipewire-audio seems wrong. Unfortunately, I have no good fix for 
that.


However, it does seem as though it's not removing anything critical, 
so that's the good news, just the ubuntu-desktop metapackage. 
However, I do wonder why they made pipewire-audio a hard Depends as 
opposed to a Recommends.


Either way, what you have should still work. It looks scarier than it 
is, but it's still working exactly the way I designed it to work.

--
Erich Eickmeyer
Project Leader - Ubuntu Studio
Technical Lead - Edubuntu

On Sun, Jul 9 2023 at 10:53:37 AM +02:00:00, Ross Gammon 
 wrote:

Hi All,

As you may remember, one of my machines runs plain Ubuntu, has a 
spare USB Audio device plugged in, and I have been testing Ubuntu 
Studio on top of Gnome (ubuntustudio-installer did this for me 
several releases ago).


Last night I upgraded to 23.04 and as expected, saw that Studio 
Controls was removed. Running ubuntustudio-installer to install 
ubuntustudio-pulseaudio-config failed. To try and understand what 
might have gone wrong, I tried to install us-pulse*-config on the 
command line. It (apt) was going to remove ubuntu-desktop which I 
thought was a bad idea and said "no":


~$ sudo apt install ubuntustudio-pulseaudio-config
...
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were 

Re: [ubuntu-studio-devel] Ubuntu Studio on Gnome (23.04)

2023-07-09 Thread Erich Eickmeyer

Hi Ross!

I see what's going on. They made pipewire-audio a hard Depends of 
ubuntu-desktop. pipewire-audio itself is a metapackage which has a hard 
Depends on pipewire-alsa. ubuntu-desktop having a hard Depends on 
pipewire-audio seems wrong. Unfortunately, I have no good fix for that.


However, it does seem as though it's not removing anything critical, so 
that's the good news, just the ubuntu-desktop metapackage. However, I 
do wonder why they made pipewire-audio a hard Depends as opposed to a 
Recommends.


Either way, what you have should still work. It looks scarier than it 
is, but it's still working exactly the way I designed it to work.

--
Erich Eickmeyer
Project Leader - Ubuntu Studio
Technical Lead - Edubuntu

On Sun, Jul 9 2023 at 10:53:37 AM +02:00:00, Ross Gammon 
 wrote:

Hi All,

As you may remember, one of my machines runs plain Ubuntu, has a 
spare USB Audio device plugged in, and I have been testing Ubuntu 
Studio on top of Gnome (ubuntustudio-installer did this for me 
several releases ago).


Last night I upgraded to 23.04 and as expected, saw that Studio 
Controls was removed. Running ubuntustudio-installer to install 
ubuntustudio-pulseaudio-config failed. To try and understand what 
might have gone wrong, I tried to install us-pulse*-config on the 
command line. It (apt) was going to remove ubuntu-desktop which I 
thought was a bad idea and said "no":


~$ sudo apt install ubuntustudio-pulseaudio-config
...
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were automatically installed and are no longer 
required:

  libwireplumber-0.4-0 qpwgraph
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
  libasound2-plugins libpulsedsp pavucontrol pipewire-media-session 
pulseaudio

  pulseaudio-module-bluetooth pulseaudio-module-jack pulseaudio-utils
  python3-alsaaudio python3-cffi python3-jack-client python3-pycparser
  studio-controls zita-njbridge
Suggested packages:
  pavumeter paprefs
The following packages will be REMOVED:
  pipewire-alsa pipewire-audio pipewire-jack pipewire-pulse 
ubuntu-desktop

  ubuntu-desktop-minimal ubuntustudio-pipewire-config wireplumber
The following NEW packages will be installed:
  libasound2-plugins libpulsedsp pavucontrol pipewire-media-session 
pulseaudio

  pulseaudio-module-bluetooth pulseaudio-module-jack pulseaudio-utils
  python3-alsaaudio python3-cffi python3-jack-client python3-pycparser
  studio-controls ubuntustudio-pulseaudio-config zita-njbridge
0 upgraded, 15 newly installed, 8 to remove and 0 not upgraded.
Need to get 142 kB/1,906 kB of archives.
After this operation, 8,530 kB of additional disk space will be used.
Do you want to continue? [Y/n]

I have not looked into the dependencies to see if there is a way to 
untangle this. Instead, I was wondering if it was worth playing with 
the pipewire setup. It is a test setup after all! Does anyone know of 
any good guidance on the workflows in this set up? What would I use 
to help all of the routing between pipewire, jack, and how to use 
Ardour/Hydrogen/Carla etc.?


From the packages listed for removal above, I assume that wireplumber 
in the answer?


I did see some discussion on LAD, but I was hoping for some blog with 
easy instructions, screenshots etc. :-)


Cheers,

Ross

--
ubuntu-studio-devel mailing list
ubuntu-studio-devel@lists.ubuntu.com 

Modify settings or unsubscribe at: 



-- 
ubuntu-studio-devel mailing list
ubuntu-studio-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-studio-devel


[ubuntu-studio-devel] Ubuntu Studio on Gnome (23.04)

2023-07-09 Thread Ross Gammon

Hi All,

As you may remember, one of my machines runs plain Ubuntu, has a spare 
USB Audio device plugged in, and I have been testing Ubuntu Studio on 
top of Gnome (ubuntustudio-installer did this for me several releases ago).


Last night I upgraded to 23.04 and as expected, saw that Studio Controls 
was removed. Running ubuntustudio-installer to install 
ubuntustudio-pulseaudio-config failed. To try and understand what might 
have gone wrong, I tried to install us-pulse*-config on the command 
line. It (apt) was going to remove ubuntu-desktop which I thought was a 
bad idea and said "no":


~$ sudo apt install ubuntustudio-pulseaudio-config
...
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were automatically installed and are no longer 
required:

  libwireplumber-0.4-0 qpwgraph
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
  libasound2-plugins libpulsedsp pavucontrol pipewire-media-session 
pulseaudio

  pulseaudio-module-bluetooth pulseaudio-module-jack pulseaudio-utils
  python3-alsaaudio python3-cffi python3-jack-client python3-pycparser
  studio-controls zita-njbridge
Suggested packages:
  pavumeter paprefs
The following packages will be REMOVED:
  pipewire-alsa pipewire-audio pipewire-jack pipewire-pulse ubuntu-desktop
  ubuntu-desktop-minimal ubuntustudio-pipewire-config wireplumber
The following NEW packages will be installed:
  libasound2-plugins libpulsedsp pavucontrol pipewire-media-session 
pulseaudio

  pulseaudio-module-bluetooth pulseaudio-module-jack pulseaudio-utils
  python3-alsaaudio python3-cffi python3-jack-client python3-pycparser
  studio-controls ubuntustudio-pulseaudio-config zita-njbridge
0 upgraded, 15 newly installed, 8 to remove and 0 not upgraded.
Need to get 142 kB/1,906 kB of archives.
After this operation, 8,530 kB of additional disk space will be used.
Do you want to continue? [Y/n]

I have not looked into the dependencies to see if there is a way to 
untangle this. Instead, I was wondering if it was worth playing with the 
pipewire setup. It is a test setup after all! Does anyone know of any 
good guidance on the workflows in this set up? What would I use to help 
all of the routing between pipewire, jack, and how to use 
Ardour/Hydrogen/Carla etc.?


From the packages listed for removal above, I assume that wireplumber 
in the answer?


I did see some discussion on LAD, but I was hoping for some blog with 
easy instructions, screenshots etc. :-)


Cheers,

Ross

--
ubuntu-studio-devel mailing list
ubuntu-studio-devel@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-studio-devel