Group Members: Eadin, Omar, Sarah

For our drum circle project, we started by getting together and deciding on the kind of feel and impact we were going for. We all agreed that an ambient sound matched with a retro look is our goal. Then, we went through our previous projects and found sounds that we already like or feel like would suit what we want to do. Then we experimented with them and tried new stuff. 

For our workflow, we didn’t particularly divide roles. Instead, we would meet in our usual classroom, jam, and give tasks to each other as we worked. But in general, Sarah focused more on audio and compositional structure, Omar did more with visuals, and Eadin looked more into audio and midi interaction. 

Working in a group this time has been an exciting experience, as it felt like we had more possibilities with 3 brains focusing and trying to put something together. It was also helpful to learn from each other and see how each of us tackles issues that came up with the code. Having more than one person genuinely helped with debugging as we tend to overlook the problems with our own code but with flok we had to resolve everything to make sure we had something on the screen. However, improvising from scratch remains a little bit of a challenge. We all found ourselves to be interested in kicking off our performance with something already complex and building on top of it every time we meet, which still does not leave much room for improvisation and chance. Hopefully, through the class-wide drum circle, we would see how others jump in and contribute, getting some examples of unplanned improv.

For next week’s assignment, although we already kind of developed a build-up this week, we are thinking of trying something new and playing with new sounds, maybe bringing in our own vocal samples!

Here’s a snippet of the composition code we attempt to live code with:

d8 $ qtrigger 8 $ seqPLoop[
--
(0,9.5, off 0.125 (# squiz 4) $ fast 1 $  s "sid" >| note (scale "minor" ("<[3,5,7] [4,2]>(5,8)"+"<2! 3 4>"+"f")) # gain (range 1.2 1.3 perlin) # room 0.5 # djf (range 0.3 0.4 perlin) #hold 0.1 # size 0.9),
(4,9, loopAt 1 $ sound "breaks125:1(5,8)" # legato 7 # room 0.25 # vowel "o"),
--break // everything off to build tension
--- come back faster / build up-ish
(12,13, s "gab:9(40,8)" # gain (range 0.5 1 saw) # speed (range 0.8 2 saw) # cut 1),
(11,12, s "cp*4" # room 0.6),
(12,13, s "cp*16" # room 0.6) ,
(13,24,off 0.125 (# squiz 4) $ fast 1 $  s "sid" >| note (scale "minor" ("<[3,5,7] [4,2]>(5,8)"+"<2! 3 4>"+"g")) # gain (range 1.2 1.3 perlin) # room 0.5 # djf (range 0.3 0.4 perlin) #hold 0.1 # size 0.9),
(13,23 , loopAt 1 $ sound "breaks125:1(5,8)" # legato 7 # room 0.25 # gain 0.8),
--still needs a smoother breakdown/slow down--
(24,30, off 0.125 (# squiz 4) $ fast 1 $  s "sid" >| note (scale "minor" ("<[3,5,7] [4,2]>"+"<2! 3 4>"+"f")) # gain (range 1.2 1.3 perlin) # room 0.5 # djf (range 0.3 0.4 perlin) #hold 0.1 # size 0.9)
]

     Our project includes multiple visual and audial experiences generated through Tidal, Hydra, and midi-communication done via a Flok server. As outlined in class, the heart of our project is improvisation and active listening to what is happening in the process.

 

     This is how we worked together: we met multiple times and IMPROVISED. For our first session, we started from scratch and just improvised, seeing where it took us. We found a jamming style that worked for our group, and it was splitting into groups of two in the beginning and then mixing it up towards the middle and end. This way, we could carefully listen and observe what was happening and adjust accordingly. Shreya and Dania were on Hydra, while Amina and Thaís were on Tidal. Each of us was creating simple shapes and beats, which were then used to build up to create a more complex composition. When midi was added and the audio-visual experience was past the beginning stage, each of us had the freedom to choose which part to modify, i.e. one could switch to Hydra, Tidal, or continue building up on the same part they were working on. We also helped each other with their codes or parts that were confusing and actively listened to each other to see what to add and when to trigger it to make a cohesive composition. Each subsequent time we met, we used our past code to experiment with and improvise on (assuming it to be another team’s code that we would be working with). Every time we practiced, we created a unique composition. 

 

     Below are a few pictures from our practice sessions:

     

     The complete set of our works can be found in this repository: https://github.com/ak7588/liveCoding       

     Our favorite jamming session was the following one, which we will also be presenting in class:

 

     P.S. – This was one of the highlights of our semester(<3<3)!!!!!!! Livecoding with others is such an amazing bonding experience: we went in as individuals and came out as a performance group.

And we also came to the conclusion that Tidal-Hydra >>>> Hydra-Tidal. The world came back to its senses. 😉

 

Group Members: Aalya, Alia, Xinyue, Yeji

Inspiration

Each of us brought a few visuals and sound samples together. Then we tried to adjust the parameters and midi so that the theme of the visuals and sounds matched with each other.
Who did what:

  • Tidal: Aalya and Alia
  • Hydra: Xinyue and Yeji

Project Progress

Tidal Process

  • First, we played around with the different audio samples in the “dirt samples” library and tested out code from the default samples table on the documentation on the official Tidal website.
  • We then mixed and matched several combinations and eliminated everything that didn’t sound as appealing as we wanted it to be.
  • As Yeji and Xinyue were working on the visuals on the same flok, we listened to all of the various soundtracks as we took the visuals into account and were able to narrow down all our ideas into one singular theme.
    We had a lot of samples that we thought worked well together, but we were lacking structure in our track, so that was the next step when working on the project.
  • We broke down the composition into four sections: Intro, Phase 1, Phase 2, and Ending.
  • After that, it was just about layering the audio in a way that sounded appealing and that transitioned smoothly. We were trying to figure out what sounds would be used when transitioning into a new section and what parts would be silenced. It was all about finding the balance and a matter of putting together tracks that worked well with the visuals and complimented them.


Hydra Process

  • We started with a spinning black and white image bounded by a circle shape. Our inspiration comes from the old-fashioned black-and-white movie.
  • We modified the small circle by adding Colorama, which introduces noise
  • .luma() introduced a cartoon effect to the circle, and reduced the airy outlines
  • The three other outputs depended on the o0 as the source.
  • We added an oscillation effect on top of the original source and added cc to create a slowly moving oscillating effect that goes with the music.
  • Then, the scale was minimized for a zoom-out effect as the intensity of the music built up.
  • For the final output, the color was intensified, along with another scale-down effect, before introducing a loophole effect that transitioned back into o0 for the ending scene.

Evaluation and Challenges

  • Some of the challenges that we encountered during the development process of the performance were coordinating a time that worked for everyone and making sure that our ideas were communicated with each other to ensure that everyone was on the same page.
  • Another issue we had was that the cc values were not reflected properly, or in the same way for everyone, which resulted in inconsistent visual outputs that weren’t in sync with the audio.
  • Something that worked very well was the distribution of work. Every part of the project was taken care of so that we had balanced visual and sound elements.

This is the recorded video of our project:

Louis:

  I am basically taking charge of the music part of the drum circle project. Because I knew before that the process of making the drum circle on Garageband is well visualized, which can help the team to make a good beat more easily, I chose to use Garageband. The process was really fun as I also enjoyed listening to my works when making them. 

Eventually, I chose one of the works: 

d2 $ s "hh*8" # gain 1.2

d3 $ fast 2 $ s "feel [~ feel] feel [feel ~]" # gain 1.2

d4 $ fast 4 $ s "~!4 808:3 ~!3"

d5 $ fast 2 $ whenmod 4 2 ( # s "hardcore:11 ~ hardcore:11/2 ~!4") $ fast 4 $ s "[hardcore:11 ~!3]!2" # gain 1.5

  These sounds remind me of the game music in the arcades back in the old days. After letting all of the members in our group listen to the samples, Shengyang and I started to make them in Tidalcycle. Thanks to the visualized beat pattern, it was much easier for us to know how the rhythm is like, which helped us to eventually make the music. 

 

Debbie:

  For the Drum Circle assignment, Louis, Shenyang, and I split the work into three parts: Tidal, Hydra, and P5. I was responsible for creating the P5 visuals, which we decided we would use as the base visual that any other hydra visuals would be added onto.

  I approached this by creating a very simple visual of overlapping circles. Then, I added some noise to each circle so they wouldn’t be static. Finally, in line with the colour scheme (pinks, purples, light greens and blues), I used the ‘random’ function to add variation to the colours of the circle:
  You can find the schematic gif here

  

 

Shengyang:

  Based on the p5 visuals made by Debbie, I made some hydra effects to make the dot matrix flow.

The codes with effects are below:

dot matrix 1

 

//swirls
src(s1).modulate(noise(()=>cc[16]*10,2).luma(0.1)).out()
 
//deeper colour
src(s1).modulate(noise().pixelate()).colorama(1).out()
​
//70s vibe
src(o1).modulatePixelate(noise(()=>cc[17],0.1)).out()
 
//falling circles
src(s1).diff(noise(1, .5).mult(osc(10, 0, 10)).pixelate(.09)).luma(0.9).out()
​
//ending visual
src(s1).blend(src(o0).diff(s0).scale(.99),1.1).modulatePixelate(noise(2,0.01)
    .pixelate(16,16),1024).out()

 

I found this reading very fascinating and relatable. It reminded me of this class I took in New York on Dance, Theatre, and Performance and we practiced a lot of Kinetic Awareness in it. Oliveros’s list reminded me of the lists we had in class:

  1. Feel your breadth. Dance to it. With eyes open and close. 
  2. Humm your name. Make it a ritual. React to it. 
  3. Hear your thoughts. That is the music you will perform to.
  4. Stand in a circle facing outward. Each of you has to sit, but no two together. Listen to each other. No talking. 

The idea of these practices was to “tune our mind and body” as Oliveros says. We learned in class to listen to ourselves and our surroundings, and become more aware and sensitive to the little things that go unnoticed. My teacher said, “You have to listen, listen carefully before you perform; become aware.” It was like practicing mindfulness and it was therapeutic! So yes, I agree with Oliveros’s saying, “Listening is healing.” She also says, “Listening is directing attention to what is heard, gathering meaning, interpreting and deciding on action.” I jumped when I read this. It is so true; I have tried this. This is what we practiced in our class in New York with those small exercises. We not just listened, but heard, gathered meaning, and interpreted our surroundings and ourselves before we performed. 

What I did not realize was how opening the inner body and mind to the outer world could lead to activism. I was really intrigued by the line “personal is political”. Once you know yourself and your surroundings, you can raise a voice for what is right and wrong and take a stand. Reading this article was inspiring!

Sonic meditations seem to have a healing power not just in artistic evidence, but in psychology research, too. I recently read a paper called “Why Robots Can’t Haka” that cites that activities like dancing, playing music, or humming together improve collective well-being, and that it will be difficult — if not impossible — to replicate that with robots and A.I.

Listening as a fully embodied pursuit, sensory awareness, and Tai Chi all made me think of the mindfulness benefits that come with being in nature or exercising. When I meditate, I find I am able to observe the environment more acutely, appreciating what’s happening outside but also within. Taking a pause from everything around me and thus honing my intuition and self-empowerment is perhaps what the author describes as activism.

Kinetic awareness is also something I was taught in a theatre class at NYUAD. We were regularly performing breathing and listening (to body) exercises to release pressure and let go of external thoughts. This sounds rather abstract, but in practice, it made a big difference. 

In terms of arts and interactive media, this made me think of Janet Cardiff and her projects with audio and sound narration. In 2005, she presented an audio walk in Central Park, that takes the listener on a journey in the middle of Manhattan:

Janet Cardiff’s Her Long Black Hair is a 35-minute journey that begins at Central Park South and transforms an everyday stroll in the park into an absorbing psychological and physical experience. Cardiff takes each listener on a winding journey through Central Park’s 19th-century pathways, retracing the footsteps of an enigmatic dark-haired woman.

Listening has great power, and somehow it is difficult to describe that in words. One must feel that first.

I had read some of Oliveros’s Meditations before for a class, however, I really appreciate that the reading gave some context as to how the exercises came to be. I would never have taught of creating music as a way to practice healing and meditation through active listening. For me music usually is the result of some sort of meditative process: the composer goes through some sort of realization or feeling that in turn is used as inspiration for music. But Oliveros saw making music as an inspiration for meditation, which is something that flipped in my head.

It was also interesting to see how this practice of Sonic Meditation created communities. We talked before in class about drum circles and about live coding communities, so music as a means to create community kind of a recurrent theme in our readings. However, this specific method is not only a result of political situations that people wanted to discuss but rather an exercise in learning how to listen to these situations and topics. This act of listening then leads towards a communal healing process which I found fascinating.

Oliveros mentions when talking about accepting others, especially minorities that “Healing can occur… when one’s inner experience is made manifest and accepted by others”. Throughout the reading, we come back to this idea of learning to actively listen to a performance, and this is something very important for the audience to do. Oliveros makes a point of how healing and meditation require an audience. It can be just one individual for the initial stages but then grows into developing an audience that must learn how to listen. Her techniques empower individuals to speak up when they are ready and explain to the audience how to engage with what they are listening to. Her philosophy promotes the type of audience needed for a communal healing process: an audience who actively listens.