diff options
author | Erik de Castro Lopo <erikd@mega-nerd.com> | 2012-10-14 21:40:40 +1100 |
---|---|---|
committer | Erik de Castro Lopo <erikd@mega-nerd.com> | 2012-10-14 21:40:40 +1100 |
commit | 1f0daccf2b58994879ffa627a5e6000e3c321139 (patch) | |
tree | 569f1ce1a7116c2ba1be5806a31b168827f3014e /test | |
parent | fc360735ce4d1aa88a94bfccdd3bea5bdd19a8d6 (diff) | |
download | flac-1f0daccf2b58994879ffa627a5e6000e3c321139.tar.gz |
Add a regresion test for compression levels.
Diffstat (limited to 'test')
-rw-r--r-- | test/Makefile.am | 5 | ||||
-rwxr-xr-x | test/test_compression.sh | 50 |
2 files changed, 54 insertions, 1 deletions
diff --git a/test/Makefile.am b/test/Makefile.am index d423c0b9..9bc3b1eb 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -26,7 +26,8 @@ check_SCRIPTS = \ test_flac.sh \ test_metaflac.sh \ test_seeking.sh \ - test_streams.sh + test_streams.sh \ + test_compression.sh # This one should pass when building out-of-tree (eg 'make distcheck'). check: $(check_SCRIPTS) @@ -36,6 +37,7 @@ if FLaC__WITH_CPPLIBS endif $(srcdir)/test_seeking.sh $(srcdir)/test_streams.sh + $(srcdir)/test_compression.sh @echo "----------------" @echo "All tests passed" @echo "----------------" @@ -53,6 +55,7 @@ endif ./test_metaflac.sh ./test_seeking.sh ./test_streams.sh + ./test_compression.sh @echo "----------------" @echo "All tests passed" @echo "----------------" diff --git a/test/test_compression.sh b/test/test_compression.sh new file mode 100755 index 00000000..6507a448 --- /dev/null +++ b/test/test_compression.sh @@ -0,0 +1,50 @@ +#!/bin/sh + +# FLAC - Free Lossless Audio Codec +# Copyright (C) 2012 Xiph.Org Foundation +# +# This file is part the FLAC project. FLAC is comprised of several +# components distributed under difference licenses. The codec libraries +# are distributed under Xiph.Org's BSD-like license (see the file +# COPYING.Xiph in this distribution). All other programs, libraries, and +# plugins are distributed under the GPL (see COPYING.GPL). The documentation +# is distributed under the Gnu FDL (see COPYING.FDL). Each file in the +# FLAC distribution contains at the top the terms under which it may be +# distributed. +# +# Since this particular file is relevant to all components of FLAC, +# it may be distributed under the Xiph.Org license, which is the least +# restrictive of those mentioned above. See the file COPYING.Xiph in this +# distribution. + +LD_LIBRARY_PATH=`pwd`/../src/libFLAC/.libs:$LD_LIBRARY_PATH +LD_LIBRARY_PATH=`pwd`/../src/share/grabbag/.libs:$LD_LIBRARY_PATH +LD_LIBRARY_PATH=`pwd`/../src/share/getopt/.libs:$LD_LIBRARY_PATH +LD_LIBRARY_PATH=`pwd`/../src/share/replaygain_analysis/.libs:$LD_LIBRARY_PATH +LD_LIBRARY_PATH=`pwd`/../src/share/replaygain_synthesis/.libs:$LD_LIBRARY_PATH +LD_LIBRARY_PATH=`pwd`/../src/share/utf8/.libs:$LD_LIBRARY_PATH +LD_LIBRARY_PATH=`pwd`/../obj/$BUILD/lib:$LD_LIBRARY_PATH +export LD_LIBRARY_PATH +PATH=`pwd`/../src/flac:$PATH + +echo "Using FLAC binary :" `which flac` + +date=`date "+%Y%m%dT%H%M%S"` +fname="comp${date}.flac" + +last_size=0 +last_k=0 +for k in `seq 1 8` ; do + flac -${k} --silent noisy-sine.wav -o ${fname} + size=`stat --format="%s" ${fname}` + echo "Compression level ${k}, file size ${size} bytes." + if test $k -gt 1 ; then + if test $last_size -lt $size ; then + echo "Error : Compression $last_k size $last_size >= compression $k size $size." + exit 1 + fi + fi + last_size=$size + last_k=$k + rm -f $fname + done |