Airplay audio outputs discovery enabled by default

Hey all,
I recently installed Fedora 43 Beta with KDE on my laptop. I use this laptop in a shared campus space and noticed two things:

  • Under System Settings → Sound I see multiple entries like: XXX’s MacBook Pro, YYY’s MacBook Air and so on
  • Discord (Flatpak) frequently prompts me with something like “Would you like to switch your audio output to ZZZ’s MacBook Pro?”

So apparently this is because RAOP/Airplay is enabled by default in Pipewire. My questions are whether:

  1. People should configure their Macs differently?
  2. Discord should be configured to not prompt me every time?
  3. I should report a bug on Fedora because I’m worried that I will one day accidentally output my private audio calls to some strangers laptop?

Also what is the easiest way to disable this device discovery by default and only enable it when I need it?

Thanks

Would also like to know how to disable this.
I don’t mind it being there and detect my AirPlay speaker but when it randomly changes volume on those speaker to 100% it’s stops being fun.

Lost my mind while trying to understand why they were changing volume on it’s own but it stopped when disconnecting LAN from my Fedora PC.

So far I tried disabling that module through .conf file but it’s still getting loaded.

miku@Fedora ~> cat .config/pipewire/pipewire.conf.d/disable-raop.conf
context.properties = {
“module.raop” = false
}
miku@Fedora ~> pactl list modules | grep raop
Name: libpipewire-module-raop-discover
module.name = “libpipewire-module-raop-discover”

Wouldn’t be surprised if my .conf was wrong or something. I referenced this commit

EDIT: I’ve managed to disable the module. TLDR: remove pipewire-config-raop package.

It appears that it’s enabled by a link file that points to /usr/share/pipewire/pipewire.conf.avail/50-raop.conf.

That link file is created by package called pipewire-config-raop. Deleting that package disables that module and Airplay speakers are no longer detected and no longer creating sinks.

This was also one of my not so nice surprise when testing the beta.
For me it was a chromecast speaker that was automatically added, and also with volume set to maximum, which is way louder than usual.

Anyway, another way to disable this “feature” is to create a configuration file for pipewire:

  • system-wide: /etc/pipewire/pipewire.conf.d/noraop.conf
  • user: ~/.config/pipewire/pipewire.conf.d/noraop.conf

I tend to do it system-wide, because looks like gdm can also enable this module on the login screen :slightly_frowning_face:

And have the content for this file be:

context.properties = {
	module.raop = false
}

I use this configuration approach as I’m using a silverblue installation where it’s easier to do it that way that remove a packages from the base image.

From your configuration sample, I see a difference in the way my configuration file is written, with no quotes around module.raop, I do wonder if that might be why your’s is not working ?

2 Likes

I was looking for a way to disable that feature in Fedora 43. Found it. Thanks a lot, @simgal55 ! :slight_smile:

Thanks for this. I stumbled on this problem using OpenAL (openal-soft-devel) in a self-developed C++ program. Listing the available devices would not return, I guess openal was trying to query the complete university network.

const ALCchar *device = alcGetString(NULL, ALC_ALL_DEVICES_SPECIFIER);

This seems so solve the issue, thank you!

Is there a general discussion why this has to be enabled by default?

For me it has 4 Systems to configure, not to turn on my AVR (Marantz SR5011) or switching the actual playback to “Network” if some is watching TV. The ROAP Discovery seems to trigger the AirPlay Implementation on my AVR.

As far as I know, this is the default configuration provided by pipewire.

But it came with Fedora 43. In Fedora 42 I couldn’t see all my Apple HomePods. Also, they weren’t visible in other distributions. They all used pipewire. :thinking:

I was not happy when I found my PC had randomly connected to a TV on my network without my permission and started broadcasting audio.

I’m also getting random devices connecting as audio devices on discord.

This needs to be off by default, and it shouldn’t be enabled again until there is an option to enable/disable it in the GUI. There also needs to be a pop up warning when you are about to broadcast audio to another device that requires the user give permission.

1 Like

Glad that I found this thread. Drives me crazy that my Yamaha AVR automatically turned on and switched to Airplay source suddenly. Today I figured out it was my Fedora desktop PC everytime I started a Steam game. Such a weired thing.

1 Like