blob: 030d835ef500e1737f071d112e9d2fbded651c8b [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
25test_file ()
26{
27 name=$1
28 channels=$2
29 bps=$3
30 encode_options="$4"
31
32 echo -n "$name: encode..."
33 cmd="flac -V -s -fr -fb -fs 44100 -fp $bps -fc $channels $encode_options $name.bin"
34 echo "### ENCODE $name #######################################################" >> ./streams.log
35 echo "### cmd=$cmd" >> ./streams.log
36 if $cmd 2>>./streams.log ; then : ; else
37 echo "ERROR during encode of $name" 1>&2
38 exit 1
39 fi
40 echo -n "decode..."
41 cmd="flac -s -fb -d -fr $name.flac";
42 echo "### DECODE $name #######################################################" >> ./streams.log
43 echo "### cmd=$cmd" >> ./streams.log
44 if $cmd 2>>./streams.log ; then : ; else
45 echo "ERROR during decode of $name" 1>&2
46 exit 1
47 fi
48 ls -1l $name.bin >> ./streams.log
49 ls -1l $name.flac >> ./streams.log
50 ls -1l $name.raw >> ./streams.log
51 echo -n "compare..."
52 if cmp $name.bin $name.raw ; then : ; else
53 echo "ERROR during compare of $name" 1>&2
54 exit 1
55 fi
56 echo OK
57}
58
59echo "Testing bins..."
60for f in b00 b01 b02 b03 ; do
61 for opt in 0 1 2 4 5 6 8 ; do
62 for extras in '' '-p' '-e' ; do
63 for blocksize in '' '-b 32' '-b 32768' '-b 65535' ; do
64 for channels in 1 2 4 8 ; do
65 for bps in 8 16 24 ; do
66 test_file $BINS_PATH/$f $channels $bps "-$opt $extras $blocksize"
67 done
68 done
69 done
70 done
71 done
72done