Hacker News new | ask | show | jobs
by gruez 784 days ago
AFAIK windows gets around this by having audio devices for the A2DP profile (ie. audio output only) and the HFP profile (ie. audio output and input) and having both be active at the same time. The A2DP device is set as the "default device" which means if you play spotify or whatever the audio goes through that and you hear high quality audio. The HFP device is set as the "default communications device", which is what apps like Teams or Zoom is supposed to use, and has shitty audio quality.

> It’s because of the limited bandwidth in Bluetooth that it has to lower the audio quality

It's not a bandwidth limitation. According to google A2DP supports up to 728kbit/s, but SBC (the default codec) only goes up to around 300. Clearly there's enough bandwidth for mid quality input and output streams.

1 comments

It is much more complicated than that. That 700kbit/s figure is theoretical performance under ideal conditions: one device, one host, no interference.

In the real world, you get a lot less bandwidth. In my office building I see 300-400kbit/s of real throughput. The radio also only has one transceiver, if you connect multiple devices, they have to take turns broadcasting which cuts your bandwidth roughly linearly proportional to the number of nodes.

Also remember that Bluetooth and WiFi share the same spectrum. A high power or very busy WiFi network nearby will also drop Bluetooth bandwidth. You also get a precipitous drop in bandwidth if there are other Bluetooth devices nearby, as they all have to share the same spectrum.

There's a lot of effort put into mitigating these problems, but either way the real world performance of Bluetooth is much, much lower than theoretical figures. Streaming useful audio over a link like this is not a trivial problem.

At work, I'm currently trying to cram ten separate audio streams into a Bluetooth link for reasons. We're switching to WiFi.