summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorStefano Sabatini <stefano.sabatini-lala@poste.it>2010-05-24 20:38:50 +0000
committerStefano Sabatini <stefano.sabatini-lala@poste.it>2010-05-24 20:38:50 +0000
commite34d5db5957aac0b2b7228ced432dcf4a1f5e5dc (patch)
tree2091d1a2c97a47085004275ff5eabc2bfcaccd63 /tests
parent781cf5fd4194bd4edaacf4e0e524eea8546a8e57 (diff)
Add libavfilter 1-input - 1-output regression test, corresponding to the
target regtest-lavfi_pix_fmts. The lavfi_pix_fmts test is disabled, this because there are many tests which are failing, and there are still some output files which cannot be played by NUT/ffplay. Originally committed as revision 23297 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'tests')
-rwxr-xr-xtests/lavfi-regression.sh37
1 files changed, 36 insertions, 1 deletions
diff --git a/tests/lavfi-regression.sh b/tests/lavfi-regression.sh
index 4ac35bf394..3ab118207c 100755
--- a/tests/lavfi-regression.sh
+++ b/tests/lavfi-regression.sh
@@ -14,6 +14,18 @@ eval do_$test=y
rm -f "$logfile"
rm -f "$benchfile"
+get_common_elements() (
+ l1=$1
+ l2=$2
+ for elt1 in $1; do
+ for elt2 in $2; do
+ [ $elt1 = $elt2 ] && res="$res $elt1 "
+ done
+ done
+
+ echo $res
+)
+
do_lavfi() {
test_name=$1
eval test=\$do_$test_name
@@ -35,9 +47,32 @@ do_lavfi "vflip" "vflip"
do_lavfi "vflip_crop" "vflip,crop=100:100"
do_lavfi "vflip_vflip" "vflip,vflip"
+# all these filters have exactly one input and exactly one output
+filters_args="
+crop=100:100:100:100
+null
+pad=500:400:20:20
+scale=200:100
+vflip
+"
+
+if [ -n "$do_lavfi_pix_fmts" ]; then
+ scale_out_pix_fmts=$(tools/lavfi-showfiltfmts scale | grep "^OUTPUT" | cut -d: -f2)
+
+ for filter_args in $filters_args; do
+ filter=$(echo $filter_args | sed -e 's/\([^=]\+\)=.*/\1/')
+ in_pix_fmts=$(tools/lavfi-showfiltfmts $filter | grep "^INPUT" | cut -d: -f2)
+ pix_fmts=$(get_common_elements "$in_pix_fmts" "$scale_out_pix_fmts")
+
+ for pix_fmt in $pix_fmts; do
+ do_video_encoding "${pix_fmt}-${filter}.nut" "" \
+ "-vf slicify=random,format=$pix_fmt,$filter_args -vcodec rawvideo -pix_fmt $pix_fmt"
+ done
+ done
+fi
+
# TODO: add tests for
# direct rendering,
-# slices
# chains with feedback loops
rm -f "$bench" "$bench2"