aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMåns Rullgård <mans@mansr.com>2010-07-19 17:17:49 +0000
committerMåns Rullgård <mans@mansr.com>2010-07-19 17:17:49 +0000
commit7c1bb9143e8ebb1d55589b9c4dc839fee764a55b (patch)
treedf7f11dc2590871194a885afa723022a22a587ef
parent48c281629ab0cae5afc94d2890bd8373caf975da (diff)
downloadffmpeg-7c1bb9143e8ebb1d55589b9c4dc839fee764a55b.tar.gz
Fix lavfi pixdesc test
This test verifies the pixdesc code by comparing the output with and without a filter which should have no effect on the image. Since the available pixel formats depend on the byte order of the machine, a simple reference checksum is not possible. The test originally tried to solve this by generating a reference file on the fly. The problem with this is that the test framework expects the reference file in the source tree, and writing to the source tree is not allowed. To avoid complicating the test framework, we instead provide two reference files and select which to use based on the byte order. Originally committed as revision 24330 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rwxr-xr-xconfigure2
-rwxr-xr-xtests/lavfi-regression.sh14
-rw-r--r--tests/ref/lavfi/pixdesc_be84
-rw-r--r--tests/ref/lavfi/pixdesc_le84
4 files changed, 171 insertions, 13 deletions
diff --git a/configure b/configure
index 58cc566c67..f92b582ed7 100755
--- a/configure
+++ b/configure
@@ -1483,6 +1483,8 @@ test_deps _muxer _demuxer \
yuv4mpegpipe=yuv4mpeg \
mpg_test_deps="mpeg1system_muxer mpegps_demuxer"
+pixdesc_be_test_deps="bigendian"
+pixdesc_le_test_deps="!bigendian"
# default parameters
diff --git a/tests/lavfi-regression.sh b/tests/lavfi-regression.sh
index 220d43cf0e..6ce3b41bb4 100755
--- a/tests/lavfi-regression.sh
+++ b/tests/lavfi-regression.sh
@@ -86,21 +86,9 @@ if [ -n "$do_lavfi_pix_fmts" ]; then
done
fi
-if [ -n "$do_lavfi_pixdesc" ]; then
+if [ -n "$do_pixdesc_be" ] || [ -n "$do_pixdesc_le" ]; then
pix_fmts="$($ffmpeg -pix_fmts list 2>/dev/null | sed -ne '9,$p' | grep '^IO' | cut -d' ' -f2)"
-
- ref_file=tests/ref/lavfi/lavfi_pixdesc
- rm -f $ref_file
- res_file=$logfile
-
for pix_fmt in $pix_fmts; do
- # print to the reference logfile
- logfile=$ref_file
- do_video_encoding "lavfi_pixdesc-${pix_fmt}.nut" "" \
- "-vf slicify=random,format=$pix_fmt -vcodec rawvideo -pix_fmt $pix_fmt"
-
- # print to the result logfile
- logfile=$res_file
do_video_encoding "lavfi_pixdesc-${pix_fmt}.nut" "" \
"-vf slicify=random,format=$pix_fmt,pixdesctest -vcodec rawvideo -pix_fmt $pix_fmt"
done
diff --git a/tests/ref/lavfi/pixdesc_be b/tests/ref/lavfi/pixdesc_be
new file mode 100644
index 0000000000..c81e523530
--- /dev/null
+++ b/tests/ref/lavfi/pixdesc_be
@@ -0,0 +1,84 @@
+eba2f135a08829387e2f698ff72a2939 *./tests/data/lavfi/lavfi_pixdesc-yuv420p.nut
+7604654 ./tests/data/lavfi/lavfi_pixdesc-yuv420p.nut
+f2569f2b5069a0ee0cecae33de0455e3 *./tests/data/lavfi/lavfi_pixdesc-yuyv422.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-yuyv422.nut
+b41eba9651e1b5fe386289b506188105 *./tests/data/lavfi/lavfi_pixdesc-rgb24.nut
+15207903 ./tests/data/lavfi/lavfi_pixdesc-rgb24.nut
+0d0cb38ab3fa0b2ec0865c14f78b217b *./tests/data/lavfi/lavfi_pixdesc-bgr24.nut
+15207903 ./tests/data/lavfi/lavfi_pixdesc-bgr24.nut
+c9bba4529821d796a6ab09f6a5fd355a *./tests/data/lavfi/lavfi_pixdesc-yuv422p.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-yuv422p.nut
+0a98447b78fd476aa39686da6a74fa2e *./tests/data/lavfi/lavfi_pixdesc-yuv444p.nut
+15207903 ./tests/data/lavfi/lavfi_pixdesc-yuv444p.nut
+2d9225153c83ee1132397d619d94d1b3 *./tests/data/lavfi/lavfi_pixdesc-yuv410p.nut
+5703854 ./tests/data/lavfi/lavfi_pixdesc-yuv410p.nut
+8b298af3e43348ca1b11eb8a3252ac6c *./tests/data/lavfi/lavfi_pixdesc-yuv411p.nut
+7604654 ./tests/data/lavfi/lavfi_pixdesc-yuv411p.nut
+db08f7f0751900347e6b8649e4164d21 *./tests/data/lavfi/lavfi_pixdesc-gray.nut
+5070254 ./tests/data/lavfi/lavfi_pixdesc-gray.nut
+9251497f3b0634f1165d12d5a289d943 *./tests/data/lavfi/lavfi_pixdesc-monow.nut
+634329 ./tests/data/lavfi/lavfi_pixdesc-monow.nut
+668ebe8b8103b9046b251b2fa8a1d88f *./tests/data/lavfi/lavfi_pixdesc-monob.nut
+634329 ./tests/data/lavfi/lavfi_pixdesc-monob.nut
+32eec78ba51857b16ce9b813a49b7189 *./tests/data/lavfi/lavfi_pixdesc-yuvj420p.nut
+7604654 ./tests/data/lavfi/lavfi_pixdesc-yuvj420p.nut
+0dfa0ed434f73be51428758c69e082cb *./tests/data/lavfi/lavfi_pixdesc-yuvj422p.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-yuvj422p.nut
+ede1e5882d5c5bba48ea33cf1209d231 *./tests/data/lavfi/lavfi_pixdesc-yuvj444p.nut
+15207903 ./tests/data/lavfi/lavfi_pixdesc-yuvj444p.nut
+adcf64516a19fce44df77082bdb16291 *./tests/data/lavfi/lavfi_pixdesc-uyvy422.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-uyvy422.nut
+24bd566170343d06fec6fccfff5abc54 *./tests/data/lavfi/lavfi_pixdesc-bgr8.nut
+5070254 ./tests/data/lavfi/lavfi_pixdesc-bgr8.nut
+50d23cc82d9dcef2fd12adb81fb9b806 *./tests/data/lavfi/lavfi_pixdesc-bgr4_byte.nut
+5070254 ./tests/data/lavfi/lavfi_pixdesc-bgr4_byte.nut
+4a9d8e4f2f154e83a7e1735be6300700 *./tests/data/lavfi/lavfi_pixdesc-rgb8.nut
+5070254 ./tests/data/lavfi/lavfi_pixdesc-rgb8.nut
+c93ba89b74c504e7f5ae9d9ab1546c73 *./tests/data/lavfi/lavfi_pixdesc-rgb4_byte.nut
+5070254 ./tests/data/lavfi/lavfi_pixdesc-rgb4_byte.nut
+e0af357888584d36eec5aa0f673793ef *./tests/data/lavfi/lavfi_pixdesc-nv12.nut
+7604654 ./tests/data/lavfi/lavfi_pixdesc-nv12.nut
+9a3297f3b34baa038b1f37cb202b512f *./tests/data/lavfi/lavfi_pixdesc-nv21.nut
+7604654 ./tests/data/lavfi/lavfi_pixdesc-nv21.nut
+c442a8261c2265a07212ef0f72e35f5a *./tests/data/lavfi/lavfi_pixdesc-argb.nut
+20276703 ./tests/data/lavfi/lavfi_pixdesc-argb.nut
+93a5b3712e6eb8c5b9a09ffc7b9fbc12 *./tests/data/lavfi/lavfi_pixdesc-rgba.nut
+20276703 ./tests/data/lavfi/lavfi_pixdesc-rgba.nut
+037bf9df6a765520ad6d490066bf4b89 *./tests/data/lavfi/lavfi_pixdesc-abgr.nut
+20276703 ./tests/data/lavfi/lavfi_pixdesc-abgr.nut
+76a18a5151242fa137133f604cd624d2 *./tests/data/lavfi/lavfi_pixdesc-bgra.nut
+20276703 ./tests/data/lavfi/lavfi_pixdesc-bgra.nut
+7becf34ae825a3df3969bf4c6bfeb5e2 *./tests/data/lavfi/lavfi_pixdesc-gray16be.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-gray16be.nut
+10bd87059b5c189f3caef2837f4f2b5c *./tests/data/lavfi/lavfi_pixdesc-gray16le.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-gray16le.nut
+5a064afe2b453bb52cdb3f176b1aa1cf *./tests/data/lavfi/lavfi_pixdesc-yuv440p.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-yuv440p.nut
+9c3a093ff64a83ac4cf0b1e65390e236 *./tests/data/lavfi/lavfi_pixdesc-yuvj440p.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-yuvj440p.nut
+a29884f3f3dfe1e00b961bc17bef3d47 *./tests/data/lavfi/lavfi_pixdesc-yuva420p.nut
+12673454 ./tests/data/lavfi/lavfi_pixdesc-yuva420p.nut
+460b6de89b156290a12d3941db8bd731 *./tests/data/lavfi/lavfi_pixdesc-rgb48be.nut
+30414303 ./tests/data/lavfi/lavfi_pixdesc-rgb48be.nut
+cd93cb34d15996987367dabda3a10128 *./tests/data/lavfi/lavfi_pixdesc-rgb48le.nut
+30414303 ./tests/data/lavfi/lavfi_pixdesc-rgb48le.nut
+9cadf742e05ddc23a3b5b270f89aad3c *./tests/data/lavfi/lavfi_pixdesc-rgb565be.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-rgb565be.nut
+912a62c5e53bfcbac2a0340e10973cf2 *./tests/data/lavfi/lavfi_pixdesc-rgb555be.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-rgb555be.nut
+257cf78afa35dc31e9696f139c916715 *./tests/data/lavfi/lavfi_pixdesc-bgr565be.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-bgr565be.nut
+49f01b1f1f0c84fd9e776dd34cc3c280 *./tests/data/lavfi/lavfi_pixdesc-bgr555be.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-bgr555be.nut
+2d59c4f1d0314a5a957a7cfc4b6fabcc *./tests/data/lavfi/lavfi_pixdesc-yuv420p16le.nut
+15207903 ./tests/data/lavfi/lavfi_pixdesc-yuv420p16le.nut
+16c009a235cd52b74791a895423152a3 *./tests/data/lavfi/lavfi_pixdesc-yuv420p16be.nut
+15207903 ./tests/data/lavfi/lavfi_pixdesc-yuv420p16be.nut
+e3d61fde6978591596bc36b914386623 *./tests/data/lavfi/lavfi_pixdesc-yuv422p16le.nut
+20276703 ./tests/data/lavfi/lavfi_pixdesc-yuv422p16le.nut
+5499502e1c29534a158a1fe60e889f60 *./tests/data/lavfi/lavfi_pixdesc-yuv422p16be.nut
+20276703 ./tests/data/lavfi/lavfi_pixdesc-yuv422p16be.nut
+1262a0dc57ee147967fc896d04206313 *./tests/data/lavfi/lavfi_pixdesc-yuv444p16le.nut
+30414303 ./tests/data/lavfi/lavfi_pixdesc-yuv444p16le.nut
+ea602a24b8e6969679265078bd8607b6 *./tests/data/lavfi/lavfi_pixdesc-yuv444p16be.nut
+30414303 ./tests/data/lavfi/lavfi_pixdesc-yuv444p16be.nut
diff --git a/tests/ref/lavfi/pixdesc_le b/tests/ref/lavfi/pixdesc_le
new file mode 100644
index 0000000000..552d5ef572
--- /dev/null
+++ b/tests/ref/lavfi/pixdesc_le
@@ -0,0 +1,84 @@
+eba2f135a08829387e2f698ff72a2939 *./tests/data/lavfi/lavfi_pixdesc-yuv420p.nut
+7604654 ./tests/data/lavfi/lavfi_pixdesc-yuv420p.nut
+f2569f2b5069a0ee0cecae33de0455e3 *./tests/data/lavfi/lavfi_pixdesc-yuyv422.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-yuyv422.nut
+b41eba9651e1b5fe386289b506188105 *./tests/data/lavfi/lavfi_pixdesc-rgb24.nut
+15207903 ./tests/data/lavfi/lavfi_pixdesc-rgb24.nut
+0d0cb38ab3fa0b2ec0865c14f78b217b *./tests/data/lavfi/lavfi_pixdesc-bgr24.nut
+15207903 ./tests/data/lavfi/lavfi_pixdesc-bgr24.nut
+c9bba4529821d796a6ab09f6a5fd355a *./tests/data/lavfi/lavfi_pixdesc-yuv422p.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-yuv422p.nut
+0a98447b78fd476aa39686da6a74fa2e *./tests/data/lavfi/lavfi_pixdesc-yuv444p.nut
+15207903 ./tests/data/lavfi/lavfi_pixdesc-yuv444p.nut
+2d9225153c83ee1132397d619d94d1b3 *./tests/data/lavfi/lavfi_pixdesc-yuv410p.nut
+5703854 ./tests/data/lavfi/lavfi_pixdesc-yuv410p.nut
+8b298af3e43348ca1b11eb8a3252ac6c *./tests/data/lavfi/lavfi_pixdesc-yuv411p.nut
+7604654 ./tests/data/lavfi/lavfi_pixdesc-yuv411p.nut
+db08f7f0751900347e6b8649e4164d21 *./tests/data/lavfi/lavfi_pixdesc-gray.nut
+5070254 ./tests/data/lavfi/lavfi_pixdesc-gray.nut
+9251497f3b0634f1165d12d5a289d943 *./tests/data/lavfi/lavfi_pixdesc-monow.nut
+634329 ./tests/data/lavfi/lavfi_pixdesc-monow.nut
+668ebe8b8103b9046b251b2fa8a1d88f *./tests/data/lavfi/lavfi_pixdesc-monob.nut
+634329 ./tests/data/lavfi/lavfi_pixdesc-monob.nut
+32eec78ba51857b16ce9b813a49b7189 *./tests/data/lavfi/lavfi_pixdesc-yuvj420p.nut
+7604654 ./tests/data/lavfi/lavfi_pixdesc-yuvj420p.nut
+0dfa0ed434f73be51428758c69e082cb *./tests/data/lavfi/lavfi_pixdesc-yuvj422p.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-yuvj422p.nut
+ede1e5882d5c5bba48ea33cf1209d231 *./tests/data/lavfi/lavfi_pixdesc-yuvj444p.nut
+15207903 ./tests/data/lavfi/lavfi_pixdesc-yuvj444p.nut
+adcf64516a19fce44df77082bdb16291 *./tests/data/lavfi/lavfi_pixdesc-uyvy422.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-uyvy422.nut
+24bd566170343d06fec6fccfff5abc54 *./tests/data/lavfi/lavfi_pixdesc-bgr8.nut
+5070254 ./tests/data/lavfi/lavfi_pixdesc-bgr8.nut
+50d23cc82d9dcef2fd12adb81fb9b806 *./tests/data/lavfi/lavfi_pixdesc-bgr4_byte.nut
+5070254 ./tests/data/lavfi/lavfi_pixdesc-bgr4_byte.nut
+4a9d8e4f2f154e83a7e1735be6300700 *./tests/data/lavfi/lavfi_pixdesc-rgb8.nut
+5070254 ./tests/data/lavfi/lavfi_pixdesc-rgb8.nut
+c93ba89b74c504e7f5ae9d9ab1546c73 *./tests/data/lavfi/lavfi_pixdesc-rgb4_byte.nut
+5070254 ./tests/data/lavfi/lavfi_pixdesc-rgb4_byte.nut
+e0af357888584d36eec5aa0f673793ef *./tests/data/lavfi/lavfi_pixdesc-nv12.nut
+7604654 ./tests/data/lavfi/lavfi_pixdesc-nv12.nut
+9a3297f3b34baa038b1f37cb202b512f *./tests/data/lavfi/lavfi_pixdesc-nv21.nut
+7604654 ./tests/data/lavfi/lavfi_pixdesc-nv21.nut
+c442a8261c2265a07212ef0f72e35f5a *./tests/data/lavfi/lavfi_pixdesc-argb.nut
+20276703 ./tests/data/lavfi/lavfi_pixdesc-argb.nut
+93a5b3712e6eb8c5b9a09ffc7b9fbc12 *./tests/data/lavfi/lavfi_pixdesc-rgba.nut
+20276703 ./tests/data/lavfi/lavfi_pixdesc-rgba.nut
+037bf9df6a765520ad6d490066bf4b89 *./tests/data/lavfi/lavfi_pixdesc-abgr.nut
+20276703 ./tests/data/lavfi/lavfi_pixdesc-abgr.nut
+76a18a5151242fa137133f604cd624d2 *./tests/data/lavfi/lavfi_pixdesc-bgra.nut
+20276703 ./tests/data/lavfi/lavfi_pixdesc-bgra.nut
+7becf34ae825a3df3969bf4c6bfeb5e2 *./tests/data/lavfi/lavfi_pixdesc-gray16be.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-gray16be.nut
+10bd87059b5c189f3caef2837f4f2b5c *./tests/data/lavfi/lavfi_pixdesc-gray16le.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-gray16le.nut
+5a064afe2b453bb52cdb3f176b1aa1cf *./tests/data/lavfi/lavfi_pixdesc-yuv440p.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-yuv440p.nut
+9c3a093ff64a83ac4cf0b1e65390e236 *./tests/data/lavfi/lavfi_pixdesc-yuvj440p.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-yuvj440p.nut
+a29884f3f3dfe1e00b961bc17bef3d47 *./tests/data/lavfi/lavfi_pixdesc-yuva420p.nut
+12673454 ./tests/data/lavfi/lavfi_pixdesc-yuva420p.nut
+460b6de89b156290a12d3941db8bd731 *./tests/data/lavfi/lavfi_pixdesc-rgb48be.nut
+30414303 ./tests/data/lavfi/lavfi_pixdesc-rgb48be.nut
+cd93cb34d15996987367dabda3a10128 *./tests/data/lavfi/lavfi_pixdesc-rgb48le.nut
+30414303 ./tests/data/lavfi/lavfi_pixdesc-rgb48le.nut
+d39aa298bb525e9be8860351c6f62dab *./tests/data/lavfi/lavfi_pixdesc-rgb565le.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-rgb565le.nut
+a937a0fc764fb57dc1b3af87cba0273c *./tests/data/lavfi/lavfi_pixdesc-rgb555le.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-rgb555le.nut
+1dfdd03995c287e3c754b164bf26a355 *./tests/data/lavfi/lavfi_pixdesc-bgr565le.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-bgr565le.nut
+378d6ac4223651a1adcbf94a3d0d807b *./tests/data/lavfi/lavfi_pixdesc-bgr555le.nut
+10139054 ./tests/data/lavfi/lavfi_pixdesc-bgr555le.nut
+2d59c4f1d0314a5a957a7cfc4b6fabcc *./tests/data/lavfi/lavfi_pixdesc-yuv420p16le.nut
+15207903 ./tests/data/lavfi/lavfi_pixdesc-yuv420p16le.nut
+16c009a235cd52b74791a895423152a3 *./tests/data/lavfi/lavfi_pixdesc-yuv420p16be.nut
+15207903 ./tests/data/lavfi/lavfi_pixdesc-yuv420p16be.nut
+e3d61fde6978591596bc36b914386623 *./tests/data/lavfi/lavfi_pixdesc-yuv422p16le.nut
+20276703 ./tests/data/lavfi/lavfi_pixdesc-yuv422p16le.nut
+5499502e1c29534a158a1fe60e889f60 *./tests/data/lavfi/lavfi_pixdesc-yuv422p16be.nut
+20276703 ./tests/data/lavfi/lavfi_pixdesc-yuv422p16be.nut
+1262a0dc57ee147967fc896d04206313 *./tests/data/lavfi/lavfi_pixdesc-yuv444p16le.nut
+30414303 ./tests/data/lavfi/lavfi_pixdesc-yuv444p16le.nut
+ea602a24b8e6969679265078bd8607b6 *./tests/data/lavfi/lavfi_pixdesc-yuv444p16be.nut
+30414303 ./tests/data/lavfi/lavfi_pixdesc-yuv444p16be.nut