Computes similarity according to the given metrics against a single melody sequence
Наследование: IFitnessFunction
Пример #1
0
 static void Test9()
 {
     MusicPlayer player = new MusicPlayer();
     Console.WriteLine("Harmony Test");
     //ChromaticToneDuration, ChromaticTone, MelodicBigram, RhythmicBigram
     MetricSimilarity cosine = new MetricSimilarity(GetMelodySequence(@"test\other\ff7tifa.mid"), new ChromaticToneDuration());
     GeneticGenerator evolver = new GeneticGenerator(cosine);
     var notes = evolver.Generate();
     SimpleChord ch = new SimpleChord();
     var melody = notes;
     HarmonySequence harmony = ch.GetHarmonySequence(melody);
     Track t1 = new Track(PatchNames.Acoustic_Grand, 2);
     t1.AddSequence(melody);
     Track t2 = new Track(PatchNames.Church_Organ, 1);
     t2.AddSequence(harmony);
     Composition comp = new Composition();
     // comp.Add(t1);
     comp.Add(t2);
     player.Play(comp);
     Console.ReadLine();
     return;
 }
Пример #2
0
 static void Test4()
 {
     Console.WriteLine("Melodic Bigram");
     //ChromaticToneDuration, ChromaticTone, MelodicBigram, RhythmicBigram
     MetricSimilarity cosine = new MetricSimilarity(GetMelodySequence(@"test\harry.mid"), new MelodicBigram());
     GeneticGenerator evolver = new GeneticGenerator(cosine);
     var notes = evolver.Generate();
     Play(notes);
 }