Simple dur scale Different start time Minor random |
Minor random
import jmetude.*; Etude e; float[][] notes = new float[100][2]; void setup() { noLoop(); size(200,100); e = new Etude(this); e.createScore("score"); e.createPart("part"); e.createPhrase("phrase"); e.addPartPhrase("part", "phrase"); e.addScorePart("score", "part"); } void generateNotes() { for(int i=0; i<100; i++) { int octave = (int) random(4,6) * 12; int noteFromScale = (int) random(0, e.MINOR_SCALE.length); notes[i][0] = (float) octave + noteFromScale; notes[i][1] = e.Q; } } void draw() { background(50); PImage splash = loadImage("splash.gif"); image(splash, 0, 0); } void mousePressed() { e.stopMIDI(); generateNotes(); int inst = (int)random(0, 127); e.clear("phrase"); e.addPhraseNoteList("phrase",notes); e.setPhraseInstrument("phrase", inst); e.playMIDI("score"); } |