HW #3
Raghav G.
10/29/2023
Music 256A / CS476a, Stanford University


Milestone 3

Drum Rain

My sequencer is called Drum Rain, where using keys on the keyboard will trigger the release of cubical or spherical rain droplet which then trigger sounds themselves after fixed time intervels. Combining these sounds together creates the sequencer! There are a total of 5 drum sounds and 4 synth sounds which can be sampled from in this sequencer. These can be triggered with the keys (G, H, J, K, L, Y, U, I, O). There is also the ability to wipe the sequencer clean with the key "N" and every frame, with a probability of 0.0001, a red frame can come in and wipe all of your sequencing work all by itself. This may incentivize the user to remember their work more! For the sake of the demo, I just bound the red screen wipe to a key so I can demonstrate it in the video.  

The way this system works is essentially by adding cubes and spheres to the scene as sporked routines. When it comes time to terminate all of the sounds, or wipe the screen clean, a terminate signal is sent to the sporked routines which nead to be cleaned up, and they are exited. The cubes and spheres are also only spawned in on quantized time chunks, and as such, its easier to maintain an actual rhythm with this version of the project. This was a fun project to work on, but also probbaly the most challenging one for me so far. I found some of the features I wanted to use were absent in Chugl(I sent a few Discord messages in the chugl channel throughout my work on the project), but it was fun to find workarounds! Throughout the project I referenced examples and the Discord server for chugl updates and help.

Here is my code.

You can use "chuck KB.ck hw3_milestone3.ck --bufsize:4096" to run.




Milestone 2

In this milestone I've continued to ideate on my prototype and have now developed a way to add sounds to a my sequencer. I tried out a few different methods of input (Mouse, keyboard, raycasts), and a few different styles of sequencing notes but I've finally landed here. Currently, the sound notes fall to the bottom of the screen and make a noise once they hit the bottom. They then reappear at the top and hit the bottom of the ground again repeating this process. I am planning on building upon this idea by adding the ability to customize the sounds being played, changing the volume of notes, adding visual feedback for when notes are played, and adding an ability to remove sounds from the canvas

In this milestone I've continued to ideate on my prototype and have now developed a way to add sounds to a my sequencer. I tried out a few different methods of input (Mouse, keyboard, raycasts), and a few different styles of sequencing notes but I've finally landed here. Currently, the sound notes fall to the bottom of the screen and make a noise once they hit the bottom. They then reappear at the top and hit the bottom of the ground again repeating this process. I am planning on building upon this idea by adding the ability to customize the sounds being played, changing the volume of notes, adding visual feedback for when notes are played, and adding an ability to remove sounds from the canvas

Milestone 1

Useful Resources:

https://blog.andertons.co.uk/learn/how-to-use-a-sequencer-to-make-music

https://producelikeapro.com/blog/step-sequencing-what-it-is-and-how-to-use-it/

https://www.youtube.com/watch?v=1TjpO64iZ2Y

From my research regarding sequencers, I am primarily seeing examples of how to create interesting beats with them, using software like FL Studio or Logic Pro X. I also saw a few websites online with projects from previous years to understand how these are made and also provided inspiration. My primary takeaways are that I should be structuring my sequencer such that there is a row dedicated for percussion, a row dedicated for some type of pad, and two additional rows dedicated to other types of instruments. Another option would be to have this sequencer solely focus on percussion, and have the rows of the sequencer be outputting audio that represents different types of percussion-oriented sounds.

Here are some designs for sequencers I have developed. They can be viewed by downloading this PDF.