notes-epuzio

Notes from Esmé Puzio

Compositions

Piece 1: Boy’s a Liar

Link to composition

To play: run ./run.sh tutorials/synthesis/00_SineEnv_Pink.cpp .

This is a transcription of Boy’s a Liar by Pink Panthress written within Allolib. I chose to transcribe this piece because of the variety of instruments in the song, and the way that each layer of instrumentation builds upon the previous one. Through this piece, I learned the basics of composing pop music within Allolib, and how to compose simple melodies using different instruments. I also learned how to create functions to time notes properly when playing through Allolib.

Piece 2: DogLove (Original Composition)

Link to composition

To play: run ./run.sh tutorials/synthesis/00_DogLoveGenerativeDemo.cpp .

With this piece, I wanted to incorporate randomness into an original composition based around the work of Devi McCallion/Girls Rituals. The piece incorporates randomness in the number of phrases at the start (1, 2 or 3), the number of phrases at the bridge (1 or 2), the patterns of the hi-hat and bass (choosing from 4 preset options), the notes played in the arpeggios (which were based on randomly chosen chord inversions) and the scale the piece was played in. I used this piece to demo the note transposition function and chord builder function I created in randomness.h, since the note transposition function made it easy to change between major scales. This piece is loosely inspired by the work of Devi McCallion/Girls Rituals/Mom, especially the songs “Bloodeater”, “I [Mess] Everything Up” and “Un See Through”.

Piece 3: DogLove V2 (Original Composition)

Link to composition

To play: run ./run.sh tutorials/synthesis/00_DogLoveV2.cpp and press any key.

This piece was a reworked version of my original piece that used the axis chord progression function in randomnessHelper.H to create random chord progressions and varied arpeggios every time the piece was played. I also added graphics for the main chord progression and accompanying chord progression based on Grace and Aviv’s demos.

Piece 4: Poe’s Walk (Original Composition/Collaboration)

Link to composition

To play: run ./run.sh tutorials/synthesis/00_PoesWalk.cpp and press any key.

This piece is a demonstration of two features in randomnessHelper.H - the Linear Feedback Shift Register and Markov melody generator. Starting in C major, the melody runs a stochastic walk that’s completely generated by a 1-D Markov chain. The probability for the next note is calculated based on potential chords that can be formed using the current note as the root. The same stochastic walk is used to create backing chords using sine and sawtooth waves. In addition, the snare sound is pseudorandomly generated using a LFSR sequence with 5 registers, repeating every 31 beats. This piece is loosely inspired by the song “You Can’t Stop Me” by Alex G from the film “We’re All Going To The World’s Fair”.

Piece 5: Worst In Me

Link to composition

To play: run ./run.sh tutorials/synthesis/00_WorstInMe.cpp and press any key.

This piece is a transcription of the song “Worst In Me” by Devi McCallion/Girls Rituals written within Allolib. I chose to arrange this piece in particular because Devi McCallion’s beats follow simple chord structures and often incorporate randomness. I used al_SoundFile to play vocals alongside the piece, which I created using the Eleanor Forte Lite voicebank for Synthesizer V Studio Basic. My goal for this piece was to create a song that incorporated both instruments and vocals. Unfortunately, for whatever reason, allolib speeds up the .wav file I included as vocals for this piece, so the instrumentation and vocals are not perfectly synched, and it does not sound very good.

Helper class:

randomness.h

Link to helper

This helper class includes a few functions which can help provide elements of randomness in a piece of music.