diff --git a/sh/compandy b/sh/compandy new file mode 100755 index 0000000..3ea3f37 --- /dev/null +++ b/sh/compandy @@ -0,0 +1,21 @@ +#!/usr/bin/zsh +# script to make sense of compand's parameters +compandy() { + if [ $# -eq 0 ]; then + echo -E "usage: $0 {attack} {release} {threshold} {ratio} [knee] [gain] [delay]" + return 1 + fi + local atk="${1}" rel="${2}" + local thresh="${3}" ratio="${4}" + local knee="${5:-1}" gain="${6:-0}" delay="${7:-0}" + let 'atk/=1000.' + let 'rel/=1000.' + let 'delay/=1000.' + local end= start= + let 'end=thresh - thresh/(ratio + 0.0)' + local start=$thresh + printf "compand=%.5f|%.5f:%.5f|%.5f:%.1f/%.1f|0/%.2f:%.2f:%.2f:%.1f" \ + $atk $atk $rel $rel $thresh $thresh $end $knee $gain $start + #echo "compand=$atk|$atk:$rel|$rel:$thresh/$thresh|0/$end:$knee:$gain:$start:$delay" +} +compandy "$@"