Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use Pipewire/JACK as default backend #11

Open
ssssam opened this issue Dec 11, 2019 · 6 comments
Open

Use Pipewire/JACK as default backend #11

ssssam opened this issue Dec 11, 2019 · 6 comments
Labels
waiting Waiting for a change in a project we depend on

Comments

@ssssam
Copy link
Collaborator

ssssam commented Dec 11, 2019

Using the OSS backend and padsp is a temporary solution. It also shows issues like #10

We might be able to install Pipewire client libraries inside the Flatpak and use PD's JACK backend. This would require that the host system had a new enough Pipewire daemon.

@ssssam
Copy link
Collaborator Author

ssssam commented Mar 25, 2020

In branch sam/pipewire I managed to build Purr Data against the Pipewire JACK emulation library.

There is not yet a portal in https://github.com/flatpak/xdg-desktop-portal/ that would allow the app to connect to Pipewire audio interfaces outside the sandbox, so this work isn't going to go any further yet.

@ssssam
Copy link
Collaborator Author

ssssam commented Mar 25, 2020

Note that the next Freedesktop SDK release will contain builds of JACK and Pipewire. See https://gitlab.com/freedesktop-sdk/freedesktop-sdk/-/merge_requests/2298

@ssssam
Copy link
Collaborator Author

ssssam commented Jul 20, 2020

This issue is blocked on full Pipewire audio support in Flatpak. I think that the missing piece is a portal that would allow the host audio devices into the sandbox. See https://gitlab.com/freedesktop-sdk/freedesktop-sdk/-/issues/1001#note_345838013 for an unanswered discussion...

ssssam added a commit that referenced this issue Jul 20, 2020
We were previously accessing pulseaudio via OSS, but this worked very
badly.

By using the 'pulse' audio device we can work against pulseaudio by
default, and direct hardware access is still available for advanced
users who are willing to give Purr Data exclusive soundcard access.

The OSS and JACK backends are now disabled. Direct access to JACK
from inside Flatpak is unsupported and broken (see
#14) while
Pipewire support is not yet ready (see
#11).

Fixes #10
@ssssam ssssam added the waiting Waiting for a change in a project we depend on label Jul 20, 2020
@ssssam
Copy link
Collaborator Author

ssssam commented Jul 20, 2021

Since #27 it's now possible to use JACK. It's not enabled by default for two reasons.

  1. recent Pipewire on the host is needed, it likely doesn't work in Ubuntu 20.04 yet
  2. PD doesn't autodetect the outputs correctly, it expects an output called 'system' which we don't have.

@ssssam ssssam changed the title Use Pipewire with PD Jack backend Use Pipewire/JACK as default backend Jul 20, 2021
@Pinjontall94
Copy link

Pinjontall94 commented Dec 11, 2021

Is there anything we can do as a workaround to set it as the default?

@ssssam
Copy link
Collaborator Author

ssssam commented Dec 13, 2021

I think we should fix issue #2 in PD before setting it as the default. We should probably also wait until Pipewire 0.3 is available in various LTS distros that ship Flatpak.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
waiting Waiting for a change in a project we depend on
Projects
None yet
Development

No branches or pull requests

2 participants