36b965882244a6026b2e2dfa3526f06cb1f5b73e
[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%: CODEC = $(word 3, $(subst -, ,$(@)))
4 fate-vsynth%: FMT = avi
5 fate-vsynth%: CMD = enc_dec "rawvideo -s 352x288 -pix_fmt yuv420p" $(SRC) $(FMT) "-c $(CODEC) $(ENCOPTS)" rawvideo "-s 352x288 -pix_fmt yuv420p $(DECOPTS)" -keep
6 fate-vsynth%: CMP_UNIT = 1
7 fate-vsynth%: REF = $(SRC_PATH)/tests/ref/vsynth/$(@:fate-%=%)
8
9 FATE_VCODEC-$(call ENCDEC, ASV1, AVI)   += asv1
10 fate-vsynth%-asv1:               ENCOPTS = -qscale 10
11
12 FATE_VCODEC-$(call ENCDEC, ASV2, AVI)   += asv2
13 fate-vsynth%-asv2:               ENCOPTS = -qscale 10
14
15 FATE_VCODEC-$(call ENCDEC, CLJR, AVI)   += cljr
16
17 FATE_VCODEC-$(call ENCDEC, DNXHD, DNXHD) += dnxhd-720p                  \
18                                             dnxhd-720p-rd               \
19                                             dnxhd-720p-10bit
20
21 fate-vsynth%-dnxhd-720p:         ENCOPTS = -s hd720 -b 90M              \
22                                            -pix_fmt yuv422p -frames 5
23 fate-vsynth%-dnxhd-720p:         FMT     = dnxhd
24
25 fate-vsynth%-dnxhd-720p-rd:      ENCOPTS = -s hd720 -b 90M -threads 4 -mbd rd \
26                                            -pix_fmt yuv422p -frames 5
27 fate-vsynth%-dnxhd-720p-rd:      FMT     = dnxhd
28
29 fate-vsynth%-dnxhd-720p-10bit:   ENCOPTS = -s hd720 -b 90M              \
30                                            -pix_fmt yuv422p10 -frames 5
31 fate-vsynth%-dnxhd-720p-10bit:   FMT     = dnxhd
32
33 FATE_VCODEC-$(call ENCDEC, DNXHD, MOV)  += dnxhd-1080i
34 fate-vsynth%-dnxhd-1080i:        ENCOPTS = -s hd1080 -b 120M -flags +ildct \
35                                            -pix_fmt yuv422p -frames 5
36 fate-vsynth%-dnxhd-1080i:        FMT     = mov
37
38 FATE_VCODEC-$(call ENCDEC, DVVIDEO, DV) += dv dv-411 dv-50
39 fate-vsynth%-dv:                 CODEC   = dvvideo
40 fate-vsynth%-dv:                 ENCOPTS = -dct int -s pal
41 fate-vsynth%-dv:                 FMT     = dv
42
43 fate-vsynth%-dv-411:             CODEC   = dvvideo
44 fate-vsynth%-dv-411:             ENCOPTS = -dct int -s pal -pix_fmt yuv411p \
45                                            -sws_flags area
46 fate-vsynth%-dv-411:             DECOPTS = -sws_flags area
47 fate-vsynth%-dv-411:             FMT     = dv
48
49 fate-vsynth%-dv-50:              CODEC   = dvvideo
50 fate-vsynth%-dv-50:              ENCOPTS = -dct int -s pal -pix_fmt yuv422p \
51                                            -sws_flags neighbor
52 fate-vsynth%-dv-50:              DECOPTS = -sws_flags neighbor
53 fate-vsynth%-dv-50:              FMT     = dv
54
55 FATE_VCODEC-$(call ENCDEC, FFV1, AVI)   += ffv1
56 fate-vsynth%-ffv1:               ENCOPTS = -strict -2
57
58 FATE_VCODEC-$(call ENCDEC, FFVHUFF, AVI) += ffvhuff
59
60 FATE_VCODEC-$(call ENCDEC, FLASHSV, FLV) += flashsv
61 fate-vsynth%-flashsv:            ENCOPTS = -sws_flags neighbor+full_chroma_int
62 fate-vsynth%-flashsv:            DECOPTS = -sws_flags area
63 fate-vsynth%-flashsv:            FMT     = flv
64
65 FATE_VCODEC-$(call ENCDEC, FLV, FLV)    += flv
66 fate-vsynth%-flv:                ENCOPTS = -qscale 10
67 fate-vsynth%-flv:                FMT     = flv
68
69 FATE_VCODEC-$(call ENCDEC, H261, AVI)   += h261
70 fate-vsynth%-h261:               ENCOPTS = -qscale 11
71
72 FATE_VCODEC-$(call ENCDEC, H263, AVI)   += h263 h263-obmc h263p
73 fate-vsynth%-h263:               ENCOPTS = -qscale 10
74 fate-vsynth%-h263-obmc:          ENCOPTS = -qscale 10 -obmc 1
75 fate-vsynth%-h263p:              ENCOPTS = -qscale 2 -flags +aic -umv 1 -aiv 1 -ps 300
76
77 FATE_VCODEC-$(call ENCDEC, HUFFYUV, AVI) += huffyuv
78 fate-vsynth%-huffyuv:            ENCOPTS = -pix_fmt yuv422p -sws_flags neighbor
79 fate-vsynth%-huffyuv:            DECOPTS = -strict -2 -sws_flags neighbor
80
81 FATE_VCODEC-$(call ENCDEC, JPEGLS, AVI) += jpegls
82 fate-vsynth%-jpegls:             ENCOPTS = -sws_flags neighbor+full_chroma_int
83 fate-vsynth%-jpegls:             DECOPTS = -sws_flags area
84
85 FATE_VCODEC-$(call ENCDEC, LJPEG MJPEG, AVI) += ljpeg
86 fate-vsynth%-ljpeg:              ENCOPTS = -strict -1
87
88 FATE_VCODEC-$(call ENCDEC, MJPEG, AVI)  += mjpeg
89 fate-vsynth%-mjpeg:              ENCOPTS = -qscale 9 -pix_fmt yuvj420p
90
91 FATE_VCODEC-$(call ENCDEC, MPEG1VIDEO, MPEG1VIDEO MPEGVIDEO) += mpeg1 mpeg1b
92 fate-vsynth%-mpeg1:              FMT     = mpeg1video
93 fate-vsynth%-mpeg1:              CODEC   = mpeg1video
94 fate-vsynth%-mpeg1:              ENCOPTS = -qscale 10
95
96 fate-vsynth%-mpeg1b:             CODEC   = mpeg1video
97 fate-vsynth%-mpeg1b:             ENCOPTS = -qscale 8 -bf 3 -ps 200
98 fate-vsynth%-mpeg1b:             FMT     = mpeg1video
99
100 FATE_MPEG2 = mpeg2                                                      \
101              mpeg2-422                                                  \
102              mpeg2-idct-int                                             \
103              mpeg2-ilace                                                \
104              mpeg2-ivlc-qprd                                            \
105              mpeg2-thread                                               \
106              mpeg2-thread-ivlc
107
108 FATE_VCODEC-$(call ENCDEC, MPEG2VIDEO, MPEG2VIDEO MPEGVIDEO) += $(FATE_MPEG2)
109
110 $(FATE_MPEG2:%=fate-vsynth\%-%): FMT    = mpeg2video
111 $(FATE_MPEG2:%=fate-vsynth\%-%): CODEC  = mpeg2video
112
113 fate-vsynth%-mpeg2:              ENCOPTS = -qscale 10
114 fate-vsynth%-mpeg2-422:          ENCOPTS = -vb 1000k                    \
115                                            -bf 2                        \
116                                            -trellis 1                   \
117                                            -flags +mv0+ildct+ilme       \
118                                            -mpv_flags +qp_rd            \
119                                            -intra_vlc 1                 \
120                                            -mbd rd                      \
121                                            -pix_fmt yuv422p
122 fate-vsynth%-mpeg2-idct-int:     ENCOPTS = -qscale 10 -idct int -dct int
123 fate-vsynth%-mpeg2-ilace:        ENCOPTS = -qscale 10 -flags +ildct+ilme
124 fate-vsynth%-mpeg2-ivlc-qprd:    ENCOPTS = -vb 500k                     \
125                                            -bf 2                        \
126                                            -trellis 1                   \
127                                            -flags +mv0                  \
128                                            -mpv_flags +qp_rd            \
129                                            -intra_vlc 1                 \
130                                            -cmp 2 -subcmp 2             \
131                                            -mbd rd
132 fate-vsynth%-mpeg2-thread:       ENCOPTS = -qscale 10 -bf 2 -flags +ildct+ilme \
133                                            -threads 2 -slices 2
134 fate-vsynth%-mpeg2-thread-ivlc:  ENCOPTS = -qscale 10 -bf 2 -flags +ildct+ilme \
135                                            -intra_vlc 1 -threads 2 -slices 2
136
137 FATE_MPEG4_MP4 = mpeg4
138 FATE_MPEG4_AVI = mpeg4-rc                                               \
139                  mpeg4-adv                                              \
140                  mpeg4-qprd                                             \
141                  mpeg4-adap                                             \
142                  mpeg4-qpel                                             \
143                  mpeg4-thread                                           \
144                  mpeg4-error                                            \
145                  mpeg4-nr
146
147 FATE_VCODEC-$(call ENCDEC, MPEG4, MP4 MOV) += $(FATE_MPEG4_MP4)
148 FATE_VCODEC-$(call ENCDEC, MPEG4, AVI)     += $(FATE_MPEG4_AVI)
149
150 fate-vsynth%-mpeg4:              ENCOPTS = -qscale 10 -flags +mv4 -mbd bits
151 fate-vsynth%-mpeg4:              FMT     = mp4
152
153 fate-vsynth%-mpeg4-rc:           ENCOPTS = -b 400k -bf 2
154
155 fate-vsynth%-mpeg4-adv:          ENCOPTS = -qscale 9 -flags +mv4+aic       \
156                                            -data_partitioning 1 -trellis 1 \
157                                            -mbd bits -ps 200
158
159 fate-vsynth%-mpeg4-qprd:         ENCOPTS = -b 450k -bf 2 -trellis 1          \
160                                            -flags +mv4+mv0 -mpv_flags +qp_rd \
161                                            -cmp 2 -subcmp 2 -mbd rd
162
163 fate-vsynth%-mpeg4-adap:         ENCOPTS = -b 550k -bf 2 -flags +mv4+mv0 \
164                                            -trellis 1 -cmp 1 -subcmp 2   \
165                                            -mbd rd -scplx_mask 0.3
166
167 fate-vsynth%-mpeg4-qpel:         ENCOPTS = -qscale 7 -flags +mv4+qpel -mbd 2 \
168                                            -bf 2 -cmp 1 -subcmp 2
169
170 fate-vsynth%-mpeg4-thread:       ENCOPTS = -b 500k -flags +mv4+aic         \
171                                            -data_partitioning 1 -trellis 1 \
172                                            -mbd bits -ps 200 -bf 2         \
173                                            -threads 2 -slices 2
174
175 fate-vsynth%-mpeg4-error:        ENCOPTS = -qscale 7 -flags +mv4+aic    \
176                                            -data_partitioning 1 -mbd rd \
177                                            -ps 250 -error 10
178
179 fate-vsynth%-mpeg4-nr:           ENCOPTS = -qscale 8 -flags +mv4 -mbd rd -nr 200
180
181 FATE_VCODEC-$(call ENCDEC, MSMPEG4V3, AVI) += msmpeg4
182 fate-vsynth%-msmpeg4:            ENCOPTS = -qscale 10
183
184 FATE_VCODEC-$(call ENCDEC, MSMPEG4V2, AVI) += msmpeg4v2
185 fate-vsynth%-msmpeg4v2:          ENCOPTS = -qscale 10
186
187 FATE_VCODEC-$(call ENCDEC, PRORES, MOV) += prores
188 fate-vsynth%-prores:             ENCOPTS = -profile hq
189 fate-vsynth%-prores:             FMT     = mov
190
191 FATE_VCODEC-$(call ENCDEC, QTRLE, MOV)  += qtrle
192 fate-vsynth%-qtrle:              FMT     = mov
193
194 FATE_VCODEC-$(call ENCDEC, RAWVIDEO, AVI) += rgb
195 fate-vsynth%-rgb:                CODEC   = rawvideo
196 fate-vsynth%-rgb:                ENCOPTS = -pix_fmt bgr24
197
198 FATE_VCODEC-$(call ENCDEC, ROQ, ROQ)    += roqvideo
199 fate-vsynth%-roqvideo:           CODEC   = roqvideo
200 fate-vsynth%-roqvideo:           ENCOPTS = -frames 5
201 fate-vsynth%-roqvideo:           FMT     = roq
202
203 FATE_VCODEC-$(call ENCDEC, RV10, RM)    += rv10
204 fate-vsynth%-rv10:               ENCOPTS = -qscale 10
205 fate-vsynth%-rv10:               FMT     = rm
206
207 FATE_VCODEC-$(call ENCDEC, RV20, RM)    += rv20
208 fate-vsynth%-rv20:               ENCOPTS = -qscale 10
209 fate-vsynth%-rv20:               FMT     = rm
210
211 FATE_VCODEC-$(call ENCDEC, SNOW, AVI)   += snow snow-hpel snow-ll
212 fate-vsynth%-snow:               ENCOPTS = -strict -2 -qscale 2 -flags +qpel \
213                                            -me_method iter -dia_size 2       \
214                                            -cmp 12 -subcmp 12 -s 128x64
215
216 fate-vsynth%-snow-hpel:          ENCOPTS = -strict -2 -qscale 2              \
217                                            -me_method iter -dia_size 2       \
218                                            -cmp 12 -subcmp 12 -s 128x64
219
220 fate-vsynth%-snow-ll:            ENCOPTS = -strict -2 -qscale .001 -pred 1 \
221                                            -flags +mv4+qpel
222
223 FATE_VCODEC-$(call ENCDEC, SVQ1, MOV)   += svq1
224 fate-vsynth%-svq1:               ENCOPTS = -qscale 3 -pix_fmt yuv410p
225 fate-vsynth%-svq1:               FMT     = mov
226
227 FATE_VCODEC-$(call ENCDEC, V210, AVI)   += v210
228
229 FATE_VCODEC-$(call ENCDEC, WMV1, AVI)   += wmv1
230 fate-vsynth%-wmv1:               ENCOPTS = -qscale 10
231
232 FATE_VCODEC-$(call ENCDEC, WMV2, AVI)   += wmv2
233 fate-vsynth%-wmv2:               ENCOPTS = -qscale 10
234
235 FATE_VCODEC-$(call ENCDEC, RAWVIDEO, AVI) += yuv
236 fate-vsynth%-yuv:                CODEC = rawvideo
237
238 FATE_VCODEC += $(FATE_VCODEC-yes)
239 FATE_VSYNTH1 = $(FATE_VCODEC:%=fate-vsynth1-%)
240 FATE_VSYNTH2 = $(FATE_VCODEC:%=fate-vsynth2-%)
241
242 $(FATE_VSYNTH1): tests/data/vsynth1.yuv
243 $(FATE_VSYNTH2): tests/data/vsynth2.yuv
244
245 FATE_AVCONV += $(FATE_VSYNTH1) $(FATE_VSYNTH2)
246
247 fate-vsynth1: $(FATE_VSYNTH1)
248 fate-vsynth2: $(FATE_VSYNTH2)
249 fate-vcodec:  fate-vsynth1 fate-vsynth2