The project is aimed to create a set of videos usable for testing media playback for correctness and evaluating quality of decoding and/or processing video. There are also files useful for calibrating TV sets.
For user documentations and downloading compiled test video files see our web site: test.full.band.
The test generator is written in Java 10 and you need Java Development Kit (JDK) installed to build the project. You can get Java for your platform from here.
Also you will need Apache Maven 3.5+ to build the project. x264, x265, MP4Box and ffmpeg executables need to be installed and available in the system PATH to encode videos.
We use Eclipse as an IDE. If you are using some other IDE and want to contribute you are welcome to do it but the job to get preferences for code style, formatting etc. is on you. The checked in eclipse preference is the single source of truth about code style and formatting and you have to follow it when sending pull requests.
Required executables can be installed from following sources:
- x264
- x265 multilib
- MP4Box - NB! Use gpac-0.7.0-rev27 version or newer.
- ffmpeg
Required executables can be installed with Homebrew:
brew install maven
brew install x264
brew install mp4box
brew install ffmpeg
Homebrew doesn't allow you to install multilib x265 executable that supports multiple bitdepths so you have to compile it yourself so all HEVC bitdepths (8, 10, 12 bit) are supported by single executable. Build it with (or see x265 Wiki for details):
brew install hg
brew install cmake
hg clone https://bitbucket.org/multicoreware/x265
cd x265/build/linux
./multilib.sh
cd 8bit/
make install
If you want to install multiple bitdepth versions of x264 read this. Although we do not plan to use anything but 8 bit with x264.
You need to start Eclipse from terminal window for it to get the same PATH environment variable. If started from Dock the PATH will be from the Dock process and will not contain /usr/local/bin that contains x264, x265, MP4Box and ffmpeg executables. You can do it with the command:
open -a Eclipse
We use JUnit together with maven-failsafe-plugin as a framework to generate test videos.
To build all test videos in the project run:
mvn clean verify