From 7c1bb9143e8ebb1d55589b9c4dc839fee764a55b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C3=A5ns=20Rullg=C3=A5rd?= Date: Mon, 19 Jul 2010 17:17:49 +0000 Subject: [PATCH] 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 --- configure | 2 + tests/lavfi-regression.sh | 14 +------ tests/ref/lavfi/pixdesc_be | 84 ++++++++++++++++++++++++++++++++++++++ tests/ref/lavfi/pixdesc_le | 84 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 171 insertions(+), 13 deletions(-) create mode 100644 tests/ref/lavfi/pixdesc_be create mode 100644 tests/ref/lavfi/pixdesc_le 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