soxr-code/tests/bandwidth-test

40 lines
844 B
Bash
Executable File

#!/bin/bash
set -e
# SoX Resampler Library Copyright (c) 2007-15 robs@users.sourceforge.net
# Licence for this file: LGPL v2.1 See LICENCE for details.
# Tests varying bandwidth.
tool=./3-options-input-fn
spec="spectrogram -z120 -Z-20 -wd -ho"
ext=f32; e=0
rate1=48000
rate2=44100
for n in 1 2; do
rate1n=`expr $rate1 / 2`
#sox -r $rate1 -n 0.$ext synth 1s sq pad .03 .03 gain -1
sox -r $rate1 -n 0.$ext synth 8 sin 0:$rate1n gain -1
for q in `seq 79 5 99`; do
f=bw1-$rate2-p`printf %02u $q`
$tool $rate1 $rate2 1 $e $e 4 0 $q < 0.$ext | sox -c1 -r$rate2 -t $ext - -n $spec $f.png
done
for q in `seq 79 5 99`; do
f=bw2-$rate2-p`printf %02u $q`
$tool $rate1 $rate2 1 $e $e 4 0 $q `expr 200 - $q` < 0.$ext | sox -c1 -r$rate2 -t $ext - -n $spec $f.png
done
r=$rate1; rate1=$rate2; rate2=$r
done
rm 0.$ext