r := RandomChoice[{1, 5, 6}] g[x_] := RandomChoice[{0.5, 0.3, 0.2} -> {x, {x[[1]]}, {x[[1]], x[[2]]}}]; accord := Module[{}, r1 = r; {{1 + r1, 5 + r1, 6 + r1}, {1, 5, 6}}]; scale = {1 + r, 5 + r, 6 + r}; s := g[RandomChoice[accord]] + RandomChoice[scale] A = Table[{s, Random[Integer, 3] + 1}, {40}]; sn[{a_, t_}] := SoundNote[s, t]; song2 = Sound[{"Violin", sn /@ A}, 30] Export["alex_hugon.midi", song2, "Midi"]