Licenses & credits
FFmpeg (LGPL)
Zapline for Android includes audio decoders from FFmpeg, used through the AndroidX Media3 decoder_ffmpeg extension (Media3 1.11.1, Apache License 2.0). FFmpeg is licensed under the GNU Lesser General Public License version 2.1 or later. Zapline's build is LGPL only: configured with --disable-gpl --disable-nonfree, no GPL or non-free parts. FFmpeg is linked into a separate shared library (libffmpegJNI.so) inside the app.
Exact version
- FFmpeg branch
release/6.0, commit573f2b81ebd9(RELEASEfile: 6.0.2), unmodified. - Source tarball of that commit, hosted here: ffmpeg-6.0-573f2b81.tar.gz (14.8 MB, SHA-256
b2e888da05e52ac7c23fef4955bc28d6da948b6e2843d4f6cd421ac13fea804d). Same file as GitHub's archive of the commit; official repository:https://git.ffmpeg.org/ffmpeg.git. - Media3 glue code: androidx/media tag 1.11.1, libraries/decoder_ffmpeg (commit
8c6678b657ed). - Build script used for the shipped library: build_ffmpeg.sh (NDK 28.2.13676358, Android API 24, ABIs arm64-v8a, armeabi-v7a, x86_64).
Configure flags
Common to every ABI:
--target-os=android --enable-static --disable-shared --disable-doc --disable-programs --disable-everything --disable-avdevice --disable-avformat --disable-swscale --disable-postproc --disable-avfilter --disable-symver --enable-swresample --extra-ldexeflags=-pie --disable-v4l2-m2m --disable-vulkan --disable-gpl --disable-nonfree --enable-decoder=ac3 --enable-decoder=eac3 --enable-decoder=dca --enable-decoder=truehd --enable-decoder=mlp --enable-decoder=mp2 --enable-decoder=mp3 --enable-decoder=flac --enable-decoder=vorbis --enable-decoder=opus --enable-decoder=alac --enable-decoder=pcm_s16le --enable-decoder=pcm_s24le --enable-decoder=pcm_s32le --enable-decoder=aac
Per ABI (plus --libdir=android-libs/<abi> and the NDK --nm/--ar/--ranlib/--strip tools):
armeabi-v7a: --arch=arm --cpu=armv7-a --cross-prefix=armv7a-linux-androideabi24- --extra-cflags="-march=armv7-a -mfloat-abi=softfp" --extra-ldflags="-Wl,--fix-cortex-a8" arm64-v8a: --arch=aarch64 --cpu=armv8-a --cross-prefix=aarch64-linux-android24- x86_64: --arch=x86_64 --cpu=x86-64 --cross-prefix=x86_64-linux-android24- --disable-asm
Written offer
For at least three years from the last time we distribute this version of Zapline, we will give anyone who asks a complete machine-readable copy of the source code of the FFmpeg library used in it, together with the build scripts, for no more than the cost of physically performing the distribution. Write to gnurtnel@gmail.com. You may modify FFmpeg and rebuild libffmpegJNI.so with the script above; reverse engineering for debugging such modifications is permitted.
Demo content (Creative Commons Attribution)
The in-app demo uses fictional channels, guide data, logos and the fictional series “Harbor Lights”, generated for Zapline. No real broadcaster, brand or programme is depicted. All video comes from Blender Foundation / Blender Studio open movies. © Blender Foundation | www.blender.org
| Film | Year | License | Studio site |
|---|---|---|---|
| Big Buck Bunny | 2008 | CC BY 3.0 | https://peach.blender.org |
| Elephants Dream | 2006 | CC BY 2.5 | https://orange.blender.org |
| Sintel | 2010 | CC BY 3.0 | https://durian.blender.org |
| Tears of Steel | 2012 | CC BY 3.0 | https://mango.blender.org |
| Cosmos Laundromat | 2015 | CC BY 4.0 | https://studio.blender.org/films/cosmos-laundromat/ |
“Harbor Lights” episodes and the live demo channels are short excerpts of the films above (the first 150 seconds, looped), unmodified apart from trimming and re-encoding.
Posters
| Film | File | License | Author (as given on Commons) | Source |
|---|---|---|---|---|
| Big Buck Bunny | posters/big-buck-bunny.jpg | CC BY 3.0 | (c) copyright Blender Foundation / peach.blender.org | https://commons.wikimedia.org/wiki/File:Big_buck_bunny_poster_big.jpg |
| Elephants Dream | posters/elephants-dream.jpg | CC BY 4.0 | Bassam Kurdali, Andy Goralczyk, and the Blender Foundation | https://commons.wikimedia.org/wiki/File:ElephantsDreamPoster.jpg |
| Sintel | posters/sintel.jpg | CC BY 3.0 | (c) copyright Blender Foundation / durian.blender.org | https://commons.wikimedia.org/wiki/File:Sintel_poster.jpg |
| Tears of Steel | posters/tears-of-steel.jpg | CC BY 3.0 | (CC) Blender Foundation / Project Mango | https://commons.wikimedia.org/wiki/File:Tos-poster.png |
| Cosmos Laundromat | posters/cosmos-laundromat.jpg | CC BY 4.0 | Andy Goralczyk and the Blender Foundation | https://commons.wikimedia.org/wiki/File:CosmosLaundromatPoster.jpg |
| Harbor Lights (fictional) | posters/harbor-lights.png | generated | Zapline | build_demo.py |
Posters are 960 px thumbnails of the Wikimedia Commons originals; the Tears of Steel PNG was re-encoded to JPEG. Plain-text version: CREDITS.md.
Other open-source components
The app also uses AndroidX / Jetpack (including Media3 and Room), Kotlin and kotlinx libraries, Ktor, OkHttp and Okio, Coil, Koin, MaterialKolor, Haze, Compose Shimmer, Reorderable and SQLite. Their licenses are listed in the app under Settings → Credits.