Browse Source

add choose BPM

develop
Carmine De Rosa 5 years ago
parent
commit
020c4ae018
  1. 1
      Processing/Sampler/Sampler.pde
  2. 21
      Processing/Sampler/SetBeat.pde
  3. 2
      Processing/Sampler/controllerStatus.pde
  4. BIN
      Processing/Sampler/data/BANK3/1.wav
  5. BIN
      Processing/Sampler/data/BANK3/2.wav
  6. BIN
      Processing/Sampler/data/BANK3/3.wav
  7. BIN
      Processing/Sampler/data/BANK3/4.wav
  8. BIN
      Processing/Sampler/data/BANK3/5.wav
  9. BIN
      Processing/Sampler/data/BANK4/1.wav
  10. BIN
      Processing/Sampler/data/BANK4/2.wav
  11. BIN
      Processing/Sampler/data/BANK4/3.wav
  12. BIN
      Processing/Sampler/data/BANK4/4.wav
  13. BIN
      Processing/Sampler/data/BANK4/5.wav
  14. 16
      Processing/Sampler/data/data.json
  15. 23
      Processing/Sampler/loadData.pde
  16. 4
      Processing/Sampler/setData.pde

1
Processing/Sampler/Sampler.pde

@ -14,6 +14,7 @@ int duration = 0;
int beat = 0; int beat = 0;
String patternLabel = "NO PATTERN"; String patternLabel = "NO PATTERN";
String bpmLabel = "UNSET";
String swingLabel = "100%"; String swingLabel = "100%";
boolean[][] samples; boolean[][] samples;

21
Processing/Sampler/SetBeat.pde

@ -30,6 +30,10 @@ void keyPressed() {
controller[1] = controller[1] == "UNSET" ? "REC/OVERDUB" : "UNSET"; controller[1] = controller[1] == "UNSET" ? "REC/OVERDUB" : "UNSET";
doRec = true; doRec = true;
} }
if(key == 's') { // BPM
bpmLabel = "CHOOSE...";
chooseBPM = true;
}
if(key == 'o') { // PATTERN if(key == 'o') { // PATTERN
choosePattern = true; choosePattern = true;
controller[0] = "STOP"; controller[0] = "STOP";
@ -48,9 +52,16 @@ void keyPressed() {
if(code >= 0 && !doErease) { if(code >= 0 && !doErease) {
if(chooseBank) { if(chooseBank) {
controller[2] = "BANK" + (code+1);
setData();
controller[2] = banksLabels[code];
bank = code+1;
chooseBank = false; chooseBank = false;
setData();
} else if(chooseBPM) {
bpmLabel = bpmsArray[code]+"";
bpm = bpmsArray[code];
chooseBPM = false;
setData();
} else if(choosePattern) { } else if(choosePattern) {
pattern = code; pattern = code;
@ -60,11 +71,13 @@ void keyPressed() {
numSounds = soundNumbersArray[code]; numSounds = soundNumbersArray[code];
divider = dividersArray[code]; divider = dividersArray[code];
bank = banksArray[code]; bank = banksArray[code];
bpm = bpmPatArray[code];
bpmLabel = bpmPatArray[code]+"";
numTracks = numSounds; numTracks = numSounds;
controller[2] = "BANK" + banksArray[code];
controller[2] = banksLabels[code];
setData(); setData();
} else if(controller[1] != "EREASE" && controller[1] != "UNSET") {
} else if(controller[1] != "EREASE" && controller[1] != "UNSET" && controller[0] != "STOP") {
setBeat(beat, code); setBeat(beat, code);
} }
} }

2
Processing/Sampler/controllerStatus.pde

@ -20,7 +20,7 @@ void printControllerStatus() {
fill(240); fill(240);
text(patternLabel, (width/2)+100, height-75); text(patternLabel, (width/2)+100, height-75);
text(bpm, (width/2)+100, height-55);
text(bpmLabel, (width/2)+100, height-55);
text(swing, (width/2)+100, height-35); text(swing, (width/2)+100, height-35);
stroke(200); stroke(200);

BIN
Processing/Sampler/data/BANK3/1.wav

Binary file not shown.

BIN
Processing/Sampler/data/BANK3/2.wav

Binary file not shown.

BIN
Processing/Sampler/data/BANK3/3.wav

Binary file not shown.

BIN
Processing/Sampler/data/BANK3/4.wav

Binary file not shown.

BIN
Processing/Sampler/data/BANK3/5.wav

Binary file not shown.

BIN
Processing/Sampler/data/BANK4/1.wav

Binary file not shown.

BIN
Processing/Sampler/data/BANK4/2.wav

Binary file not shown.

BIN
Processing/Sampler/data/BANK4/3.wav

Binary file not shown.

BIN
Processing/Sampler/data/BANK4/4.wav

Binary file not shown.

BIN
Processing/Sampler/data/BANK4/5.wav

Binary file not shown.

16
Processing/Sampler/data/data.json

@ -5,6 +5,7 @@
"numSounds": 5, "numSounds": 5,
"divider": 8, "divider": 8,
"bank": 1, "bank": 1,
"bpm": 280,
"pattern": [ "pattern": [
[true, false, true, false, true, false, true, false], [true, false, true, false, true, false, true, false],
[true, false, false, true, false, true, false, false], [true, false, false, true, false, true, false, false],
@ -18,11 +19,26 @@
"numSounds": 3, "numSounds": 3,
"divider": 6, "divider": 6,
"bank": 2, "bank": 2,
"bpm": 180,
"pattern": [ "pattern": [
[false, true, false, true, false, true], [false, true, false, true, false, true],
[false, false, true, false, false, true], [false, false, true, false, false, true],
[false, false, false, true, false, false] [false, false, false, true, false, false]
] ]
} }
],
"banks": [
{"name": "Bank1"},
{"name": "Drum"},
{"name": "Electric"},
{"name": "Bank 123"}
],
"bpm": [
{"value": 80},
{"value": 120},
{"value": 180},
{"value": 280}
] ]
} }

23
Processing/Sampler/loadData.pde

@ -1,7 +1,10 @@
String[] patternLabels = {}; String[] patternLabels = {};
String[] banksLabels = {};
int[] soundNumbersArray = {}; int[] soundNumbersArray = {};
int[] dividersArray = {}; int[] dividersArray = {};
int[] banksArray = {}; int[] banksArray = {};
int[] bpmPatArray = {};
int[] bpmsArray = {};
boolean[][][] patternsArray = {}; boolean[][][] patternsArray = {};
void loadData() { void loadData() {
@ -10,17 +13,31 @@ void loadData() {
json = loadJSONObject("data.json"); json = loadJSONObject("data.json");
JSONArray pattsArray = json.getJSONArray("patterns"); JSONArray pattsArray = json.getJSONArray("patterns");
JSONArray bnksArray = json.getJSONArray("banks");
JSONArray bpmArray = json.getJSONArray("bpm");
for(int bpm=0; bpm<bpmArray.size(); bpm++) {
JSONObject single = bpmArray.getJSONObject(bpm);
bpmsArray = append(bpmsArray, single.getInt("value"));
}
bpm = bpmsArray[0];
for(int bnk=0; bnk<bnksArray.size(); bnk++) {
JSONObject single = bnksArray.getJSONObject(bnk);
banksLabels = append(banksLabels, single.getString("name"));
}
for(int pat=0; pat<pattsArray.size(); pat++) { for(int pat=0; pat<pattsArray.size(); pat++) {
JSONObject single = pattsArray.getJSONObject(pat); JSONObject single = pattsArray.getJSONObject(pat);
JSONArray singlePattsArray = single.getJSONArray("pattern");
boolean[][] tmpPat = {};
patternLabels = append(patternLabels, single.getString("name")); patternLabels = append(patternLabels, single.getString("name"));
soundNumbersArray = append(soundNumbersArray, single.getInt("numSounds")); soundNumbersArray = append(soundNumbersArray, single.getInt("numSounds"));
dividersArray = append(dividersArray, single.getInt("divider")); dividersArray = append(dividersArray, single.getInt("divider"));
banksArray = append(banksArray, single.getInt("bank")); banksArray = append(banksArray, single.getInt("bank"));
boolean[][] tmpPat = {};
JSONArray singlePattsArray = single.getJSONArray("pattern");
bpmPatArray = append(bpmPatArray, single.getInt("bpm"));
for(int x=0; x<singlePattsArray.size(); x++) { for(int x=0; x<singlePattsArray.size(); x++) {
boolean[] tmpRow = {}; boolean[] tmpRow = {};

4
Processing/Sampler/setData.pde

@ -1,11 +1,11 @@
void setData() { void setData() {
bpm = 280;
swing = 50; swing = 50;
duration = int((60/float(bpm))*1000); duration = int((60/float(bpm))*1000);
beat = 0; beat = 0;
//println(bank);
//println(bpm);
//println(patternLabel); //println(patternLabel);
/* /*

Loading…
Cancel
Save