Statistics
| Branch: | Revision:

ffmpeg / tests / lavf-regression.sh @ 765f72f8

History | View | Annotate | Download (4.79 KB)

1
#!/bin/sh
2
#
3
# automatic regression test for libavformat
4
#
5
#
6
#set -x
7

    
8
set -e
9

    
10
. $(dirname $0)/regression-funcs.sh
11

    
12
eval do_$test=y
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
    outfile="$datadir/images/$1/"
31
    mkdir -p "$outfile"
32
    file=${outfile}%02d.$1
33
    run_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
34
    do_md5sum ${outfile}02.$1 >> $logfile
35
    do_ffmpeg_crc $file $3 -i $target_path/$file
36
    wc -c ${outfile}02.$1 >> $logfile
37
}
38

    
39
do_audio_only()
40
{
41
    file=${outfile}lavf.$1
42
    do_ffmpeg $file -t 1 -qscale 10 $2 -f s16le -i $pcm_src $3
43
    do_ffmpeg_crc $file -i $target_path/$file
44
}
45

    
46
rm -f "$logfile"
47
rm -f "$benchfile"
48

    
49
if [ -n "$do_avi" ] ; then
50
do_lavf avi
51
fi
52

    
53
if [ -n "$do_asf" ] ; then
54
do_lavf asf "-acodec mp2" "-r 25"
55
fi
56

    
57
if [ -n "$do_rm" ] ; then
58
file=${outfile}lavf.rm
59
do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src -f s16le -i $pcm_src -acodec ac3_fixed
60
# broken
61
#do_ffmpeg_crc $file -i $target_path/$file
62
fi
63

    
64
if [ -n "$do_mpg" ] ; then
65
do_lavf mpg
66
fi
67

    
68
if [ -n "$do_mxf" ] ; then
69
do_lavf mxf "-ar 48000 -bf 2 -timecode_frame_start 264363"
70
do_lavf mxf_d10 "-ar 48000 -ac 2 -r 25 -s 720x576 -vf pad=720:608:0: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"
71
fi
72

    
73
if [ -n "$do_ts" ] ; then
74
do_lavf ts
75
fi
76

    
77
if [ -n "$do_swf" ] ; then
78
do_lavf swf -an
79
fi
80

    
81
if [ -n "$do_ffm" ] ; then
82
do_lavf ffm
83
fi
84

    
85
if [ -n "$do_flv_fmt" ] ; then
86
do_lavf flv -an
87
fi
88

    
89
if [ -n "$do_mov" ] ; then
90
do_lavf mov "-acodec pcm_alaw"
91
fi
92

    
93
if [ -n "$do_dv_fmt" ] ; then
94
do_lavf dv "-ar 48000 -r 25 -s pal -ac 2"
95
fi
96

    
97
if [ -n "$do_gxf" ] ; then
98
do_lavf gxf "-ar 48000 -r 25 -s pal -ac 1"
99
fi
100

    
101
if [ -n "$do_nut" ] ; then
102
do_lavf nut "-acodec mp2"
103
fi
104

    
105
if [ -n "$do_mkv" ] ; then
106
do_lavf mkv
107
fi
108

    
109

    
110
# streamed images
111
# mjpeg
112
#file=${outfile}lavf.mjpeg
113
#do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src
114
#do_ffmpeg_crc $file -i $target_path/$file
115

    
116
if [ -n "$do_pbmpipe" ] ; then
117
do_streamed_images pbm
118
fi
119

    
120
if [ -n "$do_pgmpipe" ] ; then
121
do_streamed_images pgm
122
fi
123

    
124
if [ -n "$do_ppmpipe" ] ; then
125
do_streamed_images ppm
126
fi
127

    
128
if [ -n "$do_gif" ] ; then
129
file=${outfile}lavf.gif
130
do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src -pix_fmt rgb24
131
do_ffmpeg_crc $file -i $target_path/$file -pix_fmt rgb24
132
fi
133

    
134
if [ -n "$do_yuv4mpeg" ] ; then
135
file=${outfile}lavf.y4m
136
do_ffmpeg $file -t 1 -qscale 10 -f image2 -vcodec pgmyuv -i $raw_src
137
#do_ffmpeg_crc $file -i $target_path/$file
138
fi
139

    
140
# image formats
141

    
142
if [ -n "$do_pgm" ] ; then
143
do_image_formats pgm
144
fi
145

    
146
if [ -n "$do_ppm" ] ; then
147
do_image_formats ppm
148
fi
149

    
150
if [ -n "$do_png" ] ; then
151
do_image_formats png
152
fi
153

    
154
if [ -n "$do_bmp" ] ; then
155
do_image_formats bmp
156
fi
157

    
158
if [ -n "$do_tga" ] ; then
159
do_image_formats tga
160
fi
161

    
162
if [ -n "$do_tiff" ] ; then
163
do_image_formats tiff "-pix_fmt rgb24"
164
fi
165

    
166
if [ -n "$do_sgi" ] ; then
167
do_image_formats sgi
168
fi
169

    
170
if [ -n "$do_jpg" ] ; then
171
do_image_formats jpg "-flags +bitexact -dct fastint -idct simple -pix_fmt yuvj420p" "-f image2"
172
fi
173

    
174
if [ -n "$do_pcx" ] ; then
175
do_image_formats pcx
176
fi
177

    
178
# audio only
179

    
180
if [ -n "$do_wav" ] ; then
181
do_audio_only wav
182
fi
183

    
184
if [ -n "$do_alaw" ] ; then
185
do_audio_only al
186
fi
187

    
188
if [ -n "$do_mulaw" ] ; then
189
do_audio_only ul
190
fi
191

    
192
if [ -n "$do_au" ] ; then
193
do_audio_only au
194
fi
195

    
196
if [ -n "$do_mmf" ] ; then
197
do_audio_only mmf
198
fi
199

    
200
if [ -n "$do_aiff" ] ; then
201
do_audio_only aif
202
fi
203

    
204
if [ -n "$do_voc" ] ; then
205
do_audio_only voc
206
fi
207

    
208
if [ -n "$do_voc_s16" ] ; then
209
do_audio_only s16.voc "-ac 2" "-acodec pcm_s16le"
210
fi
211

    
212
if [ -n "$do_ogg" ] ; then
213
do_audio_only ogg
214
fi
215

    
216
if [ -n "$do_rso" ] ; then
217
do_audio_only rso
218
fi
219

    
220
# pix_fmt conversions
221

    
222
if [ -n "$do_pixfmt" ] ; then
223
outfile="$datadir/pixfmt/"
224
mkdir -p "$outfile"
225
conversions="yuv420p yuv422p yuv444p yuyv422 yuv410p yuv411p yuvj420p \
226
             yuvj422p yuvj444p rgb24 bgr24 rgb32 rgb565 rgb555 gray monow \
227
             monob yuv440p yuvj440p"
228
for pix_fmt in $conversions ; do
229
    file=${outfile}${pix_fmt}.yuv
230
    do_ffmpeg_nocheck $file -r 1 -t 1 -f image2 -vcodec pgmyuv -i $raw_src \
231
                            -f rawvideo -s 352x288 -pix_fmt $pix_fmt $target_path/$raw_dst
232
    do_ffmpeg $file -f rawvideo -s 352x288 -pix_fmt $pix_fmt -i $target_path/$raw_dst \
233
                    -f rawvideo -s 352x288 -pix_fmt yuv444p
234
done
235
fi