Android 8.0 Oreo brings with it a host of new features, improvements, and overhauls to the core Android feature set. Personally, I thought that the introduction of more Bluetooth audio options was one of the more interesting revelations while digging through the Android O Preview builds, and it turns out that Android 8.0 Oreo has much more in store for audio functionality. Let’s take a look.
Better audio options for apps
First up, Android 8.0 introduces a number of new options for app developers to improve the audio experience within their apps. The end result should be some more creative uses of audio inside the apps on your phone. Let’s take a look at a few new possibilities.
The new VolumeShaper class can be used to introduce fade-in, fade-out, cross fade, and other audio track transitions within an app, so audio transitions should sound smoother. Apps that temporarily request audio focus can now make use of the new AudioFocusRequest class, which introduces automatic ducking to quieten other apps, such as music or video running in the background, rather than completely pausing them or having to call the app when a foreground app temporarily plays some audio. So in Android O, when another application requests audio focus the system can duck and restore the volume without calling the app.
Foreground and background app audio should play together a little nicer in Oreo, with fade-ins and outs, and the introduction of automatic background ducking.
The new delayed focus gain also enables apps to wait for focus before commencing playback, so there should be less conflict when multiple apps vie for focus. Of course, this is up to developers to implement in their specific apps, but the general gist is that transitions and audio playing from multiple sources should be smoother with Oreo compared with Nougat.
Android 8.0 also introduces several new methods for the MediaPlayer class, which for us users mean that we’ll now have some better playback options to use for audio and video. There’s the introduction of fine-grained control when seeking to a specific frame, along with the ability to playback DRM-protected material and files with sample-level encryption, which can be used with H.264, AAC, and AC-3 file types.
Bluetooth codecs galore
Ok, with that out of the way this is the bit you probably really care about. Android 8.0 Oreo includes the ability to manually select your prefered Bluetooth audio codec, where available. Simply put, a codec is the communication and compression technology used to send audio over the air, but each codec varies differently in quality and can only be used with compatible pieces of hardware, such as speakers or headphones.
Previously in Android Nougat, users had no way of configuring what Bluetooth codec was used if multiple options were available. Instead it was left up to the phone and wireless accessory to negotiate the default option. Although it would usually negotiate the highest quality option available, it didn’t let you pick and choose.
Sony's LDAC is integrated into the Bluetooth stack, and users are able to pick their preferred Bluetooth codec.
With Oreo, Sony’s LDAC codec has been integrated into the Bluetooth stack, meaning that it’s available for all handset manufacturers to make easy use of. Of course, its inclusion in Android is a big boost for the profile of Sony’s proprietary codec and was likely motivated by potential sales of compatible Sony headphones and speakers. However, a certification process still looks to be required for Android OEMs looking to use LDAC.
Everything you want to know about Qualcomm’s aptX Bluetooth codec
Android 8.0 Oreo’s Bluetooth codec menu offers up SBC, ACC, aptX, aptX HD, and LDAC options out of the box, which is pretty much the order many consider them in terms of quality (SBC being the lowest). However, OEM implementations of Oreo may change these options and you’ll need compatible playback hardware on the other end of the connection too. Regardless, here’s a quick overview of what each of these codecs offer:
- SBC – the standard mandatory Bluetooth audio codec. Can vary greatly in quality depending on the capabilities of the connected hardware. Adds significant lossy compression in many cases, as its bit rate ranges between 192 and 320 kbps.
- AAC – A popular license-free lossy codec used by many services, including YouTube. Wireless version typically supported by Apple products. Standard 250 kbps transmission offers compression comparative to a high-quality MP3.
- atpX – Qualcomm’s proprietary codec that uses differential sub-band transmission to save on data-rate, unlike ACC or MP3. Offers a fixed 4:1 compression ratio versus CD quality files, transferring at 352 kbps.
- aptX HD – a higher quality version of aptX that offers support for 24-bit files at 48 kHz. Is still lossy, but transmits more data at 576 kbps.
- LDAC – Sony’s proprietary Bluetooth codec. Like SBC, it comes in a selection of quality options but these range from 330 kbps up to 990 kbps, meaning it potentially transfers the most data out of every Bluetooth audio codec available. The highest quality option supports 24-bit, 96 kHz audio.
On top of simply being able to pick your preferred codec, popping into the Developer Options allows advanced users to toggle a few extra settings. There’s the ability to select the Audio/Video Remote Control Profile (AVRCP) from version 1.4 to 1.6, and override codec sample rates between 44.1 and 96 kHz and bit depth between 16 and 32 bits. But most users won’t want or need to tweak these options themselves. There’s also an option to manually select the LDAC quality option between 330, 660, and 990 kbps modes, but again it’s probably best to leave the system to pick these based on your connection quality.
Android 8.0 Oreo doesn’t present a major overhaul of the way that audio is handled in Android, but it does introduce a number of quality of life improvements that will improve the user experience, as well as allowing app developers to accomplish better results. With apps making use of fade-ins/outs and the introduction of ducking rather than hard muting, Android 8.0 will surely sound better than ever. And that’s before we even get to the more configurable Bluetooth codecs and the introduction of LDAC into AOSP.
Don’t forget to check out our other articles in this series: