Android Patch Brings Bluetooth SBC Codec Audio Quality on-par with aptX

In the context of CNX Software’s topics, SBC usually stands for “Single Board Computer”, but SBC also stands for “SubBand Codec“, a standard and mandatory Bluetooth codec which is supported by all headphones, portable speakers, car head units, and basically everything that plays audio over Bluetooth.

SBC is known as a basic and low-quality Bluetooth codec, so people will often recommend using other codecs such as aptX, AAC or LDAC wherever possible, but ValdikSS has submitted a patch for Android which improves Bluetooth SBC codec audio quality on most existing devices, allegedly making it as good as the high quality aptX HD codec.

Bluetooth configuration with HD audio: SBC option

ValdikSS explains this basically works by increasing the bitrate:

My patchset bypass Android Bluetooth stack limitations and increase bitrate from stock 328 kbps to 452 or 551 kbps, depending on device speed capabilities. It’s already merged into LineageOS 15.1 and 16.0, Resurrection Remix and crDroid alternative Android firmwares.

You’ll get the full detailed technical explanation in “Bluetooth stack modifications to improve audio quality on headphones without AAC, aptX, or LDAC codecs” post which also links to another interesting post providing in-depth information about profiles, codecs, and devices used by Bluetooth audio applications. You’ll also learn that the great differences claimed between codecs are mostly a myth and that Bluetooth 5 support does not bring anything to audio transmission.

ValdikSS patchsets are for Android 8.1 and Android 9.0, but he also told CNX Software those audio quality modifications could be also used on Windows with Toshiba Bluetooth stack, and on Linux with a patch for PulseAudio.

Bluetooth A2DP SBC/aptX online encoder

If you’re not quite ready to test it on your phone, you can compare SBC dual channel audio quality against the traditional SBC joint-audio and aptX right in your web browser.

Share this:

Support CNX Software! Donate via cryptocurrencies or become a Patron on Patreon

16 Replies to “Android Patch Brings Bluetooth SBC Codec Audio Quality on-par with aptX”

  1. Bluetooth screws my WiFi bandwidth just enough that I can’t stream films 1080p on my phone while using a bluetooth headset. It would have been fine if I had a headphone jack. And it would have been great if I found a usb3 type c adapter that actually took in both power and the phone’s jack at the same time… Alas, 5 different models later and it’s clear the phone model has some hardware/driver flaw screwing the negotiations.

    1. True. Happened to me on my older phone. It happens when both bluetooth and wifi operares on 2.4Ghz band. Get a 5Ghz wlan router and enjoy better speeds and no interlap between the two.

    2. There is a BT/Wifi avoidance protocol that needs to be followed. This is easy to implement when BT/Wifi are in the same chip. When BT/Wifi are implemented in two different chips, you have to run a couple of wires between the chips and the firmware inside each chip needs to pay attention to those wires. If the two chip solution doesn’t do that, then BT/Wifi transmissions stomp all over each other. It still works, but it is much slower. The wires basically say — I’m transmitting, it would not be smart if you did not transmit at the same time. Because if you do that, neither packet is going to make it.

  2. The key difference between sbc and aptX was the bit rate, so this solves that. I think ldac and aac are better codecs, so if you can, use those.

    1. There are other reasons to choose one of these codecs over aac – like latency. For music, aac is a good choice though.

      1. Unfortunately still no opus over bt. Weird as opus is optimised for low latency even at high bitrates and high bandwidth (stereo) audio. So for now just more or less patent encumbered proprietary codecs…

        1. Nothing that you can connect to (headphones, speakers, etc) with BT supports opus. So there is no point in doing it.

          1. I think that’s what @Diego, is trying to communicate – that it would be good to Opus happening over Bluetooth. If we choose not to see a point in doing it, it’s never going to kick off!

            Originally optimized for speech, Opus is now widely used for music and movie audio as well. In fact, YouTube widely uses Opus for its audio.

          2. Actually if no host does opus then no peripheral does opus thus no host… Chicken egg story once again.

            Opus has evolved out of two codecs silk for speech and celt for real time music and opus still does both very well. It is in my eyes a perfect match for bt. But there are other commercial interests it seems.

        2. Actually SBC and aptX have very low algorithmic delay, about 2-3 ms vs 10-20 ms in Opus. It’s audio buffers that are not tuned to low latency, not the codec itself.

          1. I’m no more deep enough into the codec stuff nowadays. But it might be even better allowing a couple of codecs like ie the amr group of codecs, so we would do away with all the recoding. In any case up to 20 ms is usually manageable and no show stopper at all in a well tuned system

        3. If only there were options for HQ audio in hands free/head set mode. Instead were still stuck with stuff designed for use with horrid TDMA codecs.

          When the Apple Airpods were announced I thought they’d at least have a proprietary solution. My understanding is that they are as bad as any other BT headset.

  3. Hi,

    I tried the Toshiba Bluetooth Stack but exept the sound quality option, I don’t find the one to enable Dual Channel Mode!! Where is it hidden? Thanks for your help!

Leave a Reply

Your email address will not be published. Required fields are marked *