Class Arrange


  • public class Arrange
    extends Object
    Arranges a melody and chords into a barbershop arrangement. This uses a Viterbi-style algorithm to traverse the melody from left to right, remembering possible chord voicings for each time step together with the best score of the voicings and voice leading decisions up to that point. This algorithm runs in linear time in the length of the melody. The scores for the voicings and voice leadings are determined by the rules in the de.saar.coli.arranger.rules package.