If you're using a high-end bluetooth headset on your Macbook Pro it's likely your mac is using an audio codec which favors battery efficiency over high quality. This results in a drastic degradation of sound, the SBC codec is the likely culprit, read more about it here.
- Play a song on your headphones
- Option (⌥) click the Bluetooth button at the top of your screen
- If you're using AAC or aptX, you can stop here—those are the highest quality codecs.
UPDATE: It looks like Apple has silently dropped support for aptX, leaving only AAC
You'll need to download Apple's Bluetooth Explorer in order to change codecs.
-
Head over to Apple's Developer Downloads
-
Search for
additional tools
and downloadAdditional Tools for XCode 11.dmg
-
Click on
Tools > Audio Options
and change your audio codec to the following settings:- Enable AAC
- Force use of aptX
-
Disconnect your Bluetooth headset, reconnect it, and while some music is playing, inspect your codec. It should now show either AAC or aptX.
You can increase the AAC bitrate in Audio Options
but be sure to keep an eye on the graphs. The retransmission percentage is roughly equivalent to packet loss, and if you increase the bitrate too high your audio will start cutting out:
The retransmission rate is a function of distance and interference, and you'll need to disconnect/reconnect on each attempt before you find the sweet spot.
@dvf Thank you for providing this. I have an iMac Pro running macOS Monterey (12.4) and use Sennheiser PXC 550. Following the various instructions above, I am only getting SBC codec. Here is my console info from when the headphones are paired.
The audio quality was poor until I went into Preferences -> Sound -> Sound Effects and set "Play sounds effects through:" to "iMac Pro Speakers" instead of the headphones. Since then, the audio quality is significantly improved.
I also get this error message in Console when the headphones connect:
I wonder if this is a Sennheiser issue, not Apple.