fate: add cinepak encoder vsynth tests
[ffmpeg.git] / tests / fate / vcodec.mak
1 fate-vsynth1-%: SRC = tests/data/vsynth1.yuv
2 fate-vsynth2-%: SRC = tests/data/vsynth2.yuv
3 fate-vsynth_lena-%: SRC = tests/data/vsynth_lena.yuv
4 fate-vsynth3-%: SRC = tests/data/vsynth3.yuv
5 fate-vsynth%: CODEC = $(word 3, $(subst -, ,$(@)))
6 fate-vsynth%: FMT = avi
7 fate-vsynth%: CMD = enc_dec "rawvideo -s 352x288 -pix_fmt yuv420p $(RAWDECOPTS)" $(SRC) $(FMT) "-c $(CODEC) $(ENCOPTS)" rawvideo "-s 352x288 -pix_fmt yuv420p -vsync 0 $(DECOPTS)" -keep "$(DECINOPTS)"
8 fate-vsynth3-%: CMD = enc_dec "rawvideo -s $(FATEW)x$(FATEH) -pix_fmt yuv420p $(RAWDECOPTS)" $(SRC) $(FMT) "-c $(CODEC) $(ENCOPTS)" rawvideo "-s $(FATEW)x$(FATEH) -pix_fmt yuv420p -vsync 0 $(DECOPTS)" -keep "$(DECINOPTS)"
9 fate-vsynth%: CMP_UNIT = 1
10 fate-vsynth%: REF = $(SRC_PATH)/tests/ref/vsynth/$(@:fate-%=%)
11
12 FATE_VCODEC-$(call ENCDEC, AMV, AVI) += amv
13 fate-vsynth%-amv:                ENCOPTS = -strict -1
14
15 FATE_VCODEC-$(call ENCDEC, ASV1, AVI)   += asv1
16 fate-vsynth%-asv1:               ENCOPTS = -qscale 10
17
18 FATE_VCODEC-$(call ENCDEC, ASV2, AVI)   += asv2
19 fate-vsynth%-asv2:               ENCOPTS = -qscale 10
20
21 FATE_VCODEC-$(call ENCDEC, CINEPAK, MOV) += cinepak
22 fate-vsynth%-cinepak:            ENCOPTS  = -vcodec cinepak -frames 3
23 fate-vsynth%-cinepak:            FMT      = mov
24
25 FATE_VCODEC-$(call ENCDEC, CLJR, AVI)   += cljr
26 fate-vsynth%-cljr:               ENCOPTS = -strict -1
27
28 FATE_VCODEC-$(call ENCDEC, DNXHD, DNXHD) += dnxhd-720p                  \
29                                             dnxhd-720p-rd               \
30                                             dnxhd-720p-10bit
31
32 fate-vsynth%-dnxhd-720p:         ENCOPTS = -s hd720 -b 90M              \
33                                            -pix_fmt yuv422p -frames 5 -qmax 8
34 fate-vsynth%-dnxhd-720p:         FMT     = dnxhd
35
36 fate-vsynth%-dnxhd-720p-rd:      ENCOPTS = -s hd720 -b 90M -threads 4 -mbd rd \
37                                            -pix_fmt yuv422p -frames 5 -qmax 8
38 fate-vsynth%-dnxhd-720p-rd:      FMT     = dnxhd
39
40 fate-vsynth%-dnxhd-720p-10bit:   ENCOPTS = -s hd720 -b 90M              \
41                                            -pix_fmt yuv422p10 -frames 5 -qmax 8
42 fate-vsynth%-dnxhd-720p-10bit:   FMT     = dnxhd
43
44 FATE_VCODEC-$(call ENCDEC, DNXHD, MOV)  += dnxhd-1080i dnxhd-1080i-colr
45 fate-vsynth%-dnxhd-1080i:        ENCOPTS = -s hd1080 -b 120M -flags +ildct \
46                                            -pix_fmt yuv422p -frames 5 -qmax 8
47 fate-vsynth%-dnxhd-1080i:        FMT     = mov
48
49 fate-vsynth%-dnxhd-1080i-colr:   ENCOPTS = -s hd1080 -b 120M -flags +ildct -movflags write_colr \
50                                            -pix_fmt yuv422p -frames 5 -qmax 8
51 fate-vsynth%-dnxhd-1080i-colr:   DECOPTS = -sws_flags area+accurate_rnd+bitexact
52 fate-vsynth%-dnxhd-1080i-colr:   FMT     = mov
53
54 FATE_VCODEC-$(call ENCDEC, DVVIDEO, DV) += dv dv-411 dv-50
55 fate-vsynth%-dv:                 CODEC   = dvvideo
56 fate-vsynth%-dv:                 ENCOPTS = -dct int -s pal
57 fate-vsynth%-dv:                 FMT     = dv
58
59 fate-vsynth%-dv-411:             CODEC   = dvvideo
60 fate-vsynth%-dv-411:             ENCOPTS = -dct int -s pal -pix_fmt yuv411p \
61                                            -sws_flags area
62 fate-vsynth%-dv-411:             DECOPTS = -sws_flags area
63 fate-vsynth%-dv-411:             FMT     = dv
64
65 fate-vsynth%-dv-50:              CODEC   = dvvideo
66 fate-vsynth%-dv-50:              ENCOPTS = -dct int -s pal -pix_fmt yuv422p \
67                                            -sws_flags neighbor
68 fate-vsynth%-dv-50:              DECOPTS = -sws_flags neighbor
69 fate-vsynth%-dv-50:              FMT     = dv
70
71 FATE_VCODEC-$(call ENCDEC, FFV1, AVI)   += ffv1 ffv1.0
72 fate-vsynth%-ffv1:               ENCOPTS = -slices 4
73 fate-vsynth%-ffv1.0:             CODEC   = ffv1
74
75 FATE_VCODEC-$(call ENCDEC, FFVHUFF, AVI) += ffvhuff ffvhuff444 ffvhuff420p12 ffvhuff422p10left ffvhuff444p16
76 fate-vsynth%-ffvhuff444:         ENCOPTS = -vcodec ffvhuff -pix_fmt yuv444p
77 fate-vsynth%-ffvhuff420p12:      ENCOPTS = -vcodec ffvhuff -pix_fmt yuv420p12le
78 fate-vsynth%-ffvhuff422p10left:  ENCOPTS = -vcodec ffvhuff -pix_fmt yuv422p10le -pred left
79 fate-vsynth%-ffvhuff444p16:      ENCOPTS = -vcodec ffvhuff -pix_fmt yuv444p16le -pred plane
80
81 FATE_VCODEC-$(call ENCDEC, FLASHSV, FLV) += flashsv
82 fate-vsynth%-flashsv:            ENCOPTS = -sws_flags neighbor+full_chroma_int
83 fate-vsynth%-flashsv:            DECOPTS = -sws_flags area
84 fate-vsynth%-flashsv:            FMT     = flv
85
86 FATE_VCODEC-$(call ENCDEC, FLASHSV2, FLV) += flashsv2
87 fate-vsynth%-flashsv2:           ENCOPTS = -sws_flags neighbor+full_chroma_int -strict experimental -compression_level 0
88 fate-vsynth%-flashsv2:           DECOPTS = -sws_flags area
89 fate-vsynth%-flashsv2:           FMT     = flv
90
91 FATE_VCODEC-$(call ENCDEC, FLV, FLV)    += flv
92 fate-vsynth%-flv:                ENCOPTS = -qscale 10
93 fate-vsynth%-flv:                FMT     = flv
94
95 FATE_VCODEC-$(call ENCDEC, H261, AVI)   += h261 h261-trellis
96 fate-vsynth%-h261:               ENCOPTS = -qscale 11
97 fate-vsynth%-h261-trellis:       ENCOPTS = -qscale 12 -trellis 1 -mbd rd
98
99 FATE_VCODEC-$(call ENCDEC, H263, AVI)   += h263 h263-obmc h263p
100 fate-vsynth%-h263:               ENCOPTS = -qscale 10
101 fate-vsynth%-h263-obmc:          ENCOPTS = -qscale 10 -obmc 1
102 fate-vsynth%-h263p:              ENCOPTS = -qscale 2 -flags +aic -umv 1 -aiv 1 -ps 300
103
104 FATE_VCODEC-$(call ENCDEC, HUFFYUV, AVI) += huffyuv huffyuvbgr24 huffyuvbgra
105 fate-vsynth%-huffyuv:            ENCOPTS = -vcodec huffyuv -pix_fmt yuv422p -sws_flags neighbor
106 fate-vsynth%-huffyuv:            DECOPTS = -sws_flags neighbor
107 fate-vsynth%-huffyuvbgr24:       ENCOPTS = -vcodec huffyuv -pix_fmt bgr24 -sws_flags neighbor
108 fate-vsynth%-huffyuvbgr24:       DECOPTS = -sws_flags neighbor
109 fate-vsynth%-huffyuvbgra:        ENCOPTS = -vcodec huffyuv -pix_fmt bgr32 -sws_flags neighbor
110 fate-vsynth%-huffyuvbgra:        DECOPTS = -sws_flags neighbor
111
112 FATE_VCODEC-$(call ENCDEC, JPEGLS, AVI) += jpegls
113 fate-vsynth%-jpegls:             ENCOPTS = -sws_flags neighbor+full_chroma_int
114 fate-vsynth%-jpegls:             DECOPTS = -sws_flags area
115
116 FATE_VCODEC-$(call ENCDEC, JPEG2000, AVI) += jpeg2000 jpeg2000-97
117 fate-vsynth%-jpeg2000:                ENCOPTS = -qscale 7 -strict experimental -pred 1 -pix_fmt rgb24
118 fate-vsynth%-jpeg2000:                DECINOPTS = -vcodec jpeg2000
119 fate-vsynth%-jpeg2000-97:             ENCOPTS = -qscale 7 -strict experimental -pix_fmt rgb24
120 fate-vsynth%-jpeg2000-97:             DECINOPTS = -vcodec jpeg2000
121
122 FATE_VCODEC-$(call ENCDEC, LJPEG MJPEG, AVI) += ljpeg
123 fate-vsynth%-ljpeg:              ENCOPTS = -strict -1
124
125 FATE_VCODEC-$(call ENCDEC, MJPEG, AVI)  += mjpeg mjpeg-422 mjpeg-444 mjpeg-trell
126 fate-vsynth%-mjpeg:              ENCOPTS = -qscale 9 -pix_fmt yuvj420p
127 fate-vsynth%-mjpeg-422:          ENCOPTS = -qscale 9 -pix_fmt yuvj422p
128 fate-vsynth%-mjpeg-444:          ENCOPTS = -qscale 9 -pix_fmt yuvj444p
129 fate-vsynth%-mjpeg-trell:        ENCOPTS = -qscale 9 -pix_fmt yuvj420p -trellis 1
130
131 FATE_VCODEC-$(call ENCDEC, MPEG1VIDEO, MPEG1VIDEO MPEGVIDEO) += mpeg1 mpeg1b
132 fate-vsynth%-mpeg1:              FMT     = mpeg1video
133 fate-vsynth%-mpeg1:              CODEC   = mpeg1video
134 fate-vsynth%-mpeg1:              ENCOPTS = -qscale 10
135
136 fate-vsynth%-mpeg1b:             CODEC   = mpeg1video
137 fate-vsynth%-mpeg1b:             ENCOPTS = -qscale 8 -bf 3 -ps 200
138 fate-vsynth%-mpeg1b:             FMT     = mpeg1video
139
140 FATE_MPEG2 = mpeg2                                                      \
141              mpeg2-422                                                  \
142              mpeg2-idct-int                                             \
143              mpeg2-ilace                                                \
144              mpeg2-ivlc-qprd                                            \
145              mpeg2-thread                                               \
146              mpeg2-thread-ivlc
147
148 FATE_VCODEC-$(call ENCDEC, MPEG2VIDEO, MPEG2VIDEO MPEGVIDEO) += $(FATE_MPEG2)
149
150 $(FATE_MPEG2:%=fate-vsynth\%-%): FMT    = mpeg2video
151 $(FATE_MPEG2:%=fate-vsynth\%-%): CODEC  = mpeg2video
152
153 fate-vsynth%-mpeg2:              ENCOPTS = -qscale 10
154 fate-vsynth%-mpeg2-422:          ENCOPTS = -b:v 1000k                   \
155                                            -bf 2                        \
156                                            -trellis 1                   \
157                                            -flags +mv0+ildct+ilme       \
158                                            -mpv_flags +qp_rd            \
159                                            -intra_vlc 1                 \
160                                            -mbd rd                      \
161                                            -pix_fmt yuv422p
162 fate-vsynth%-mpeg2-idct-int:     ENCOPTS = -qscale 10 -idct int -dct int
163 fate-vsynth%-mpeg2-ilace:        ENCOPTS = -qscale 10 -flags +ildct+ilme
164 fate-vsynth%-mpeg2-ivlc-qprd:    ENCOPTS = -b:v 500k                    \
165                                            -bf 2                        \
166                                            -trellis 1                   \
167                                            -flags +mv0                  \
168                                            -mpv_flags +qp_rd            \
169                                            -intra_vlc 1                 \
170                                            -cmp 2 -subcmp 2             \
171                                            -mbd rd
172 fate-vsynth%-mpeg2-thread:       ENCOPTS = -qscale 10 -bf 2 -flags +ildct+ilme \
173                                            -threads 2 -slices 2
174 fate-vsynth%-mpeg2-thread-ivlc:  ENCOPTS = -qscale 10 -bf 2 -flags +ildct+ilme \
175                                            -intra_vlc 1 -threads 2 -slices 2
176
177 FATE_MPEG4_MP4 = mpeg4
178 FATE_MPEG4_AVI = mpeg4-rc                                               \
179                  mpeg4-adv                                              \
180                  mpeg4-qprd                                             \
181                  mpeg4-adap                                             \
182                  mpeg4-qpel                                             \
183                  mpeg4-thread                                           \
184                  mpeg4-error                                            \
185                  mpeg4-nr                                               \
186                  mpeg4-nsse
187
188 FATE_VCODEC-$(call ENCDEC, MPEG4, MP4 MOV) += $(FATE_MPEG4_MP4)
189 FATE_VCODEC-$(call ENCDEC, MPEG4, AVI)     += $(FATE_MPEG4_AVI)
190
191 fate-vsynth%-mpeg4:              ENCOPTS = -qscale 10 -flags +mv4 -mbd bits
192 fate-vsynth%-mpeg4:              FMT     = mp4
193
194 fate-vsynth%-mpeg4-adap:         ENCOPTS = -b 550k -bf 2 -flags +mv4+mv0 \
195                                            -trellis 1 -cmp 1 -subcmp 2   \
196                                            -mbd rd -scplx_mask 0.3
197
198 fate-vsynth%-mpeg4-adv:          ENCOPTS = -qscale 9 -flags +mv4+aic       \
199                                            -data_partitioning 1 -trellis 1 \
200                                            -mbd bits -ps 200
201
202 fate-vsynth%-mpeg4-error:        ENCOPTS = -qscale 7 -flags +mv4+aic    \
203                                            -data_partitioning 1 -mbd rd \
204                                            -ps 250 -error 10
205
206 fate-vsynth%-mpeg4-nr:           ENCOPTS = -qscale 8 -flags +mv4 -mbd rd -nr 200
207
208 fate-vsynth%-mpeg4-nsse:         ENCOPTS = -qscale 7 -cmp nsse -subcmp nsse \
209                                            -mbcmp nsse -precmp nsse         \
210                                            -skipcmp nsse
211
212 fate-vsynth%-mpeg4-qpel:         ENCOPTS = -qscale 7 -flags +mv4+qpel -mbd 2 \
213                                            -bf 2 -cmp 1 -subcmp 2
214
215 fate-vsynth%-mpeg4-qprd:         ENCOPTS = -b 450k -bf 2 -trellis 1          \
216                                            -flags +mv4+mv0 -mpv_flags +qp_rd \
217                                            -cmp 2 -subcmp 2 -mbd rd
218
219 fate-vsynth%-mpeg4-rc:           ENCOPTS = -b 400k -bf 2
220
221 fate-vsynth%-mpeg4-thread:       ENCOPTS = -b 500k -flags +mv4+aic         \
222                                            -data_partitioning 1 -trellis 1 \
223                                            -mbd bits -ps 200 -bf 2         \
224                                            -threads 2 -slices 2
225
226 FATE_VCODEC-$(call ENCDEC, MSMPEG4V3, AVI) += msmpeg4
227 fate-vsynth%-msmpeg4:            ENCOPTS = -qscale 10
228
229 FATE_VCODEC-$(call ENCDEC, MSMPEG4V2, AVI) += msmpeg4v2
230 fate-vsynth%-msmpeg4v2:          ENCOPTS = -qscale 10
231
232 FATE_VCODEC-$(call ENCDEC, PNG, AVI)    += mpng
233 fate-vsynth%-mpng:               CODEC   = png
234
235 FATE_VCODEC-$(call ENCDEC, MSVIDEO1, AVI) += msvideo1
236
237 FATE_VCODEC-$(call ENCDEC, PRORES, MOV) += prores prores_ks
238 fate-vsynth%-prores:             FMT     = mov
239
240 fate-vsynth%-prores_ks:          ENCOPTS = -profile hq
241 fate-vsynth%-prores_ks:          FMT     = mov
242
243 FATE_VCODEC-$(call ENCDEC, QTRLE, MOV)  += qtrle qtrlegray
244 fate-vsynth%-qtrle:              FMT     = mov
245
246 fate-vsynth%-qtrlegray:          CODEC   = qtrle
247 fate-vsynth%-qtrlegray:          ENCOPTS = -pix_fmt gray
248 fate-vsynth%-qtrlegray:          FMT     = mov
249
250 FATE_VCODEC-$(call ENCDEC, RAWVIDEO, AVI) += rgb
251 fate-vsynth%-rgb:                CODEC   = rawvideo
252 fate-vsynth%-rgb:                ENCOPTS = -pix_fmt bgr24
253
254 FATE_VCODEC-$(call ENCDEC, ROQ, ROQ)    += roqvideo
255 fate-vsynth%-roqvideo:           CODEC   = roqvideo
256 fate-vsynth%-roqvideo:           ENCOPTS = -frames 5
257 fate-vsynth%-roqvideo:           RAWDECOPTS = -r 30
258 fate-vsynth%-roqvideo:           FMT     = roq
259
260 FATE_VCODEC-$(call ENCDEC, RV10, RM)    += rv10
261 fate-vsynth%-rv10:               ENCOPTS = -qscale 10
262 fate-vsynth%-rv10:               FMT     = rm
263
264 FATE_VCODEC-$(call ENCDEC, RV20, RM)    += rv20
265 fate-vsynth%-rv20:               ENCOPTS = -qscale 10
266 fate-vsynth%-rv20:               FMT     = rm
267
268 FATE_VCODEC-$(call ENCDEC, SNOW, AVI)   += snow snow-hpel snow-ll
269 fate-vsynth%-snow:               ENCOPTS = -qscale 2 -flags +qpel \
270                                            -me_method iter -dia_size 2       \
271                                            -cmp 12 -subcmp 12 -s 128x64
272
273 fate-vsynth%-snow-hpel:          ENCOPTS = -qscale 2              \
274                                            -me_method iter -dia_size 2       \
275                                            -cmp 12 -subcmp 12 -s 128x64
276
277 fate-vsynth%-snow-ll:            ENCOPTS = -qscale .001 -pred 1 \
278                                            -flags +mv4+qpel
279
280 FATE_VCODEC-$(call ENCDEC, SVQ1, MOV)   += svq1
281 fate-vsynth%-svq1:               ENCOPTS = -qscale 3 -pix_fmt yuv410p
282 fate-vsynth%-svq1:               FMT     = mov
283
284 FATE_VCODEC-$(call ENCDEC, R210, AVI)   += r210
285
286 FATE_VCODEC-$(call ENCDEC, V210, AVI)   += v210
287
288 FATE_VCODEC-$(call ENCDEC, V308, AVI)   += v308
289
290 FATE_VCODEC-$(call ENCDEC, V408, AVI)   += v408
291 fate-vsynth%-v408:               ENCOPTS = -sws_flags neighbor+bitexact
292 fate-vsynth%-v408:               DECOPTS = -sws_flags neighbor+bitexact
293
294 FATE_VCODEC-$(call ENCDEC, AVUI, MOV)   += avui
295 fate-vsynth%-avui:               ENCOPTS = -s pal -strict experimental -sws_flags neighbor+bitexact
296 fate-vsynth%-avui:               DECOPTS = -sws_flags neighbor+bitexact
297 fate-vsynth%-avui:               FMT     = mov
298
299 FATE_VCODEC-$(call ENCDEC, WMV1, AVI)   += wmv1
300 fate-vsynth%-wmv1:               ENCOPTS = -qscale 10
301
302 FATE_VCODEC-$(call ENCDEC, WMV2, AVI)   += wmv2
303 fate-vsynth%-wmv2:               ENCOPTS = -qscale 10
304
305 FATE_VCODEC-$(call ENCDEC, RAWVIDEO, AVI) += yuv
306 fate-vsynth%-yuv:                CODEC = rawvideo
307
308 FATE_VCODEC-$(call ENCDEC, XFACE, NUT) += xface
309 fate-vsynth%-xface:              ENCOPTS = -s 48x48 -sws_flags neighbor+bitexact
310 fate-vsynth%-xface:              DECOPTS = -sws_flags neighbor+bitexact
311 fate-vsynth%-xface:              FMT = nut
312
313 FATE_VCODEC-$(call ENCDEC, YUV4, AVI) += yuv4
314
315 FATE_VCODEC-$(call ENCDEC, Y41P, AVI) += y41p
316
317 FATE_VCODEC-$(call ENCDEC, ZLIB, AVI) += zlib
318
319 FATE_VCODEC += $(FATE_VCODEC-yes)
320 FATE_VSYNTH1 = $(FATE_VCODEC:%=fate-vsynth1-%)
321 FATE_VSYNTH2 = $(FATE_VCODEC:%=fate-vsynth2-%)
322 FATE_VSYNTH_LENA = $(FATE_VCODEC:%=fate-vsynth_lena-%)
323 # Redundant tests because they just resize the input
324 RESIZE_OFF   = dnxhd-720p dnxhd-720p-rd dnxhd-720p-10bit dnxhd-1080i \
325                dv dv-411 dv-50 avui snow snow-hpel snow-ll
326 # Incorrect parameters - usually size or color format restrictions
327 INC_PAR_OFF  = cinepak h261 h261-trellis h263 h263p h263-obmc msvideo1 \
328                roqvideo rv10 rv20 y41p qtrlegray
329 VSYNTH3_OFF  = $(RESIZE_OFF) $(INC_PAR_OFF)
330
331 FATE_VCODEC3 = $(filter-out $(VSYNTH3_OFF),$(FATE_VCODEC))
332 FATE_VSYNTH3 = $(FATE_VCODEC3:%=fate-vsynth3-%)
333
334 $(FATE_VSYNTH1): tests/data/vsynth1.yuv
335 $(FATE_VSYNTH2): tests/data/vsynth2.yuv
336 $(FATE_VSYNTH_LENA): tests/data/vsynth_lena.yuv
337 $(FATE_VSYNTH3): tests/data/vsynth3.yuv
338
339 FATE_AVCONV += $(FATE_VSYNTH1) $(FATE_VSYNTH2) $(FATE_VSYNTH3)
340 FATE_SAMPLES_AVCONV += $(FATE_VSYNTH_LENA)
341
342 fate-vsynth1: $(FATE_VSYNTH1)
343 fate-vsynth2: $(FATE_VSYNTH2)
344 fate-vsynth_lena: $(FATE_VSYNTH_LENA)
345 fate-vsynth3: $(FATE_VSYNTH3)
346 fate-vcodec:  fate-vsynth1 fate-vsynth_lena fate-vsynth2 fate-vsynth3