add wasted-bits-per-sample stream
authorJosh Coalson <jcoalson@users.sourceforce.net>
Tue, 27 Mar 2001 23:58:23 +0000 (23:58 +0000)
committerJosh Coalson <jcoalson@users.sourceforce.net>
Tue, 27 Mar 2001 23:58:23 +0000 (23:58 +0000)
src/test_streams/main.c
test/test_streams.sh

index 3b7b4c6f69968f8581adf58e4333b9b71b082292..8b8f7e1862d0b9a42509883f5073e2682ba748a9 100644 (file)
@@ -198,6 +198,33 @@ foo:
        return false;
 }
 
+/* a stereo wasted-bits-per-sample 16bps stream */
+static bool generate_wbps16(const char *fn, unsigned samples)
+{
+       FILE *f;
+       unsigned sample;
+
+       if(0 == (f = fopen(fn, mode)))
+               return false;
+
+       for(sample = 0; sample < samples; sample++) {
+               int16 l = (sample % 2000) << 2;
+               int16 r = (sample % 1000) << 3;
+               swap16(&l);
+               swap16(&r);
+               if(fwrite(&l, sizeof(l), 1, f) < 1)
+                       goto foo;
+               if(fwrite(&r, sizeof(r), 1, f) < 1)
+                       goto foo;
+       }
+
+       fclose(f);
+       return true;
+foo:
+       fclose(f);
+       return false;
+}
+
 /* a mono full-scale deflection 24bps stream */
 static bool generate_fsd24(const char *fn, const int pattern[], unsigned reps)
 {
@@ -423,6 +450,8 @@ int main(int argc, char *argv[])
        if(!generate_fsd24("fsd24-06.raw", pattern06, 100)) return 1;
        if(!generate_fsd24("fsd24-07.raw", pattern07, 100)) return 1;
 
+       if(!generate_wbps16("wbps16-01.raw", 1000)) return 1;
+
        if(!generate_sine16_1("sine16-00.raw", 44100.0, 80000, 441.0, 0.50, 441.0, 0.49)) return 1;
        if(!generate_sine16_1("sine16-01.raw", 44100.0, 80000, 441.0, 0.61, 661.5, 0.37)) return 1;
        if(!generate_sine16_1("sine16-02.raw", 44100.0, 80000, 441.0, 0.50, 882.0, 0.49)) return 1;
index 3843518a4bbc4b489369b134ff6f42977878cf79..cb3f79f91d2e27c0333a72beaea02d3fcea5786c 100755 (executable)
@@ -65,6 +65,11 @@ for b in 01 02 03 04 05 06 07 ; do
        test_file fsd24-$b 1 24 "-0 -l 8 -m -e -q 7"
 done
 
+echo "Testing 16-bit wasted-bits-per-sample streams..."
+for b in 01 ; do
+       test_file wbps16-$b 1 16 "-0 -l 8 -m -e -q 15"
+done
+
 for bps in 16 24 ; do
        echo "Testing $bps-bit sine wave streams..."
        for b in 00 01 02 03 04 ; do