Arm64-v8a !!exclusive!!: Kmp External Codec Libvlcjni.so Cpu

# Clone VLC Android source git clone https://code.videolan.org/videolan/vlc-android.git cd vlc-android ./compile.sh -a arm64-v8a Output located at: vlc-android/libvlc/jni/libs/arm64-v8a/libvlcjni.so

src/ └── androidMain/ └── jniLibs/ └── arm64-v8a/ ├── libvlcjni.so ├── libvlc.so └── (other dependent .so files) In your build.gradle.kts (Android target): kmp external codec libvlcjni.so cpu arm64-v8a

android defaultConfig ndk abiFilters += "arm64-v8a" sourceSets getByName("main") jniLibs.srcDirs("src/androidMain/jniLibs") # Clone VLC Android source git clone https://code

Once loaded, you can instantiate VLC's MediaPlayer : iOS uses .dylib or .framework

import kotlinx.cinterop.* import platform.posix.dlopen actual fun loadVlcLibraries() // For iOS, use MobileVLCKit (static lib) instead of .so // .so is Android-specific; iOS uses .dylib or .framework