Part of the large pushback against the removal of 3.5 mm headphone jacks from smartphones is because of the experience that Bluetooth audio is not known for. To be fair, audio equipment makers have stepped up their game and improved the quality of speakers and headsets in response to that new market trend. Unfortunately, things aren’t as rosy on the platform side of things, with Android sometimes exhibiting glitchy or skipping Bluetooth audio. That could very well change soon, based on this latest Android source code change that gives Bluetooth audio playback higher priority when it comes to CPU processing.
The multi-tasking capabilities of processors, smartphones, and computers is largely a lie. At its most basic level, the CPU doesn’t exactly perform multiple processes at the same time. Instead, it switches between them one at a time but does so at such a fast speed that it seems that it is indeed doing them at the same time.
Any human multitasker would know how crazy and ironically inefficient things can get when you’re doing multiple things haphazardly. In other words, you still need to prioritize which tasks should get done first. The CPU is no different, and so operating systems have scheduling features that ensure that important processes get dibs on the CPU first, delaying less important ones for later.
The problem is that Bluetooth audio on Android doesn’t have that priority. In the grand scheme of things, it might really be just secondary. But when you’re playing audio, especially when Bluetooth audio is the only output channel, then it definitely becomes critical to the user experience.
A recently made change to the Android Open Source Project (AOSP) gives Bluetooth audio playback “real-time” CPU scheduling priority. Again, it’s not really real-time, but since the processing task for Bluetooth audio playback happens sooner rather than later, it does feel like it’s happening in real time. That should take of the perceived latency, skipping, and glitches that happen when Bluetooth audio playback gets shoved out of its CPU queue by VIPs.
The question now is when will this important change be released. Google has just made available the developer preview for Android 8.1, and it wasn’t yet there. That said, given how reliant the Pixel 2 and Pixel 2 XL are on Bluetooth audio, it should be a top priority for Google as well.