1## 2## Copyright (c) 2017, Alliance for Open Media. All rights reserved 3## 4## This source code is subject to the terms of the BSD 2 Clause License and 5## the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License 6## was not distributed with this source code in the LICENSE file, you can 7## obtain it at www.aomedia.org/license/software. If the Alliance for Open 8## Media Patent License 1.0 was not distributed with this source code in the 9## PATENTS file, you can obtain it at www.aomedia.org/license/patent. 10## 11 12LIBAOM_TEST_SRCS-yes += acm_random.h 13LIBAOM_TEST_SRCS-yes += clear_system_state.h 14LIBAOM_TEST_SRCS-yes += codec_factory.h 15LIBAOM_TEST_SRCS-yes += md5_helper.h 16LIBAOM_TEST_SRCS-yes += register_state_check.h 17LIBAOM_TEST_SRCS-yes += test.mk 18LIBAOM_TEST_SRCS-yes += test_libaom.cc 19LIBAOM_TEST_SRCS-yes += util.h 20LIBAOM_TEST_SRCS-yes += video_source.h 21LIBAOM_TEST_SRCS-yes += transform_test_base.h 22LIBAOM_TEST_SRCS-yes += function_equivalence_test.h 23 24## 25## BLACK BOX TESTS 26## 27## Black box tests only use the public API. 28## 29LIBAOM_TEST_SRCS-yes += ../md5_utils.h ../md5_utils.c 30LIBAOM_TEST_SRCS-$(CONFIG_AV1_DECODER) += ivf_video_source.h 31LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += ../y4minput.h ../y4minput.c 32LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += altref_test.cc 33LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += aq_segment_test.cc 34LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += datarate_test.cc 35LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += encode_api_test.cc 36LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += error_resilience_test.cc 37LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += i420_video_source.h 38#LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += realtime_test.cc 39LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += resize_test.cc 40LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += y4m_video_source.h 41LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += yuv_video_source.h 42 43#LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += level_test.cc 44LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += active_map_refresh_test.cc 45LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += active_map_test.cc 46LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += borders_test.cc 47LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += cpu_speed_test.cc 48LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += frame_size_tests.cc 49LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += lossless_test.cc 50 51LIBAOM_TEST_SRCS-yes += decode_test_driver.cc 52LIBAOM_TEST_SRCS-yes += decode_test_driver.h 53LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += encode_test_driver.cc 54LIBAOM_TEST_SRCS-yes += encode_test_driver.h 55 56## IVF writing. 57LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += ../ivfenc.c ../ivfenc.h 58 59## Y4m parsing. 60LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += y4m_test.cc ../y4menc.c ../y4menc.h 61 62## WebM Parsing 63ifeq ($(CONFIG_WEBM_IO), yes) 64LIBWEBM_PARSER_SRCS += ../third_party/libwebm/mkvparser/mkvparser.cc 65LIBWEBM_PARSER_SRCS += ../third_party/libwebm/mkvparser/mkvreader.cc 66LIBWEBM_PARSER_SRCS += ../third_party/libwebm/mkvparser/mkvparser.h 67LIBWEBM_PARSER_SRCS += ../third_party/libwebm/mkvparser/mkvreader.h 68LIBAOM_TEST_SRCS-$(CONFIG_AV1_DECODER) += $(LIBWEBM_PARSER_SRCS) 69LIBAOM_TEST_SRCS-$(CONFIG_AV1_DECODER) += ../tools_common.h 70LIBAOM_TEST_SRCS-$(CONFIG_AV1_DECODER) += ../webmdec.cc 71LIBAOM_TEST_SRCS-$(CONFIG_AV1_DECODER) += ../webmdec.h 72LIBAOM_TEST_SRCS-$(CONFIG_AV1_DECODER) += webm_video_source.h 73endif 74 75LIBAOM_TEST_SRCS-$(CONFIG_AV1_DECODER) += decode_api_test.cc 76 77# Currently we only support decoder perf tests for av1. Also they read from WebM 78# files, so WebM IO is required. 79ifeq ($(CONFIG_DECODE_PERF_TESTS)$(CONFIG_AV1_DECODER)$(CONFIG_WEBM_IO), \ 80 yesyesyes) 81LIBAOM_TEST_SRCS-yes += decode_perf_test.cc 82endif 83 84ifeq ($(CONFIG_ENCODE_PERF_TESTS)$(CONFIG_AV1_ENCODER), yesyes) 85LIBAOM_TEST_SRCS-yes += encode_perf_test.cc 86endif 87 88## Multi-codec / unconditional black box tests. 89ifeq ($(findstring yes,$(CONFIG_AV1_ENCODER)),yes) 90LIBAOM_TEST_SRCS-yes += active_map_refresh_test.cc 91LIBAOM_TEST_SRCS-yes += active_map_test.cc 92LIBAOM_TEST_SRCS-yes += end_to_end_test.cc 93endif 94 95## 96## WHITE BOX TESTS 97## 98## Whitebox tests invoke functions not exposed via the public API. Certain 99## shared library builds don't make these functions accessible. 100## 101ifeq ($(CONFIG_SHARED),) 102 103## AV1 104ifeq ($(CONFIG_AV1),yes) 105 106# These tests require both the encoder and decoder to be built. 107ifeq ($(CONFIG_AV1_ENCODER)$(CONFIG_AV1_DECODER),yesyes) 108# IDCT test currently depends on FDCT function 109LIBAOM_TEST_SRCS-yes += coding_path_sync.cc 110LIBAOM_TEST_SRCS-yes += idct8x8_test.cc 111LIBAOM_TEST_SRCS-yes += partial_idct_test.cc 112LIBAOM_TEST_SRCS-yes += superframe_test.cc 113LIBAOM_TEST_SRCS-yes += tile_independence_test.cc 114LIBAOM_TEST_SRCS-yes += ethread_test.cc 115LIBAOM_TEST_SRCS-yes += motion_vector_test.cc 116ifneq ($(CONFIG_ANS),yes) 117LIBAOM_TEST_SRCS-yes += binary_codes_test.cc 118endif 119ifeq ($(CONFIG_EXT_TILE),yes) 120LIBAOM_TEST_SRCS-yes += av1_ext_tile_test.cc 121endif 122ifeq ($(CONFIG_ANS),yes) 123LIBAOM_TEST_SRCS-yes += ans_test.cc 124LIBAOM_TEST_SRCS-yes += ans_codec_test.cc 125else 126LIBAOM_TEST_SRCS-yes += boolcoder_test.cc 127ifeq ($(CONFIG_ACCOUNTING),yes) 128LIBAOM_TEST_SRCS-yes += accounting_test.cc 129endif 130endif 131LIBAOM_TEST_SRCS-yes += divu_small_test.cc 132#LIBAOM_TEST_SRCS-yes += encoder_parms_get_to_decoder.cc 133endif 134 135LIBAOM_TEST_SRCS-$(CONFIG_ADAPT_SCAN) += scan_test.cc 136LIBAOM_TEST_SRCS-yes += convolve_test.cc 137LIBAOM_TEST_SRCS-yes += lpf_8_test.cc 138ifeq ($(CONFIG_CDEF_SINGLEPASS),yes) 139LIBAOM_TEST_SRCS-$(CONFIG_CDEF) += cdef_test.cc 140else 141LIBAOM_TEST_SRCS-$(CONFIG_CDEF) += dering_test.cc 142LIBAOM_TEST_SRCS-$(CONFIG_CDEF) += clpf_test.cc 143endif 144LIBAOM_TEST_SRCS-yes += simd_cmp_impl.h 145LIBAOM_TEST_SRCS-$(HAVE_SSE2) += simd_cmp_sse2.cc 146LIBAOM_TEST_SRCS-$(HAVE_SSSE3) += simd_cmp_ssse3.cc 147LIBAOM_TEST_SRCS-$(HAVE_SSE4_1) += simd_cmp_sse4.cc 148LIBAOM_TEST_SRCS-$(HAVE_AVX2) += simd_cmp_avx2.cc 149LIBAOM_TEST_SRCS-$(HAVE_NEON) += simd_cmp_neon.cc 150LIBAOM_TEST_SRCS-yes += simd_impl.h 151LIBAOM_TEST_SRCS-$(HAVE_SSE2) += simd_sse2_test.cc 152LIBAOM_TEST_SRCS-$(HAVE_SSSE3) += simd_ssse3_test.cc 153LIBAOM_TEST_SRCS-$(HAVE_SSE4_1) += simd_sse4_test.cc 154LIBAOM_TEST_SRCS-$(HAVE_AVX2) += simd_avx2_test.cc 155LIBAOM_TEST_SRCS-$(HAVE_NEON) += simd_neon_test.cc 156LIBAOM_TEST_SRCS-yes += intrapred_test.cc 157LIBAOM_TEST_SRCS-$(CONFIG_INTRABC) += intrabc_test.cc 158#LIBAOM_TEST_SRCS-$(CONFIG_AV1_DECODER) += av1_thread_test.cc 159LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += dct16x16_test.cc 160LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += dct32x32_test.cc 161LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += fdct4x4_test.cc 162LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += fdct8x8_test.cc 163LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += hadamard_test.cc 164LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += minmax_test.cc 165LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += variance_test.cc 166LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += error_block_test.cc 167#LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_quantize_test.cc 168LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += subtract_test.cc 169LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += arf_freq_test.cc 170ifneq ($(CONFIG_NEW_QUANT), yes) 171LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += quantize_func_test.cc 172endif 173LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += block_error_test.cc 174 175LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_inv_txfm_test.cc 176LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_dct_test.cc 177LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_fht4x4_test.cc 178LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_fht8x8_test.cc 179LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_fht16x16_test.cc 180LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_fht32x32_test.cc 181ifeq ($(CONFIG_TX64X64),yes) 182LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_fht64x64_test.cc 183endif 184ifeq ($(CONFIG_EXT_TX),yes) 185LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_fht4x8_test.cc 186LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_fht8x4_test.cc 187LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_fht8x16_test.cc 188LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_fht16x8_test.cc 189LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_fht16x32_test.cc 190LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_fht32x16_test.cc 191endif 192 193LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += sum_squares_test.cc 194LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += subtract_test.cc 195LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += blend_a64_mask_test.cc 196LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += blend_a64_mask_1d_test.cc 197 198LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += masked_variance_test.cc 199LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += masked_sad_test.cc 200LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_wedge_utils_test.cc 201 202## Skip the unit test written for 4-tap filter intra predictor, because we 203## revert to 3-tap filter. 204## ifeq ($(CONFIG_FILTER_INTRA),yes) 205## LIBAOM_TEST_SRCS-$(HAVE_SSE4_1) += filterintra_predictors_test.cc 206## endif 207 208ifeq ($(CONFIG_MOTION_VAR),yes) 209LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += obmc_sad_test.cc 210LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += obmc_variance_test.cc 211endif 212 213ifeq ($(CONFIG_HIGHBITDEPTH),yes) 214ifeq ($(CONFIG_AV1_ENCODER),yes) 215LIBAOM_TEST_SRCS-$(HAVE_SSE4_1) += av1_quantize_test.cc 216LIBAOM_TEST_SRCS-$(HAVE_SSE4_1) += av1_highbd_iht_test.cc 217endif 218endif # CONFIG_HIGHBITDEPTH 219endif # AV1 220 221## Multi-codec / unconditional whitebox tests. 222 223ifeq ($(CONFIG_AV1_ENCODER),yes) 224LIBAOM_TEST_SRCS-yes += avg_test.cc 225endif 226ifeq ($(CONFIG_INTERNAL_STATS),yes) 227LIBAOM_TEST_SRCS-$(CONFIG_HIGHBITDEPTH) += hbd_metrics_test.cc 228endif 229LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += sad_test.cc 230LIBAOM_TEST_SRCS-$(CONFIG_AV1) += av1_txfm_test.h 231LIBAOM_TEST_SRCS-$(CONFIG_AV1) += av1_txfm_test.cc 232LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_fwd_txfm1d_test.cc 233LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_inv_txfm1d_test.cc 234LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_fwd_txfm2d_test.cc 235LIBAOM_TEST_SRCS-$(CONFIG_AV1_ENCODER) += av1_inv_txfm2d_test.cc 236LIBAOM_TEST_SRCS-$(CONFIG_AV1) += av1_convolve_test.cc 237LIBAOM_TEST_SRCS-$(CONFIG_AV1) += av1_convolve_optimz_test.cc 238ifneq ($(findstring yes,$(CONFIG_GLOBAL_MOTION)$(CONFIG_WARPED_MOTION)),) 239LIBAOM_TEST_SRCS-$(HAVE_SSE2) += warp_filter_test_util.h 240LIBAOM_TEST_SRCS-$(HAVE_SSE2) += warp_filter_test.cc warp_filter_test_util.cc 241endif 242ifeq ($(CONFIG_LOOP_RESTORATION),yes) 243LIBAOM_TEST_SRCS-$(HAVE_SSE2) += hiprec_convolve_test_util.h 244LIBAOM_TEST_SRCS-$(HAVE_SSE2) += hiprec_convolve_test.cc 245LIBAOM_TEST_SRCS-$(HAVE_SSE2) += hiprec_convolve_test_util.cc 246LIBAOM_TEST_SRCS-$(HAVE_SSE4_1) += selfguided_filter_test.cc 247endif 248ifeq ($(CONFIG_CONVOLVE_ROUND),yes) 249LIBAOM_TEST_SRCS-$(HAVE_SSE2) += av1_convolve_2d_test_util.h 250LIBAOM_TEST_SRCS-$(HAVE_SSE2) += av1_convolve_2d_test.cc 251LIBAOM_TEST_SRCS-$(HAVE_SSE2) += av1_convolve_2d_test_util.cc 252LIBAOM_TEST_SRCS-yes += convolve_round_test.cc 253endif 254 255ifeq (yesx,$(CONFIG_CONVOLVE_ROUND)x$(CONFIG_COMPOUND_ROUND)) 256LIBAOM_TEST_SRCS-$(HAVE_SSE4_1) += av1_convolve_scale_test.cc 257endif 258 259ifeq ($(CONFIG_GLOBAL_MOTION)$(CONFIG_AV1_ENCODER),yesyes) 260LIBAOM_TEST_SRCS-$(HAVE_SSE4_1) += corner_match_test.cc 261endif 262 263TEST_INTRA_PRED_SPEED_SRCS-yes := test_intra_pred_speed.cc 264TEST_INTRA_PRED_SPEED_SRCS-yes += ../md5_utils.h ../md5_utils.c 265 266endif # CONFIG_SHARED 267 268include $(SRC_PATH_BARE)/test/test-data.mk 269