1# Read/write tests: this uses the codec metadata filter - with no 2# arguments, it decomposes the stream fully and then recomposes it 3# without making any changes. 4 5fate-cbs: fate-cbs-h264 fate-cbs-hevc fate-cbs-mpeg2 fate-cbs-vp9 6 7FATE_CBS_DEPS = $(call ALLYES, $(1)_DEMUXER $(2)_PARSER $(3)_METADATA_BSF $(4)_DECODER $(5)_MUXER) 8 9define FATE_CBS_TEST 10# (codec, test_name, sample_file, output_format) 11FATE_CBS_$(1) += fate-cbs-$(1)-$(2) 12fate-cbs-$(1)-$(2): CMD = md5 -i $(TARGET_SAMPLES)/$(3) -c:v copy -y -bsf:v $(1)_metadata -f $(4) 13endef 14 15# H.264 read/write 16 17FATE_CBS_H264_CONFORMANCE_SAMPLES = \ 18 SVA_Base_B.264 \ 19 BASQP1_Sony_C.jsv \ 20 FM1_BT_B.h264 \ 21 CVFC1_Sony_C.jsv \ 22 AUD_MW_E.264 \ 23 CVBS3_Sony_C.jsv \ 24 MR1_BT_A.h264 \ 25 CVWP1_TOSHIBA_E.264 \ 26 CVNLFI1_Sony_C.jsv \ 27 Sharp_MP_PAFF_1r2.jvt \ 28 CVMANL1_TOSHIBA_B.264 \ 29 sp1_bt_a.h264 \ 30 CVSE2_Sony_B.jsv \ 31 CABACI3_Sony_B.jsv 32 33FATE_CBS_H264_SAMPLES = \ 34 sei-1.h264 35 36$(foreach N,$(FATE_CBS_H264_CONFORMANCE_SAMPLES),$(eval $(call FATE_CBS_TEST,h264,$(basename $(N)),h264-conformance/$(N),h264))) 37$(foreach N,$(FATE_CBS_H264_SAMPLES),$(eval $(call FATE_CBS_TEST,h264,$(basename $(N)),h264/$(N),h264))) 38 39FATE_CBS_H264-$(call FATE_CBS_DEPS, H264, H264, H264, H264, H264) = $(FATE_CBS_h264) 40FATE_SAMPLES_AVCONV += $(FATE_CBS_H264-yes) 41fate-cbs-h264: $(FATE_CBS_H264-yes) 42 43# H.265 read/write 44 45FATE_CBS_HEVC_SAMPLES = \ 46 STRUCT_A_Samsung_5.bit \ 47 WP_A_Toshiba_3.bit \ 48 SLIST_A_Sony_4.bit \ 49 SLIST_D_Sony_9.bit \ 50 CAINIT_E_SHARP_3.bit \ 51 CAINIT_H_SHARP_3.bit \ 52 TILES_B_Cisco_1.bit \ 53 WPP_A_ericsson_MAIN_2.bit \ 54 WPP_F_ericsson_MAIN_2.bit \ 55 ipcm_E_NEC_2.bit \ 56 NUT_A_ericsson_5.bit \ 57 PICSIZE_A_Bossen_1.bit \ 58 PICSIZE_B_Bossen_1.bit \ 59 RPS_A_docomo_4.bit \ 60 RPS_E_qualcomm_5.bit \ 61 LTRPSPS_A_Qualcomm_1.bit \ 62 RPLM_A_qualcomm_4.bit \ 63 CONFWIN_A_Sony_1.bit \ 64 HRD_A_Fujitsu_2.bit 65 66$(foreach N,$(FATE_CBS_HEVC_SAMPLES),$(eval $(call FATE_CBS_TEST,hevc,$(basename $(N)),hevc-conformance/$(N),hevc))) 67 68FATE_CBS_HEVC-$(call FATE_CBS_DEPS, HEVC, HEVC, HEVC, HEVC, HEVC) = $(FATE_CBS_hevc) 69FATE_SAMPLES_AVCONV += $(FATE_CBS_HEVC-yes) 70fate-cbs-hevc: $(FATE_CBS_HEVC-yes) 71 72# MPEG-2 read/write 73 74FATE_CBS_MPEG2_SAMPLES = \ 75 hhi_burst_422_short.bits \ 76 sony-ct3.bs \ 77 tcela-6.bits 78 79$(foreach N,$(FATE_CBS_MPEG2_SAMPLES),$(eval $(call FATE_CBS_TEST,mpeg2,$(basename $(N)),mpeg2/$(N),mpeg2video))) 80 81FATE_CBS_MPEG2-$(call FATE_CBS_DEPS, MPEGVIDEO, MPEGVIDEO, MPEG2, MPEG2VIDEO, MPEG2VIDEO) = $(FATE_CBS_mpeg2) 82FATE_SAMPLES_AVCONV += $(FATE_CBS_MPEG2-yes) 83fate-cbs-mpeg2: $(FATE_CBS_MPEG2-yes) 84 85# VP9 read/write 86 87FATE_CBS_VP9_SAMPLES = \ 88 vp90-2-03-deltaq.webm \ 89 vp90-2-05-resize.ivf \ 90 vp90-2-06-bilinear.webm \ 91 vp90-2-09-lf_deltas.webm \ 92 vp90-2-10-show-existing-frame.webm \ 93 vp90-2-10-show-existing-frame2.webm \ 94 vp90-2-segmentation-aq-akiyo.webm \ 95 vp90-2-segmentation-sf-akiyo.webm \ 96 vp90-2-tiling-pedestrian.webm \ 97 vp91-2-04-yuv440.webm \ 98 vp91-2-04-yuv444.webm \ 99 vp92-2-20-10bit-yuv420.webm \ 100 vp93-2-20-10bit-yuv422.webm \ 101 vp93-2-20-12bit-yuv444.webm 102 103$(foreach N,$(FATE_CBS_VP9_SAMPLES),$(eval $(call FATE_CBS_TEST,vp9,$(basename $(N)),vp9-test-vectors/$(N),ivf))) 104 105FATE_CBS_VP9-$(call FATE_CBS_DEPS, IVF, VP9, VP9, VP9, IVF) = $(FATE_CBS_vp9) 106FATE_SAMPLES_AVCONV += $(FATE_CBS_VP9-yes) 107fate-cbs-vp9: $(FATE_CBS_VP9-yes) 108