MX Player Custom Codec is a free add-on that restores the audio formats MX Player cannot ship with, including AC3, EAC3, DTS, MLP and TrueHD. It replaces the player's own decoding library with one built from MX Player's published open-source code, released under the LGPL 2.1. The codec version does not follow the app version, so MX Player 3.0.13 is the release that asks for codec 3.1.0.
MX Player Custom Codec 3.1.0 is the current decoder pack, and it is the file to grab if your player is refusing to play a soundtrack.
It restores AC3, EAC3, DTS, MLP and TrueHD audio, the formats MX Player cannot bundle for licensing reasons.
If you are not sure which of the five downloads suits your phone, take the all-in-one ZIP and stop worrying about it.
Why 3.1.0 When My Player Says 3.0.13
This trips up almost everyone, so it is worth clearing up first. There is no MX Player 3.1.0, and you are not looking at the wrong file.
The codec version follows MX Player's internal decoder, which is numbered separately from the app you install. MX Player 3.0.13 is the release that asks for custom codec 3.1.0.
The two numbers have drifted apart for years. Codec files labelled 1.87.0 served player versions in the 1.9x range, and the pattern has held through every release since.
Trust the app, not the app version. Open Settings > Decoder > Custom codec and MX Player names the exact codec version and architecture it wants. That string is the only thing that matters when picking a file.
What This Add-On Actually Does
MX Player ships with a decoding library that deliberately leaves out several audio formats, because shipping them on the Play Store would mean paying licence fees. The result is the error people know well: video plays, picture looks fine, and there is no sound at all.
The custom codec swaps that stripped-down library for a complete one. Nothing is installed in the usual sense - you point MX Player at a ZIP file and it loads the library from inside.
It is built from the FFmpeg source code MX Player publishes under the LGPL, so it is the same decoder the app already uses, with the missing formats switched back on.
Which File You Need
Check the architecture MX Player names under Settings > Decoder > Custom codec, for example ARMv8 NEON, then match it below.
| File | Architecture | Typical device |
|---|---|---|
| aio-3.1.0-build_0.zip | All four | Anything - pick this if unsure |
| neon64-3.1.0-build_0.zip | ARM64 / ARMv8 NEON | Almost every current phone |
| neon-3.1.0-build_0.zip | ARMv7 NEON, 32-bit | Older phones, some TV boxes |
| x86_64-3.1.0-build_0.zip | Intel 64-bit | Emulators, a few tablets |
| x86-3.1.0-build_0.zip | Intel 32-bit | Older Intel Android hardware |
Current MX Player 3.0.x builds require a 64-bit Arm processor, so neon64 is the answer for nearly everyone running an up-to-date app. The 32-bit files still matter if you are on an older player release or a TV box.
The all-in-one file is around 24.7 MB because it carries all four libraries; the single-architecture files are roughly 6 MB each. Our guide on which custom codec you need walks through the same choice in more detail.
How to Install It
- Download MX Player Custom Codec 3.1.0 and leave the ZIP exactly as it is. Do not unzip it.
- Open MX Player and go to Settings > Decoder > Custom codec.
- Tap the entry and browse to the ZIP you just downloaded, usually in your Downloads folder.
- Confirm the restart when the app asks. MX Player reopens with the new decoder loaded.
If the app rejects the file, it is a version mismatch rather than a broken download. Older player releases ask for older codec builds, so update to MX Player 3.0.13 before trying again.
Why Your Old Codec Stopped Working
Every time MX Player updates its bundled decoder, it bumps that internal version and stops accepting the previous file. That is why a codec working perfectly on Monday throws "custom codec is out of date" on Tuesday.
There is no way around it from the outside. Renaming the file to fake a different version used to work occasionally, and stopped being reliable somewhere around the 2.7 releases.
If you are stuck mid-upgrade with a player and codec that will not agree, our guide on getting custom codecs working again covers the pairing in full.
What Is Inside 3.1.0
The pack contains four shared libraries, one per architecture, named for the version MX Player expects:
- libffmpeg.mx.so.neon64.3.1.0
- libffmpeg.mx.so.neon.3.1.0
- libffmpeg.mx.so.x86_64.3.1.0
- libffmpeg.mx.so.x86.3.1.0
The underlying decoder is still FFmpeg 4.2, which is where MX Player's published source has sat for several years. AV1 decoding comes from dav1d, also unchanged for some time.
Format support is the point rather than raw speed, so do not expect this build to decode faster than the stock one. It decodes more.
The Formats This Fixes
Most people arrive here because of one specific soundtrack. The usual culprits are Dolby Digital in older films, DTS in disc rips, and EAC3 in streaming captures.
- AC3 and EAC3 - Dolby Digital and Dolby Digital Plus, the most common cause of silent playback. Our walkthrough on fixing EAC3 audio not supported covers this exact error.
- DTS and DTS-HD - standard on Blu-ray rips and a frequent source of silent MKV files.
- MLP and TrueHD - the lossless Dolby formats found on higher-bitrate releases.
Video formats are a separate question, and the answer is usually that you already have what you need. Xvid is one people ask about constantly, and our guide explains why Xvid needs no extra codec at all.
Who Should Look Elsewhere
The tell is simple: if you find yourself back on this page every few weeks because MX Player updated again, the version-chasing is not worth it for you.
VLC for Android has every one of these decoders built in and never asks for a separate file. Our comparison of players that handle EAC3 natively covers the rest.
For a full media library rather than a file player, Kodi for Android covers the same formats with library management on top. If your viewing is mostly live TV, OTT Navigator is the better fit.
Users of a different player entirely may want KMPlayer Custom Codec, which does the same job for KMPlayer. Both sit in our Android APK section.
Quick questions
Why is the codec 3.1.0 when MX Player is 3.0.13?
Because the codec number follows MX Player's internal decoder rather than the app version, and the two have not matched for years. MX Player 3.0.13 is the release that asks for codec 3.1.0, and there is no MX Player 3.1.0.
Is MX Player Custom Codec free?
Yes, completely. It is compiled from MX Player's own FFmpeg source code, published under the LGPL 2.1 licence, so there is nothing to pay and no paid tier.
Do I need to unzip the file?
No. MX Player reads the library from inside the ZIP, so leave it exactly as downloaded and point the app at it.
Which file do I pick if I do not know my architecture?
Take the all-in-one ZIP. It is larger at roughly 24.7 MB because it holds all four libraries, but it works on any device and removes the guesswork.
Why does MX Player say my custom codec is out of date?
The player only accepts the codec version it names under Settings, Decoder, Custom codec. Check that string, then download the build that matches it.
Is it safe to install?
It is a decoder library rather than an app, so nothing is installed to your system and no permissions are requested. You can inspect any Android package with our APK Checker, and our note on installing an APK safely covers the wider habit.
Before You Download
Read the codec version out of MX Player first, under Settings, Decoder, Custom codec. It takes ten seconds and avoids the single most common complaint we get about this file.
Not sure what your files actually need? Our Codec Finder identifies the audio and video formats inside them.
Sideloading the player rather than using the Play Store is fine, and our Play Store Check tool tells you whether a given APK will run without Play Services.
Download MX Player Custom Codec 3.1.0 and see how it handles your files, or tell us how you got on if you have used it before.
Version 3.0.12 (ARMv8 NEON
