NOVA: opeN sOurce Video plAyer
Overview
NOVA is an open source video player for Android. It consists in a fork of the original Archos Video Player Community Edition that is hosted here: https://github.com/archos-sa/aos-AVP intended to support new features.
Before asking any question please make sure that you have read the application FAQ.
This is the entry point repo. Its purpose is to provide the manifest to fetch all needed git repos with sources and then bootstrap the build environment.
More interesting sources can be found there:
- Video: nova's Video UI code
- MediaLib: nova's media library management code
- FileCoreLibrary: nova's file management code
- avos: C core multimedia engine using ffmpeg
For the full list, please look at this manifest https://github.com/nova-video-player/aos-AVP/default.xml
Building
Get the repo tool, then type:
mkdir aos; cd aos
repo init -u https://github.com/nova-video-player/aos-AVP -b nova
repo sync -j4
repo forall -c 'git checkout -t $REPO_REMOTE/$REPO_RREV'
make
Alternatively, for those not under Linux with a properly installed Android SDK/NDK, you can launch the video player build through:
cd Video
./gradlew -Puniversal assembleNoamazonRelease
In order to speed up the build, build is performed using dav1d, ffmpeg and other pre-built binaries and using local git clone of ffmpeg and dav1d repos. In order to trigger full update rebuild, you need in case of version upstep to manually do:
rm -rf native/torrentd/libs
cd native/dav1d-android-builder; git clean -fdx; rm -rf built-*
cd native/ffmpeg-android-builder; git clean -fdx; rm -rf dist-*
Note that the following packages are required to build:
sudo curl https://storage.googleapis.com/git-repo-downloads/repo > /usr/local/bin/repo
sudo chmod a+x /usr/local/bin/repo
sudo apt install build-essential python3 python3-pip python3-setuptools ninja-build maven file wget curl unzip git pkg-config meson nasm openjdk-17-jdk-headless openjdk-8-jdk-headless
Alternatively, you can use the provided docker image to build nova:
cd nova/AVP/docker
docker build -t nova .
docker run --rm -ti --entrypoint=/bin/bash nova
make
Github workflow build configuration file is also provided here
Binaries prebuilt of torrentd, ffmpeg, dav1d have been committed in order to reduce compilation time and remove nasm, meson dependencies. If you need to regenerate torrentd, ffmpeg and dav1d libs, please run make clean_prebuilt
.
Latest stable apk
The compiled application is available for installation on:
[<img src="https://images-na.ssl-images-amazon.com/images/G/01/mobile-apps/devportal2/res/images/amazon-appstore-badge-english-black.png"