mpv-android is a video player for Android based on libmpv.
- Hardware and software video decoding
- Gesture-based seeking, volume/brightness control and more
- libass support for styled subtitles
- Secondary (or dual) subtitle support
- High-quality rendering with advanced settings (scalers, debanding, interpolation, …)
- Play network streams with the “Open URL” function
- Background playback, Picture-in-Picture, keyboard input supported
mpv-android is not a library/module (AAR) you can import into your app.
If you’d like to use libmpv in your app you can use our code as inspiration. The important parts are MPVLib
, BaseMPVView
and the native code. Native code is built by these scripts.
You can download mpv-android from the Releases section or
Note: Android TV is supported, but only available on F-Droid or by installing the APK manually.
Take a look at the README inside the buildscripts
directory.
Some other documentation can be found at this link.
⚠️ Please note ⚠️
Better support for scoped storage has been added (in most places).
The api29
APK with a reduced API level is still available but will be removed eventually.
Change log
- Features:
- Include monochrome app icon (@khaled-0)
- Fixes:
- Fix crash with external app interopability
- Minor UI improvements
Full set of build dependencies
- Android NDK r27b
- mbedtls 3.6.1
- dav1d videolan/dav1d@dd32cd5
- ffmpeg FFmpeg/FFmpeg@8707c86
- freetype 2.13.2
- fribidi 1.0.15
- harfbuzz 9.0.0
- libunibreak 6.1
- libass libass/libass@1d826b9
- lua 5.2.4
- libplacebo haasn/libplacebo@76bb971
- libmpv mpv-player/mpv@429e379
- mpv-android cdf695d
⬇️ Which APK do I download? ⬇️
Unless you have an old device, you generally want to get arm64-v8a
. Try armeabi-v7a
otherwise.
x86
devices are very rare. If you are unsure or require compatibility then the universal
APK will work everywhere.
Note: Android TV is supported, but only available on F-Droid or by installing the APK manually using e.g. Downloader.