The asics generally don't support concurrent connections from different devices, with a few exceptions, and so there's a lot of scaffolding that has to be broken down and stood up when switching devices. It's not unlike HTTP over TCP. There probably needs to be a SPDY for Bluetooth.
Some semiconductor manufacturer could really steal the market by making a bluetooth asic with an audio muxer that supports multiple concurrent protocols and can effectively blend the audio while also maintaining multiple concurrent host connections.
From a UX perspective, this presents problems with situations like listening to music on a headset connected to a PC when an audio call comes from your phone. Does the headset duck A2DP? Send PAUSE over AVCTP if available? Just MUX the audio streams and let you sort it out? What do device controls control when connected to two devices?
Another issue with Bluetooth is that hosts generally don't surface useful controls for prioritizing devices or protocols. So in the case of being paired with multiple A2DP devices, a host will usually only automatically connect to the last one used and you have to explicitly connect to others. This is annoying if you regularly transition between Car and Headphones.
There's also an issue of multiple hosts connecting to the same client and prioritization. Hosts tend to open and hold onto a connect even when they're not doing anything because of the scaffolding involved in a connection. That means if you have two phones and one car, only one will work and if you want to use the other one then it requires terminating the other host's connection, usually on that host device.
Start by listening to something on my iPhone. Sit down and turn off music on my iPhone. Open up my laptop. It unlocks with my Apple Watch. I pop open iTunes or Spotify, hit play with my Air Pods still in. This could also work with my iPad as well. I open my iPad, stop playing stuff on my iPhone, and start playing something on my iPad. I shouldn't have to swap.
Apple knows it's me and knows which device I'm actively using.
I could be using the MBP and want to hear music from the iPhone though.
For example, let's address your concern with my comment.
"Start by listening to something on my iPhone. Sit down and continue to listen to my music on my iPhone. Open up my laptop. It unlocks with my Apple Watch. I pop open iTunes or Spotify, hit play with my Air Pods still in. Since my iPhone is still playing music, Apple should stick with my iPhone."
For certain short bursts of audio, or depending on the source of the audio (transient system sound, unprompted audio, ring tone, etc.) the paused device can auto-resume when the interrupter is done playing.
For sitting at a new device starting the same “type”of audio stream perhaps you would not auto-resume the paused feed when the new feed stops.
For something like Spotify, opening your MacBook should transfer the stream completely seamlessly from your iPhone as a way to save battery. The same song should never stop playing even for a millisecond (the switchover should be imperceptible) and the UI should sync the current playlist between all iCloud devices.
When you open your Mac you should be able to see the Spotify that was playing on your iPhone right there and click pause if you want. It shouldn’t really be perceptible to the user “where it’s coming from”, it should just work.
I could live with that. As long as it's consistent.
I don't quite understand, is there some mental gymnastics being done to figure out the device you're using isn't the device playing music? Shouldn't matter anyway, since you have completely playback control either from your Apple Watch or the AirPods themselves.
Because I'm not watching the new trailer on my iPhone when sitting at my computer.
> What's with the "concern" that your music is playing from a single device?
It's not. It's that I'm playing some media I want to hear on a certain device.
> I don't quite understand
You don't, so assuming it's some mental gymnastics is rude. Don't be rude.
> Shouldn't matter anyway, since you have completely playback control either from your Apple Watch or the AirPods themselves.
You don't.