Made some fixes to the MIDI processing sketch and MIDI example
This commit is contained in:
parent
59184187c0
commit
c21d363526
@ -206,7 +206,7 @@ void freq1(int val)
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + (int)(pow(2,(knobValue[knob]-69)/12.0)*440) + " Hz");
|
||||
//(2^((p-69)/12))*440
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -217,7 +217,7 @@ void semi1(int val)
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
int semi =(knobValue[knob]+24)*2+16;
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)semi);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)semi);
|
||||
}
|
||||
}
|
||||
|
||||
@ -227,7 +227,7 @@ void detune1(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -237,7 +237,7 @@ void gain1(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -247,7 +247,7 @@ void wave1(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob] + " (" + waveform[knobValue[knob]] + ")");
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)(knobValue[knob]*8));
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)(knobValue[knob]*8));
|
||||
}
|
||||
}
|
||||
|
||||
@ -257,7 +257,7 @@ void fm1(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -268,7 +268,7 @@ void freq2(int val)
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + (int)(pow(2,(knobValue[knob]-69)/12.0)*440) + " Hz");
|
||||
//(2^((p-69)/12))*440
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -279,7 +279,7 @@ void semi2(int val)
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
int semi =(knobValue[knob]+24)*2+16;
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)semi);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)semi);
|
||||
}
|
||||
}
|
||||
|
||||
@ -289,7 +289,7 @@ void detune2(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -299,7 +299,7 @@ void gain2(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -309,7 +309,7 @@ void wave2(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob] + " (" + waveform[knobValue[knob]] + ")");
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)(knobValue[knob]*8));
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)(knobValue[knob]*8));
|
||||
}
|
||||
}
|
||||
|
||||
@ -319,7 +319,7 @@ void fm2(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -329,7 +329,7 @@ void freq3(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + (int)(pow(2,(knobValue[knob]-69)/12.0)*440) + " Hz");
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -340,7 +340,7 @@ void semi3(int val)
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
int semi =(knobValue[knob]+24)*2+16;
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)semi);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)semi);
|
||||
}
|
||||
}
|
||||
|
||||
@ -350,7 +350,7 @@ void detune3(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -360,7 +360,7 @@ void gain3(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -370,7 +370,7 @@ void wave3(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob] + " (" + waveform[knobValue[knob]] + ")");
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)(knobValue[knob]*8));
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)(knobValue[knob]*8));
|
||||
}
|
||||
}
|
||||
|
||||
@ -380,7 +380,7 @@ void fm3(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -390,7 +390,7 @@ void attack(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -400,7 +400,7 @@ void decay(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -410,7 +410,7 @@ void sustain(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -420,7 +420,7 @@ void release(int val)
|
||||
if(knobValue[knob] != val) {
|
||||
knobValue[knob] = val;
|
||||
if(printChange) println(knobName[knob] + " is: " + knobValue[knob]);
|
||||
if(!serialBusy) sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
sendControlChange((byte)0, (byte)knobMidiCC[knob], (byte)knobValue[knob]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -9,7 +9,7 @@ MidiInput input;
|
||||
Serial port0;
|
||||
|
||||
boolean printChange = true;
|
||||
boolean serialBusy;
|
||||
boolean serialBusy = false;
|
||||
|
||||
int backgroundColor = color(0,0,0);
|
||||
int knobColor = color(235,103,295);
|
||||
@ -34,7 +34,7 @@ void setup() {
|
||||
input = RWMidi.getInputDevices()[0].createInput(this);
|
||||
|
||||
//println(Serial.list());
|
||||
port0 = new Serial(this, Serial.list()[0], 9600);
|
||||
port0 = new Serial(this, Serial.list()[12], 9600);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Binary file not shown.
0
software/apps/Processing/Music/Music_Controls_4/midi_handling.pde
Normal file → Executable file
0
software/apps/Processing/Music/Music_Controls_4/midi_handling.pde
Normal file → Executable file
0
software/apps/Processing/Music/Music_Controls_4/saving_loading.pde
Normal file → Executable file
0
software/apps/Processing/Music/Music_Controls_4/saving_loading.pde
Normal file → Executable file
@ -1,12 +1,3 @@
|
||||
// You can set the number of oscillators (1 to 3) and the bit depth of the
|
||||
// oscillators (8 or 12 bit). These settings must be defined before the
|
||||
// inclusion of the MMM library files. They default to 1 osciallator
|
||||
// and 8bit respectively.
|
||||
|
||||
#define NUM_OSCILLATORS 3
|
||||
#define BIT_DEPTH 8
|
||||
#define MIDI
|
||||
|
||||
// The Music object is automatically instantiated when the header file is
|
||||
// included. Make calls to the Music objects with "Music.function(args)".
|
||||
// You still need to call Music.init() in the setup() function below.
|
||||
@ -16,6 +7,10 @@
|
||||
#define MIDI_CHANNEL 1
|
||||
#include <Music.h>
|
||||
|
||||
long timeNow = 0;
|
||||
long lastTime = 0;
|
||||
long delayTime = 400; //in milliseconds
|
||||
|
||||
void setup() {
|
||||
|
||||
// We initialise the sound engine by calling Music.init() which outputs a tone
|
||||
@ -27,8 +22,15 @@ void setup() {
|
||||
|
||||
void loop() {
|
||||
|
||||
// In order to send MIDI to the sketch, use the Music_Controls.pde Processing sketch
|
||||
// In order to send MIDI to the sketch, use the Music_Controls_4.pde Processing sketch
|
||||
Midi.checkMidi();
|
||||
|
||||
// The below code is an example of triggering the noteOn function to play some sounds
|
||||
timeNow = millis();
|
||||
if((timeNow - lastTime) > delayTime) {
|
||||
Music.noteOn(64);
|
||||
lastTime = timeNow;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user