-
Notifications
You must be signed in to change notification settings - Fork 3
/
knurlGaud.ini
270 lines (207 loc) · 5.66 KB
/
knurlGaud.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
# ======================================================
# mercury.ini
#
# Mercury extension for CodeKlavier
# ======================================================
# ======================================================
# Midi Setup
[midi]
# midi options of the device to use
port: 2
# IAC driver loopback:
# noteon_id: 144
# M-audio midi controller:
# noteon_id: 152
# noteoff_id: 128
# pedal_id: 184
# pedal_midi_sostenuto: 7
# Yamaha Clavinova:
noteon_id: 144
noteoff_id: 128
pedal_id: 176
pedal_midi_sostenuto: 66
# Casio keyboard:
# pedal_midi_sostenuto: 67
# ======================================================
# Mapping Mode 1-1
[Hello World]
# Just play a single note, not using.
# Could be useful to type in single numbers and non-alphanumeric characters
# simple alphanumeric & commands 1-1 mapping used Hello World module
# midinumber : alphanumeric or command mapping
22: backspace
21: enter
69: backspace
70: 1
71: 2
72: 3
73: 4
74: 5
75: 6
76: 7
77: 8
78: 9
79: 0
80: _
81: a
82: b
83: c
84: d
85: e
86: f
87: g
88: h
89: i
90: j
91: k
92: l
93: m
94: n
95: o
96: p
97: q
98: r
99: s
100: t
101: u
102: v
103: w
104: x
105: y
106: z
108: space
toggle: 107
toggle_callback: none
# ======================================================
# Shortcuts
# first key that remains pressed, second key
[shortcuts]
eval: enter
# Optional: map the shortcuts to snippets defined in the
# sections below to replace default evaluation
[shortcuts mapping]
eval: eval
# simple alphanumeric & commands 1-1 mapping used in
# Motippets module and evaluation shortcut
[Motippets]
66: motippetssc-evaluate
# midi note register limits (21 <= mid_low is low register,
# between mid_low and mid_hi is mid register, > mid_hi is hi)
[Motippets register division]
mid_low: 47
mid_hi: 78
[chordal main motifs midi]
# can only call this once !!!- not anymore!!!
[melodic main motifs midi]
hello: 83, 87, 90, 92, 94
# ======================================================
# Conditional Motifs !!! IGNORE FOR NOW !!!
[chordal conditional motifs midi]
[melodic conditional motifs midi]
conditional_2: 83, 87, 82, 80, 85
conditional_3: 95, 99, 94, 92, 97
conditional_1: 71, 75, 70, 68, 73
#conditional_4: 31, 35, 39, 43, 42
[chordal conditional results motifs midi]
[melodic conditional results motifs midi]
conditional_result_kamb: 33, 34, 35, 44, 46
conditional_result_reus: 55, 54, 57, 58
conditional_result_loop_stop: 27, 26, 25, 24, 23, 22, 21
# ======================================================
# Melodic Motifs
# > Anne sets motifs
[melodic mini motifs]
[chordal mini motifs]
# ======================================================
# Code Snippets
# > The output of the corresponding motif (unique names)
[snippets code output]
# Global Settings
hello: hello
# ===========================================
#conditionals
conditional_1: //setting up a conditional: IF number of notes played is more than 100 in...
conditional_2: //setting up an ONGOING conditional: IF number of notes played is more than 150 in...
#conditional_4: //setting up an ONGOING loop that checks the range
conditional_3: //setting up a conditional: IF range is less than...
# motif name : code, flag [osc | reset | gomb], [osc address | motif_name to reset], optional flag [grab_value | a value], optional flag [random1 | random2]
conditional_result_kamb_comment:// if true -> start Knurl ambience, if false -> stop Knurl ambience
conditional_result_kamb_true: true, osc, knurl/trigger, Ambience, 1
conditional_result_kamb_false: false, osc, knurl/trigger, Ambience, 0
conditional_result_reus_comment:// if true -> start Reus synth, if false -> stop Reus synth
conditional_result_reus_true: true, osc, knurl/trigger, Reus, 1
conditional_result_reus_false: false, osc, knurl/trigger, Reus, 0
conditional_result_loop_stop_comment: stop perpetual conditionals
conditional_result_loop_stop_true: //CODEKLAVIER loop_stop, loop_stop
conditional_result_loop_stop_false: //CODEKLAVIER loop still going
[snippets code output callback]
# motif_name : code output
# (code to be evaluated after the normal code output, for example: for unmapping)
# (duplicate names won't work!)
#mini_set_tempo: callback mini
[snippets special flags]
# motif name, flag [reset, ] , flag [motif_name to reset, ]
conditional_result_2_true: reset, motif_1
mini_set_pixel: callback mini
[motif counter]
playlimit: 1
[snippets for tremolos]
[conditionals settings]
#name : type [note_count, range_more_than, range_less_than], [perpetual (true | false): 1 | 0], optional settings [totalnotes, ]
conditional_1: note_count, 0, 100
#conditional_4: range_more_than, 1
conditional_3: range_less_than, 1
conditional_2: note_count, 1, 150
# make volume,
[motippets display settings]
#motif_name : display column id
#mini_set_tempo: 2
time_test: 2
tone_mel3: 2
bell_time: 2
number: 2
numberinverse: 2
set_bass_lfo_value: 2
delay_set: 2
time_set: 2
time_set2: 2
speed_set: 2
speed_set_neg: 2
reverb_set: 2
lfo_set: 2
gain_set: 2
set_volume: 2
color_ramge: 2
amount_set: 2
webcam: 2
[motippets random limits]
# name : bottom limit, upper limits.
random: 50, 51
random1: 0.01, 1.2
random2: -2, 10
# NOTE: random is also used for range_counter conditional limits
# random2 multiplies by a value extracted from the function where it is used
[ckalculator]
shift: off
wrong_note_tolerance: 1
[lambda]
# lambda function : midi number mapped to the function
evaluate_function: 59
identity_midi: 23
select_first_midi: 0
select_second_midi: 0
successor_midi: 83, 95
predecessor_midi: 0
add_midi: 107
subtract_midi: 71
mult_midi: 0
division_midi: 0
greater_than_midi: 47
equality_midi: 35
less_than_midi: 0
[articulation]
# articulation name : threshold in seconds
chord: 0.02
staccato: 0.35
sostenuto: 0.8
[ar]