Better Mac Bluetooth Audio for Sony WH-1000XM2

August 29, 2019
mac bluetooth WH-1000XM2

As Bluetooth headphones become more and more common, it may be interesting to know that Macs do not give you the best Bluetooth audio codec by default.

There are three main audio codecs that are used for audio transmission between a device and a Bluetooth headset:

SBC:

This is an abbreviation for Subband Codec. This is the standard audio coding technology used by BLUETOOTH devices. All BLUETOOTH devices support SBC.

AAC:

This is an abbreviation for Advanced Audio Coding. AAC is mainly used by Apple products such as iPhones, and it provides higher sound quality than that of SBC.

aptX:

This is an audio coding technology. aptX is used by some Android smartphones, and it provides higher sound quality than that of SBC.

Source: https://helpguide.sony.net/mdr/wh1000xm2/v1/en/contents/TP0001513209.html

To see which codec is being used when you’re listening to audio over Bluetooth, hold the βŒ₯ (alt/option) while clicking on the Bluetooth symbol in the Mac taskbar. Hover over your Bluetooth headset to see the codec that is being used (you must be playing audio to see a codec in the menu).

Mac Bluetooth Audio SBC Codec

It’s likely you’ll see the SBC codec being used. As described above, both the AAC and aptX codecs will give you higher quality audio than SBC. Now, there are plenty of existing articles that will advise you on how to force your Mac to use a different codec by using a Bluetooth helper app that is part of the Xcode tools, or by running some commands on the command line.

Since downloading the Bluetooth helper app is a convoluted process that involves signing up for a developer account with Apple, let’s go with the command line approach:

sudo defaults write bluetoothaudiod "Enable AptX codec" -bool true
sudo defaults write bluetoothaudiod "Enable AAC codec" -bool true

This is where most existing guides on the subject stop, but if you have a pair of Sony WH-1000XM2 (and possibly WH-1000XM3s as well), there might be an extra step required before your headset will use the newly-enabled codecs.

Connect your headphones to your phone via Bluetooth, and then open up the Sony Headphones companion app.

(If you don’t have the Sony Headphones app installed, you can get it for Android here and iOS here.)

Sony Headphones app open page

Depending on your settings, you may see that your phone is also using the SBC codec when sending audio to your headphones.

To confirm that your headphones are enabled to use higher-quality codecs like AAC or aptX from your Mac, you need to scroll down to the Sound Quality Mode section, click the little drop-down arrow and select the Priority on Sound Quality option.

Sony Headphones app Sound Quality Mode

If you are changing the setting from Priority on Stable Connection, you’ll get a little popup, warning you that the headphones will have to restart and reconnect to your device. This is fine, so click OK.

Sony Headphones app popup

Scroll back up to the top of the app and you might see that your headphones and device are now using a new codec - LDAC in my case.

Sony Headphones app new codec

(LDAC is a Sony-designed codec for hi-res audio. As far as I’m aware it’s not available on Apple devices, so you’ll likely only see LDAC as the codec if you’re using an Android device - I have a Samsung S7, so it’s not limited to Sony phones)

Reconnect your headphones to your Mac, start playing some audio and do the hold-βŒ₯-while-clicking-Bluetooth-icon trick to see which codec is now being used. Hopefully you will see aptX or AAC!

Mac Bluetooth Audio AAC Codec

Enjoy your better quality audio! 🎢🎧