Browse code

Split codec-regression.sh, and create the lavf-regression.sh script.

Originally committed as revision 20365 to svn://svn.ffmpeg.org/ffmpeg/trunk

Stefano Sabatini authored on 2009/10/25 02:01:47
Showing 3 changed files
... ...
@@ -297,7 +297,7 @@ $(CODEC_TESTS) regtest-ref: tests/tiny_psnr$(HOSTEXESUF)
297 297
 	$(SRC_PATH)/tests/codec-regression.sh $@ rotozoom tests/vsynth2 a "$(TARGET_EXEC)" "$(TARGET_PATH)"
298 298
 
299 299
 $(LAVF_TESTS):
300
-	$(SRC_PATH)/tests/codec-regression.sh $@ lavf tests/vsynth1 b "$(TARGET_EXEC)" "$(TARGET_PATH)"
300
+	$(SRC_PATH)/tests/lavf-regression.sh $@ lavf tests/vsynth1 b "$(TARGET_EXEC)" "$(TARGET_PATH)"
301 301
 
302 302
 $(LAVFI_TESTS):
303 303
 	$(SRC_PATH)/tests/codec-regression.sh $@ lavfi tests/vsynth1 b "$(TARGET_EXEC)" "$(TARGET_PATH)"
... ...
@@ -11,37 +11,6 @@ set -e
11 11
 
12 12
 eval do_$test=y
13 13
 
14
-do_lavf()
15
-{
16
-    file=${outfile}lavf.$1
17
-    do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src -f s16le -i $pcm_src $2
18
-    do_ffmpeg_crc $file -i $target_path/$file $3
19
-}
20
-
21
-do_streamed_images()
22
-{
23
-    file=${outfile}${1}pipe.$1
24
-    do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src -f image2pipe
25
-    do_ffmpeg_crc $file -f image2pipe -i $target_path/$file
26
-}
27
-
28
-do_image_formats()
29
-{
30
-    file=${outfile}lavf%02d.$1
31
-    echo $ffmpeg -t 0.5 -y -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src $2 $3 -flags +bitexact -sws_flags +accurate_rnd+bitexact $target_path/$file
32
-    $ffmpeg -t 0.5 -y -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src $2 $3 -flags +bitexact -sws_flags +accurate_rnd+bitexact $target_path/$file
33
-    do_md5sum ${outfile}lavf02.$1 >> $logfile
34
-    do_ffmpeg_crc $file $3 -i $target_path/$file
35
-    wc -c ${outfile}lavf02.$1 >> $logfile
36
-}
37
-
38
-do_audio_only()
39
-{
40
-    file=${outfile}lavf.$1
41
-    do_ffmpeg $file -t 1 -qscale 10 -f s16le -i $pcm_src
42
-    do_ffmpeg_crc $file -i $target_path/$file
43
-}
44
-
45 14
 rm -f "$logfile"
46 15
 rm -f "$benchfile"
47 16
 
... ...
@@ -373,182 +342,6 @@ do_audio_enc_dec wav s16 pcm_zork
373 373
 do_audio_enc_dec 302 s16 pcm_s24daud "-ac 6 -ar 96000"
374 374
 fi
375 375
 
376
-# libavformat testing
377
-
378
-if [ -n "$do_avi" ] ; then
379
-do_lavf avi
380
-fi
381
-
382
-if [ -n "$do_asf" ] ; then
383
-do_lavf asf "-acodec mp2" "-r 25"
384
-fi
385
-
386
-if [ -n "$do_rm" ] ; then
387
-file=${outfile}lavf.rm
388
-do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src -f s16le -i $pcm_src
389
-# broken
390
-#do_ffmpeg_crc $file -i $target_path/$file
391
-fi
392
-
393
-if [ -n "$do_mpg" ] ; then
394
-do_lavf mpg
395
-fi
396
-
397
-if [ -n "$do_mxf" ] ; then
398
-do_lavf mxf "-ar 48000 -bf 2 -timecode_frame_start 264363"
399
-do_lavf mxf_d10 "-ar 48000 -ac 2 -r 25 -s 720x576 -padtop 32 -vcodec mpeg2video -intra -flags +ildct+low_delay -dc 10 -flags2 +ivlc+non_linear_q -qscale 1 -ps 1 -qmin 1 -rc_max_vbv_use 1 -rc_min_vbv_use 1 -pix_fmt yuv422p -minrate 30000k -maxrate 30000k -b 30000k -bufsize 1200000 -top 1 -rc_init_occupancy 1200000 -qmax 12 -f mxf_d10"
400
-fi
401
-
402
-if [ -n "$do_ts" ] ; then
403
-do_lavf ts
404
-fi
405
-
406
-if [ -n "$do_swf" ] ; then
407
-do_lavf swf -an
408
-fi
409
-
410
-if [ -n "$do_ffm" ] ; then
411
-do_lavf ffm
412
-fi
413
-
414
-if [ -n "$do_flv_fmt" ] ; then
415
-do_lavf flv -an
416
-fi
417
-
418
-if [ -n "$do_mov" ] ; then
419
-do_lavf mov "-acodec pcm_alaw"
420
-fi
421
-
422
-if [ -n "$do_dv_fmt" ] ; then
423
-do_lavf dv "-ar 48000 -r 25 -s pal -ac 2"
424
-fi
425
-
426
-if [ -n "$do_gxf" ] ; then
427
-do_lavf gxf "-ar 48000 -r 25 -s pal -ac 1"
428
-fi
429
-
430
-if [ -n "$do_nut" ] ; then
431
-do_lavf nut "-acodec mp2"
432
-fi
433
-
434
-if [ -n "$do_mkv" ] ; then
435
-do_lavf mkv
436
-fi
437
-
438
-
439
-# streamed images
440
-# mjpeg
441
-#file=${outfile}lavf.mjpeg
442
-#do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src
443
-#do_ffmpeg_crc $file -i $target_path/$file
444
-
445
-if [ -n "$do_pbmpipe" ] ; then
446
-do_streamed_images pbm
447
-fi
448
-
449
-if [ -n "$do_pgmpipe" ] ; then
450
-do_streamed_images pgm
451
-fi
452
-
453
-if [ -n "$do_ppmpipe" ] ; then
454
-do_streamed_images ppm
455
-fi
456
-
457
-if [ -n "$do_gif" ] ; then
458
-file=${outfile}lavf.gif
459
-do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src -pix_fmt rgb24
460
-#do_ffmpeg_crc $file -i $target_path/$file
461
-fi
462
-
463
-if [ -n "$do_yuv4mpeg" ] ; then
464
-file=${outfile}lavf.y4m
465
-do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src
466
-#do_ffmpeg_crc $file -i $target_path/$file
467
-fi
468
-
469
-# image formats
470
-
471
-if [ -n "$do_pgm" ] ; then
472
-do_image_formats pgm
473
-fi
474
-
475
-if [ -n "$do_ppm" ] ; then
476
-do_image_formats ppm
477
-fi
478
-
479
-if [ -n "$do_bmp" ] ; then
480
-do_image_formats bmp
481
-fi
482
-
483
-if [ -n "$do_tga" ] ; then
484
-do_image_formats tga
485
-fi
486
-
487
-if [ -n "$do_tiff" ] ; then
488
-do_image_formats tiff "-pix_fmt rgb24"
489
-fi
490
-
491
-if [ -n "$do_sgi" ] ; then
492
-do_image_formats sgi
493
-fi
494
-
495
-if [ -n "$do_jpg" ] ; then
496
-do_image_formats jpg "-flags +bitexact -dct fastint -idct simple -pix_fmt yuvj420p" "-f image2"
497
-fi
498
-
499
-if [ -n "$do_pcx" ] ; then
500
-do_image_formats pcx
501
-fi
502
-
503
-# audio only
504
-
505
-if [ -n "$do_wav" ] ; then
506
-do_audio_only wav
507
-fi
508
-
509
-if [ -n "$do_alaw" ] ; then
510
-do_audio_only al
511
-fi
512
-
513
-if [ -n "$do_mulaw" ] ; then
514
-do_audio_only ul
515
-fi
516
-
517
-if [ -n "$do_au" ] ; then
518
-do_audio_only au
519
-fi
520
-
521
-if [ -n "$do_mmf" ] ; then
522
-do_audio_only mmf
523
-fi
524
-
525
-if [ -n "$do_aiff" ] ; then
526
-do_audio_only aif
527
-fi
528
-
529
-if [ -n "$do_voc" ] ; then
530
-do_audio_only voc
531
-fi
532
-
533
-if [ -n "$do_ogg" ] ; then
534
-do_audio_only ogg
535
-fi
536
-
537
-# pix_fmt conversions
538
-
539
-if [ -n "$do_pixfmt" ] ; then
540
-conversions="yuv420p yuv422p yuv444p yuyv422 yuv410p yuv411p yuvj420p \
541
-             yuvj422p yuvj444p rgb24 bgr24 rgb32 rgb565 rgb555 gray monow \
542
-             monob yuv440p yuvj440p"
543
-for pix_fmt in $conversions ; do
544
-    file=${outfile}lavf-${pix_fmt}.yuv
545
-    do_ffmpeg_nocheck $file -r 1 -t 1 -f image2 -vcodec pgmyuv -i $raw_src \
546
-                            -f rawvideo -s 352x288 -pix_fmt $pix_fmt $target_path/$raw_dst
547
-    do_ffmpeg $file -f rawvideo -s 352x288 -pix_fmt $pix_fmt -i $target_path/$raw_dst \
548
-                    -f rawvideo -s 352x288 -pix_fmt yuv444p
549
-done
550
-fi
551
-
552 376
 # libavfilter testing
553 377
 
554 378
 do_lavfi() {
555 379
new file mode 100755
... ...
@@ -0,0 +1,222 @@
0
+#!/bin/sh
1
+#
2
+# automatic regression test for libavformat
3
+#
4
+#
5
+#set -x
6
+
7
+set -e
8
+
9
+. $(dirname $0)/regression-funcs.sh
10
+
11
+eval do_$test=y
12
+
13
+do_lavf()
14
+{
15
+    file=${outfile}lavf.$1
16
+    do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src -f s16le -i $pcm_src $2
17
+    do_ffmpeg_crc $file -i $target_path/$file $3
18
+}
19
+
20
+do_streamed_images()
21
+{
22
+    file=${outfile}${1}pipe.$1
23
+    do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src -f image2pipe
24
+    do_ffmpeg_crc $file -f image2pipe -i $target_path/$file
25
+}
26
+
27
+do_image_formats()
28
+{
29
+    file=${outfile}lavf%02d.$1
30
+    echo $ffmpeg -t 0.5 -y -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src $2 $3 -flags +bitexact -sws_flags +accurate_rnd+bitexact $target_path/$file
31
+    $ffmpeg -t 0.5 -y -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src $2 $3 -flags +bitexact -sws_flags +accurate_rnd+bitexact $target_path/$file
32
+    do_md5sum ${outfile}lavf02.$1 >> $logfile
33
+    do_ffmpeg_crc $file $3 -i $target_path/$file
34
+    wc -c ${outfile}lavf02.$1 >> $logfile
35
+}
36
+
37
+do_audio_only()
38
+{
39
+    file=${outfile}lavf.$1
40
+    do_ffmpeg $file -t 1 -qscale 10 -f s16le -i $pcm_src
41
+    do_ffmpeg_crc $file -i $target_path/$file
42
+}
43
+
44
+rm -f "$logfile"
45
+rm -f "$benchfile"
46
+
47
+if [ -n "$do_avi" ] ; then
48
+do_lavf avi
49
+fi
50
+
51
+if [ -n "$do_asf" ] ; then
52
+do_lavf asf "-acodec mp2" "-r 25"
53
+fi
54
+
55
+if [ -n "$do_rm" ] ; then
56
+file=${outfile}lavf.rm
57
+do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src -f s16le -i $pcm_src
58
+# broken
59
+#do_ffmpeg_crc $file -i $target_path/$file
60
+fi
61
+
62
+if [ -n "$do_mpg" ] ; then
63
+do_lavf mpg
64
+fi
65
+
66
+if [ -n "$do_mxf" ] ; then
67
+do_lavf mxf "-ar 48000 -bf 2 -timecode_frame_start 264363"
68
+do_lavf mxf_d10 "-ar 48000 -ac 2 -r 25 -s 720x576 -padtop 32 -vcodec mpeg2video -intra -flags +ildct+low_delay -dc 10 -flags2 +ivlc+non_linear_q -qscale 1 -ps 1 -qmin 1 -rc_max_vbv_use 1 -rc_min_vbv_use 1 -pix_fmt yuv422p -minrate 30000k -maxrate 30000k -b 30000k -bufsize 1200000 -top 1 -rc_init_occupancy 1200000 -qmax 12 -f mxf_d10"
69
+fi
70
+
71
+if [ -n "$do_ts" ] ; then
72
+do_lavf ts
73
+fi
74
+
75
+if [ -n "$do_swf" ] ; then
76
+do_lavf swf -an
77
+fi
78
+
79
+if [ -n "$do_ffm" ] ; then
80
+do_lavf ffm
81
+fi
82
+
83
+if [ -n "$do_flv_fmt" ] ; then
84
+do_lavf flv -an
85
+fi
86
+
87
+if [ -n "$do_mov" ] ; then
88
+do_lavf mov "-acodec pcm_alaw"
89
+fi
90
+
91
+if [ -n "$do_dv_fmt" ] ; then
92
+do_lavf dv "-ar 48000 -r 25 -s pal -ac 2"
93
+fi
94
+
95
+if [ -n "$do_gxf" ] ; then
96
+do_lavf gxf "-ar 48000 -r 25 -s pal -ac 1"
97
+fi
98
+
99
+if [ -n "$do_nut" ] ; then
100
+do_lavf nut "-acodec mp2"
101
+fi
102
+
103
+if [ -n "$do_mkv" ] ; then
104
+do_lavf mkv
105
+fi
106
+
107
+
108
+# streamed images
109
+# mjpeg
110
+#file=${outfile}lavf.mjpeg
111
+#do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src
112
+#do_ffmpeg_crc $file -i $target_path/$file
113
+
114
+if [ -n "$do_pbmpipe" ] ; then
115
+do_streamed_images pbm
116
+fi
117
+
118
+if [ -n "$do_pgmpipe" ] ; then
119
+do_streamed_images pgm
120
+fi
121
+
122
+if [ -n "$do_ppmpipe" ] ; then
123
+do_streamed_images ppm
124
+fi
125
+
126
+if [ -n "$do_gif" ] ; then
127
+file=${outfile}lavf.gif
128
+do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src -pix_fmt rgb24
129
+#do_ffmpeg_crc $file -i $target_path/$file
130
+fi
131
+
132
+if [ -n "$do_yuv4mpeg" ] ; then
133
+file=${outfile}lavf.y4m
134
+do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src
135
+#do_ffmpeg_crc $file -i $target_path/$file
136
+fi
137
+
138
+# image formats
139
+
140
+if [ -n "$do_pgm" ] ; then
141
+do_image_formats pgm
142
+fi
143
+
144
+if [ -n "$do_ppm" ] ; then
145
+do_image_formats ppm
146
+fi
147
+
148
+if [ -n "$do_bmp" ] ; then
149
+do_image_formats bmp
150
+fi
151
+
152
+if [ -n "$do_tga" ] ; then
153
+do_image_formats tga
154
+fi
155
+
156
+if [ -n "$do_tiff" ] ; then
157
+do_image_formats tiff "-pix_fmt rgb24"
158
+fi
159
+
160
+if [ -n "$do_sgi" ] ; then
161
+do_image_formats sgi
162
+fi
163
+
164
+if [ -n "$do_jpg" ] ; then
165
+do_image_formats jpg "-flags +bitexact -dct fastint -idct simple -pix_fmt yuvj420p" "-f image2"
166
+fi
167
+
168
+if [ -n "$do_pcx" ] ; then
169
+do_image_formats pcx
170
+fi
171
+
172
+# audio only
173
+
174
+if [ -n "$do_wav" ] ; then
175
+do_audio_only wav
176
+fi
177
+
178
+if [ -n "$do_alaw" ] ; then
179
+do_audio_only al
180
+fi
181
+
182
+if [ -n "$do_mulaw" ] ; then
183
+do_audio_only ul
184
+fi
185
+
186
+if [ -n "$do_au" ] ; then
187
+do_audio_only au
188
+fi
189
+
190
+if [ -n "$do_mmf" ] ; then
191
+do_audio_only mmf
192
+fi
193
+
194
+if [ -n "$do_aiff" ] ; then
195
+do_audio_only aif
196
+fi
197
+
198
+if [ -n "$do_voc" ] ; then
199
+do_audio_only voc
200
+fi
201
+
202
+if [ -n "$do_ogg" ] ; then
203
+do_audio_only ogg
204
+fi
205
+
206
+# pix_fmt conversions
207
+
208
+if [ -n "$do_pixfmt" ] ; then
209
+conversions="yuv420p yuv422p yuv444p yuyv422 yuv410p yuv411p yuvj420p \
210
+             yuvj422p yuvj444p rgb24 bgr24 rgb32 rgb565 rgb555 gray monow \
211
+             monob yuv440p yuvj440p"
212
+for pix_fmt in $conversions ; do
213
+    file=${outfile}lavf-${pix_fmt}.yuv
214
+    do_ffmpeg_nocheck $file -r 1 -t 1 -f image2 -vcodec pgmyuv -i $raw_src \
215
+                            -f rawvideo -s 352x288 -pix_fmt $pix_fmt $target_path/$raw_dst
216
+    do_ffmpeg $file -f rawvideo -s 352x288 -pix_fmt $pix_fmt -i $target_path/$raw_dst \
217
+                    -f rawvideo -s 352x288 -pix_fmt yuv444p
218
+done
219
+fi
220
+
221
+rm -f "$bench" "$bench2"