aboutsummaryrefslogtreecommitdiffstats
path: root/tests/regression.sh
diff options
context:
space:
mode:
authorFabrice Bellard <fabrice@bellard.org>2002-05-20 16:20:05 +0000
committerFabrice Bellard <fabrice@bellard.org>2002-05-20 16:20:05 +0000
commit89d5dfd5e88adffe56add8217467c9de0dd424af (patch)
treebf424740198ce32200da2ff2047079ac29d1405f /tests/regression.sh
parentb5a40dc6d04318bacce37d51feda38ff07507682 (diff)
downloadffmpeg-89d5dfd5e88adffe56add8217467c9de0dd424af.tar.gz
added libav regression tests
Originally committed as revision 537 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'tests/regression.sh')
-rwxr-xr-xtests/regression.sh127
1 files changed, 121 insertions, 6 deletions
diff --git a/tests/regression.sh b/tests/regression.sh
index 187aa10b1f..a3e2c41c7c 100755
--- a/tests/regression.sh
+++ b/tests/regression.sh
@@ -6,18 +6,23 @@
#set -x
set -e
+logfile="/tmp/ffmpeg.regression"
+
# tests to do
if [ "$1" = "mpeg4" ] ; then
do_mpeg4=y
elif [ "$1" = "mpeg" ] ; then
do_mpeg=y
+elif [ "$1" = "libavtest" ] ; then
+ do_libav=y
+ logfile="/tmp/libav.regression"
else
do_mpeg=y
do_msmpeg4=y
do_h263=y
do_mpeg4=y
do_mjpeg=y
- #do_rv10=y #broken!
+ #do_rv10=y #broken
do_mp2=y
do_ac3=y
fi
@@ -27,7 +32,6 @@ fi
ffmpeg="../ffmpeg"
outfile="/tmp/a-"
reffile="$2"
-logfile="/tmp/ffmpeg.regression"
benchfile="/tmp/ffmpeg.bench"
raw_src="vsynth1/%d.pgm"
raw_dst="/tmp/out.yuv"
@@ -38,13 +42,22 @@ function do_ffmpeg ()
{
f="$1"
shift
- echo $ffmpeg $*
- $ffmpeg -benchmark $* > /tmp/bench.tmp
+ echo $ffmpeg -bitexact $*
+ $ffmpeg -bitexact -benchmark $* > /tmp/bench.tmp
md5sum $f >> $logfile
expr match "`cat /tmp/bench.tmp`" '.*utime=\(.*s\)' > /tmp/bench2.tmp
echo `cat /tmp/bench2.tmp` $f >> $benchfile
}
+function do_ffmpeg_crc ()
+{
+ f="$1"
+ shift
+ echo $ffmpeg -y -bitexact $* -f crc /tmp/ffmpeg.crc
+ $ffmpeg -y -bitexact $* -f crc /tmp/ffmpeg.crc
+ echo -n "$f " >> $logfile
+ cat /tmp/ffmpeg.crc >> $logfile
+}
echo "ffmpeg regression test" > $logfile
echo "ffmpeg benchmarks" > $benchfile
@@ -53,10 +66,10 @@ echo "ffmpeg benchmarks" > $benchfile
if [ -n "$do_mpeg" ] ; then
# mpeg1 encoding
file=${outfile}mpeg1.mpg
-do_ffmpeg $file -y -qscale 10 -f pgmyuv -i $raw_src -f mpegvideo $file
+do_ffmpeg $file -y -qscale 10 -f pgmyuv -i $raw_src -f mpeg1video $file
# mpeg1 decoding
-do_ffmpeg $raw_dst -y -f mpegvideo -i $file -f rawvideo $raw_dst
+do_ffmpeg $raw_dst -y -i $file -f rawvideo $raw_dst
# mpeg2 decoding
#do_ffmpeg /tmp/out-mpeg2.yuv -y -f mpegvideo -i a.vob \
@@ -133,6 +146,108 @@ do_ffmpeg $file -y -ab 128 -ac 2 -f s16le -i $pcm_src -vn $file
do_ffmpeg $pcm_dst -y -i $file -f wav $pcm_dst
fi
+###################################
+# libav testing
+###################################
+
+if [ -n "$do_libav" ] ; then
+
+# avi
+file=${outfile}libav.avi
+do_ffmpeg $file -t 1 -y -qscale 10 -f pgmyuv -i $raw_src -f s16le -i $pcm_src $file
+do_ffmpeg_crc $file -i $file
+
+# asf
+file=${outfile}libav.asf
+do_ffmpeg $file -t 1 -y -qscale 10 -f pgmyuv -i $raw_src -f s16le -i $pcm_src $file
+do_ffmpeg_crc $file -i $file
+
+# rm
+file=${outfile}libav.rm
+do_ffmpeg $file -t 1 -y -qscale 10 -f pgmyuv -i $raw_src -f s16le -i $pcm_src $file
+# broken
+#do_ffmpeg_crc $file -i $file
+
+# mpegps
+file=${outfile}libav.mpg
+do_ffmpeg $file -t 1 -y -qscale 10 -f pgmyuv -i $raw_src -f s16le -i $pcm_src $file
+do_ffmpeg_crc $file -i $file
+
+# swf (decode audio only)
+file=${outfile}libav.swf
+# broken
+#do_ffmpeg $file -t 1 -y -qscale 10 -f pgmyuv -i $raw_src -f s16le -i $pcm_src $file
+#do_ffmpeg_crc $file -i $file
+
+# ffm
+file=${outfile}libav.ffm
+do_ffmpeg $file -t 1 -y -qscale 10 -f pgmyuv -i $raw_src -f s16le -i $pcm_src $file
+# broken
+#do_ffmpeg_crc $file -i $file
+
+# XXX: need mov and mpegts tests (add bitstreams or add output capability in ffmpeg)
+
+####################
+# streamed images
+# mjpeg
+file=${outfile}libav.mjpeg
+do_ffmpeg $file -t 1 -y -qscale 10 -f pgmyuv -i $raw_src $file
+# broken
+#do_ffmpeg_crc $file -i $file
+
+# pgmpipe
+file=${outfile}libav.pgmpipe
+do_ffmpeg $file -t 1 -y -qscale 10 -f pgmyuv -i $raw_src -f pgmpipe $file
+do_ffmpeg_crc $file -f pgmpipe -i $file
+
+# ppmpipe
+file=${outfile}libav.ppmpipe
+do_ffmpeg $file -t 1 -y -qscale 10 -f pgmyuv -i $raw_src -f ppmpipe $file
+do_ffmpeg_crc $file -f ppmpipe -i $file
+
+# gif
+file=${outfile}libav.gif
+do_ffmpeg $file -t 1 -y -qscale 10 -f pgmyuv -i $raw_src -f ppmpipe $file
+#do_ffmpeg_crc $file -f ppmpipe -i $file
+
+####################
+# image formats
+# pgm (we do not do md5 on image files yet)
+file=${outfile}libav%d.pgm
+$ffmpeg -t 0.5 -y -qscale 10 -f pgmyuv -i $raw_src $file
+do_ffmpeg_crc $file -i $file
+
+# ppm (we do not do md5 on image files yet)
+file=${outfile}libav%d.ppm
+$ffmpeg -t 0.5 -y -qscale 10 -f pgmyuv -i $raw_src $file
+do_ffmpeg_crc $file -i $file
+
+####################
+# audio only
+
+# wav
+file=${outfile}libav.wav
+do_ffmpeg $file -t 1 -y -qscale 10 -f s16le -i $pcm_src $file
+do_ffmpeg_crc $file -i $file
+
+# alaw
+file=${outfile}libav.al
+do_ffmpeg $file -t 1 -y -qscale 10 -f s16le -i $pcm_src $file
+do_ffmpeg_crc $file -i $file
+
+# mulaw
+file=${outfile}libav.ul
+do_ffmpeg $file -t 1 -y -qscale 10 -f s16le -i $pcm_src $file
+do_ffmpeg_crc $file -i $file
+
+# au
+file=${outfile}libav.au
+do_ffmpeg $file -t 1 -y -qscale 10 -f s16le -i $pcm_src $file
+do_ffmpeg_crc $file -i $file
+
+fi
+
+
if diff -u $logfile $reffile ; then
echo