Documentation
I used to host my documentation privately on BookStack for my own future reference, but I am (slowly) migrating it to this page since it might be helpful to others, and it would be easier for me to share it. If anything, the possibility of having other people looking at it might make me more organized.
Some of this documentation is related to my compositions and art projects, but some of it is from non-musical projects that I like to do around my home. Anything important that is not related to Pure Data will also be available on my GitHub page .
For the musical projects, I used Purr Data instead of vanilla Pure Data for most of my packages, so if you have a different branch you might need to manually install some libraries to run it, or at least recreate some of the objects yourself.
Click on the cards below to access details and specific documentation:
diceTone~
diceTone~ is my attempt to create a synthesizer that generates stochastic timbres by using waveshaping . To do that, a waveform, chosen by the user, serves as an input signal. The waveform is then sent to a shaping function that changes randomly over time, affecting the output signal and timbre.
It is my understanding that the envelope also plays a big part in how we perceive timbre. This is the one of the reasons why I chose waveshaping as the basis of my synthesis: in waveshapping, the initial, larger amplitude of a sharp attack would alter how much of the shapping functions is used, momentarily altering the timbre. For the same reason, I this patch also gives the option of a randomized ADSR
Automatic Canon Generator
This patch generates canons based on an input. In a live setting, it can be used as part of a larger patch (as I did in my piece Give the Order) that converts the attacks played by a performer into bangs that are fed into this canon generator. Once a bang is sent to the 'start canon' inlet, the patch will immediately start outputting bangs in the same rhythm as the input attacks. One can proportionally change the time interval between the output bangs to be proportionally increased during a performance (through the mensuration multiplier inlet), generating mensuration canons. The most interesting thing is that, because time is measured by Pure Data in millisseconds, those canons are not bounded by the limits of musical notation: the multiplier will work with any positive number bigger than 1, and it can easily generate canons based on live improvisations.
Temporizer
This is by far the biggest and most convoluted patch I have ever created. To use it, you first establish a tactus (in beats per minute) and a matrix of probability (there are some already available in the patch). Each probability corresponds to one or more musical figures, such as a half-note, triplets or thirty-second-notes. When the patch is turned on, it plays random rhythms based on the probability curve you established, outputting these rhythms as bangs that can be used to trigger sonic events. For example, if the probability is 0 for anything but quarter-notes and half-notes, it will output rhythms that are constituted buy those figures only. If only fast rhythms are present, and the tactus is fast enough, the result will be a rich and fast rhythmic structure. These probabilities can be changed in a live performance with a click, and there are also infinite possibilities to transition smoothly or imperceptibly between slow and fast rhythms if enough time is given.
IR-thropod
Phone controlled IR-Blaster using an ESP8266, so I no longer need to have remote controllers in my living room. This was my first project using Arduino and HTML/CSS, which inspired me to create this website from scratch.