mirror of
https://github.com/ultravideo/uvg266.git
synced 2024-11-24 02:24:07 +00:00
139 lines
5.8 KiB
YAML
139 lines
5.8 KiB
YAML
language: c
|
|
|
|
env:
|
|
global:
|
|
- KVZ_CONFIGURE_ARGS=--enable-werror
|
|
- TEST_DIM=264x130
|
|
- TEST_FRAMES=10
|
|
|
|
# Use container based infrastructure
|
|
sudo: false
|
|
|
|
# Use this the global requirements list for valgrind tests, because those are the most numerous.
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- autoconf
|
|
- libtool
|
|
- p7zip-full # to uncompress our own ffmpeg binary
|
|
- valgrind
|
|
- yasm
|
|
|
|
matrix:
|
|
fast_finish: true
|
|
|
|
include:
|
|
- compiler: clang
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- autoconf
|
|
- libtool
|
|
- yasm
|
|
|
|
- compiler: gcc-4.8
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- autoconf
|
|
- gcc-4.8
|
|
- libtool
|
|
- yasm
|
|
|
|
# We have some Mac specific code and Mac sometimes has odd build issues.
|
|
- os: osx
|
|
compiler: clang # gcc is actually clang on Travis OS X
|
|
|
|
# Check for external symbols without kvz_ prefix.
|
|
- compiler: gcc-4.8
|
|
script:
|
|
- ./autogen.sh
|
|
- ./configure && make
|
|
- (! nm -go --defined-only src/.libs/libkvazaar.a | grep -v ' kvz_') || (echo 'ERROR Only symbols prefixed with kvz_ should be exported from libkvazaar.'; false)
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- autoconf
|
|
- gcc-4.8
|
|
- libtool
|
|
- yasm
|
|
|
|
# Tests trying to use invalid input dimensions
|
|
- env: EXPECTED_STATUS=1 PARAMS="-i src/kvazaar --input-res=1x65 -o /dev/null"
|
|
addons:
|
|
apt:
|
|
sources:
|
|
- ubuntu-toolchain-r-test
|
|
packages:
|
|
- autoconf
|
|
- libtool
|
|
- yasm
|
|
|
|
# These valgrind tests are slow, so they are performed with the minimum
|
|
# number of small frames and fast settings.
|
|
|
|
# Tests for interlace
|
|
- env: VALGRIND_TEST="--source-scan-type=tff -p0 --preset=ultrafast --threads=2 --owf=1 --wpp"
|
|
|
|
# Tests for owf, wpp and tiles. There is lots of separate branches of
|
|
# code related to owf=0 and owf!=0, which is why all permutations are
|
|
# tried.
|
|
- env: VALGRIND_TEST="-p4 -r1 --owf=1 --threads=0 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
- env: VALGRIND_TEST="-p4 -r1 --owf=0 --threads=0 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
- env: VALGRIND_TEST="-p4 -r2 --owf=1 --threads=2 --wpp --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
- env: VALGRIND_TEST="-p4 -r2 --owf=0 --threads=2 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
- env: VALGRIND_TEST="-p4 -r2 --owf=1 --threads=2 --tiles-height-split=u2 --no-wpp --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
- env: VALGRIND_TEST="-p4 -r2 --owf=0 --threads=2 --tiles-height-split=u2 --no-wpp --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
|
|
# Tests for rdoq, sao, deblock and signhide and subme.
|
|
- env: VALGRIND_TEST="-p0 -r1 --threads=2 --wpp --owf=1 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=1 --pu-depth-intra=2-3"
|
|
- env: VALGRIND_TEST="-p0 -r1 --threads=2 --wpp --owf=1 --rd=0 --no-rdoq --no-signhide --subme=0"
|
|
- env: VALGRIND_TEST="-p0 -r1 --threads=2 --wpp --owf=1 --rd=0 --no-deblock --no-sao --subme=0"
|
|
|
|
# Tests for all-intra.
|
|
- env: VALGRIND_TEST="-p1 --threads=2 --owf=1 --rd=1 --no-rdoq --no-deblock --no-sao --no-signhide"
|
|
- env: VALGRIND_TEST="-p1 --threads=2 --owf=1 --rd=2 --no-rdoq --no-deblock --no-sao --no-signhide --no-transform-skip"
|
|
|
|
# Tests for SMP and AMP blocks.
|
|
- env: TEST_FRAMES=4 VALGRIND_TEST="--threads=2 --owf=1 --wpp --smp"
|
|
- env: TEST_FRAMES=4 VALGRIND_TEST="--threads=2 --owf=1 --wpp --amp"
|
|
- env: TEST_FRAMES=4 VALGRIND_TEST="--threads=2 --owf=1 --wpp --smp --amp"
|
|
|
|
# Tests for rate control
|
|
- env: VALGRIND_TEST="--bitrate=500000 -p0 -r1 --owf=1 --threads=2 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
|
|
# Tests for GOP, with and without OWF.
|
|
- env: TEST_FRAMES=20 VALGRIND_TEST="--gop=8 -p0 --threads=2 --wpp --owf=1 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
- env: TEST_FRAMES=10 VALGRIND_TEST="--gop=8 -p0 --threads=2 --wpp --owf=4 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
- env: TEST_FRAMES=20 VALGRIND_TEST="--gop=8 -p0 --threads=2 --wpp --owf=0 --rd=0 --no-rdoq --no-deblock --no-sao --no-signhide --subme=0 --pu-depth-inter=1-3 --pu-depth-intra=2-3"
|
|
|
|
# Tests for --mv-constraint
|
|
- env: VALGRIND_TEST="--threads=2 --owf=1 --preset=ultrafast --pu-depth-inter=0-3 --mv-constraint=frametilemargin"
|
|
- env: VALGRIND_TEST="--threads=2 --owf=1 --preset=ultrafast --subme=4 --mv-constraint=frametilemargin"
|
|
|
|
# Tests for --slices
|
|
- env: TEST_DIM=512x256 VALGRIND_TEST="--threads=2 --owf=1 --preset=ultrafast --tiles=2x2 --slices=tiles"
|
|
- env: VALGRIND_TEST="--threads=2 --owf=1 --preset=ultrafast --slices=wpp"
|
|
|
|
# Test weird shapes.
|
|
- env: TEST_DIM=16x16 VALGRIND_TEST="--threads=2 --owf=1 --preset=veryslow"
|
|
- env: TEST_DIM=256x16 VALGRIND_TEST="--threads=2 --owf=1 --preset=veryslow"
|
|
- env: TEST_DIM=16x256 VALGRIND_TEST="--threads=2 --owf=1 --preset=veryslow"
|
|
|
|
install:
|
|
- source .travis-install.sh
|
|
|
|
script:
|
|
- source .travis-script.sh
|
|
|
|
after_script:
|
|
- set +e # Disable errors to work around Travis not knowing how to fix their stuff.
|