How to change the Bluetooth codec from SBC to AAC on Xiaomi: all ways

If you use wireless headphones with Xiaomi and notice that the sound quality is poor, the problem may lie in the Bluetooth codec used. By default, most Xiaomi devices (including the Redmi models, POCO and flagship series) transmit audio through SBC, a standard, but far from the most efficient codec. It provides stable connection, but sacrifices the detail of sound, especially at high and low frequencies.

The transition to AAC (Advanced Audio Coding) allows you to significantly improve the quality of audio transmission: this codec supports a wider range of frequencies, better lossless compression and adaptive bitrate. However, not all Xiaomi devices allow you to change the codec out of the box β€” often require additional settings or even root access. In this article, we will discuss all the current ways to change SBC to AAC for Xiaomi smartphones in 2026, including official and alternative methods.

It is important to understand that not all headphones support AAC. Before setting up, check the specifications of your model – for example, AirPods, Sony WH-1000XM5 Xiaomi Buds 4 Pro works with this codec, and budget TWS-The headset is often limited to only SBC.

πŸ“Š What headphones do you use with Xiaomi?
AirPods
Sony
Xiaomi/Buds
Other TWS
Wired

Why SBC is Worse than AAC: Codec Comparisons

To understand whether to change the codec, let’s examine the key differences between SBC and AAC:

ParameterSBCAAC
Maximum bitrate328 kbpsup to 500 kbps
Frequency support20–20,000 Hz (theoretically)10–22,050 Hz (real)
Delay (latency)100-300 ms.50-150 ms.
AdaptabilityNo.Yes (dynamic bitrate)
Support for devicesAll Bluetooth devicesiPhone, Android 8+, most flagship headphones

The main disadvantage of SBC is the hard compression of audio, which loses high frequencies (such as the sound of plates or violins) and blurs bass lines, while AAC uses more advanced compression algorithms, storing details even when the bitrate is low, and AAC is better at dealing with artifacts - distortions of sound with a weak Bluetooth signal.

However, AAC has its downsides:

  • πŸ”‹ Higher power consumption (earphones will be discharged 10-15% faster).
  • πŸ“Ά Sensitivity to interference: with a weak signal, breaks in sound are possible.
  • πŸ”§ Not all Android devices work properly with AAC (especially on custom firmware).

⚠️ Note: Some Xiaomi models (e.g. Redmi Note 10 or X-ray) POCO X3) forced inclusion AAC This can cause a sound miss or a headphone to be completely inoperable. Before changing the codec, test the connection in safe mode.

Change the codec through Developer Options

The easiest method is to activate the developer mode and manually select the codec, which works on most Xiaomi devices with MIUI 12 and later, but requires prior preparation.

Step 1: Enable Developer Options:

  1. Go to Settings. β†’ The phone.
  2. Find the MIUI version and tap it 7 times in a row.
  3. Enter the screen unlock password (if the system requests it).

Step 2: Change the Bluetooth codec:

  1. Return to the main Settings menu and select Additional Settings β†’ Developer Settings.
  2. Scroll down to the Network section and find the Bluetooth Codec (or Bluetooth Audio Codec).
  3. In the list of available codecs, select AAC.
  4. Reboot your smartphone and reconnect the headphones.

Activate the Developer Mode

Check AAC support in headphones

Make a backup of Bluetooth settings

Charge headphones and smartphone up to 50%+

Disable other Bluetooth devices-->

If there is no Bluetooth Codec option on the menu, your Xiaomi model does not support manual switching, in which case try alternative methods (described below).

⚠️ Attention: On some firmware MIUI post-choice AAC Headphones can connect with a delay of up to 10 seconds. This is normal - the codec requires additional time to sync.

Alternative method: using applications to change the codec

If Developer Options doesn't have a codec selection option, you can use third-party utilities.

  • πŸ“± Bluetooth Audio Codec Switcher (requires root or ADB).
  • 🎧 Developer Quick Settings (for quick access to settings).
  • πŸ”§ MIUI Hidden Settings (discloses hidden options) MIUI).

Consider the Bluetooth Audio Codec Switcher:

  1. Download the app from Google Play (or APKMirror if it’s not available in your area).
  2. Connect the headphones and open the utility.
  3. In the list of available codecs, select AAC and click Apply.
  4. Reboot the Bluetooth module (turn off/on Bluetooth in the notification curtain).

If the application requests root access but it is not, use it. ADB-team:

adb shell settings put global bluetooth_a2dp_offload_capability 255


adb shell settings put global bluetooth_a2dp_offload_disabled false

These commands will unlock all available codecs in the system, and then restart the smartphone.

πŸ’‘

If the sound is intermittent after changing the codec, try in Developer Options to disable the Bluetooth A2DP Hardware Offload option. This will reduce the load on the processor, but can increase the sound latency.

Change the codec through the engineering menu (MTK and Qualcomm)

On Xiaomi devices with MediaTek processors (e.g. Redmi 9A, POCO M3) or Qualcomm Snapdragon (Redmi Note 11 series, Xiaomi 12), the codec can be changed through the engineering menu. This method requires caution - incorrect settings can lead to Bluetooth crashes.

Instructions for Qualcomm:

  1. Open the Phone app and enter the combination: ##4636##.
  2. In the menu that appears, select Phone Information.
  3. Scroll down to the Bluetooth section and tap it.
  4. Find the Audio Codec string and select AAC.
  5. Save the settings and restart Bluetooth.

For MediaTek:

  1. Install the MTK Engineering Mode app (available on 4PDA).
  2. Go to the Hardware Testing β†’ Bluetooth section.
  3. Select Audio Settings and change the codec to AAC.

⚠️ Attention: On some firmware MIUI If nothing happens after you enter the code, the manufacturer has disabled this functionality. Do not try to bypass the lock through third-party applications, this can lead to soft-brick (software breakage) of the device.

Root Method: Editing System Files

If none of the above methods worked, the last option is manual editing of configuration files, which requires root rights and is only suitable for advanced users.

Step 1: Get root access with Magisk (see XDA Developers for instructions for your model).

Step 2: Open /system/build.prop file in any root-access text editor (e.g., Root Explorer or Mixplorer).

Step 3: Add or change the following lines:

persist.bluetooth.a2dp_offload_capability=255


persist.bluetooth.a2dp_offload_disabled=0




persist.bluetooth.aac_feature_mask=255

Step 4: Save the file, set the rights 644 (rw-r--r---), and restart the device.

After the reboot, check the available codecs in Developer Options – AAC should appear.

What if Bluetooth stopped working after building.prop editing?
If Bluetooth refuses to turn on or the headphones don't connect, return the original values to build.prop or restore the file from a backup. Also check the system logs via logcat (command: adb logcat |grep Bluetooth).

Problems after changing the codec and their solutions

Even if you've managed to turn on AAC, there may be side effects, and let's look at the typical problems and how to fix them:

Problem.Possible causeDecision
The sound is interrupted.Weak Bluetooth signal or interferenceTurn off Wi-Fi (5GHz jamming) or move closer to your device
High battery consumption of headphonesAAC requires more energy to encodeReturn to SBC or turn down the volume
Headphones don't plug in.Incompatibility of codec with firmwareReset your Bluetooth settings or update your MIUI
Delayed soundHardware acceleration of A2DP disabledEnable Bluetooth A2DP Hardware Offload in Developer Options

If the sound gets worse after the codec change (for example, wheezing or distortion), your headphones are probably not optimized for AAC.

  1. Try another codec (e.g. aptX if the device supports it).
  2. Update the firmware of the headphones (compatibility patches are often released for Sony or Bose models).
  3. Reset your Bluetooth settings on your smartphone (Settings β†’ Connected Devices β†’ Bluetooth Settings β†’ Reset settings).

πŸ’‘

If your Xiaomi smartphone doesn’t support AAC at the software level, but the headphones are compatible, try custom firmware (like Pixel Experience or LineageOS).

How to Check if the Codec Has Changed

To make sure your smartphone is now using AAC, use one of the following methods:

Method 1: Developer Options

  1. Connect the headphones and turn on music playback.
  2. Go to Settings β†’ Additional settings β†’ Developer settings.
  3. Find the Bluetooth Audio Codec section, where the current codec should be displayed.

Method 2: Bluetooth Codec Checker

  • Download the Bluetooth Codec Checker from Google Play.
  • Open it and look at the current codec line.
  • If there's an AAC, it went well.

Method 3: Bluetooth Logs (for advanced)

Follow the command in ADB:

adb shell dumpsys bluetooth_manager

In the output, find the A2dpState block, where the current codec will be indicated.

If the codec hasn’t changed, repeat the steps from previous sections or check your headphones’ compatibility with AAC on the manufacturer’s website.

FAQ: Frequent questions about changing the codec to Xiaomi

Can I change SBC to AAC without root?
Yes, on most Xiaomi devices, this is possible through Developer Options or third-party apps like Bluetooth Audio Codec Switcher. However, some budget models (such as the Redmi A1 or POCO C31) do not support manual codec switching without root rights.
Why did the AAC change sound so much quieter?
This is a feature of the AAC codec, which uses dynamic compression, which can reduce the maximum volume by 10-15%. Solution: Turn on the equalizer in the player (for example, Poweramp or Neutron). Activate Mi Sound Enhancer in the MIUI sound settings. Check the headphone settings (some models have a separate "Bass Boost" mode).
Does my Xiaomi codec support AAC?
Virtually all Xiaomi smartphones on the Snapdragon 600+ or MediaTek Helio G80+ support AAC at the hardware level. Exceptions: Devices older than 2018 (e.g. Redmi 5 or Mi A1), models with heavily stripped firmware (e.g. Redmi Go) Some regional versions (e.g. India or China). To find out for sure, check your model specifications on GSMArena or MIUI documents.
Can I use AptX instead of AAC?
AptX is a more advanced codec than AAC, But it's only supported on Qualcomm Snapdragon chips (and not all).To enable aptX: Make sure your headphones support aptX (like Sony). WH-1000XM4 or 1More SonoFlow.In Developer Options, select aptX instead of AAC. If you don't have an option, try a custom kernel (like FrancoKernel). Note that aptX is better quality, but even more sensitive to interference than aptX. AAC.
After the MIUI update, the codec dropped on SBC.
This is a typical problem after major MIUI updates. Solutions: Re-select AAC in Developer Options. If the option is lost, reset Bluetooth settings (Settings β†’ Connected Devices β†’ Reset). For root devices: check if the rights to /system/build.prop are reset. If nothing helps, wait for a patch from Xiaomi or roll back to the previous firmware version.