-
Notifications
You must be signed in to change notification settings - Fork 1
/
index.html
349 lines (293 loc) · 14.4 KB
/
index.html
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
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
<!DOCTYPE HTML>
<html>
<head>
<title>Clastic music</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
<link rel="stylesheet" href="assets/css/main.css" />
<noscript><link rel="stylesheet" href="assets/css/noscript.css" /></noscript>
</head>
<body class="is-preload">
<!-- Wrapper -->
<div id="wrapper" class="fade-in">
<!-- Intro -->
<!-- <div id="intro">
<h1>Clastic Music</h1>
<p>vigliensoni</p>
<ul class="actions">
<li><a href="#header" class="button icon solid solo fa-arrow-down scrolly">Continue</a></li>
</ul>
</div> -->
<!-- Header -->
<!-- <header id="header">
<a href="index.html" class="logo">Massively</a>
</header> -->
<!-- Nav -->
<!-- <nav id="nav">
<ul class="links">
<li class="active"><a href="index.html">This is Massively</a></li>
<li><a href="generic.html">Generic Page</a></li>
<li><a href="elements.html">Elements Reference</a></li>
</ul>
<ul class="icons">
<li><a href="#" class="icon brands fa-twitter"><span class="label">Twitter</span></a></li>
<li><a href="#" class="icon brands fa-facebook-f"><span class="label">Facebook</span></a></li>
<li><a href="#" class="icon brands fa-instagram"><span class="label">Instagram</span></a></li>
<li><a href="#" class="icon brands fa-github"><span class="label">GitHub</span></a></li>
</ul>
</nav> -->
<!-- Main -->
<div id="main">
<!-- Featured Post -->
<article class="post featured">
<header class="major">
<!-- <span class="date">April 25, 2017</span> -->
<h2><a href="#">Clastic music</a></h2>
<p><span><b>Clastic music</b> is a set of musical pieces where I play with the geological concept of the clast:</span>
<span><b>new entities and forms created out of pre-existing fragments. </b></span></p>
<p>
<span>Akin to how machine creativity uses <b>pre-existing data to generate new forms,</b></span>
<span>in Clastic music <b>I use rhythmic patterns</b> in simple and compound meter—common in contemporary music genres—<b>as the fragmentary entities.</b></span>
</p>
<a href="#" class="image main"><img src="images/cover_clastic-music.jpg" alt="" /></a>
<p>
<span>The pre-existing fragments, the training data, consist of a <b>dataset of rhythms in MIDI format</b>,</span>
<span> collected and assembled using <b>2-step, gqom, and footwork</b> tracks.</span>
</p>
<!-- R-VAE learns a model that is a compressed representation of this data, and the resulting latent space is projected into a performace space.
<p>Clastic music is the result of <b>rhythmic explorations using a machine learning-assisted improvisational approach</b>. -->
<p>
<span>To create the rhythmic clasts I use a <a href="https://github.com/vigliensoni/R-VAE" target="blank">R-VAE</a>, </span>
<span>a software device that <b>models rhythms in simple and compound meter</b> based on the training data.</span>
<p>
<span>In <b>live performance</b>, I explore and play with the models by means of</span>
<span> <b>mapping a two-dimensional performance space to the latent space of the VAE</b>,</span>
<span>so that rhythmic patterns are retrieved, decoded, and interpolated by means of </span>
<span>using <b>an imaginary playback head in the latent space.</b></span>
</p>
<h2>Clast 1 – Siltstone</h2>
<p>
<span>In <em>Siltstone</em>, I explore a rhythmic latent space learned from a tiny dataset</span>
<span>consisting on 12 MIDI clips of <em>footwork</em>. Instead of triggering drum sounds,</span>
<span> I designed a physical model-based, mallet-like instrument and I modify the characteristics </span>
<span>of the sound in real time for enhanced expressivity. The piece is totally improvised.</span>
</p>
<div class="video-responsive">
<iframe width="897" height="505" src="https://www.youtube.com/embed/mTeDTz3CfiA?start=120"
frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen></iframe>
</div>
<p></p>
<p>
<span>The video was <b> shot during a live performance</b> at the International Festival of</span>
<span> Digital Creativity and Electronic Music <b>MUTEK 2020</b>, held in Montréal from September 8 to 13, 2020.</span>
</p>
<p>
<span>
I use a MIDI controller as a gestural interface to <b>map the XY position in the performance space</b>
</span>
<span>
<b>to the position in the latent space</b>. R-VAE outputs MIDI messages that I use to play sounds from the.
</span>
<span>
Tempest, an analog drum machine, and AAS Chromaphone 2, an acoustic object synthesizer based on physical modelling.
</span>
</p>
<!-- <p>The online gallery for the NeurIPS Machine Learning for Creativity and Design workshop
could exhibit these videos and/or a web-based visualizer that creates a dynamic
representation of the rhythmic latent spaces that I used during the performance.
Visitors of the gallery could explore latent spaces directly in their browsers and
visualize the rhythmic pulses of the clastic space.</p> -->
<h2>Clast 2 – Breccia</h2>
<p>
<span>In this piece, named <b>Breccia</b>, I improvise on top of previous latent space explorations,<span>
<span>resulting on new music made of <b>rhythmic clasts built on top of another clasts.</b></span>
</p>
<div class="video-responsive">
<iframe width="897" height="505" src="https://www.youtube.com/embed/0y69ANhUlvM?start=131"
frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen></iframe>
</div>
<p></p>
<h2>R-VAE-JS</h2>
<p>
<span>To facilitate the exploration of rhythmic latent spaces, Louis McCallum, Esteban Maestre, </span>
<span>Rebecca Fiebrink, and myself developed a <b>web-based visualizer designed for the</b> </span>
<span><b>dynamic representation of rhythmic latent spaces.</b></span>
</p>
<p>
<span>This tool facilitates greatly the exploration of the rhythmic spaces, because it provides</span>
<span>a visual feedback that otherwise would be missed. Here there is a demo video playing with the</span>
<span>browser and using the Tempest as sound engine.</span>
</p>
<div class="video-responsive">
<iframe width="897" height="739" src="https://www.youtube.com/embed/bxQYOXpMYlI?start=119" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</div>
<!-- R-VAE-JS -->
<p></p>
<h2>PLAY WITH IT!</h2>
<p>You can play with R-VAE-JS directly on the browser. The following iframe instantiates the app with a preloaded model.
You will hear preloaded samples from the browser, or you can use sounds generated by any MIDI-enabled device. This last
feature works only in Google Chrome.
</p>
<div id="wrap">
<iframe id="scaled-frame" src="https://vigliensoni.github.io/R-VAE-JS-dev/" ></iframe>
</div>
</header>
<!-- <ul class="actions special">
<li><a href="#" class="button large">Full Story</a></li>
</ul> -->
</article>
<!-- Posts -->
<!-- <section class="posts">
<article>
<header>
<span class="date">April 24, 2017</span>
<h2><a href="#">Sed magna<br />
ipsum faucibus</a></h2>
</header>
<a href="#" class="image fit"><img src="images/pic02.jpg" alt="" /></a>
<p>Donec eget ex magna. Interdum et malesuada fames ac ante ipsum primis in faucibus. Pellentesque venenatis dolor imperdiet dolor mattis sagittis magna etiam.</p>
<ul class="actions special">
<li><a href="#" class="button">Full Story</a></li>
</ul>
</article>
<article>
<header>
<span class="date">April 22, 2017</span>
<h2><a href="#">Primis eget<br />
imperdiet lorem</a></h2>
</header>
<a href="#" class="image fit"><img src="images/pic03.jpg" alt="" /></a>
<p>Donec eget ex magna. Interdum et malesuada fames ac ante ipsum primis in faucibus. Pellentesque venenatis dolor imperdiet dolor mattis sagittis magna etiam.</p>
<ul class="actions special">
<li><a href="#" class="button">Full Story</a></li>
</ul>
</article>
<article>
<header>
<span class="date">April 18, 2017</span>
<h2><a href="#">Ante mattis<br />
interdum dolor</a></h2>
</header>
<a href="#" class="image fit"><img src="images/pic04.jpg" alt="" /></a>
<p>Donec eget ex magna. Interdum et malesuada fames ac ante ipsum primis in faucibus. Pellentesque venenatis dolor imperdiet dolor mattis sagittis magna etiam.</p>
<ul class="actions special">
<li><a href="#" class="button">Full Story</a></li>
</ul>
</article>
<article>
<header>
<span class="date">April 14, 2017</span>
<h2><a href="#">Tempus sed<br />
nulla imperdiet</a></h2>
</header>
<a href="#" class="image fit"><img src="images/pic05.jpg" alt="" /></a>
<p>Donec eget ex magna. Interdum et malesuada fames ac ante ipsum primis in faucibus. Pellentesque venenatis dolor imperdiet dolor mattis sagittis magna etiam.</p>
<ul class="actions special">
<li><a href="#" class="button">Full Story</a></li>
</ul>
</article>
<article>
<header>
<span class="date">April 11, 2017</span>
<h2><a href="#">Odio magna<br />
sed consectetur</a></h2>
</header>
<a href="#" class="image fit"><img src="images/pic06.jpg" alt="" /></a>
<p>Donec eget ex magna. Interdum et malesuada fames ac ante ipsum primis in faucibus. Pellentesque venenatis dolor imperdiet dolor mattis sagittis magna etiam.</p>
<ul class="actions special">
<li><a href="#" class="button">Full Story</a></li>
</ul>
</article>
<article>
<header>
<span class="date">April 7, 2017</span>
<h2><a href="#">Augue lorem<br />
primis vestibulum</a></h2>
</header>
<a href="#" class="image fit"><img src="images/pic07.jpg" alt="" /></a>
<p>Donec eget ex magna. Interdum et malesuada fames ac ante ipsum primis in faucibus. Pellentesque venenatis dolor imperdiet dolor mattis sagittis magna etiam.</p>
<ul class="actions special">
<li><a href="#" class="button">Full Story</a></li>
</ul>
</article>
</section> -->
<!-- Footer -->
<!-- <footer>
<div class="pagination">
<a href="#" class="previous">Prev</a>
<a href="#" class="page active">1</a>
<a href="#" class="page">2</a>
<a href="#" class="page">3</a>
<span class="extra">…</span>
<a href="#" class="page">8</a>
<a href="#" class="page">9</a>
<a href="#" class="page">10</a>
<a href="#" class="next">Next</a>
</div>
</footer> -->
</div>
<!-- Footer -->
<!-- <footer id="footer">
<section>
<form method="post" action="#">
<div class="fields">
<div class="field">
<label for="name">Name</label>
<input type="text" name="name" id="name" />
</div>
<div class="field">
<label for="email">Email</label>
<input type="text" name="email" id="email" />
</div>
<div class="field">
<label for="message">Message</label>
<textarea name="message" id="message" rows="3"></textarea>
</div>
</div>
<ul class="actions">
<li><input type="submit" value="Send Message" /></li>
</ul>
</form>
</section>
<section class="split contact">
<section class="alt">
<h3>Address</h3>
<p>1234 Somewhere Road #87257<br />
Nashville, TN 00000-0000</p>
</section>
<section>
<h3>Phone</h3>
<p><a href="#">(000) 000-0000</a></p>
</section>
<section>
<h3>Email</h3>
<p><a href="#">[email protected]</a></p>
</section>
<section>
<h3>Social</h3>
<ul class="icons alt">
<li><a href="#" class="icon brands alt fa-twitter"><span class="label">Twitter</span></a></li>
<li><a href="#" class="icon brands alt fa-facebook-f"><span class="label">Facebook</span></a></li>
<li><a href="#" class="icon brands alt fa-instagram"><span class="label">Instagram</span></a></li>
<li><a href="#" class="icon brands alt fa-github"><span class="label">GitHub</span></a></li>
</ul>
</section>
</section>
</footer> -->
<!-- Copyright -->
<div id="copyright">
<ul><li>© Gabriel Vigliensoni, 2021</li></ul>
</div>
</div>
<!-- Scripts -->
<script src="assets/js/jquery.min.js"></script>
<script src="assets/js/jquery.scrollex.min.js"></script>
<script src="assets/js/jquery.scrolly.min.js"></script>
<script src="assets/js/browser.min.js"></script>
<script src="assets/js/breakpoints.min.js"></script>
<script src="assets/js/util.js"></script>
<script src="assets/js/main.js"></script>
</body>
</html>