Multiple devices don't play audio due to incompatibility with AirPlay 2

Roon Core Machine

Doesn’t matter in this problem

Networking Gear & Setup Details

Orange Funbox 6 - Wi-Fi - No VPN

Connected Audio Devices

Soundbar Samsung HW-Q800B connected to the Wi-Fi

Number of Tracks in Library

Doesn’t matter in this problem

Description of Issue

The soundbar connects to Roon and gets recognized, but after clicking Play, no sound is coming out of it. After going through the threads I’ve noticed that that’s caused by Roon not supporting Airplay 2.
I am sure that thousands of various speakers/soundbars need that to function correctly with Roon, and as a Premium software, this should be adressed ASAP.

Regarding Airplay 2, you have to discuss this with Apple.

As of macOS 10.14, there is no public API for third-party developers to integrate AirPlay 2 into their macOS apps. However, there are third-party streamers such as Airfoil. In May 2019, a third-party developer released a macOS app that can stream audio using AirPlay 2.[14] The app includes a helper tool called “AirPlay Enabler” that uses code injection to bypass restrictions to the AirPlay 2 private API on macOS.[15]

From AirPlay - Wikipedia
(The mentioned hacks with code injection are probably not something Roon wants to or can do for good reasons)

Like all other third parties using Airplay, Roon supports Airplay 1. So if your soundbar wants to be compatible with non-Apple devices, it’s on them to support the compatible option.

1 Like

I don’t think that’s correct. Judging by the available products and their literature, third parties have access to AirPlay 2. Airfoil will even sync across mixed AirPlay 1 and AirPlay 2 network devices. Sonos and other hardware manufacturers use AirPlay 2.
If you’re a purist, you won’t like this idea, but if you use Airfoil, you are far less likely to have the networking problems common to Roon. In my experience, Airfoil’s networking is far more robust.

I’m not sure it will do hires audio, but it does PCM at 44.1 and 48kHz If you want to know more, just send them an email; they usually respond within 24 hours.

Pipe Roon into Airfoil and send to whatever AirPlay devices you want, and control grouping and volume with your iPhone/Android/iPad/Mac/Windows. Works with Chromecast and Bluetooth as well, including syncing. $30.

Yeah, like I quoted, apparently by injecting code. That’s not a decision one makes light-heartedly, and there is probably a reason it’s pretty much limited to Airfoil.

Sonos are not comparable because they were Apple partners before Apple had their own speakers and have a special relationship with Apple that lets them do things nobody else can.

If one wants to go with Airfoil, it’s an option and just fine. Nevertheless, the OP’s ire should be directed at Apple for the missing Airplay 2 API and at the manufacturer of their soundbar for not providing the compatible option that works for all third-party Airplay devices.

Ok. Maybe it’s a code injection. Calling a well-established piece of software, from a company that’s been around for 22 years a 'hack" seems inaccurate and kind of rude. The iPhone app is available on the Apple App Store, so it meets all of their requirements. There is no reason to think that it is in any way dangerous.

Oh, and if Roon wanted to get AirPlay 2 working, they could license the tech from RA.

Injecting code is a hack, in the original sense of the word. Not every hack is necessarily malicious, it’s just a similar technique as malware also uses.

The company that created Airfoil called itself Rogue Amoeba, and its best-known product is called Audio Hijack, so I doubt they would object to my use of the word hack.

It’s not necessarily dangerous, but it’s not problem-free by principle and can be a lot of work for the developer. The place where I work has a product that requires code injection into Microsoft Office, for the same reason of missing APIs, and doing this - and keeping it working - for many different Office versions (2010, 2013, 2016, 2019, 2021, and 365 with weekly updates over 6 different update channels) is a full-time job for 4 highly-skilled developers. On top of that you then have to deal with a 100 different security tools that object to code injection precisely because it’s a common malware technique.

There’s a reason why usually APIs with public and stable interfaces are used to speak to other software, and not binary code injections.

Sure, they could get a license from RA, and thereby make significant functionality depend on a third-party. It may be possible (I don’t know the technical details) but it’s a judgement call, and it’s a acceptable for a developer not to want to do that.

The point stands that the culprits here are Apple and the soundbar manufacturer

Also, the iOS app on the App Store says that it’s just a receiver, so that’s not the same thing. The sender part is only available for macOS and only from the developer website and not the App Store.

1 Like

Ok. Explain it how you like. It’s stable, it works, and it can be licensed.

A receiver that clearly is meant to work with a transmitter. It’s not as if Apple doesn’t know what it is and how it works.

I explain it based on what I know from 2 decades of binary code injection in a commercial product with more than a million subscription users

Obviously. The point is that on iOS you probably can’t do code injection without jail breaking the OS, which they don’t do, so the fact that an iOS app exists is irrelevant regarding the practical complexities of injection

1 Like

How does Qobuz do it? It will send to Airplay 2 from any Apple device.

from any Apple device. Any device is apparently eligible to act as an AP2 receiver, but senders must be Apple devices. However, Nucleus, ROCK, and Roon servers on Windows and Linux are not Apple devices.

1 Like

Right. So, why can’t Roon do that? It will serve from a Mac.

Huh? Roon must be able to send from non-Apple devices?

Edit:

Oh you mean Roon should splinter its offer in a way so that not every Roon server can send from all devices, and if you need Airplay 2 you must run Roon on an Apple computer?

That would be a lot of forum fun :slight_smile: I mean, it’s a business and development decision that they may or may not want to make. It’s certainly not a no-brainer without issues, and there are good reasons not to do it.

Why would it be exclusive? Qobuz has a windows app that doesn’t do Airplay 2 without a secondary app.

Being an AP2 sender? I think you must ask Apple about that?

1 Like

I don’t know what this means

Forget it. This conversation is pointless.

Your choice. Is this your proposal?

So far I haven’t heard an argument that was as convincing as the choice of words wants to make it seem

Are we sure these are Airplay 2 only clients. They whole Airplay thing is supposed to be backwards compatible is it not?

Roon cant use Airplay 2 unless it switched to System Airplay which it would have no control over and it would only work on MacOS Roon servers.

1 Like