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

pipewire support #3212

Open
totaam opened this issue Jul 21, 2021 · 6 comments
Open

pipewire support #3212

totaam opened this issue Jul 21, 2021 · 6 comments

Comments

@totaam
Copy link
Collaborator

totaam commented Jul 21, 2021

Fedora 34 switched to pipewire and the pulseaudio command is no longer installed.
This obviously breaks our audio forwarding plumbing.

It looks like we can tell the pipewire deamon where to look for its configuration using PIPEWIRE_CONFIG_NAME:
https://docs.pipewire.org/page_daemon.html

It's not clear at this point how easy it will be to allow multiple daemon instances per user. If that's even possible.
As for API, there is pipewire_python - not sure how complete it is.

@totaam
Copy link
Collaborator Author

totaam commented Sep 18, 2021

It doesn't look ready to support our use-case:
https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/862

It's not clear to me how clients locate the socket or how we could have multiple daemons for a single user without running each session with a different $XDG_RUNTIME_DIR: Clients (including the page_session_manager) are separate processes that talk to the daemon using the PipeWire socket (default: $XDG_RUNTIME_DIR/pipewire-0)
Do we also have to figure out how to use https://pipewire.pages.freedesktop.org/wireplumber/ ?

@ScanCaster
Copy link

FYI : More bad news: *buntu 22.10 will make this "change" :( :( :(
https://www.omgubuntu.co.uk/2022/05/ubuntu-22-10-makes-pipewire-default
"The latest daily builds of the development release (which is codenamed ‘Kinetic Kudu’) ship with Pipewire in place of Pulseaudio out of the box, no workarounds required. The last time Ubuntu made made a major change to its audio stack was (fittingly) in the last ‘K’-named release, Ubuntu 9.10 ‘Karmic Koala’."

Don't know if this will back channel up to Debian.....

@totaam
Copy link
Collaborator Author

totaam commented Jun 5, 2022

@ScanCaster On Fedora you can just dnf install pulseaudio to make things work again.
The same thing should work on Ubuntu / Debian after the switch.

@totaam
Copy link
Collaborator Author

totaam commented Mar 26, 2023

We have some initial pipewire support: #3750 (comment)

@jiang-qian
Copy link

Does this one work for the latest version of xpra? I am running on Debian 12, and when I tried to enable audio forwarding by installing xpra-audio it asked me to install pulseaudio. But if I try to install pulseaudio it asks me to uninstall pulseaudio as well as gnome-core, which I of course hesitates to do for the fear of actually breaking my existing audio and desktop...

Is there a way to forward audio from a remote desktop on debian without breaking things? It used to work so easily when everything was simply pulse audio!

@totaam
Copy link
Collaborator Author

totaam commented Mar 9, 2024

Audio forwarding can only work with pulseaudio.
I believe that pipewire still does not support multiple sessions per user, and even if it did, this would require some work to hook up - and probably require user interaction to enable (the same way video does) which is not a great user experience.

It used to be a simple case of installing pulseaudio to replace pipewire but perhaps the new gnome dependencies prevent that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants