s = []
s.append(structure.second_order_deltarule(notes, sodeltas[0], 0.1))
s.append(structure.second_order_deltarule(notes, sodeltas[1], 0.1))
s.append(structure.second_order_deltarule(notes, avg, 0.1))
#s3 = structure.delta_rule(notes, avg, 0.1)
#avg = avg_list(repdeltas)
#rep = structure.delta_rule(None, notes, avg)
print(tools.recursive_print(s[0]))
print(tools.recursive_print(s[1]))
print(tools.recursive_print(s[2]))

#print "REPETITION DELTA:"
#print tools.recursive_print(rep)

for i in range(5):
    groups = structure.groupings(structure.list_to_tree(s[0]), i)
    avg_group = 0
    for group in groups:
        avg_group += len(group)
    avg_group /= float(len(groups))
    print("ONSET: Level {0}, average group size: {1}".format(i, avg_group))
    groups = structure.groupings(structure.list_to_tree(s[1]), i)
    avg_group = 0
    for group in groups:
        avg_group += len(group)
    avg_group /= float(len(groups))
    print("PITCH: Level {0}, average group size: {1}".format(i, avg_group))
    groups = structure.groupings(structure.list_to_tree(s[2]), i)
    avg_group = 0
    for group in groups:
        avg_group += len(group)
Esempio n. 2
0
import database as db
from sequencer import *
from alignment import *
import structure, tools
import scorefeatures as sf
import performancefeatures as pf
import perform

s = db.select()
a = Alignment(db.getScore1(s), db.getDeviation1(s))
melodyscore = a.melody()
melody = tools.parseScore(melodyscore)
onset = structure.groupings(structure.list_to_tree(structure.first_order_tree(structure.onset, melody, 0.1)), 1)
score = sf.vanDerWeijFeatures(melodyscore, onset)
performance = pf.vanDerWeijExpression(a, onset)

print(score)
print(performance)

seq = Sequencer()
seq.play(perform.vanDerWeijPerformSimple(a.score, melodyscore, onset, performance, bpm=a.deviations.bpm, converter=melody))
Esempio n. 3
0
s1 = structure.second_order_deltarule(chopinnotes, sodelta1, 0.1)
s2 = structure.second_order_deltarule(mozartnotes, sodelta2, 0.1)

while True:
    choice = util.menu("Select", ['Schumann exp', 'Schumann score', 'Schumann noexp', 'chopin struct', 'lastig struct bach', 'struct moz'])
    if choice == 0:
        path = db.getPerformancePath1(schumann)
        os.system("audacious {0}".format(path))
    if choice == 1:
        os.system("viewmxml {0}".format(db.getScorePath1(schumann)))
    if choice == 2:
        path = db.getScoreMidiPath1(schumann)
        os.system("audacious {0}".format(path))
    if choice == 3:
        groups = structure.groupings(structure.list_to_tree(s1), 1)
        structured_notes = []
        loud = False
        for group in groups:
            if loud:
                loud = False
            else:
                loud = True
            for leaf in group:
                if loud:
                    leaf.onvelocity = 80
                else:
                    leaf.onvelocity = 50
                structured_notes.append(leaf)

        chopinnotes.notes = structured_notes