lavc: prefer the mp3float decoder to the mp3 decoder
[ffmpeg.git] / tests / fate / hevc.mak
1 HEVC_SAMPLES =                  \
2     AMP_A_Samsung_4             \
3     AMP_A_Samsung_6             \
4     AMP_B_Samsung_4             \
5     AMP_B_Samsung_6             \
6     AMP_D_Hisilicon             \
7     AMP_E_Hisilicon             \
8     AMP_F_Hisilicon_3           \
9     AMVP_A_MTK_4                \
10     AMVP_B_MTK_4                \
11     AMVP_C_Samsung_4            \
12     AMVP_C_Samsung_6            \
13     BUMPING_A_ericsson_1        \
14     CAINIT_A_SHARP_4            \
15     CAINIT_B_SHARP_4            \
16     CAINIT_C_SHARP_3            \
17     CAINIT_D_SHARP_3            \
18     CAINIT_E_SHARP_3            \
19     CAINIT_F_SHARP_3            \
20     CAINIT_G_SHARP_3            \
21     CAINIT_H_SHARP_3            \
22     CIP_A_Panasonic_3           \
23     cip_B_NEC_3                 \
24     CIP_C_Panasonic_2           \
25     CONFWIN_A_Sony_1            \
26     DBLK_A_SONY_3               \
27     DBLK_B_SONY_3               \
28     DBLK_C_SONY_3               \
29     DBLK_D_VIXS_2               \
30     DBLK_E_VIXS_2               \
31     DBLK_F_VIXS_2               \
32     DBLK_G_VIXS_2               \
33     DELTAQP_A_BRCM_4            \
34     DELTAQP_B_SONY_3            \
35     DELTAQP_C_SONY_3            \
36     DSLICE_A_HHI_5              \
37     DSLICE_B_HHI_5              \
38     DSLICE_C_HHI_5              \
39     ENTP_A_Qualcomm_1           \
40     ENTP_B_Qualcomm_1           \
41     ENTP_C_Qualcomm_1           \
42     EXT_A_ericsson_4            \
43     FILLER_A_Sony_1             \
44     HRD_A_Fujitsu_2             \
45     HRD_A_Fujitsu_3             \
46     INITQP_A_Sony_1             \
47     ipcm_A_NEC_3                \
48     ipcm_B_NEC_3                \
49     ipcm_C_NEC_3                \
50     ipcm_D_NEC_3                \
51     ipcm_E_NEC_2                \
52     IPRED_A_docomo_2            \
53     IPRED_B_Nokia_3             \
54     IPRED_C_Mitsubishi_3        \
55     LS_A_Orange_2               \
56     LS_B_ORANGE_4               \
57     LTRPSPS_A_Qualcomm_1        \
58     MAXBINS_A_TI_4              \
59     MAXBINS_B_TI_4              \
60     MAXBINS_C_TI_4              \
61     MERGE_A_TI_3                \
62     MERGE_B_TI_3                \
63     MERGE_C_TI_3                \
64     MERGE_D_TI_3                \
65     MERGE_E_TI_3                \
66     MERGE_F_MTK_4               \
67     MERGE_G_HHI_4               \
68     MVCLIP_A_qualcomm_3         \
69     MVDL1ZERO_A_docomo_3        \
70     MVEDGE_A_qualcomm_3         \
71     NoOutPrior_A_Qualcomm_1     \
72     NoOutPrior_B_Qualcomm_1     \
73     NUT_A_ericsson_5            \
74     OPFLAG_A_Qualcomm_1         \
75     OPFLAG_B_Qualcomm_1         \
76     OPFLAG_C_Qualcomm_1         \
77     PICSIZE_A_Bossen_1          \
78     PICSIZE_B_Bossen_1          \
79     PICSIZE_C_Bossen_1          \
80     PICSIZE_D_Bossen_1          \
81     PMERGE_A_TI_3               \
82     PMERGE_B_TI_3               \
83     PMERGE_C_TI_3               \
84     PMERGE_D_TI_3               \
85     PMERGE_E_TI_3               \
86     POC_A_Bossen_3              \
87     PPS_A_qualcomm_7            \
88     PS_A_VIDYO_3                \
89     PS_B_VIDYO_3                \
90     RAP_A_docomo_4              \
91     RAP_B_Bossen_1              \
92     RPLM_A_qualcomm_4           \
93     RPLM_B_qualcomm_4           \
94     RPS_A_docomo_4              \
95     RPS_B_qualcomm_5            \
96     RPS_C_ericsson_5            \
97     RPS_D_ericsson_6            \
98     RPS_E_qualcomm_5            \
99     RPS_F_docomo_1              \
100     RQT_A_HHI_4                 \
101     RQT_B_HHI_4                 \
102     RQT_C_HHI_4                 \
103     RQT_D_HHI_4                 \
104     RQT_E_HHI_4                 \
105     RQT_F_HHI_4                 \
106     RQT_G_HHI_4                 \
107     SAO_A_MediaTek_4            \
108     SAO_B_MediaTek_5            \
109     SAO_C_Samsung_4             \
110     SAO_C_Samsung_5             \
111     SAO_D_Samsung_4             \
112     SAO_D_Samsung_5             \
113     SAO_E_Canon_4               \
114     SAO_F_Canon_3               \
115     SAO_G_Canon_3               \
116     SDH_A_Orange_3              \
117     SLICES_A_Rovi_3             \
118     SLIST_A_Sony_4              \
119     SLIST_B_Sony_8              \
120     SLIST_C_Sony_3              \
121     SLIST_D_Sony_9              \
122     SLPPLP_A_VIDYO_1            \
123     SLPPLP_A_VIDYO_2            \
124     STRUCT_A_Samsung_5          \
125     STRUCT_B_Samsung_4          \
126     STRUCT_B_Samsung_6          \
127     TILES_A_Cisco_2             \
128     TILES_B_Cisco_1             \
129     TMVP_A_MS_3                 \
130     TSCL_A_VIDYO_5              \
131     TSCL_B_VIDYO_4              \
132     TSKIP_A_MS_3                \
133     TUSIZE_A_Samsung_1          \
134     VPSID_A_VIDYO_1             \
135     VPSID_A_VIDYO_2             \
136     WP_A_Toshiba_3              \
137     WP_B_Toshiba_3              \
138     WPP_A_ericsson_MAIN_2       \
139     WPP_B_ericsson_MAIN_2       \
140     WPP_C_ericsson_MAIN_2       \
141     WPP_D_ericsson_MAIN_2       \
142     WPP_E_ericsson_MAIN_2       \
143     WPP_F_ericsson_MAIN_2       \
144
145 HEVC_SAMPLES_10BIT =            \
146     DBLK_A_MAIN10_VIXS_3        \
147     WP_A_MAIN10_Toshiba_3       \
148     WP_MAIN10_B_Toshiba_3       \
149     WPP_A_ericsson_MAIN10_2     \
150     WPP_B_ericsson_MAIN10_2     \
151     WPP_C_ericsson_MAIN10_2     \
152     WPP_D_ericsson_MAIN10_2     \
153     WPP_E_ericsson_MAIN10_2     \
154     WPP_F_ericsson_MAIN10_2     \
155     INITQP_B_Sony_1             \
156
157 HEVC_SAMPLES_422_10BIT =        \
158     ADJUST_IPRED_ANGLE_A_RExt_Mitsubishi_1 \
159     IPCM_A_RExt_NEC             \
160
161 HEVC_SAMPLES_422_10BIN =        \
162     Main_422_10_A_RExt_Sony_1   \
163     Main_422_10_B_RExt_Sony_1   \
164
165 HEVC_SAMPLES_444_8BIT =         \
166     QMATRIX_A_RExt_Sony_1       \
167
168 HEVC_SAMPLES_444_12BIT =        \
169     IPCM_B_RExt_NEC             \
170     PERSIST_RPARAM_A_RExt_Sony_1\
171     PERSIST_RPARAM_A_RExt_Sony_3\
172     SAO_A_RExt_MediaTek_1       \
173
174
175 # equivalent bitstreams
176 # AMP_D_Hisilicon_3 -- AMP_D_Hisilicon
177 # AMP_E_Hisilicon_3 -- AMP_E_Hisilicon
178 # MVDL1ZERO_A_docomo_4 -- MVDL1ZERO_A_docomo_3
179 # RAP_A_docomo_5 -- RAP_A_docomo_4
180 # RAP_B_bossen_2 -- RAP_B_bossen_1
181 # RPS_A_docomo_5 -- RPS_A_docomo_4
182 # RPS_F_docomo_2 -- RPS_F_docomo_1
183
184 # do not pass:
185 # TSUNEQBD_A_MAIN10_Technicolor_2.bit (segfault mix 9-10bits)
186 # PERSIST_RPARAM_A_RExt_Sony_1 (rext)
187
188
189 define FATE_HEVC_TEST
190 FATE_HEVC += fate-hevc-conformance-$(1)
191 fate-hevc-conformance-$(1): CMD = framecrc -flags unaligned -vsync drop -i $(TARGET_SAMPLES)/hevc-conformance/$(1).bit -pix_fmt yuv420p
192 endef
193
194 define FATE_HEVC_TEST_10BIT
195 FATE_HEVC += fate-hevc-conformance-$(1)
196 fate-hevc-conformance-$(1): CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(1).bit -pix_fmt yuv420p10le
197 endef
198
199 define FATE_HEVC_TEST_422_10BIT
200 FATE_HEVC += fate-hevc-conformance-$(1)
201 fate-hevc-conformance-$(1): CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(1).bit -pix_fmt yuv422p10le
202 endef
203
204 define FATE_HEVC_TEST_422_10BIN
205 FATE_HEVC += fate-hevc-conformance-$(1)
206 fate-hevc-conformance-$(1): CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(1).bin -pix_fmt yuv422p10le
207 endef
208
209 define FATE_HEVC_TEST_444_8BIT
210 FATE_HEVC += fate-hevc-conformance-$(1)
211 fate-hevc-conformance-$(1): CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(1).bit -pix_fmt yuv444p
212 endef
213
214 define FATE_HEVC_TEST_444_12BIT
215 FATE_HEVC += fate-hevc-conformance-$(1)
216 fate-hevc-conformance-$(1): CMD = framecrc -flags unaligned -i $(TARGET_SAMPLES)/hevc-conformance/$(1).bit -pix_fmt yuv444p12le
217 endef
218
219 $(foreach N,$(HEVC_SAMPLES),$(eval $(call FATE_HEVC_TEST,$(N))))
220 $(foreach N,$(HEVC_SAMPLES_10BIT),$(eval $(call FATE_HEVC_TEST_10BIT,$(N))))
221 $(foreach N,$(HEVC_SAMPLES_422_10BIT),$(eval $(call FATE_HEVC_TEST_422_10BIT,$(N))))
222 $(foreach N,$(HEVC_SAMPLES_422_10BIN),$(eval $(call FATE_HEVC_TEST_422_10BIN,$(N))))
223 $(foreach N,$(HEVC_SAMPLES_444_8BIT),$(eval $(call FATE_HEVC_TEST_444_8BIT,$(N))))
224 $(foreach N,$(HEVC_SAMPLES_444_12BIT),$(eval $(call FATE_HEVC_TEST_444_12BIT,$(N))))
225
226 fate-hevc-paramchange-yuv420p-yuv420p10: CMD = framecrc -vsync 0 -i $(TARGET_SAMPLES)/hevc/paramchange_yuv420p_yuv420p10.hevc -sws_flags area+accurate_rnd+bitexact
227 FATE_HEVC += fate-hevc-paramchange-yuv420p-yuv420p10
228
229 fate-hevc-paired-fields: CMD = probeframes -show_entries frame=interlaced_frame,top_field_first $(TARGET_SAMPLES)/hevc/paired_fields.hevc
230 FATE_HEVC_FFPROBE-$(call DEMDEC, HEVC, HEVC) += fate-hevc-paired-fields
231
232 tests/data/hevc-mp4.mov: TAG = GEN
233 tests/data/hevc-mp4.mov: ffmpeg$(PROGSSUF)$(EXESUF) | tests/data
234         $(M)$(TARGET_EXEC) $(TARGET_PATH)/$< \
235         -i $(TARGET_SAMPLES)/hevc-conformance/WPP_A_ericsson_MAIN10_2.bit -c copy -flags +bitexact $(TARGET_PATH)/$@ -y 2>/dev/null
236
237 FATE_HEVC-$(call ALLYES, HEVC_DEMUXER MOV_DEMUXER HEVC_MP4TOANNEXB_BSF MOV_MUXER HEVC_MUXER) += fate-hevc-bsf-mp4toannexb
238 fate-hevc-bsf-mp4toannexb: tests/data/hevc-mp4.mov
239 fate-hevc-bsf-mp4toannexb: CMD = md5 -i $(TARGET_PATH)/tests/data/hevc-mp4.mov -c:v copy -fflags +bitexact -f hevc
240 fate-hevc-bsf-mp4toannexb: CMP = oneline
241 fate-hevc-bsf-mp4toannexb: REF = 1873662a3af1848c37e4eb25722c8df9
242
243 fate-hevc-skiploopfilter: CMD = framemd5 -skip_loop_filter nokey -i $(TARGET_SAMPLES)/hevc-conformance/SAO_D_Samsung_5.bit -sws_flags bitexact
244 FATE_HEVC += fate-hevc-skiploopfilter
245
246 FATE_HEVC-$(call DEMDEC, HEVC, HEVC) += $(FATE_HEVC)
247
248 # this sample has two stsd entries and needs to reload extradata
249 FATE_HEVC-$(call DEMDEC, MOV, HEVC) += fate-hevc-extradata-reload
250
251 fate-hevc-extradata-reload: CMD = framemd5 -i $(TARGET_SAMPLES)/hevc/extradata-reload-multi-stsd.mov -sws_flags bitexact
252
253 FATE_SAMPLES_AVCONV += $(FATE_HEVC-yes)
254 FATE_SAMPLES_FFPROBE += $(FATE_HEVC_FFPROBE-yes)
255
256 fate-hevc: $(FATE_HEVC-yes) $(FATE_HEVC_FFPROBE-yes)