summaryrefslogtreecommitdiff
path: root/tests
Commit message (Collapse)AuthorAge
* fate: Skip the checkasm test if CONFIG_STATIC is disabledMartin Storsjö2017-01-09
| | | | | | | | | | When building DLLs with MSVC, CONFIG_STATIC is disabled (see d66c52c2b3694 for a more verbose explanation) since the built object files can't be linked statically (which checkasm does). This worked up until recently, only by luck. Signed-off-by: Martin Storsjö <martin@martin.st>
* fate: Tweak printing of ignored testsMartin Storsjö2016-12-29
| | | | | | | | Use a tab instead of two spaces, skip the fate prefix for the test name. This makes IGNORE line fit in even better with the other make printouts. Signed-off-by: Martin Storsjö <martin@martin.st>
* fate: Unset the sig variable if ignoring a test failureMartin Storsjö2016-12-29
| | | | | | | Otherwise the .rep file would still contain a signal instead of a zero, even if the process returned success. Signed-off-by: Martin Storsjö <martin@martin.st>
* fate: Add --ignore-tests configure option for omitting specific FATE testsJanne Grunau2016-12-28
| | | | | | | | | This can be useful to filter out noise in known-broken scenarios like miscompilation by legacy compilers and similar. Originally based on a patch by Diego Biurrun. Signed-off-by: Diego Biurrun <diego@biurrun.de>
* build: Move build-system-related helper files to a separate subdirectoryDiego Biurrun2016-12-22
| | | | This unclutters the top-level directory and groups related files together.
* fate: Add h264 test for frame num gapsDerek Buitenhuis2016-12-14
| | | | | Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avutil: fix data race in av_get_cpu_flags()Wan-Teh Chang2016-12-08
| | | | | | | | | | | | | | | | | | | | | | | | Make the one-time initialization in av_get_cpu_flags() thread-safe. The static variables |flags|, |cpuflags_mask|, and |checked| in libavutil/cpu.c are read and written using normal load and store operations. These are considered as data races. The fix is to use atomic load and store operations. Remove the |checked| variable because the invalid value of -1 for |flags| can be used to indicate the same condition. Rename |flags| to |cpu_flags| and move it to file scope. The fix can be verified by running the libavutil/tests/cpu_init.c test program under ThreadSanitizer: ./configure --toolchain=clang-tsan make libavutil/tests/cpu_init libavutil/tests/cpu_init There should be no warnings from ThreadSanitizer. Co-author: Dmitry Vyukov of Google, who suggested the data race fix. Signed-off-by: Wan-Teh Chang <wtc@google.com>
* fate: Add spherical and stereo3d mov testsVittorio Giovara2016-12-07
|
* Remove Plan 9 supportDiego Biurrun2016-12-03
| | | | | | Supporting the system was a nice joke for the 9 release, but it has run its course. Nowadays Plan 9 receives no testing and has no practical usefulness.
* arm: vp9itxfm: Skip empty slices in the first pass of idct_idct 16x16 and 32x32Martin Storsjö2016-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This work is sponsored by, and copyright, Google. Previously all subpartitions except the eob=1 (DC) case ran with the same runtime: Cortex A7 A8 A9 A53 vp9_inv_dct_dct_16x16_sub16_add_neon: 3188.1 2435.4 2499.0 1969.0 vp9_inv_dct_dct_32x32_sub32_add_neon: 18531.7 16582.3 14207.6 12000.3 By skipping individual 4x16 or 4x32 pixel slices in the first pass, we reduce the runtime of these functions like this: vp9_inv_dct_dct_16x16_sub1_add_neon: 274.6 189.5 211.7 235.8 vp9_inv_dct_dct_16x16_sub2_add_neon: 2064.0 1534.8 1719.4 1248.7 vp9_inv_dct_dct_16x16_sub4_add_neon: 2135.0 1477.2 1736.3 1249.5 vp9_inv_dct_dct_16x16_sub8_add_neon: 2446.7 1828.7 1993.6 1494.7 vp9_inv_dct_dct_16x16_sub12_add_neon: 2832.4 2118.3 2266.5 1735.1 vp9_inv_dct_dct_16x16_sub16_add_neon: 3211.7 2475.3 2523.5 1983.1 vp9_inv_dct_dct_32x32_sub1_add_neon: 756.2 456.7 862.0 553.9 vp9_inv_dct_dct_32x32_sub2_add_neon: 10682.2 8190.4 8539.2 6762.5 vp9_inv_dct_dct_32x32_sub4_add_neon: 10813.5 8014.9 8518.3 6762.8 vp9_inv_dct_dct_32x32_sub8_add_neon: 11859.6 9313.0 9347.4 7514.5 vp9_inv_dct_dct_32x32_sub12_add_neon: 12946.6 10752.4 10192.2 8280.2 vp9_inv_dct_dct_32x32_sub16_add_neon: 14074.6 11946.5 11001.4 9008.6 vp9_inv_dct_dct_32x32_sub20_add_neon: 15269.9 13662.7 11816.1 9762.6 vp9_inv_dct_dct_32x32_sub24_add_neon: 16327.9 14940.1 12626.7 10516.0 vp9_inv_dct_dct_32x32_sub28_add_neon: 17462.7 15776.1 13446.2 11264.7 vp9_inv_dct_dct_32x32_sub32_add_neon: 18575.5 17157.0 14249.3 12015.1 I.e. in general a very minor overhead for the full subpartition case due to the additional loads and cmps, but a significant speedup for the cases when we only need to process a small part of the actual input data. In common VP9 content in a few inspected clips, 70-90% of the non-dc-only 16x16 and 32x32 IDCTs only have nonzero coefficients in the upper left 8x8 or 16x16 subpartitions respectively. Signed-off-by: Martin Storsjö <martin@martin.st>
* checkasm: vp9dsp: benchmark all sub-IDCTs (but not WHT or ADST).Ronald S. Bultje2016-11-23
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* Revert "checkasm: vp9dsp: Benchmark the dc-only version of idct_idct separately"Martin Storsjö2016-11-23
| | | | | | | | | This reverts commit 81d7f0bbca837afda1f7e60d3ae52ab1360ab44b. Instead of just benchmarking dc separately, test all relevant subparts (in the next commit). Signed-off-by: Martin Storsjö <martin@martin.st>
* fate.sh: Allow setting other make flags for running testsMartin Storsjö2016-11-23
| | | | | | | | | | | | If makeopts_fate is set, these makeopts are used for running the tests instead of the normal makeopts. If it isn't set, the normal makeopts variable is used as before. This is useful if remote testing on a lesser machine where a large number of parallel jobs might be undesireable, while wanting to speed up the build with many parallel processes. Signed-off-by: Martin Storsjö <martin@martin.st>
* fate: Add h264 and hevc extradata reload testsVittorio Giovara2016-11-16
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* checkasm: vp9dsp: Benchmark the dc-only version of idct_idct separatelyMartin Storsjö2016-11-16
| | | | | | | | The dc-only mode is already checked to work correctly above, but this allows benchmarking this mode for performance tuning, and allows making sure that it actually is correctly hooked up. Signed-off-by: Martin Storsjö <martin@martin.st>
* checkasm: add vp9dsp.itxfm_add tests.Ronald S. Bultje2016-11-11
| | | | | | | | This includes fixes by Henrik Gramner. The forward transforms are derived from the reference encoder. Signed-off-by: Martin Storsjö <martin@martin.st>
* fate: checkasm: Split monolithic test into individual componentsDiego Biurrun2016-11-08
|
* checkasm: Add --test parameter to check only specific componentsDiego Biurrun2016-11-08
| | | | Inspired by a patch from Martin Storsjö <martin@martin.st>.
* swscale: Add GRAY12Luca Barbato2016-11-07
|
* vp9: Flip the order of arguments in MC functionsMartin Storsjö2016-11-03
| | | | | | | | | This makes it match the pattern already used for VP8 MC functions. This also makes the signature match ffmpeg's version of these functions, easing porting of code in both directions. Signed-off-by: Martin Storsjö <martin@martin.st>
* mov: Evaluate the movie display matrixVittorio Giovara2016-11-01
| | | | | | | | | | | This matrix needs to be applied after all others have (currently only display matrix from trak), but cannot be handled in movie box, since streams are not allocated yet. So store it in main context, and apply it when appropriate, that is after parsing the tkhd one. Fate tests are updated accordingly. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* fate: Add tests for mov display matrixVittorio Giovara2016-11-01
| | | | | | Rotation, sample/display aspect ratio and pure matrix export. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* checkasm: Add a test for HEVC add_residualAlexandra Hájková2016-10-22
|
* Replace leftover uses of -aframes|-dframes|-vframes with -frames:a|d|vDiego Biurrun2016-10-22
|
* fate: Update filter-pixfmts-scale gbrap12le hash missing from be9dba5c8aLuca Barbato2016-10-18
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* checkasm: aarch64: Don't clobber x29 in checkasm_stack_clobberMartin Storsjö2016-10-18
| | | | | | | | | | | x29 (FP) is a callee saved register and should be restored on return. Instead of backing up x29 and restoring it here, back up sp in a register that we are allowed to overwrite. This fixes crashes in checkasm on aarch64 since f1b3e1313851. For some reason, gcc builds didn't crash, but clang builds do. Signed-off-by: Martin Storsjö <martin@martin.st>
* swscale: Properly load alpha for planar rgbMichael Niedermayer2016-10-18
| | | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* build: Drop arch-specific checkasm MakefilesDiego Biurrun2016-10-17
| | | | They only contain one line and will never contain more.
* build: Drop duplicate asm recipeDiego Biurrun2016-10-17
| | | | | And move the asm recipe to the top-level Makefile next to the other local pattern rules for .o files.
* checkasm: aarch64: Add filler args to make sure all parameters are passed on ↵Martin Storsjö2016-10-16
| | | | | | | | | | the stack This, combined with clobbering the stack space prior to the call, increases the chances of finding cases where 32 bit parameters are erroneously treated as 64 bit. Signed-off-by: Martin Storsjö <martin@martin.st>
* checkasm: aarch64: Clobber the stack before calling functionsMartin Storsjö2016-10-16
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* checkasm: arm/aarch64: Fix the amount of space reserved for stack parametersMartin Storsjö2016-10-16
| | | | | | | | | Even if MAX_ARGS - 2 (for arm) or MAX_ARGS - 7 (for aarch64) parameters are passed on the stack to checkasm_checked_call, we actually only need to store MAX_ARGS - 4 (for arm) or MAX_ARGS - 8 (for aarch64) parameters on the stack when calling the tested function. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavf: use the new bitstream filter for extracting extradataAnton Khirnov2016-10-16
| | | | | | | | | This also fixes a minor bug introduced in the codecpar conversion, where the termination condition for extracting the extradata does not match the actual extradata setting code. As a result, the packet durations made up by lavf go back to their values before the codecpar conversion. That is of little consequence since that code should eventually be dropped completely.
* swscale: Add the GBRAP12 outputLuca Barbato2016-10-12
|
* swscale: Enable GBRP12 outputLuca Barbato2016-10-12
|
* swscale: Add missing yuv444p12 swappingVittorio Giovara2016-10-12
| | | | | | | Missing from 9bd6ea5695660529b2887292874a7b9e61fc301e. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* checkasm: add a test for HEVC IDCTAlexandra Hájková2016-10-11
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* checkasm: add VP9 loopfilter tests.Ronald S. Bultje2016-10-04
| | | | | | | | | | | The randomize_buffer() implementation assures that "most of the time", we'll do a good mix of wide16/wide8/hev/regular/no filters for complete code coverage. However, this is not mathematically assured because that would make the code either much more complex, or much less random. Some fixes and improvements by Rodger Combs <rodger.combs@gmail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* fate: Add test for rscc paletteVittorio Giovara2016-10-02
|
* lavu: remove the custom atomic APIAnton Khirnov2016-10-02
| | | | It has been replaced by C11 stdatomic.h and is now unused.
* checkasm: Add test for huffyuvdsp add_bytesAlexandra Hájková2016-10-02
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* hevc: Change type of array stride parameters to ptrdiff_tDiego Biurrun2016-09-29
| | | | ptrdiff_t is the correct type for array strides and similar.
* pixfmt: Add yuv444p12 pixel formatLuca Barbato2016-09-27
|
* pixfmt: Add yuv422p12 pixel formatLuca Barbato2016-09-27
|
* pixfmt: Add yuv420p12 pixel formatLuca Barbato2016-09-27
|
* audiodsp: reorder arguments for vector_clipfAnton Khirnov2016-09-22
| | | | | | | This will make the x86 asm simpler. ARM conversion by Martin Storsjö <martin@martin.st> and Janne Grunau <janne-libav@jannau.net>
* checkasm: add tests for audiodspAnton Khirnov2016-09-22
|
* checkasm: add a test for blockdspAnton Khirnov2016-09-22
|
* checkasm: Read the unsigned value as it shouldLuca Barbato2016-09-11
| | | | Reading a value larger than int using atoi() may give the wrong result.
* build: Fix directory dependencies of tests/pixfmts.mak targetDiego Biurrun2016-09-05
|