forked from CryHavoc/dottes
Try Cello transposition algorithm again.
This commit is contained in:
parent
6d6fffa050
commit
3fc263e207
18
makeCello.sh
18
makeCello.sh
|
@ -17,22 +17,24 @@ fi
|
|||
# octave. $2 is highest note, $3 is lowest note.
|
||||
#
|
||||
# If range is G to d', transpose down 2 octaves.
|
||||
# If lowest note is < C, transpose down 1 octave.
|
||||
# Otherwise calculate the distance above d for the highest note on a one
|
||||
# octave transposition, and the distance below G on a two octave
|
||||
# octave transposition, and the distance below C on a two octave
|
||||
# transposition. Find the smallest, and use the corresponding
|
||||
# transposition.
|
||||
# transposition, preferring 2 octaves in case of a tie.
|
||||
transposedowntwo()
|
||||
{
|
||||
if (($3 >= 104 && $2 <= 115)); then
|
||||
return 0;
|
||||
fi
|
||||
if (($3 < 100)); then
|
||||
return 1;
|
||||
fi
|
||||
over=$(($2 - 108))
|
||||
under=$((104 - $3))
|
||||
if (($over <= $under)); then
|
||||
if (($over < 0)); then
|
||||
over=0
|
||||
fi
|
||||
under=$((100 - $3))
|
||||
if (($under < 0)); then
|
||||
under=0
|
||||
fi
|
||||
if (($over < $under)); then
|
||||
return 1;
|
||||
fi
|
||||
|
||||
|
|
Loading…
Reference in New Issue