blob: 0c93dfd04fc2d0322045d542d0d143cbf5a9da02 [file] [log] [blame]
Josh Coalson60d9d012001-05-27 18:32:15 +00001#!/bin/sh
2
Josh Coalson6b05bc52001-06-08 00:13:21 +00003# FLAC - Free Lossless Audio Codec
4# Copyright (C) 2001 Josh Coalson
5#
6# This program is part of FLAC; you can redistribute it and/or
7# modify it under the terms of the GNU General Public License
8# as published by the Free Software Foundation; either version 2
9# of the License, or (at your option) any later version.
10#
11# This program is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14# GNU General Public License for more details.
15#
16# You should have received a copy of the GNU General Public License
17# along with this program; if not, write to the Free Software
18# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19
Josh Coalson60d9d012001-05-27 18:32:15 +000020LD_LIBRARY_PATH=../src/libFLAC/.libs:../obj/lib:$LD_LIBRARY_PATH
21export LD_LIBRARY_PATH
22PATH=../src/flac:../obj/bin:$PATH
23BINS_PATH=../../test_files/bins
24
Josh Coalson21f692b2001-07-22 07:25:50 +000025test -d ${BINS_PATH} || exit 77
26
Josh Coalson60d9d012001-05-27 18:32:15 +000027test_file ()
28{
29 name=$1
30 channels=$2
31 bps=$3
32 encode_options="$4"
33
34 echo -n "$name: encode..."
35 cmd="flac -V -s -fr -fb -fs 44100 -fp $bps -fc $channels $encode_options $name.bin"
36 echo "### ENCODE $name #######################################################" >> ./streams.log
37 echo "### cmd=$cmd" >> ./streams.log
38 if $cmd 2>>./streams.log ; then : ; else
39 echo "ERROR during encode of $name" 1>&2
40 exit 1
41 fi
42 echo -n "decode..."
43 cmd="flac -s -fb -d -fr $name.flac";
44 echo "### DECODE $name #######################################################" >> ./streams.log
45 echo "### cmd=$cmd" >> ./streams.log
46 if $cmd 2>>./streams.log ; then : ; else
47 echo "ERROR during decode of $name" 1>&2
48 exit 1
49 fi
50 ls -1l $name.bin >> ./streams.log
51 ls -1l $name.flac >> ./streams.log
52 ls -1l $name.raw >> ./streams.log
53 echo -n "compare..."
54 if cmp $name.bin $name.raw ; then : ; else
55 echo "ERROR during compare of $name" 1>&2
56 exit 1
57 fi
58 echo OK
59}
60
61echo "Testing bins..."
62for f in b00 b01 b02 b03 ; do
63 for opt in 0 1 2 4 5 6 8 ; do
64 for extras in '' '-p' '-e' ; do
65 for blocksize in '' '-b 32' '-b 32768' '-b 65535' ; do
66 for channels in 1 2 4 8 ; do
67 for bps in 8 16 24 ; do
68 test_file $BINS_PATH/$f $channels $bps "-$opt $extras $blocksize"
69 done
70 done
71 done
72 done
73 done
74done