flutter_media_kit 1.3.8+ppplayer.egl1 copy "flutter_media_kit: ^1.3.8+ppplayer.egl1" to clipboard
flutter_media_kit: ^1.3.8+ppplayer.egl1 copied to clipboard

PlatformAndroid

Android package providing video (& audio) native libraries for package:media_kit.

flutter_media_kit - Android native libraries #

Android native video and audio libraries for the existing media_kit and media_kit_video Dart APIs. This fork builds pinned libmpv sources with an EGL context fallback and an ARM64 Mbed TLS compiler fix. It retains media-kit's JNI helper and Java package names for compatibility.

Supported targets #

Target Included in this package Validation
Android ARM64 (arm64-v8a) Yes, API 21+ Build, native exports and 16 KiB alignment checked; physical-device playback pending
Android x64 (x86_64) Yes, API 21+ Android 15/16 emulator playback acceptance; Android 16 release playback probe
Android ARMv7 / x86 No No binaries provided
Windows, Linux, macOS, iOS, web No Use separate platform providers

This is an Android native-library provider, not a complete replacement for MediaKit. Platform badges on another package do not establish support here. The emulator tests check playback progress, lifecycle and controls; audible output and physical-device behavior still need validation.

Installation #

Add media_kit, media_kit_video, and this package to your app:

dependencies:
  media_kit: ^1.2.3
  media_kit_video: ^2.0.1
  flutter_media_kit: 1.3.8+ppplayer.egl1

Call MediaKit.ensureInitialized() before creating players, following the MediaKit API documentation.

Remove media_kit_libs_android_video and the media_kit_libs_video umbrella dependency, which pulls in the original Android provider. Including both providers can cause duplicate Java classes and native libraries. For a multiplatform app, add the individual native providers for its other platforms. The renamed package cannot override the original package name: pub requires the dependency key to match the package's declared name.

For local development, use this key:

dependency_overrides:
  flutter_media_kit:
    path: ../ppplayer_native_media/packages/media_kit_libs_android_video

The package contains both native JARs. It does not download native binaries during an app build. Its Gradle verification task rejects missing or altered JARs using the bundled SHA-256 manifest.

Limit your Android app's ndk.abiFilters to arm64-v8a and x86_64; 32-bit Android playback is unsupported. For an APK, use flutter build apk --target-platform android-arm64,android-x64. The runnable example/ app configures these filters and offers a media URL field with playback controls.

Source and licenses #

The Flutter/Java wrapper and retained JNI helper use the upstream MIT license. The native library has additional licenses: mpv is built with GPL features disabled; FFmpeg is built with --enable-version3, with LGPLv3 terms and its dependency notices. See NOTICE.md, licenses/, and the complete pinned sources, patches and build recipes in native_sources/corresponding-source.tar.gz. Do not describe the entire native distribution as MIT-only. Apps distributing these libraries must preserve their applicable notices and license obligations.

The source archive includes instructions for rebuilding and replacing libmpv. Native commit pins and artifact hashes are bundled alongside it. Development and validation details are in the repository.

0
likes
160
points
7
downloads

Documentation

API reference

Publisher

verified publisherdevflier.com

Weekly Downloads

Android package providing video (& audio) native libraries for package:media_kit.

Repository (GitHub)
View/report issues
Contributing

License

MIT (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on flutter_media_kit

Packages that implement flutter_media_kit