nodeskini 1.0.5 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (179) hide show
  1. package/blocklySkini/blocklySkini.html +5 -1
  2. package/blocklySkini/scripts/hiphop_blocks.js +5 -6
  3. package/client/clientListe/clientListe.js +11 -0
  4. package/client/clientListe/clientListebundle.js +1755 -1909
  5. package/client/controleurHH/controleurHH.html +4 -0
  6. package/client/queueViewer/queue.html +34 -0
  7. package/client/queueViewer/queue.js +187 -0
  8. package/client/queueViewer/style.css +26 -0
  9. package/client/score/parto1.js +14 -11
  10. package/client/score/parto1bundle.js +55 -33
  11. package/client/score/score.html +8 -7
  12. package/doc/Doc Skini Node english.pdf +0 -0
  13. package/doc/Mode d'emploi Skini Node.pdf +0 -0
  14. package/doc/Tuto Skini.pdf +0 -0
  15. package/doc/quickstart.pdf +0 -0
  16. package/myReact/orchestrationHH.hh.js +147 -1843
  17. package/myReact/orchestrationHH.mjs +50 -231
  18. package/myReact/orchestrationHH.mjs.map +1 -1
  19. package/package.json +11 -8
  20. package/pieces/tutos/demoAbleton.csv +21 -0
  21. package/pieces/tutos/demoAbleton.js +100 -0
  22. package/pieces/tutos/demoAbleton.xml +180 -0
  23. package/pieces/tutos/demoHH.js +99 -0
  24. package/pieces/tutos/demoHH.xml +184 -0
  25. package/pieces/tutos/demoHHwait.js +100 -0
  26. package/pieces/tutos/demoHHwait.xml +175 -0
  27. package/pieces/tutos/tuto.csv +10 -0
  28. package/pieces/tutos/tuto.csv.good +1 -0
  29. package/pieces/tutos/tuto1.js +105 -0
  30. package/pieces/tutos/tuto1.xml +147 -0
  31. package/pieces/tutos/tuto10.back.js +106 -0
  32. package/pieces/tutos/tuto10.js +107 -0
  33. package/pieces/tutos/tuto10.xml +199 -0
  34. package/pieces/tutos/tuto11.js +111 -0
  35. package/pieces/tutos/tuto11.xml +124 -0
  36. package/pieces/tutos/tuto12.js +91 -0
  37. package/pieces/tutos/tuto12.xml +258 -0
  38. package/pieces/tutos/tuto2.back.js +106 -0
  39. package/pieces/tutos/tuto2.js +95 -0
  40. package/pieces/tutos/tuto2.xml +94 -0
  41. package/pieces/tutos/tuto3-2.js +105 -0
  42. package/pieces/tutos/tuto3-2.xml +96 -0
  43. package/pieces/tutos/tuto3.js +97 -0
  44. package/pieces/tutos/tuto3.xml +49 -0
  45. package/pieces/tutos/tuto4.js +107 -0
  46. package/pieces/tutos/tuto4.xml +106 -0
  47. package/pieces/tutos/tuto5.js +109 -0
  48. package/pieces/tutos/tuto5.xml +42 -0
  49. package/pieces/tutos/tuto6.js +105 -0
  50. package/pieces/tutos/tuto6.xml +26 -0
  51. package/pieces/tutos/tuto7.js +107 -0
  52. package/pieces/tutos/tuto7.xml +65 -0
  53. package/pieces/tutos/tuto8.js +105 -0
  54. package/pieces/tutos/tuto8.xml +76 -0
  55. package/pieces/tutos/tuto9.js +107 -0
  56. package/pieces/tutos/tuto9.xml +90 -0
  57. package/pieces/tutos/tutoAwait.js +111 -0
  58. package/pieces/tutos/tutoAwait.xml +171 -0
  59. package/pieces/tutos/tutoDoubleEmission.js +93 -0
  60. package/pieces/tutos/tutoDoubleEmission.xml +65 -0
  61. package/pieces/tutos/tutoESP32.js +104 -0
  62. package/pieces/tutos/tutoESP32.xml +246 -0
  63. package/pieces/tutos/tutoGame.js +126 -0
  64. package/pieces/tutos/tutoGame.xml +109 -0
  65. package/pieces/tutos/tutoGroups1.js +111 -0
  66. package/pieces/tutos/tutoGroups1.xml +137 -0
  67. package/pieces/tutos/tutoGroups2.js +97 -0
  68. package/pieces/tutos/tutoGroups2.xml +103 -0
  69. package/pieces/tutos/tutoGroups3.js +111 -0
  70. package/pieces/tutos/tutoGroups3.xml +128 -0
  71. package/pieces/tutos/tutoGroups4.js +111 -0
  72. package/pieces/tutos/tutoGroups4.xml +84 -0
  73. package/pieces/tutos/tutoIZ.js +95 -0
  74. package/pieces/tutos/tutoIZ.xml +135 -0
  75. package/pieces/tutos/tutoIf.js +111 -0
  76. package/pieces/tutos/tutoIf.xml +126 -0
  77. package/pieces/tutos/tutoMidi.js +126 -0
  78. package/pieces/tutos/tutoMidi.xml +62 -0
  79. package/pieces/tutos/tutoOS.js +121 -0
  80. package/pieces/tutos/tutoOSC.js +109 -0
  81. package/pieces/tutos/tutoOSC.xml +223 -0
  82. package/pieces/tutos/tutoOSCJonathan.js +94 -0
  83. package/pieces/tutos/tutoOSCJonathan.xml +312 -0
  84. package/pieces/tutos/tutoPatternInGroup.js +109 -0
  85. package/pieces/tutos/tutoPatternInGroup.xml +116 -0
  86. package/pieces/tutos/tutoRandomBlock.js +129 -0
  87. package/pieces/tutos/tutoRandomBlock.xml +194 -0
  88. package/pieces/tutos/tutoSuspend.js +107 -0
  89. package/pieces/tutos/tutoSuspend.xml +139 -0
  90. package/pieces/tutos/tutoSustain.js +107 -0
  91. package/pieces/tutos/tutoSustain.xml +109 -0
  92. package/pieces/tutos/tutoTank.csv +9 -0
  93. package/pieces/tutos/tutoTank.js +100 -0
  94. package/pieces/tutos/tutoTank.xml +326 -0
  95. package/pieces/tutos/tutoTestAll.csv +11 -0
  96. package/pieces/tutos/tutoTestAll.hh.js +401 -0
  97. package/pieces/tutos/tutoTestAll.js +101 -0
  98. package/pieces/tutos/tutoTestAll.xml +866 -0
  99. package/serveur/OSCandMidi.mjs +27 -3
  100. package/serveur/controleDAW.mjs +2 -1
  101. package/serveur/groupeClientsSons.mjs +27 -3
  102. package/serveur/ipConfig.json +2 -2
  103. package/serveur/skiniParametres.js +55 -10
  104. package/serveur/utilsSkini.mjs +1 -1
  105. package/serveur/websocketServer.mjs +14 -4
  106. package/skini.mjs +4 -0
  107. package/blocklySkini/archive/blocklyControleur.js +0 -87
  108. package/blocklySkini/archive/blocklySkini.js +0 -84
  109. package/blocklySkini/archive/blocklyhop.js +0 -75
  110. package/blocklySkini/archive/clientControleurBlocly.js +0 -170
  111. package/blocklySkini/archive/index.html +0 -76
  112. package/blocklySkini/archive/testHHsuspend.txt +0 -89
  113. package/blocklySkini/archive/testHHtrap.txt +0 -262
  114. package/blocklySkini/archive/testOrchestration.txt +0 -177
  115. package/blocklySkini/archive/testOrchestration.xml +0 -447
  116. package/blocklySkini/archive/testOrchestration2.xml +0 -456
  117. package/blocklySkini/scripts/hiphop_blocks.old.js +0 -3010
  118. package/blocklySkini/scripts/hiphop_blocks11-2025.js +0 -6104
  119. package/myReact/archive/Nodeemitvaluedlocal1.hh.js +0 -52
  120. package/myReact/archive/abort-parNode.js +0 -79
  121. package/myReact/archive/abroNode.js +0 -169
  122. package/myReact/archive/abroNode2.js +0 -80
  123. package/myReact/archive/atom.compile.hh.js +0 -52
  124. package/myReact/archive/await-countNode.js +0 -67
  125. package/myReact/archive/await-nowvalNode.js +0 -44
  126. package/myReact/archive/callHH.js +0 -96
  127. package/myReact/archive/emit-if2.hh.compiled.js +0 -113
  128. package/myReact/archive/every1Node.js +0 -35
  129. package/myReact/archive/if-runNode.js +0 -74
  130. package/myReact/archive/if1Node.js +0 -43
  131. package/myReact/archive/makeawait.js +0 -0
  132. package/myReact/archive/myReact.old.js +0 -684
  133. package/myReact/archive/orchestration.js +0 -281
  134. package/myReact/archive/orchestration1.js +0 -132
  135. package/myReact/archive/orchestration1.xml +0 -465
  136. package/myReact/archive/orchestration2.js +0 -161
  137. package/myReact/archive/orchestrationHH.mano.js +0 -280
  138. package/myReact/archive/orchestrationHHTest.js +0 -428
  139. package/myReact/archive/orchestrationHHTest.xml +0 -234
  140. package/myReact/archive/orchestrationHHTestRun.js +0 -104
  141. package/myReact/archive/orchestrationHHTestRun.xml +0 -34
  142. package/myReact/archive/orchestrationTest0.js +0 -178
  143. package/myReact/archive/orchestrationTest1.js +0 -181
  144. package/myReact/archive/orchestrationTest2.js +0 -281
  145. package/myReact/archive/run3pointsNode.js +0 -59
  146. package/myReact/archive/runNode.js +0 -123
  147. package/myReact/archive/runNode2.js +0 -91
  148. package/myReact/archive/testAwait1.js +0 -141
  149. package/myReact/archive/testAwait1.xml +0 -86
  150. package/myReact/archive/testEvery1.js +0 -122
  151. package/myReact/archive/testEvery1.xml +0 -79
  152. package/myReact/archive/testHH1.js +0 -135
  153. package/myReact/archive/testHH1.xml +0 -86
  154. package/myReact/archive/testHH1revu.js +0 -104
  155. package/myReact/archive/testHH2.js +0 -122
  156. package/myReact/archive/testHH2.xml +0 -79
  157. package/myReact/archive/testHH3.js +0 -130
  158. package/myReact/archive/testHH3.xml +0 -86
  159. package/myReact/archive/testHHabort.js +0 -121
  160. package/myReact/archive/testHHabort.xml +0 -83
  161. package/myReact/archive/testMakeawait.js +0 -202
  162. package/myReact/archive/testRun1.js +0 -168
  163. package/myReact/archive/testRun1.xml +0 -142
  164. package/myReact/archive/titi.js +0 -28
  165. package/myReact/archive/titi.xml +0 -110
  166. package/myReact/archive/toto.js +0 -73
  167. package/myReact/archive/toto.xml +0 -198
  168. package/myReact/archive/trap-await-parallelNode.js +0 -123
  169. package/myReact/inutiles/hiver2022.xml +0 -804
  170. package/myReact/inutiles/hopeNode.xml +0 -459
  171. package/myReact/inutiles/mars2022.xml +0 -871
  172. package/myReact/inutiles/mystique1.xml +0 -318
  173. package/myReact/inutiles/mystiqueOSC.xml +0 -277
  174. package/myReact/inutiles/opus5Node.xml +0 -1271
  175. package/myReact/inutiles/opus5NodeLinux.xml +0 -1241
  176. package/myReact/inutiles/orchestrationHH.xml +0 -541
  177. package/myReact/inutiles/orchestrationHH2.xml +0 -547
  178. package/myReact/inutiles/testHH.xml +0 -95
  179. package/myReact/inutiles/trouveLaPercuTenor.xml +0 -349
@@ -0,0 +1,111 @@
1
+
2
+ // Generated by Skini: Fri Nov 28 2025 16:28:53 GMT+0100 (heure normale d’Europe centrale)
3
+ "use strict"
4
+
5
+ // Indexation des bus Midi pour OSCmidi. A utiliser si Processing en passerelle
6
+ // Il s'agit de l'index correspondant à l'élément du tableau midiConfig.json
7
+ // qui crée le bus midi pour ces commandes.
8
+ // var midiConfig = require("../serveur/midiConfig.json");
9
+ // var countBusOUT = 0;
10
+ // for (var i = 0; i < midiConfig.length; i++) {
11
+ // if (midiConfig[i].type === "OUT") {
12
+ // if (midiConfig[i].spec === "clipToDAW") {
13
+ // exports.busMidiDAW = countBusOUT;
14
+ // }
15
+ // countBusOUT++;
16
+ // }
17
+ // }
18
+
19
+ // A utiliser si Processing en passerelle
20
+ exports.busMidiDAW = 1;
21
+
22
+ // Piece en OSC si la paramètre est false
23
+ // Sinon Skini parle MIDI
24
+ exports.directMidiON = true;
25
+
26
+ // Pour charger les fonctions et modules de scenes de type GOLEM
27
+ exports.scenesON = false;
28
+
29
+ exports.english = true;
30
+
31
+ /***********************************
32
+ Paramètres du simulateur
33
+ Si ces valeurs ne sont pas données c'est celle qui
34
+ sont dans le simulateur qui sont utilisées
35
+ ************************************/
36
+ exports.tempoMax = 500; // En ms
37
+ exports.tempoMin = 400; // En ms
38
+ exports.limiteDureeAttente = 33; // En pulsations
39
+
40
+ /********************************************************
41
+ AUTOMATE
42
+ *********************************************************/
43
+ // Pour un automate conforme à un rechargement selon les déclarations de module HipHop
44
+ exports.reactOnPlay = false;
45
+
46
+ // Pour une réaction à chaque pulsation
47
+ exports.pulsationON = false;
48
+
49
+ /*************************************
50
+ CHEMIN DES FICHIERS SONS MP3 pour les clients
51
+ Nom du sous répartoire ./sounds/xxxx
52
+ *************************************/
53
+ exports.soundFilesPath1 = "";
54
+
55
+ /***************************************
56
+ CHEMIN DES PARTITIONS DES PATTERNS ET CONFIG AVEC MUSICIENS
57
+ ****************************************/
58
+ exports.avecMusicien = false; // Pour mettre en place les spécificités au jeu avec des musiciens.
59
+ exports.decalageFIFOavecMusicien = 4; // Décalage de la FIFO vide avant le premier pattern dans une FIFO.
60
+ exports.patternScorePath1 ="";
61
+
62
+ /****************************************
63
+ ACTIVATION D'ALGORITHME D'ORGANISATION DES FIFOs
64
+ Si 0 ou undefined pas d'algorithme.
65
+ Si 1 algorithme de réorganisation Début, Milieu, Fin, Neutre (DFMN)
66
+ Dans le csv, D -> 1, M -> 2, F->3, N->4 (c'est fixé dans controleAbleton.js)
67
+ Si autre ... à créer...
68
+ ATTENTION: NE JAMAIS UTILISER EN SITUATION D'INTERACTION SI L'ALGORITHME
69
+ PEUT SUPPRIMER DES PATTERNS DES FIFOs
70
+ *****************************************/
71
+ exports.algoGestionFifo = 0;
72
+ exports.shufflePatterns = false;
73
+ /*****************************************************************************
74
+
75
+ Gestion de la Matrice des possibles
76
+ Automate de gestion de la matrice des possibles
77
+
78
+ ******************************************************************************/
79
+ exports.nbeDeGroupesClients = 3;
80
+
81
+ function setnbeDeGroupesClients(num) {
82
+ this.nbeDeGroupesClients = num;
83
+ }
84
+ exports.setnbeDeGroupesClients = setnbeDeGroupesClients;
85
+
86
+ exports.simulatorInAseperateGroup = false; // Si true, le dernier groupe client est réservé au simulateur.
87
+
88
+ // Pour un contrôle des Raspberries
89
+ exports.useRaspberries = false;
90
+ exports.playBufferMessage = "test";
91
+ exports.raspOSCPort = 4000;
92
+
93
+ // La synchro Midi, Link. Synchro Bitwig OSC par défaut si Midi et Link false.
94
+ exports.synchoOnMidiClock = false;
95
+ exports.synchroLink = true;
96
+ exports.synchroSkini = false;
97
+ exports.timer = 500;
98
+ exports.gameOSCSignals = false;
99
+
100
+ exports.sensorOSC = false;
101
+ exports.tempoSensorsInit = [0,0,0,0,0,0,0,0,0,0,0,0];
102
+ exports.sensorsSensibilities = [5,5,5,5,5,5,5,5,5,5,5,5];
103
+
104
+ const groupesDesSons = [
105
+ [ "groupe0",0, "group",170,100,20,"#CF1919",[],1 ],
106
+ [ "groupe1",1, "group",20,240,20,"#008CBA",[],1 ],
107
+ [ "groupe2",2, "group",170,580,20,"#4CAF50",[],1 ],
108
+ [ "groupe3",3, "group",350,100,20,"#5F6262",[],1 ],
109
+ [ "groupe4",4, "group",20,380,20,"#797bbf",[],1 ]
110
+ ];
111
+ exports.groupesDesSons = groupesDesSons;
@@ -0,0 +1,126 @@
1
+ <xml xmlns="https://developers.google.com/blockly/xml">
2
+ <variables>
3
+ <variable id="s${ep-?H7|lVi1|X{*#W">foo</variable>
4
+ <variable id="$FMJ]Fc^$N=ZL$NSL+;r">bar</variable>
5
+ <variable id="x8|omDav4DL{,3uj4qt(">tick</variable>
6
+ </variables>
7
+ <block type="hh_ORCHESTRATION" id="a-M{,,Z8QBPD6S|y-Hm7" x="101" y="65">
8
+ <statement name="SIGNALS">
9
+ <block type="hh_declare_signal" id="2{I~,=oR`tdBVYPno:+|">
10
+ <field name="TYPE">inout</field>
11
+ <value name="signal">
12
+ <block type="variables_get" id="K{$fPb8LZ.cd)C^APoz=">
13
+ <field name="VAR" id="s${ep-?H7|lVi1|X{*#W">foo</field>
14
+ </block>
15
+ </value>
16
+ <next>
17
+ <block type="hh_declare_signal" id=",xLY0)^Y^;wL9PF|H$8?">
18
+ <field name="TYPE">inout</field>
19
+ <value name="signal">
20
+ <block type="variables_get" id="!J,wX;Z`yYuRy+A5LXPd">
21
+ <field name="VAR" id="$FMJ]Fc^$N=ZL$NSL+;r">bar</field>
22
+ </block>
23
+ </value>
24
+ </block>
25
+ </next>
26
+ </block>
27
+ </statement>
28
+ <statement name="BODY">
29
+ <block type="hh_fork" id="fZy9JnYZ?uSbK|;q`R^^">
30
+ <statement name="BODY">
31
+ <block type="hh_print_serveur" id="^kprJHdcjiy-tKTrqJ{|">
32
+ <value name="TEXT">
33
+ <block type="text" id="kh{xL+Q%W18xhrSw+bos">
34
+ <field name="TEXT">foo depart</field>
35
+ </block>
36
+ </value>
37
+ <next>
38
+ <block type="hh_wait_for" id="7UQnJv_/[*ZH6KWR0O93">
39
+ <field name="TIMES">5</field>
40
+ <value name="SIGNAL">
41
+ <block type="variables_get" id="wdGbs*{!dgplR5W:UOM*">
42
+ <field name="VAR" id="x8|omDav4DL{,3uj4qt(">tick</field>
43
+ </block>
44
+ </value>
45
+ <next>
46
+ <block type="hh_print_serveur" id="H!W7F]0$g6^e3tOeLPp)">
47
+ <value name="TEXT">
48
+ <block type="text" id="*N1p|kX/o,``fT{k[O#~">
49
+ <field name="TEXT">foo stop</field>
50
+ </block>
51
+ </value>
52
+ <next>
53
+ <block type="hh_emit_value" id="2!Kyt0B0x1=v|P_rV05A">
54
+ <field name="Signal_Value">0</field>
55
+ <value name="SIGNAL">
56
+ <block type="variables_get" id="9a%7L46+%l8Z($1l{0C%">
57
+ <field name="VAR" id="$FMJ]Fc^$N=ZL$NSL+;r">bar</field>
58
+ </block>
59
+ </value>
60
+ <next>
61
+ <block type="hh_sustain_value" id="Dp{)r/*#K?{35dB%Wmz7">
62
+ <field name="Signal_Value">0</field>
63
+ <value name="SIGNAL">
64
+ <block type="variables_get" id="VA1-t,lgXWw4Ogc-V*y1">
65
+ <field name="VAR" id="s${ep-?H7|lVi1|X{*#W">foo</field>
66
+ </block>
67
+ </value>
68
+ </block>
69
+ </next>
70
+ </block>
71
+ </next>
72
+ </block>
73
+ </next>
74
+ </block>
75
+ </next>
76
+ </block>
77
+ </statement>
78
+ <next>
79
+ <block type="hh_par" id="hlHa];Z`8??E[^1BY3q|">
80
+ <statement name="BODY">
81
+ <block type="hh_wait_for" id="SdG0V@ap!!a0O%H%mI-6">
82
+ <field name="TIMES">1</field>
83
+ <value name="SIGNAL">
84
+ <block type="variables_get" id=")F{h%b8/cY2i%f7$Zo2S">
85
+ <field name="VAR" id="s${ep-?H7|lVi1|X{*#W">foo</field>
86
+ </block>
87
+ </value>
88
+ <next>
89
+ <block type="hh_if_signal" id="!riRNuD_Bi^f!z:l]Kpg">
90
+ <value name="SIGNAL">
91
+ <block type="variables_get" id="]/fJBkTt`3S-06xfcIK6">
92
+ <field name="VAR" id="$FMJ]Fc^$N=ZL$NSL+;r">bar</field>
93
+ </block>
94
+ </value>
95
+ <statement name="BODY">
96
+ <block type="hh_wait_for" id=",h*Vk]zg;nx](6Cy*Gc{">
97
+ <field name="TIMES">1</field>
98
+ <value name="SIGNAL">
99
+ <block type="variables_get" id="BkUD+-XN!z{#9BR1u}28">
100
+ <field name="VAR" id="x8|omDav4DL{,3uj4qt(">tick</field>
101
+ </block>
102
+ </value>
103
+ <next>
104
+ <block type="hh_print_serveur" id="_P4C`|-IqzpyX(aM$ji1">
105
+ <value name="TEXT">
106
+ <block type="text" id="JOw|zwmV6c~f]fUch#i2">
107
+ <field name="TEXT">If foo</field>
108
+ </block>
109
+ </value>
110
+ <next>
111
+ <block type="hh_pause" id="1xW6Ogp}Hh+9VP#Gt]FG"></block>
112
+ </next>
113
+ </block>
114
+ </next>
115
+ </block>
116
+ </statement>
117
+ </block>
118
+ </next>
119
+ </block>
120
+ </statement>
121
+ </block>
122
+ </next>
123
+ </block>
124
+ </statement>
125
+ </block>
126
+ </xml>
@@ -0,0 +1,126 @@
1
+ "use strict"
2
+
3
+ // Default parameter file
4
+
5
+ // Indexation des bus Midi pour OSCmidi
6
+ // Il s'agit de l'index correspondant à l'élément du tableau midiConfig.json
7
+ // qui crée le bus midi pour ces commandes.
8
+ // var midiConfig = require("../serveur/midiConfig.json");
9
+ // var countBusOUT = 0;
10
+ // for (var i = 0; i < midiConfig.length; i++) {
11
+ // if (midiConfig[i].type === "OUT") {
12
+ // if (midiConfig[i].spec === "clipToDAW") {
13
+ // exports.busMidiDAW = countBusOUT;
14
+ // }
15
+ // countBusOUT++;
16
+ // }
17
+ // }
18
+
19
+ // A utiliser si Processing en passerelle
20
+ exports.busMidiDAW = 1;
21
+
22
+ // Piece Bitwig en OSC si la paramètre est false
23
+ // Sinon Skini parle MIDI
24
+ exports.directMidiON = true;
25
+
26
+ // Pour charger les fonctions et modules de scenes de type GOLEM
27
+ exports.scenesON = false;
28
+
29
+ exports.english = true;
30
+
31
+ /***********************************
32
+ Paramètres du simulateur
33
+ Si ces valeurs ne sont pas données c'est celle qui
34
+ sont dans le simulateur qui sont utilisées
35
+ ************************************/
36
+ exports.tempoMax = 500; // En ms
37
+ exports.tempoMin = 400; // En ms
38
+ exports.limiteDureeAttente = 33; // En pulsations
39
+
40
+ /********************************************************
41
+
42
+ AUTOMATE
43
+
44
+ *********************************************************/
45
+ // Pour un automate conforme à un rechargement selon les déclarations de module HipHop
46
+ exports.reactOnPlay = false;
47
+
48
+ // Pour une réaction à chaque pulsation
49
+ exports.pulsationON = false;
50
+
51
+ /*************************************
52
+ CHEMIN DES FICHIERS SONS MP3 pour les clients
53
+ Nom du sous répartoire ./sounds/xxxx
54
+ *************************************/
55
+ exports.soundFilesPath1 = "";
56
+
57
+ /***************************************
58
+ CHEMIN DES PARTITIONS DES PATTERNS ET CONFIG AVEC MUSICIENS
59
+ ****************************************/
60
+ exports.avecMusicien = false; // Pour mettre en place les spécificités au jeu avec des musiciens.
61
+ exports.decalageFIFOavecMusicien = 4; // Décalage de la FIFO vide avant le premier pattern dans une FIFO.
62
+ exports.patternScorePath1 = "";
63
+
64
+ /****************************************
65
+ ACTIVATION D'ALGORITHME D'ORGANISATION DES FIFOs
66
+ Si 0 ou undefined pas d'algorithme.
67
+ Si 1 algorithme de réorganisation Début, Milieu, Fin, Neutre (DFMN)
68
+ Dans le csv, D -> 1, M -> 2, F->3, N->4 (c'est fixé dans controleAbleton.js)
69
+ Si autre ... à créer...
70
+ ATTENTION: NE JAMAIS UTILISER EN SITUATION D'INTERACTION SI L'ALGORITHME
71
+ PEUT SUPPRIMER DES PATTERNS DES FIFOs
72
+ *****************************************/
73
+ exports.algoGestionFifo = 0;
74
+ exports.shufflePatterns = false;
75
+ /*****************************************************************************
76
+
77
+ Gestion de la Matrice des possibles
78
+ Automate de gestion de la matrice des possibles
79
+
80
+ ******************************************************************************/
81
+ exports.nbeDeGroupesClients = 3;
82
+ exports.simulatorInAseperateGroup = false; // Si true, le dernier groupe client est réservé au simulateur.
83
+
84
+ // Pour un contrôle des Raspberries
85
+ exports.useRaspberries = false;
86
+ exports.playBufferMessage = 'test';
87
+ exports.raspOSCPort = 4000;
88
+
89
+ function setnbeDeGroupesClients(num) {
90
+ this.nbeDeGroupesClients = num;
91
+ }
92
+ exports.setnbeDeGroupesClients = setnbeDeGroupesClients;
93
+
94
+ // La synchro Midi, Link. Synchro Bitwig OSC par défaut si Midi et Link false.
95
+ exports.synchoOnMidiClock = false;
96
+ exports.synchroLink = true;
97
+ exports.synchroSkini = false;
98
+ exports.timer = 500; // Pour une tempo de 110
99
+ exports.gamesOSCSignals = false;
100
+
101
+ exports.sensorOSC = false;
102
+ exports.tempoSensorsInit = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
103
+ exports.sensorsSensibilities = [5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5];
104
+
105
+ const bleu = "#008CBA";
106
+ const rouge = '#CF1919';
107
+ const vert = "#4CAF50";
108
+ const marron = '#666633';
109
+ const violet = '#797bbf';
110
+ const orange = '#b3712d';
111
+ const rose = '#E0095F';
112
+ const gris = '#5F6262';
113
+ const ocre = '#BCA104';
114
+ const terre = '#A76611';
115
+ const grisvert = '#039879';
116
+ const grisbleu = '#315A93';
117
+
118
+ // Pour group: nom du groupe (0), index du groupe (1), type (2), x(3), y(4),
119
+ // nbe d'éléments(5), color(6), prédécesseurs(7), n° de scène graphique
120
+ var groupesDesSons = [
121
+ [ "toto",1, "group",100,100,3,"",[],1 ],
122
+ [ "titi",2, "group",200,200,3,"",[],1 ],
123
+ [ "tutu",2, "group",300,300,3,"",[],1 ],
124
+ ];
125
+ exports.groupesDesSons = groupesDesSons;
126
+
@@ -0,0 +1,62 @@
1
+ <xml xmlns="https://developers.google.com/blockly/xml">
2
+ <variables>
3
+ <variable id="s${ep-?H7|lVi1|X{*#W">foo</variable>
4
+ <variable id="$FMJ]Fc^$N=ZL$NSL+;r">bar</variable>
5
+ <variable id="x8|omDav4DL{,3uj4qt(">tick</variable>
6
+ </variables>
7
+ <block type="hh_ORCHESTRATION" id="a-M{,,Z8QBPD6S|y-Hm7" x="101" y="65">
8
+ <statement name="SIGNALS">
9
+ <block type="hh_declare_signal" id="2{I~,=oR`tdBVYPno:+|">
10
+ <field name="TYPE">inout</field>
11
+ <value name="signal">
12
+ <block type="variables_get" id="K{$fPb8LZ.cd)C^APoz=">
13
+ <field name="VAR" id="s${ep-?H7|lVi1|X{*#W">foo</field>
14
+ </block>
15
+ </value>
16
+ <next>
17
+ <block type="hh_declare_signal" id=",xLY0)^Y^;wL9PF|H$8?">
18
+ <field name="TYPE">inout</field>
19
+ <value name="signal">
20
+ <block type="variables_get" id="!J,wX;Z`yYuRy+A5LXPd">
21
+ <field name="VAR" id="$FMJ]Fc^$N=ZL$NSL+;r">bar</field>
22
+ </block>
23
+ </value>
24
+ </block>
25
+ </next>
26
+ </block>
27
+ </statement>
28
+ <statement name="BODY">
29
+ <block type="hh_print_serveur" id="^kprJHdcjiy-tKTrqJ{|">
30
+ <value name="TEXT">
31
+ <block type="text" id="kh{xL+Q%W18xhrSw+bos">
32
+ <field name="TEXT">Tuto Midi</field>
33
+ </block>
34
+ </value>
35
+ <next>
36
+ <block type="hh_loopeach" id=",68p|Ms8-*]Z9mLA2E$u">
37
+ <field name="TIMES">5</field>
38
+ <value name="SIGNAL">
39
+ <block type="variables_get" id="^9_UjzR^8v3g}++mHYXk">
40
+ <field name="VAR" id="x8|omDav4DL{,3uj4qt(">tick</field>
41
+ </block>
42
+ </value>
43
+ <statement name="BODY">
44
+ <block type="send_midi_cc" id="^TVUh,k@5N_kP{{bs?V#">
45
+ <field name="channelMidi">1</field>
46
+ <field name="CCMidi">300</field>
47
+ <field name="valueMidi">100</field>
48
+ <next>
49
+ <block type="send_midi_command" id="R[@H-$y.k?6EfQNAIR(E">
50
+ <field name="channelMidi">1</field>
51
+ <field name="CommandMidi">12</field>
52
+ <field name="valueMidi">120</field>
53
+ </block>
54
+ </next>
55
+ </block>
56
+ </statement>
57
+ </block>
58
+ </next>
59
+ </block>
60
+ </statement>
61
+ </block>
62
+ </xml>
@@ -0,0 +1,121 @@
1
+ "use strict"
2
+
3
+ // Default parameter file
4
+
5
+ // Indexation des bus Midi dans OSCmidi de processing, pas utile avec Bitwig
6
+ // Il s'agit de l'index correspondant à l'élément du tableau midiConfig.json
7
+ // qui crée le bus midi pour ces commandes.
8
+ var midiConfig = require("../serveur/midiConfig.json");
9
+ var countBusOUT = 0;
10
+ for (var i = 0; i < midiConfig.length; i++) {
11
+ if (midiConfig[i].type === "OUT") {
12
+ if (midiConfig[i].spec === "clipToDAW") {
13
+ exports.busMidiDAW = countBusOUT;
14
+ }
15
+ countBusOUT++;
16
+ }
17
+ }
18
+
19
+ //exports.sessionPath = "./pieces/";
20
+ exports.piecePath = "./pieces/";
21
+
22
+ // Piece Bitwig en OSC si la paramètre est false
23
+ // Sinon Skini parle MIDI
24
+ exports.directMidiON = true;
25
+
26
+ // Pour charger les fonctions et modules de scenes de type GOLEM
27
+ exports.scenesON = false;
28
+
29
+ exports.english = true;
30
+
31
+ /***********************************
32
+ Paramètres du simulateur
33
+ Si ces valeurs ne sont pas données c'est celle qui
34
+ sont dans le simulateur qui sont utilisées
35
+ ************************************/
36
+ exports.tempoMax = 500; // En ms
37
+ exports.tempoMin = 500; // En ms
38
+ exports.limiteDureeAttente = 33; // En pulsations
39
+
40
+ /********************************************************
41
+
42
+ AUTOMATE
43
+
44
+ *********************************************************/
45
+ // Pour un automate conforme à un rechargement selon les déclarations de module HipHop
46
+ exports.reactOnPlay = false;
47
+
48
+ /*************************************
49
+ CHEMIN DES FICHIERS SONS MP3 pour les clients
50
+ Le choix se fait sur le client en fonction d'abletonON donc
51
+ de la pièce choisie dans la contrôleur.
52
+ Nom du sous répartoire ./sounds/xxxx
53
+ *************************************/
54
+ exports.soundFilesPath1 = "";
55
+
56
+ /***************************************
57
+ CHEMIN DES PARTITIONS DES PATTERNS ET CONFIG AVEC MUSICIENS
58
+ ****************************************/
59
+ exports.avecMusicien = false; // Pour mettre en place les spécificités au jeu avec des musiciens.
60
+ exports.decalageFIFOavecMusicien = 4; // Décalage de la FIFO vide avant le premier pattern dans une FIFO.
61
+ exports.patternScorePath1 = "";
62
+
63
+ /****************************************
64
+ ACTIVATION D'ALGORITHME D'ORGANISATION DES FIFOs
65
+ Si 0 ou undefined pas d'algorithme.
66
+ Si 1 algorithme de réorganisation Début, Milieu, Fin, Neutre (DFMN)
67
+ Dans le csv, D -> 1, M -> 2, F->3, N->4 (c'est fixé dans controleAbleton.js)
68
+ Si autre ... à créer...
69
+ ATTENTION: NE JAMAIS UTILISER EN SITUATION D'INTERACTION SI L'ALGORITHME
70
+ PEUT SUPPRIMER DES PATTERNS DES FIFOs
71
+ *****************************************/
72
+ exports.algoGestionFifo = 0;
73
+ exports.shufflePatterns = false;
74
+ /*****************************************************************************
75
+
76
+ Gestion de la Matrice des possibles
77
+ Automate de gestion de la matrice des possibles
78
+
79
+ ******************************************************************************/
80
+ exports.nbeDeGroupesClients = 3;
81
+ exports.simulatorInAseperateGroup = false; // Si true, le dernier groupe client est réservé au simulateur.
82
+
83
+ // Pour un contrôle des Raspberries
84
+ exports.useRaspberries = false;
85
+ exports.playBufferMessage = 'test';
86
+ exports.raspOSCPort = 4000;
87
+
88
+ function setnbeDeGroupesClients(num) {
89
+ this.nbeDeGroupesClients = num;
90
+ }
91
+ exports.setnbeDeGroupesClients = setnbeDeGroupesClients;
92
+
93
+ // La synchro Midi, Link. Synchro Bitwig OSC par défaut si Midi et Link false.
94
+ exports.synchoOnMidiClock = false;
95
+ exports.synchroLink = true;
96
+ exports.synchroSkini = false;
97
+ exports.timer = 500; // Pour une tempo de 110
98
+ exports.gamesOSCSignals = false;
99
+
100
+ exports.sensorOSC = false;
101
+ exports.tempoSensorsInit = [0, 0, 0, 0, 0, 0, 0, 0];
102
+ exports.sensorsSensibilities = [5, 5, 5, 5, 5, 5, 5, 5];
103
+
104
+ const bleu = "#008CBA";
105
+ const rouge = '#CF1919';
106
+ const vert = "#4CAF50";
107
+ const marron = '#666633';
108
+ const violet = '#797bbf';
109
+ const orange = '#b3712d';
110
+ const rose = '#E0095F';
111
+ const gris = '#5F6262';
112
+ const ocre = '#BCA104';
113
+ const terre = '#A76611';
114
+ const grisvert = '#039879';
115
+ const grisbleu = '#315A93';
116
+
117
+ var groupesDesSons = [
118
+ // Pour group: nom du groupe (0), index du groupe (1), type (2), x(3), y(4), nbe d'éléments(5), color(6), prédécesseurs(7), n° de scène graphique
119
+ ];
120
+ exports.groupesDesSons = groupesDesSons;
121
+
@@ -0,0 +1,109 @@
1
+
2
+ // Generated by Skini: Mon Dec 15 2025 15:00:06 GMT+0100 (heure normale d’Europe centrale)
3
+ "use strict"
4
+
5
+ // Indexation des bus Midi pour OSCmidi. A utiliser si Processing en passerelle
6
+ // Il s'agit de l'index correspondant à l'élément du tableau midiConfig.json
7
+ // qui crée le bus midi pour ces commandes.
8
+ // var midiConfig = require("../serveur/midiConfig.json");
9
+ // var countBusOUT = 0;
10
+ // for (var i = 0; i < midiConfig.length; i++) {
11
+ // if (midiConfig[i].type === "OUT") {
12
+ // if (midiConfig[i].spec === "clipToDAW") {
13
+ // exports.busMidiDAW = countBusOUT;
14
+ // }
15
+ // countBusOUT++;
16
+ // }
17
+ // }
18
+
19
+ // A utiliser si Processing en passerelle
20
+ exports.busMidiDAW = 1;
21
+
22
+ // Piece en OSC si la paramètre est false
23
+ // Sinon Skini parle MIDI
24
+ exports.directMidiON = true;
25
+
26
+ // Pour charger les fonctions et modules de scenes de type GOLEM
27
+ exports.scenesON = false;
28
+
29
+ exports.english = false;
30
+
31
+ /***********************************
32
+ Paramètres du simulateur
33
+ Si ces valeurs ne sont pas données c'est celle qui
34
+ sont dans le simulateur qui sont utilisées
35
+ ************************************/
36
+ exports.tempoMax = 500; // En ms
37
+ exports.tempoMin = 400; // En ms
38
+ exports.limiteDureeAttente = 33; // En pulsations
39
+
40
+ /********************************************************
41
+ AUTOMATE
42
+ *********************************************************/
43
+ // Pour un automate conforme à un rechargement selon les déclarations de module HipHop
44
+ exports.reactOnPlay = false;
45
+
46
+ // Pour une réaction à chaque pulsation
47
+ exports.pulsationON = false;
48
+
49
+ /*************************************
50
+ CHEMIN DES FICHIERS SONS MP3 pour les clients
51
+ Nom du sous répartoire ./sounds/xxxx
52
+ *************************************/
53
+ exports.soundFilesPath1 = "";
54
+
55
+ /***************************************
56
+ CHEMIN DES PARTITIONS DES PATTERNS ET CONFIG AVEC MUSICIENS
57
+ ****************************************/
58
+ exports.avecMusicien = false; // Pour mettre en place les spécificités au jeu avec des musiciens.
59
+ exports.decalageFIFOavecMusicien = 4; // Décalage de la FIFO vide avant le premier pattern dans une FIFO.
60
+ exports.patternScorePath1 ="";
61
+
62
+ /****************************************
63
+ ACTIVATION D'ALGORITHME D'ORGANISATION DES FIFOs
64
+ Si 0 ou undefined pas d'algorithme.
65
+ Si 1 algorithme de réorganisation Début, Milieu, Fin, Neutre (DFMN)
66
+ Dans le csv, D -> 1, M -> 2, F->3, N->4 (c'est fixé dans controleAbleton.js)
67
+ Si autre ... à créer...
68
+ ATTENTION: NE JAMAIS UTILISER EN SITUATION D'INTERACTION SI L'ALGORITHME
69
+ PEUT SUPPRIMER DES PATTERNS DES FIFOs
70
+ *****************************************/
71
+ exports.algoGestionFifo = 0;
72
+ exports.shufflePatterns = false;
73
+ /*****************************************************************************
74
+
75
+ Gestion de la Matrice des possibles
76
+ Automate de gestion de la matrice des possibles
77
+
78
+ ******************************************************************************/
79
+ exports.nbeDeGroupesClients = 3;
80
+
81
+ function setnbeDeGroupesClients(num) {
82
+ this.nbeDeGroupesClients = num;
83
+ }
84
+ exports.setnbeDeGroupesClients = setnbeDeGroupesClients;
85
+
86
+ exports.simulatorInAseperateGroup = false; // Si true, le dernier groupe client est réservé au simulateur.
87
+
88
+ // Pour un contrôle des Raspberries
89
+ exports.useRaspberries = false;
90
+ exports.playBufferMessage = "test";
91
+ exports.raspOSCPort = 1010;
92
+
93
+ // La synchro Midi, Link. Synchro Bitwig OSC par défaut si Midi et Link false.
94
+ exports.synchoOnMidiClock = false;
95
+ exports.synchroLink = true;
96
+ exports.synchroSkini = false;
97
+ exports.timer = 500;
98
+ exports.gameOSCSignals = true;
99
+
100
+ exports.sensorOSC = false;
101
+ exports.tempoSensorsInit = [0,0,0,0,0,0,0,0,,,,];
102
+ exports.sensorsSensibilities = [5,5,5,5,5,5,5,5,,,,];
103
+
104
+ const groupesDesSons = [
105
+ [ "groupe0",0, "group",170,100,20,"#CF1919",[],1 ],
106
+ [ "groupe1",1, "group",200,200,20,"#CF1919",[],1 ],
107
+ [ "groupe2",2, "group",300,300,20,"#CF1919",[],1 ],
108
+ ];
109
+ exports.groupesDesSons = groupesDesSons;