libVLC for NovArc IPTV Player (Android), LGPL-only build vlc-android: libvlc-3.7.6 1e9a49eff9b4031656e91bd489f6dfbe5f013935 libvlcjni: c0cc8ce6443dcb09be9b43c7b7a3ed01e33cb3ac vlc: 8d489ca9b3c4863e97c2b4f339a950279df2f255 Images: registry.videolan.org/vlc-debian-android:20260610055743 (arm64, x86_64) registry.videolan.org/vlc-debian-android-3.0:20260701183656 (armeabi-v7a, x86) How it's built (build.sh does all of it): - VideoLAN's own build: vlc-android's buildsystem/compile.sh -l -a -m2 release --license a (VLC's contribs built from these source tarballs in their LGPLv2 + ad-clauses mode), then GRADLE_ABI=ALL ./gradlew -p libvlcjni publishToMavenLocal. - NovArc's one change (libvlcjni-novarc.patch, made by patch-blacklist.sh): 16 VLC modules whose source is GPL rather than LGPL are added to the module list VideoLAN's script already leaves out: lua, access_realrtsp, headphone_channel_mixer, mono, dummy, file_logger, syslog, vod_rtsp, stream_out_rtp, stream_out_cycle, dolby_surround_decoder, hqdn3d, rotate, deinterlace, i420_rgb_mmx, zvbi. license-audit.py lists the licence of every VLC source file and header compiled into a build (from the build's dependency files): none is GPL in this one. VLC's and the components' own source is unchanged. - package.sh: assets/lua/ (VLC's GPL Lua scripts) removed from the AAR; version 3.7.6-lgpl. To rebuild (or build your own libvlc.so to replace the app's): 1. Extract vlc-android-libvlc-3.7.6.tar.xz here (vlc-android/), libvlcjni-*.tar.xz into vlc-android/ (vlc-android/libvlcjni/), vlc-*.tar.xz into vlc-android/libvlcjni/ (…/libvlcjni/vlc/), and both vlc-contrib-tarballs.part*.tar.xz into vlc-android/libvlcjni/vlc/contrib/ (they hold contrib/tarballs/, so no download is needed). 2. Make each tree a git repository (git init; git add -A; git commit -m src) — VideoLAN's scripts expect them — and apply libvlcjni-novarc.patch in vlc-android/libvlcjni (git apply). 3. Run build.sh (Docker with the images above): it builds the four ABIs and publishes the AAR.