Compare commits
3 Commits
8760145bc8
...
aeb6560b76
Author | SHA1 | Date | |
---|---|---|---|
aeb6560b76 | |||
9e9e5c9fd1 | |||
dca75566e7 |
11283
HSS_NOT.json
11283
HSS_NOT.json
File diff suppressed because it is too large
Load Diff
@ -16680,7 +16680,7 @@
|
||||
"2" : {
|
||||
"id" : 2,
|
||||
"data" : {
|
||||
"hub::instrument::bank" : [ "HSS_Samples_13.6.24.json" ],
|
||||
"hub::instrument::bank" : [ "HSS_Samples.json" ],
|
||||
"hub::instrument::instrument-1" : [ "Basic-Tone.instr.json" ],
|
||||
"hub::instrument::instrument-2" : [ "Basic-Tone.instr.json" ],
|
||||
"hub::instrument::instrument-3" : [ "Gentle-Metallic-1.instr.json" ],
|
||||
@ -33355,7 +33355,7 @@
|
||||
"3" : {
|
||||
"id" : 3,
|
||||
"data" : {
|
||||
"hub::instrument::bank" : [ "HSS_Samples_13.6.24.json" ],
|
||||
"hub::instrument::bank" : [ "HSS_Samples.json" ],
|
||||
"hub::instrument::instrument-1" : [ "Basic-Tone.instr.json" ],
|
||||
"hub::instrument::instrument-2" : [ "Basic-Tone.instr.json" ],
|
||||
"hub::instrument::instrument-3" : [ "Gentle-Metallic-1.instr.json" ],
|
||||
@ -50030,7 +50030,7 @@
|
||||
"4" : {
|
||||
"id" : 4,
|
||||
"data" : {
|
||||
"hub::instrument::bank" : [ "HSS_Samples_13.6.24.json" ],
|
||||
"hub::instrument::bank" : [ "HSS_Samples.json" ],
|
||||
"hub::instrument::instrument-1" : [ "Basic-Tone.instr.json" ],
|
||||
"hub::instrument::instrument-2" : [ "Basic-Tone.instr.json" ],
|
||||
"hub::instrument::instrument-3" : [ "Gentle-Metallic-1.instr.json" ],
|
||||
@ -66705,7 +66705,7 @@
|
||||
"5" : {
|
||||
"id" : 5,
|
||||
"data" : {
|
||||
"hub::instrument::bank" : [ "HSS_Samples_13.6.24.json" ],
|
||||
"hub::instrument::bank" : [ "HSS_Samples.json" ],
|
||||
"hub::instrument::instrument-1" : [ "Basic-Tone.instr.json" ],
|
||||
"hub::instrument::instrument-2" : [ "Basic-Tone.instr.json" ],
|
||||
"hub::instrument::instrument-3" : [ "Gentle-Metallic-1.instr.json" ],
|
||||
|
48
Trajectories/Goran_01_Feb2025_redo_HSS_Trajectory.traj
Normal file
48
Trajectories/Goran_01_Feb2025_redo_HSS_Trajectory.traj
Normal file
@ -0,0 +1,48 @@
|
||||
00:00, 0.515873 0.477551;
|
||||
00:30, 0.420635 0.281633;
|
||||
01:00, 0.325397 0.142857;
|
||||
01:30, 0.18254 0.208163;
|
||||
02:00, 0.150794 0.330612;
|
||||
02:30, 0.206349 0.346939;
|
||||
03:00, 0.380952 0.436735;
|
||||
03:30, 0.5 0.502041;
|
||||
04:00, 0.301587 0.420408;
|
||||
04:30, 0.253968 0.232653;
|
||||
05:00, 0.380952 0.281633;
|
||||
05:30, 0.404762 0.330612;
|
||||
06:00, 0.507937 0.485714;
|
||||
06:30, 0.571429 0.591837;
|
||||
07:00, 0.611111 0.714286;
|
||||
07:30, 0.65873 0.779592;
|
||||
08:00, 0.777778 0.763265;
|
||||
08:30, 0.833333 0.640816;
|
||||
09:00, 0.507937 0.502041;
|
||||
09:30, 0.555556 0.583673;
|
||||
10:00, 0.587302 0.673469;
|
||||
10:30, 0.650794 0.738776;
|
||||
11:00, 0.714286 0.673469;
|
||||
11:30, 0.5 0.493878;
|
||||
12:00, 0.603175 0.461224;
|
||||
12:30, 0.714286 0.420408;
|
||||
13:00, 0.706349 0.297959;
|
||||
13:30, 0.595238 0.314286;
|
||||
14:00, 0.539683 0.395918;
|
||||
14:30, 0.507937 0.493878;
|
||||
15:00, 0.444444 0.657143;
|
||||
15:30, 0.373016 0.820408;
|
||||
16:00, 0.238095 0.657143;
|
||||
16:30, 0.285714 0.616327;
|
||||
17:00, 0.349206 0.559184;
|
||||
17:30, 0.492063 0.485714;
|
||||
18:00, 0.404762 0.469388;
|
||||
18:30, 0.277778 0.404082;
|
||||
19:00, 0.238095 0.297959;
|
||||
19:30, 0.349206 0.257143;
|
||||
20:00, 0.436508 0.297959;
|
||||
20:30, 0.52381 0.469388;
|
||||
21:00, 0.603175 0.412245;
|
||||
21:30, 0.714286 0.404082;
|
||||
22:00, 0.825397 0.363265;
|
||||
22:30, 0.857143 0.257143;
|
||||
23:00, 0.730159 0.24898;
|
||||
23:30, 0.603175 0.338776;
|
@ -52,6 +52,12 @@ function setInstruments()
|
||||
bang();
|
||||
}
|
||||
|
||||
function setPiece()
|
||||
{
|
||||
pieces = arrayfromargs(arguments);
|
||||
bang();
|
||||
}
|
||||
|
||||
function bang()
|
||||
{
|
||||
|
||||
@ -197,9 +203,9 @@ svg.push({
|
||||
addMenu(-1, "basicDIV", "Piece", "piece", 36, 0, pieces, "wide");
|
||||
addMenu(-1, "basicDIV", "Playing Mode", "mode", 66, 0, modes, "wide");
|
||||
addCheckbox(-1, "basicDIV", "Play", "play", 96, 0, "left");
|
||||
addSlider(-1, "basicDIV", "Tempo", "tempo", 0, [5, 160], 0.1, 60, "this.value", "this.value");
|
||||
addSlider(-1, "basicDIV", "Duration", "duration", 1, [0, 100], 1, 100, "this.value", "this.value");
|
||||
addSlider(-1, "basicDIV", "Silence", "silence", 2, [0, 100], 1, 100, "this.value", "this.value");
|
||||
addSlider(-1, "basicDIV", "Tempo", "tempo", 0, [1, 200], 0.1, 60, "this.value", "this.value");
|
||||
addSlider(-1, "basicDIV", "Duration", "duration", 1, [60, 600], 1, 300, "this.value", "this.value");
|
||||
addSlider(-1, "basicDIV", "Silence", "silence", 2, [10, 60], 1, 10, "this.value", "this.value");
|
||||
|
||||
|
||||
for (var i = 0; i < 4; i++) {
|
||||
@ -213,7 +219,7 @@ svg.push({
|
||||
addCheckbox(i, "player" + i, "Overlap", "overlap", 96, 0, "right");
|
||||
addSlider(i, "player" + i, "Outset Pulses", "outset_pulses", j++, [1, 16], 1, 1, "this.value", "this.value");
|
||||
addSlider(i, "player" + i, "Eventfulness", "eventfulness", j++, [0, 100], 1, 100, "this.value", "this.value");
|
||||
addSlider(i, "player" + i, "Event Length", "event_length", j++, [5, 650], 1, 100, "this.value", "this.value");
|
||||
addSlider(i, "player" + i, "Event Length", "event_length", j++, [5, 1000], 1, 100, "this.value", "this.value");
|
||||
addSlider(i, "player" + i, "Metriclarity", "metriclarity", j++, [0, 100], 1, 100, "this.value", "this.value");
|
||||
addSlider(i, "player" + i, "Harmoniclarity", "harmoniclarity", j++, [0, 100], 1, 50, "this.value", "this.value");
|
||||
addSlider(i, "player" + i, "Chordal Weight", "chordal_weight", j++, [1, 5], 1, 1, "this.value", "this.value");
|
||||
@ -694,12 +700,12 @@ function param()
|
||||
d.name = p[1];
|
||||
var obj = {};
|
||||
var out = new Dict;
|
||||
//post("d", d.stringify(), "\n");
|
||||
if (d.contains("player") == 0) return;
|
||||
var keys = d.getkeys();
|
||||
var index1 = d.get("player");
|
||||
var msg = keys.indexOf("player") ? keys[0] : keys[1];
|
||||
var val = d.get(msg);
|
||||
//post("what?", msg + "_value_" + (index1 - 1), val, "\n");
|
||||
//for range sliders (calc pulse_length, tonic_pitch, pitch_range)
|
||||
switch (msg) {
|
||||
//menus
|
||||
|
File diff suppressed because one or more lines are too long
@ -14,7 +14,7 @@ var DJsterParams = {
|
||||
"chordal_weight" : [1, 5, "linear"],//
|
||||
"dynamics" : [0, 127, "linear"],//
|
||||
"event_length_display_style" : [0, 1, "linear"],//
|
||||
"event_length" : [60, 600, "log"],//
|
||||
"event_length" : [60, 1000, "log"],//
|
||||
"eventfulness" : [0, 100, "linear"],//
|
||||
"harmoniclarity" : [0, 100, "linear"],//
|
||||
"melodic_cohesion" : [-100, 100, "linear"],//
|
||||
@ -28,9 +28,9 @@ var DJsterParams = {
|
||||
"sorted" : [0, 1, "linear"],//
|
||||
"stream" : [0, 1, "linear"],//
|
||||
"subdivision" : [1, 5, "enum"],//
|
||||
"tempo" : [20, 200, "log"],//
|
||||
"tempo" : [1, 200, "log"],//
|
||||
"timesig_denominator" : [1, 5, "enum"],//
|
||||
"timesig_numerator" : [1, 12, "linear"],//
|
||||
"timesig_numerator" : [1, 12, "enum"],//
|
||||
"tonic_pitch" : [12, 108, "enum"],//
|
||||
};
|
||||
|
||||
@ -71,11 +71,20 @@ function readPiece(path)
|
||||
|
||||
function setMenu()
|
||||
{
|
||||
var pieces = ["setPiece"];
|
||||
this.patcher.getnamed("currentPiece").message("clear");
|
||||
for (var i = 0; i < Object.keys(hsspiece).length; i++) this.patcher.getnamed("currentPiece").message("append", Object.keys(hsspiece)[i]);
|
||||
for (var i = 0; i < Object.keys(hsspiece).length; i++) {
|
||||
this.patcher.getnamed("currentPiece").message("append", Object.keys(hsspiece)[i]);
|
||||
pieces.push(Object.keys(hsspiece)[i]);
|
||||
}
|
||||
this.patcher.getnamed("currentPiece").message("set", Object.keys(hsspiece).length - 1);
|
||||
this.patcher.getnamed("currentPiece").message("clearchecks");
|
||||
this.patcher.getnamed("currentPiece").message("checkitem", Object.keys(hsspiece).length - 1, 1);
|
||||
this.patcher.getnamed("currentPiece").message("checkitem", Object.keys(hsspiece).length - 1, 1);
|
||||
this.patcher.getnamed("webcontrol").message(pieces);
|
||||
var piece = new Dict();
|
||||
piece.parse(JSON.stringify({ "player" : 0, "piece" : Object.keys(hsspiece).length - 1 }));
|
||||
this.patcher.getnamed("webcontrol").message("param", "dictionary", piece.name);
|
||||
//outlet(3, pieces);
|
||||
}
|
||||
|
||||
function writePiece()
|
||||
@ -100,6 +109,10 @@ function setSection(section)
|
||||
if (outdict.contains(section + "::audiolevels")) for (var i = 0; i < 4; i++) outlet(2, "hub::global::level_" + (i + 1), outdict.get(section + "::audiolevels")[i]);
|
||||
}
|
||||
currentPiece = section;
|
||||
var piece = new Dict();
|
||||
piece.parse(JSON.stringify({ "player" : 0, "piece" : section }));
|
||||
this.patcher.getnamed("webcontrol").message("param", "dictionary", piece.name);
|
||||
//outlet(3, "dictionary", piece.name);
|
||||
}
|
||||
|
||||
|
||||
@ -182,7 +195,7 @@ function train()
|
||||
trainingData.push(scale(val, DJsterParams[param][0], DJsterParams[param][1], 0., 1.));
|
||||
break;
|
||||
case "log" :
|
||||
trainingData.push(scale(val, DJsterParams[param][0], DJsterParams[param][1], 0., 1.));
|
||||
trainingData.push(Math.log(val) / Math.log(DJsterParams[param][1]));// Math.log(f)/Math.log(base)
|
||||
break;
|
||||
case "enum" :
|
||||
trainingData.push(j/5);
|
||||
@ -197,7 +210,7 @@ function train()
|
||||
hsspiece[currentPiece][j + 1] = data;
|
||||
outlet(1, "data_point", points[j].concat(trainingData));
|
||||
}
|
||||
outlet(1, "train", 10000);
|
||||
outlet(1, "train", 1000000);
|
||||
}
|
||||
|
||||
|
||||
@ -211,44 +224,47 @@ function list()
|
||||
for (var j = 0; j < vector.length/4; j++) {
|
||||
var k = j + i * vector.length/4;
|
||||
switch (j) {
|
||||
case 1 : case 3 : case 10 : case 11 : case 15 : case 16 : case 20 :
|
||||
case 1 : case 3 : case 10 : case 11 : case 15 : case 16 ://chordal_weight, event_length_display_style, outset_pulses, overlap, sorted, stream
|
||||
var val = Math.round(scale(vector[k], 0, 1, DJsterParams[keys[j]][0], DJsterParams[keys[j]][1]));
|
||||
outlet(2, "Djster.µbus[" + i + "]::" + keys[j], val);
|
||||
break;
|
||||
case 4 : //log (not yet)
|
||||
case 18 :
|
||||
var val = scale(vector[k], 0, 1, DJsterParams[keys[j]][0], DJsterParams[keys[j]][1]);
|
||||
case 4 : //log: event_length
|
||||
case 18 : //tempo
|
||||
var val = Math.pow(DJsterParams[keys[j]][1], vector[k]); //Math.pow(base, i);
|
||||
outlet(2, "Djster.µbus[" + i + "]::" + keys[j], val);
|
||||
break;
|
||||
case 14 : //enum
|
||||
case 14 : //enum; scale
|
||||
//val = "Major";
|
||||
//post(vector[k], Math.floor(vector[k]/0.2 + 1), "\n");
|
||||
outlet(2, "Djster.µbus[" + i + "]::" + keys[j], hsspiece[currentPiece][parseInt(vector[k]/0.2 + 1)]["Djster.µbus[" + i + "]::scale"]);
|
||||
break;
|
||||
case 17 :
|
||||
case 17 : //subdivision
|
||||
//val = "2 2 2";
|
||||
outlet(2, "Djster.µbus[" + i + "]::" + keys[j], hsspiece[currentPiece][parseInt(vector[k]/0.2 + 1)]["Djster.µbus[" + i + "]::meter"]);
|
||||
break;
|
||||
case 19 :
|
||||
case 19 : //timesig_denominator
|
||||
//val = "4"
|
||||
outlet(2, "Djster.µbus[" + i + "]::" + keys[j], hsspiece[currentPiece][parseInt(vector[k]/0.2 + 1)]["Djster.µbus[" + i + "]::timesig_denominator"]);
|
||||
break;
|
||||
case 21 :
|
||||
//tonic pitch
|
||||
case 20 : //timesig_numerator
|
||||
//val = "4"
|
||||
outlet(2, "Djster.µbus[" + i + "]::" + keys[j], hsspiece[currentPiece][parseInt(vector[k]/0.2 + 1)]["Djster.µbus[" + i + "]::timesig_numerator"]);
|
||||
break;
|
||||
case 21 : //tonic pitch
|
||||
outlet(2, "Djster.µbus[" + i + "]::" + keys[j], hsspiece[currentPiece][parseInt(vector[k]/0.2 + 1)]["Djster.µbus[" + i + "]::tonic_pitch"]);
|
||||
break;
|
||||
case 22 :
|
||||
val = "4"
|
||||
case 22 : //instrument
|
||||
val = "4";
|
||||
outlet(2, "hub::instrument::instrument-" + (i + 1), hsspiece[currentPiece][parseInt(vector[k]/0.2 + 1)]["hub::instrument::instrument-" + (i + 1)]);
|
||||
break;
|
||||
case 23 :
|
||||
case 23 : // scr_x
|
||||
src[0] = scale(vector[k], 0, 1, 0, 127);
|
||||
break;
|
||||
case 24 :
|
||||
case 24 : // scr_y
|
||||
src[1] = scale(vector[k], 0, 1, 0, 127);
|
||||
outlet(2, "hub::src::src" + (i + 1), src);
|
||||
break;
|
||||
default : //linear
|
||||
default : //linear; attentuation, dynamics, eventfulness, harmoniclarity, melodic_cohesion, melody_scope, metriclarity
|
||||
var val = scale(vector[k], 0, 1, DJsterParams[keys[j]][0], DJsterParams[keys[j]][1]);
|
||||
outlet(2, "Djster.µbus[" + i + "]::" + keys[j], val);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user