Category Archives: Uncategorized

Arduino meets Max

In this project, I decided to explore how Arduino can communicate with Max and help create interesting integrated systems. The class discussions and patches sparked the idea of using frequency domain processing to control a system linked to Arduino. With a little experience in Arduino and looking up on tutorials and help from professor Jesse Stiles, TA Jeena Yin, Youtube, help forums, I could get together a system where 8 LEDs react to the sounds being passed into Max. The core ideas used were-

  1. Using jit.scanwrap to get the a 1 by 8 matrix of values relating to the amplitudes in the various frequency bins. These 8 values would compared to a threshold value to determine which LEDs to light up.
  2. The conditions would output a 0(LED off) or a 1(LED on) for all the 8 values in the matrix. These 8 values would each tell determine the state of their corresponding LED. In order to do so, these values needed to be passed into Arduino board through the serial port connected to it.
  3. Due to restrictions on passing a value greater than 255 or passing separate values under the time constraint, passing something like 11000001 was not possible. Finding out about these restrictions led me to think of a way to pass an 8 digit number into the Arduino. Then I thought that a binary number can represent a decimal number which could be passed into Arduino. An 8 digit binary number cannot go over the value 256 which was perfect.
  4. In the patch, the encapsulated code takes in the 8 digit binary number and converts it to a decimal number which is then sent to the Arduino board
  5. For the Arduino board, the code I wrote takes input from Serial Port and converts it back into an array of binary numbers. The code for this was more than the knowledge of Arduino I had, so I took it from an Arduino forum from the post by ‘guix ‘ who is an Edison member of the Arduino community- https://forum.arduino.cc/index.php?topic=333006.0
  6. The array used the resulting 8 digits of 0s and 1s to determine which LEDs would be on.

The following code is the Max patch-

<pre><code>
———-begin_max5_patcher———-
3851.3oc2cs0iihiF84Zj1+Cnn4oYSG461rOrpm22UZee0pRjDRJ2MAXARUU
Oi1929Zig.jJWLI3PRot5Dh41wGe722mswl+7u7KOMYdx6g4S79ad+aumd5O
Uo7TYZ5TdpNgmlrI38EQA4kG3jznfeDIyK94joU6NYaQTXQwORCMWoI4x0wA
QSld3sz+eobQgLINH6GS79O0WmzfhEuHiW+bV3hBykBBvnYfopuEkeQA5uvp
OaNs7heDUdmmrCQwa2HiUXpDwvVoZfZYxz5jkKKO4j4e6KX+cWhkAEAUzPMO
7zjEQxzczU68n12JYTXbvFCRVlscy+HIIcVfbU8kr9f9tL1bGC1tTlnSo8Qj
GFEVxMlaSY9E1J6pOlH0UVuaPqzVjDWDFW7bdQPQXMv6fPUAUlbsTUJn.55h
W1ju6Vz9pqJtSVVWRNOHWtXR2cqE.Um4d6PpJ+xeQtptva+K7+caPjr3Gm5Z
quDKRxx5vAcOlxyqXarRoX1Ogr2QzMe1hHmTHW787IG9nKB2jlTgbzGHkUIY
aBhOVNaURTTxaqiRl245r2QkGsMqPtI7H7tdW4EYgJJ3vmdZX3xiBfR3c.pa
2A8+9K+R81pMq2QcpUeq9Zp0lBhCeSUqYWUlhv2KLlHNtoAolBOUMdtOaF.B
ED3TONlLiwXbhXpGhKlIvXBio1F0m5+hCW+Gdf5+P.XRGrEl8Aa.5JruFlkW
ww0WlmlDjl1J8tU9T712RJuV7oMoIiMogaRKK7UY8kf1jbPlhmJTjz1LSV8c
FYRqqjpFaV7VYIfpRUWRVCsF5srZP4GLR4WDQGc3j4JQ7huazY6ruLIIMTUe
KMKLWYiInVe0r+kgqB1FU77JkUnb4eThQn1x8gNfUAKBO9ouyF5umI0NLpOl
0YxkIwZfzk10oWeKUULnF+DcxSkGRbP5gNcUwthbN1d0VS2lOOHSWpL2HyP6
1aQRRT280blQgqJp1epLNdeBsHI8D6UYQ5kSc1yST6cyIu7k6J+4swlc+rpR
qx4Pvq6w7EJqjUUi26N7dPrbixWRsAKDnYuJGcpL7K4KxT185luM650CsqkJ
s8hv2jKM1jAcjGpSPlVKrlzTruTtVYTbuDKBVmuWRezJfJssyqpE+r1nbTkm
wIa9gxKUwj1Y1vi4VuwD39dSOgovtlCK7l2YGevn37.sqrtNB+nkQJhMiSUQ
+P4ZMNhT9IZeOAGfHNZHQmvr39lFEhIGwSxTmPZ+0SSYc7ibTFCBLLFpzTGx
eF8RYLzEvX92VFanjYbvXJyXOfxLJYLkY7GRYFSEdvHJyHOfxLe1XJynOlxL
heYOFLNpLzimJigwkD13HxvOlhLAa1nYJi6+.JxTwXLdVx.OjhLNRLhhL9im
HiqhvXzDYbwioHSYIazbWxe.i8myAim6R9MNlreyChDCX6xQ7RYF1+xkYWBq
Qt0rV69p8pakYMogtsjF9VSZXz.1loQhzP275mrAoI.vwjzf2ZRSLbQzVQY2
Z+.faMkQFt3yFGJi4eqorgvbFmBK4pwgxD2bqYCAkYhncjnrabDsYdEujEl+
RRzxSScmm2fPNZFFiI9L8ieSYKAX7K2S.n+rG8FGdqbk2uJg+8eUhTzXXrGz
KLJOzCb8ToR1IpoRJP+LMPYJcHDCuotVoOvxQ.pj2D7QSMh+bnF84hYvJhbL
0hjGVsnfg0VFwbxnoEgeNzhBUkZQMSNlhQzCqXjC8aIFAifXjv+bHFYbViXj
vFOwH3gULpe1Q…DgFKKiDzmCwHEwmQqYxQzxHA+vJFIPybFXTzgXwmCcHl
S0sXdLkfX+GVIHhZXuwQBR9bHAQPb8b+Yzjf7GVInOxn.MQIBw2dOx9eR7HC
FaUHzApvR.cZpYUTRPgs7CY2DzauoomKkX9cKbWjrYSXbwGuOx3kgu2dNxbO
xiUl6FGhD0ShDcGSjUgtLNDItmDI9dtlcq1hLNrIomrI4NlMa2MCiCaR6IaR
uiYy18f33vlrdxlr6X1r0XCLNjIumjI+NlL6LreiCcJ5IcJFb5zfxIV9.ARH
3YLfR.5ecb0Id3SAGiq7GnXHaMuiijwGcdkVxB5C3HrXdx1rE0Jt5By8WQ.V
FlWHiCZlu+0Cy6zSLy+mNDfgaMXHtGLLqACx8fgZMX.tGLDaACA6dvfsEL5k
gEWCFj0fg6dv.rELP2CFgusfw28ESBqM5ItAfg2Kv.2eYlYoY0DAde.wCvr6
fHvkPzZq0hafXm1KvLJEo1CQ1XUjZsal5LiKACtWfYTJRsGhjwpH0Z+iB2G4
f.zKvLJEo1CQzHUjxs1wtv8QlxE8BLiQQp8P7PL6soH0Z280YFWBFqcrycuW
.NsWLynnurGh7wReQtiB+liuiBbjitiB4gCuibVyA2QtYX92QFHYh6HCjL6s
VOVMqf0OGJigMbp0Pj49NkkR6UODCcKXr10Ay807n3d0c0NlYr10Ay8NUovd
024NlYr10A28tNH98pSYcKyP38ZTEbLXrt1TcfItDLndMDGtkYv1Gtg6GIJr
nWi2hiYF6aop6CQES50f+3VlAZOyb5gRs0J59tkF8fWCW9rYIt94fhhL47sE
lgjtMt56xurYctuZoUd2508oWKlaVxlu90c9Mg44AqCOvBOeldMA3nK97mdk
mW3SmwETNfM0iyI6lUc3OtJXc10bdj8q47rpmp2gbA3OOTu1o6szym0ZEs+f
KfBSOKsfg5GiRAFriQ398mQNxagCzAXDA7xYjUQIpavIj.S2eoP6fScHVyjp
THJ2DqTElGw4KLemFjopoTDl8rYIRu8Cih402P4MmYOOQDNP47wYdv4HnpGC
d1vIJ.GJydEhhiZu.NaWZZS1KR1ZdjePWnIDHB.2wKrJaH54bgYpngYNxFBF
8HPNPU9eLHGvi.4.33wfbPzG.xw2u7AorZ1Kc63lGgZU9HXqY10siadDLGKH
hQgadDL3vE3wfaf9OBbCDomjeLD61xMNHdtswoAK9tGX1A+63wIadF2mdcab
llagmAg9.nuhjQzFRlxFr.IEGfko22M2pSTRTZiwcG2nKnab14c7+tz1oyDM
0Ho9s19.Sr4As5Ia3UNeSVLKOUFEc5VrdlP.vnFRnkhgfcqhA5H9XQP7aYAo
deUyBdklRvHuutTtQElrGz6qAKCRK7.deMMJnxbuG93Ln5h9rp00Yx2sn2ND
rFtDfJC6jn6DHpiIS7vSlKCV7yS0Hd+pozd0RX9vU64PseW3HwRjbYn2WK+5
4soZ0gY6kIuE6QGFQAkzHJHbd41ZQAB3VQAwMb15nY5euMSQb5du0S8qSSTq
idt5LNOYg4M0ZXfl.vgWh.qOj0UXdVyJouIiUhlqwPLk1JlZXiQYgYYYqyas
3KNa5f3WxZd4QzamwsxlTXS0jKoSyA16Kl3npFwIx7POh2hWBxzuTG7PDv.Y
Cg42xIMqU0BpaqV.FGuz.m5ltiEYBXmEYpOxorI1Aw.9a+zCdplMT8lS+Lce
HorS3g9rKsu36SOpdE1fzu7jiJGGjlXS1Dj88vrpYJ6WXJn+E8q74unGykuf
TEqpVmn9P8KcdqIK0+2tz5dKq7kdr4Mfb8q2fKPqTg4s4lW8t83kLM1Ag5kt
ZUwO89WYIeCp1RuZISlbR4BjWtPniMsV.IzKQTTmN.NX3ckiq1VPvB3NKHN1
wEx2EiY27SUXW8xbBJDWZX98nTF4n37MNFphWMXSZ9g76fnLcC.br6lpkRMi
6F21oLH9XOR3X.topgeqb980PgibTey7ade80fnlWDEWmLBUIczlaITzNxDB
XCl+5CxNNJZ4xtVVU26aa2j5g87GdVhh.MQJeIw10GVB6FVppK3awSdeMY0p
7PcrwVaf5RYPbqniwngK5X7g5DKWLXxEayh8.yfT0GTOvk5uuZYRGiz1tX65
gBH1sgJCcTUufX4lYKyjuFdMcXQaRgvapogbbmcBbVGaojQu3EEtTEEPhp0.
OmK+iPOp9WQ+34MIKCUAH3.q4sGkPDUze1y2d1y+55mqUo4q2JaZ6khSJWx7
tBYT6guS8USkKdoeMB8hzQqRhKVErX+nChKzkokjiNFjVou6IQ820CG2D6YT
lyjiKTPJKnVPlK0OgsJq9fy0yz8oCWg9kwhY3Zn.51N.wYT05L4x7WBTwzWx
VlMySeIT2M0l5jJrktsPGh+hjnjLcU4x+0zoSCeMaDiry+IwwcgMxMj6aIYQ
KMrpIdaMkU1vIU19TVC20DAa0fUOJnU8Bk6hyvAgYbwAVvMsMD5C0czuu98e
AfAurVH0i.K7+.IXtMcWz4pHk8mTB0Ty4l.KGah61Y1Vt+Ls7fEKN.AfCf.z
MCAX5Qf.X.f.iaEIzd1Ucc2Pclge1rL5Hk6fABAryh.fiQ.8bH.QcLBHmEAt
tT.eVD.cLBPmEA.GZAZuR3iLmO8cLBNasenXzQ..3Paf1UL..isVz.AzXVgz
.ArC0BD6f.wgPfZGDnNDBL6f.ygPfaGD3NBBDgMFFHCWfIDlM2Pei7eHteDq
xffgKCBr5FxNhkV3sCBtLfWqXcT60liqLFeqjUjAqTFakCU7vUuAYUiXP7g6
FZUSVvtTGaGDfXGpiQrarPFYWMG7vUNis0f7.c+r41wbYQpUhJpC00Pp0hpg
gygVE6MBOXpXHwt1aLb4PqTwvgydLDZyMj5vt0xND.YNr8TVBAjKqKArJXGe
nCabskXP.cnUMH31ZFGZkEEwAueUcrcPZ5qgY4Umh4VMYSv2RJIE9Tyukwle
aF2fIYguJqOEpIofrEuHKBWTN5Z5tS+cV0CKY4fglEuUVWRWsT5X52986T8c
C23a5Km2lj3j7T83UZxjp73pfsQE6wLyWWN1UlqEXlOmS0y.xxwMQ8SeJlgK
+YCYoGihxS5YYrlABqO4xSo9iNmRXTn90WSmaEWfgDj9n49BFtbKAAhP78N4
1ikppj4elDGrHo0ffLe8JYTztqcmURn5gMYx5rfkxvlUiG8qTmVfAom3m5Gn
2YXfu.PLaoRB1ELUmFrZXlpxnMer+AhpuABFhSnk4QNfJDlsDD7GtAAwqMCJ
Ch2LfxJocVRZRVsBUgN+lyXaQxt7WyhfYqEdoN4U.jA78KKlfPAEVtE.iojJ
nTq2mVWoJScg+vXEMYiRMI2c+pVwmTe8+AvAChMF
———–end_max5_patcher———–
</code></pre>

The following code is the Arduino code-

int led1=1;
int led2=1;
int led3=1;
int led4=1;
int led5=1;
int led6=1;
int led7=1;
int led8=1;
//2 is on state, 1 is off state
void setup() {
// put your setup code here, to run once:
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);
pinMode(11,OUTPUT);

Serial.begin(9600);

}

void loop() {
// put your main code here, to run repeatedly:
if (Serial.available()){
int x=Serial.read();
uint8_t bitsCount = sizeof( x ) * 8;
char val[ bitsCount + 1 ];

uint8_t i = -8;
while ( bitsCount– )
val[ i++ ] = bitRead( x, bitsCount ) + ‘0’;
val[ i ] = ‘\0′;

if (val[0]==’1′){
led1=2;
}else {
led1=1;
}
if (val[1]==’1′){
led2=2;

}else {
led2=1;
}
if (val[2]==’1′){
led3=2;
}else {
led3=1;
}
if (val[3]==’1′){
led4=2;
}else {
led4=1;
}
if (val[4]==’1′){
led5=2;
}else {
led5=1;
}
if (val[5]==’1′){
led6=2;
}else {
led6=1;
}
if (val[6]==’1′){
led7=2;
}else {
led7=1;
}
if (val[7]==’1’){
led8=2;
}else {
led8=1;
}

}
//Serial.println(led2);
if (led1==2){
digitalWrite(2,HIGH);
}else{
digitalWrite(2,LOW);
}
if (led2==2){
digitalWrite(3,HIGH);
}else{
digitalWrite(3,LOW);
}
if (led3==2){
digitalWrite(4,HIGH);
}else{
digitalWrite(4,LOW);
}
if (led4==2){
digitalWrite(5,HIGH);
}else{
digitalWrite(5,LOW);
}
if (led5==2){
digitalWrite(6,HIGH);
}else{
digitalWrite(6,LOW);
}
if (led6==2){
digitalWrite(7,HIGH);
}else{
digitalWrite(7,LOW);
}
if (led7==2){
digitalWrite(8,HIGH);
}else{
digitalWrite(8,LOW);
}
if (led8==2){
digitalWrite(9,HIGH);
}else{
digitalWrite(9,LOW);
}
}

 

To show the LEDs in action, here is some videos of the LEDs reacting to the songs played as well as the code and patch used-

Hope you enjoyed!

Project 1: Mario Kart

Whatttts up gamers.

For this project, I wanted to use the game Mario Kart: Double Dash, and to create ‘music’ with it. More specifically, I wanted to use color to determine what frequencies would play.

Main patch: 

This is my overall patch, and I first had my computer only capture part of my screen where the emulator would be, so I could then segment the screen into four parts by making a 2×2 matrix.

The matrix takes the average color of each of the four quadrants, and so I used that to get the color values.

I then took a sub-patch that I helped make last year for a project in Experimental Sound Synthesis (pic. is at the bottom,) and used it to read the messages better, and turn them into smaller numbers. I then multiplied those numbers by five so the frequencies would be easier to hear. After that, I put the numbers in either a phasor~, rect~, or cycle~, so that I would get contrasting sounds when you played the game.

To get four people to play, I took a few Xbox controllers and got them to work on my Mac with an extension that I got a few year ago: https://github.com/360Controller/360Controller/releases

Here’s also a recording of me trying it out: (Turn down your volume in case it’s too loud!)

Overall I’m extremely happy with how this project turned out, and I’m really excited to show it to you all tomorrow!

Sub patch:

Code for Main patch:

<pre><code> ———-begin_max5_patcher———- 4677.3oc6c00jahiE84jeETtlG1c1Ld02Rr09P1eGolpKZahaxXCdw3Nclol 7aeQRfarMeHajnIypjJtiA29dOGc0URWNB9i2+tEOl8R7gEA+qfOE7t28Gu+ cuScH4AdW06e2hcQurZazA0GaQZ7Wyd7KK9f9TEwuTnN7OGPqO19nhUOkjt4 g73UE5uZA.tD7gfP.V9CT3RZ4qnkffes52I83tjzswEJafd8fYGKpOJr5nIq UFrzI9kSlT+wJ919Xs8VjjVZ4eUdx+78uW9xGLDdeIoX49uljtN6q8fGlPHg .TvT3An.DDQ5BQvVQD5ZDg6DQK9P4+tKH0QKlDo6hJxSdI3iQqi1WD.B935j cAn.TOPGSXRvhozk3x+PvT.UPCwbICvHJ9.MZd.0IOT51OncaqyH8GCyIbIv scLLDHreT7cAvpfZ6CP9bAfPjKxBAAjYB.oTjKZAEgyD7QBcRCn.OWvGhsD4 fFP9boGHlE5h.TBZtfOHvE3CwlI3CQPKYk+AQC4LJyEwpH3LAqPAwIiVPmK3 CQWBcaaoKFW73tGiyusPTNSHgEEXoImVxZu5.4Q6hKhyeHNM5wsJ3A5aJ7OF ktwQHWFvBcMx4yRjecnr8Qt3M.4aSdNd4lnjzuWa7mixSKs9Em8S3es2UtnW 8MWrjwAkSWMT.HLgbEaDEKAwrg5qW5RkeuQoowaWkcLsnInOm7nsQdz9HOXW j2gjMoQakT3q+O4+971rnB4+YaxAYdjpe+CQOGu9gnhxEG93wh3W+eGpn3JN VxhaOFm845CWe7ltWsaTAxyN2wzjhCEeS68jV9.6JYP449EtL965yuMKcSuM iW7sEoBRXs9ckT5LIkbihx.u1Nd1G5vSY4EsXwE5OpJrr9GtJFE0WLJknW74 aXLJwGiZRLJ5uxwnves2UuPeqiQw9XTShQg+ENFs2Y.ReqGnG4CPMH.8Guny NVh4pusZa72M3J+TF3IWUlnLrDxg5PRb+yM27kT2SMCphmr4xpkf66FbgBZC xCrbDr4PlLkPd+SQGxx+tAW7fV.MEYq1YJ0Mfdn0WVEDKJWSo7ZdAQgBAR.k qyzdKvjFNGWZcUvragNCLGgdUHsigN7s.52Yx75KfFFdEiXuj4.7bJYd8kTq MHasj4.17JYd80YqEPauj4fv2lj4UAwtsaMDMGynQoPUcRaN5ri4AxbjGphu cLzC+AJyNAIbel84Td85qDsKyqioyqz50WcZWlVW.daxpWKcBm1mNDNGylUE J6VjOKyiWEP6VjymOow2Gju4wGhdNNOZS7g9V0F.qHFD7pUiGRtmra3VDpAB zuXU0xyroSV1XdQ849bx13R3bHIKsQqx6VDseeiCedo61E8kL0Wj3TIvJ8e8 gdszY4wOmT+6+5QixKophRd5XttHYub5x9H+ZxVGmmdLQ4J00Lq1kTsNxhqc XezJ8urrQr9zMSEolbgpTrhPUbXHpYI6V73lsYq9s30M8sEY6iSSR2mGeHNs Hp3BWew53OGcbawCeNKs3PxuqqmJZYqm+yUNXqm7T8A+O4xBJV+Q1jmrNKU5 Dm0PHObs49T.TAJ4quBF0mHMZeK+xkgIkrRGm7PIHOd3wnbY6TU2IT8IKxx1 d9oN86sM9yEUmdeRZ5ErXQ19tOYdxlm5428wrxStquua0YN7vwT8YePVr7Gj Ui97OWz1sU8fO+q+knzjcQEwEI5l.D3zI0oTd5vp7rsaOCu5y7bKmYcYH9p3 ulrt3IkgZFLT9wS1WGDs3Tq75jxDGEmerhnMGN+HmJ4ciCc7wptvOTDua+1R Tb9G3rMRPy9qMy0c1w6KaemY74PYhMBh2t5N5LQe2I6uJuF+benyj9Fk3uQc 2qG.vYjCQOKNBF6NxgNCIGsYFfbXLEevXpHGLn906gb.cPN3l9vprc6hSOuu l5WHccrBU3olBp57TwDtgBf2DEflZJ.BphBbGEbZc+lQAvoNKAGFpE4IxYYI fyxTnMmS84yq9vpnswkiFGv.A.YLx.THsh6v5oCAnCygrN4PXGb3YYZulilq bCFqVfAExbH2P9wjaD5YsnK.sinF37fZR9bvOk.C92kuhBJdJNsjfh2dHVdz gFoFo3GrPkZBR3CSSnall.+vSS3IflB+gmknpNYxY93LRRLOHo3W1mG729oD bvOKSE82C9mx2AC9GJVS9J9ua13ZHjdbspc2burE9VYK97hsP2OaggLmyVr4 EaAGAagcNYMkyXR4lCMPlt3ePs5gLYwFfaExCNQn2pEjZB+fC0WzQhynGjMo GzDSOP.QWBYmQOPaROssP1WqR71jztJOnB5xy2NucH6X9pZepxqCNmEVGenH I8TMy+zozAW74xxWquDDl0T5JGi0siAeScLd2NFvMNFvPOCV0X5FuvT9QVZG 24EDC8BDzkdA0Tu.6RufaZKhL.BNogrl5Zht8LzaqmE1sm4l7OnaHi8jRYna Hi8rjw3Sc3Oxz7CpjpnIswzXWizsqAeicMZ2tliZP42RC5z16jeKMnSa+S9s zfNo8PI2Px1Is+I4FR1No8NI2Px1IsuI8FlpgqlJF6FlTgq7gaZ1ftxID2Rd RW4Dg2RFw1chpCVKrspMSqVpV8rSZuIIEsYa1iQaqDLzIAm0hhir9FR0XIRR g3qzFoa0KI1qWRudI85kzqWRudI85kzqWRudI85kzqWRudI85kzqWRudI85k zqWRudI85kzqWRudI85kzqWRudI85kzqWRudI85kzqWRudI85kzqWRudI85k zqWRudI85kzqWRudI85kzqWxIUujXrVldnF0fxFphj3UEoWUjdUQ5UEoWUjd UQ5UEoWUjdUQ5UEoWUjdUQ5UEoWUjdUQ5UEoWUjdUQ5UEoWUjdUQ5UEoWUjd UQ5UEoWUjdUQ5UEoWUjdUQ5UEoWUjdUQ5UEoWUjdUQ5UEoWUjdUQ5UEoMTE4 pusZa726QMjHBRcmhDQC4LJS9DGODCu5oPNA2uLIQsJSRXaxjD1oLIOjrIMZ qUePiKAZevGJTEUpUHCtGkg1JjwSIj2+Tzgr7dAMhtDNbaNEYs1bpSHf3eec zp9.JkAjJ7ABkWHG..hP.N.q.GVWDZ3sANv0fCJVbOscMklhg8KELw0sQCDj BaEFn1Zi3u5McJPkAEmhsogp9mNF5hYIzutWpiogv2BZXjp4GRXW0Ow1J6m5 U1eqJ6GgTTLW3k1uWZ+do86k1uWZ+do86k1uWZ+do86k1uWZ+do86k1uWZ+d o86k1+zKs+xWg2l79Qf++Vd+lvXmKwe2vX+3HweiXLryILuL+8x72KyeuL+8 x72KyeuL+8x72KyeuL+8x72KyeuL+8x72KyeuL+8x72KyeuL++qhL+GR0nBc Y23LV6Wy66UbnT3bTirbhiPKZNhVl.6FzhmOB+8X59nU+Vvgfjx+pes7u8RJ 5P.fPW0Yx8vJh1XERup9MIsnwOt9HM9gihFzWbc6GMPmiw9Tpi5oylinkD5n 1V9Ov8zIBpTTeNnmtXd2Smn2PC1OZHbNF6iYgplYaiVFXVhVHvMnE9CbO8pG QG1umNC811S2R7CrbhfNISHi8lxOkKAqnbgVcCb8vhD8iTD8tOR95s.6V1ep v6bR.2eGkujTrb+WSRWm8095FPXpsuZ0cGRfJuH7VAbKYG5e7t6CRx0Pe7TP ama+pVGeigjHSnhlQLsjYvCgxV19WczTKcsS6F7EWSGgcSGmbgy1LZk91nGK 3lXHLWwPT1xP4eXPAECPbLQJMaynqxCkr63ttYq53jh7DkZe0azpvV5tL5gV rGmVjsYSoc6qODoKlyd4Otu0Oa6gQ9ukVNOKfdeQXZdR2GTumQ5Nlx3c9Or6 0Pa8PgNXEYp10wG9shr8AjfUOEkG7QIrCHT4JJBXXon1uSNSmeFUQWHy5INX 5Yb2rVIZdXWTYWzWNeWGaA9aW7gCQahu9VHR71sAvx+9bz1.DkV1iAV+u5Or rVtqxNpEJEcvJXwfUaO.8xZFeX1ocxXmBfztjA3DYfoAvxHoPVqTAouk3ql3 eMUn4EjEnBwTREfFwEPDqbtJfxIpHt03hpI7a+3hPKSF8jjota4P0ufxzaaH pkVpGDCLOcwDC4phyRobKCY3rExXjpes8gLxsPdvKrj99gDgxsZgJfX7r7BK Iz69dqiVxa.ZGbY0bBuAZs37hoS75p65tIir7JahKpmJSeTAUmjFvu+6gLsR ELaORzfWen5FUjkCgmk2nnnbgaPqXN1gkRZhVK1gMbV1gEz6EFTWZD.xtcX6 6w4ritLO5axhDhkGygLKktQUIsrOZQywNrXLqQaq85vRvyvNrfdGgsppIjPK OBKgLMq0qpJaAeLZUQxyw8hU80q.WNmB4ssOBlBnBZHlKqZz0aFz6tHazE1u gdfk8+ZEPPTTIJBCfuJt.SqABjdV4fH1pFHD9Tm6tZq8Z+rYyyaMk3vFWGNK h14zcfxyyn02TPfP8.2gVdJHTvLp5UHTUobP1stFz6qTNJyd99qUy.Wps3Jd 358MF6LMd2098S1FHk+dqrs41harsfi1VBisEXj1Bg.M2b.ctYPBslsfCYKl 8vEXPaAsgsvFwgPj0r0fbXSYzORaMHGBsRrAwDNLDZMSMDEFRrloFhAC41vT TSHP08HbKYK3f1RXMaMXxPhUBBoPSrExFCnn1fBFZK3nsE1XaMdNjZhsv1gC YFaqwygbis034vPih4sBGx.FaqQygLnw1ZrbnQSgxB1AxvlLfrvBzWnQQfLK .pPhAVhXC5KzjHBtMFzxjtT3yw8tj06yRRKpVeBgquWXpuwxiorSuarwpl3a PfMZYEXiLkMFMUX1LvwVvTbS5YXi4NRLYPaL0FVxnLk1vRX5j0NgMAUVYVip RCPGDT1yVrAsE2Z1hOnsXVwVHC3PjcVBsxVrAsEvZ1hOX4UrxJJLYBpB6LmQ gIsVTt0r0fsVTl0r0vsVTqXKhQbH1Z1ZXNDYMaMLGZmpqXxjYrSwULYN9PqD XPLZp21g+La3XqDWPvSnsfSmsLaYlVo4xj4C12hJpVFAt5BwEBVJuzxW7VHW sjCl99Nq5cm99N+V4iSAB7h5i0NTjOuiHpspCjQoXRHGK2SEf5mERWbtqABw 8.AiLBHB0ClNFkGhHLJBV1vnue1d8otFF3I.Fl0dDp24TMaOXgUsGWctqABb B.BvPfnCd.DFtb5EBh7R1R63bWCDzHqziQYlE8gDNs5wYJEsTfoPHlVNchPf 5odHkCppnvUmbzEohdCEopKWmqyE0tuKPNy2Iil1oTQWdmaocxnocJitD8lP 63QS6X8vV2Asa2TP2.Vf2GV5qYvtiSeZFRincAFRtyrP1tcAM51k9wxT1tXz 7aAbqbMGLpzp.aTcKnQWiMnUDiBjZ1ZenVwVPSxMS38E7gXJgvR0Ohqgg7Su azdGX7yGGhz5pWK0upYfqd2n8NiVekMJSBznxI.uPPBWRDU60BthHf58Fu5c i16DF6cnNChfzldmNHxNdmYWvPlUZmLpq6EISNk6kOEF+B53xfDP0SqWg9AV Bpdcdu9NZ05u02rSTu6ZnvlDnfuAnPnmdmsWrsgtKNzb2sZt5c3tnIwcol6t b8NtrC2ELEtKJ7VhqomEWqqqjN7FSzOxcAn1fBcRfhvNPgV8nyscnfmDnvsC TXgndZUF4DvIDqUsLptjkUEHS8tQOlhQKaizqnMpy9IPMDsg5ci16PF6ccup RsaU6cg3S95n8NnwdWmyLgn2XlDtlzvP87lXVv6.iupfTV09XP6V55.pd2n8 taPpPiyRXilcKAXPwsH5a7SUrh5ci16DF6ccW+JwYdWXnNB2FdG2XuqyHbV0 n259eLL2ZYGvrwW.eNi1HyZUI6sRlUyz7yEXnkBBq53Qz2qenmd2n8NhwdW2 kqND1v6D.clLq3cXi8tNi6DjvS9yGNciYwJdGxjxZfB6cTI8sx15oExwMl.x H8NiJ5Bp2htvQL8scK88XJD4z6Fs2YzdqA0e850iRVOOT8CXd6vcFktyFiJg LR94V4R0e4L96RZJVoTlHy1Ce1gCISWoLQvoyVPShMDVozeFMOLQnULkQykG XkHCno8iG89HEXzrKYVAU.ilqHxN1xnY9YEIAdR08SBGZTNCfU5bAvSGttS8 kq2f3Q62+bb9gpOtxHK1E8kr7S2Azk2Xj0uUc+EXQd7yI0ed8QhxW8TRQ7ph i456Kruvz2pQVrKacbd5wjpZond3RsPsc6k2CYOru5tSsZW4+9+78+Ofouz7 q ———–end_max5_patcher———– </code></pre>

Code for Sub patch:

<pre><code> ———-begin_max5_patcher———- 787.3ocyXFsaaBCEF9ZxSgkUuXcKqyGav.S6MYpphj30RUvDAjtLU028gsg0 lMF8rgIo23JNww+96miONm93h.5pxCpZJ4yjuRBBdbQPfMjIPP2yAzhrCq2l UamFUuuXkphtz8Q6xZVeWt91apTqabKiHFtJZIIjGeEaIIhYF47qXjq69Nsq PtdqpwtdvyAK22zGk2EMeiUyxU2+Qd7yZVkUnZTU2nzYq1pLSg08Yt0n4G6T tMCktjPWkoukRt1LimVrvLrzWvFFwM7EJD9E1ny.rtkaDXkRKeRo8Mqf0O9u .Ka.XE8ZttrnPospQ6ikq2nr6ZwbfTWxZGY9CI.ER74.If08VxuHAonPBliS YwPp8fUJ2qmxfyRIE02a0tW3F0AmQVuNaqhvYDIivLuCGwNh57AQj4O.KZb+ PNne.C3G+ppyex74hUgHzxJH8Lqgu8XMwciIv8LpvoA07uQtHGHeocjSZtSo aAVssVYhN1sJbKuhD6wZHLdbr4nwl8lFawLgc5aZpirI0lac8JzImFnUG1UQ d2E4Bx6MGkuj7IyS.4CVWvLJZGgKe8Z2bt6zMSNtCHv5.wmVGf++6.BPNKNf 7z5.vDb.wrX.991a6VXrB2otRWL.yOzjgEiQuXdtZT30XUjlXvKMzqnxmJp7 Y.UfYgLI0qnBSE0W1Xg8aP2lq+8+0EVbLwOl+5x8Uq60qa2PdlnMp5lbcVSd o9EyI5n4TVsosEk+pk6SgkCKLL6BGOrvroILCgxPmYOMkvvnoM1oqTHBk3fO TJBiRBenTLF2y7xD7dJBFoSFVY97qb5vJOsyibjUf7NxbjUfNKDGOGoWbLmg rEO3d2rQIc3vRCm.oiFV5IZ3wXMb+mcGi0v8e9cLVC26Y3gHKl3876PjES7d 1cHxhIdO2NB4UUS85XIxKllpNnu0epBkfslvTEJEaEfiEx0SQ1tcOnpp6lsU i1tmtuzl4jrz9Xt18ns2GZk5g7946hjU01RUSa+T6qr6K5AoqmVZQYaNnded W9eKcsRZ6LSmUnp2k4.w1.2hmV7SvOMn+C ———–end_max5_patcher———– </code></pre>

Assignment 4 – Pfft

For my assignment I wanted to explore what switching different properties of audio did.

Input:


Tears for fears – head over heals
Age of empires soundtrack

Flipping the real number and imaginary numbers:

Pairing the real from one with the imaginary from the other:


(the ending of this one was what I thought was the most interesting)

Pairing the real of one sound as the imaginary, and the imaginary from the other sound as the real:

flipping amp and phase:

amp from one with phase from the other:

( i couldnt upload the whole thing cause the file size was too big but i really liked the output for this combination)

Using the last sound above, I multiplied the phase by the bin index


then I multiplied the amplitude by the other bin index


and when one of the songs ended and the other didnt, it gave me this:

My pfft:


----------begin_max5_patcher----------
960.3oc2ZE0aaBCD94To9e.wiSzJrwFC6uxzTEg51RU.h.mtLUs9aefcHCwH
lSs1Tq9RhhC128cem884K40quZi+15i7Veuu68CuMadsajMxw5GYyv.a7KyN
luKqU9f9U7eUu8Y+fSemfeTHG+au4gOOZ8AwNtP768b0h62V7XU1NeueN7DE
2KmU2RcSD5771mIxepn5w6Z34B0TIgraoAdzH1sgAdQg8uhw2F9ukp5PYQUm
4j9GdznJuPNLRN5et9p926dK3SDunHs3kJgnyg2806D04YMusHnCV.9XHzcR
hLJj79fO13v+gGDcq+adi79QXJF.jhwwRHk99fTn6xnXsvGGpvMh5VLp4fOU
K7YwxDZWC9mSnQykPiI5wDUhIZjakQeFSgyhoHHootFlLWZp1xr3DIkRPwtY
ZZ5rLJFBjHpRIXWgQ6HSQcGs9wYzPsvGIyjwDhaxnwywnnTcPhonRBk5VL5.
jXyBoDcPJNwsgDcVHwzBIkPmOOHcnbKuYjG1jUxE7l63UYa2I2hEdwcd8641
lU83EztpUoSJRh6SGgtjxczZsg6CbSEsp.T0HIpyWbmKpLj4lLalq9hfpqdg
wt0dQyc0KsELPJ9LI5KpN8T8fOc7lWmqZIYtr4DHH5Kq7GsEgXts3mn4nSs2
ijPnNsPgY6Kh95GgLmFQydwXs2gjF6rbTQEDU.Afu5g1TUkX.ThROD88IDJx
VgAj4BCPtRsgCCpY6uqn5+5buzG5+hIAm15CM4CPbni6di7i64scQlLQQc0n
mpuUm8O0k4AvFr2d3krmzqPFwd82LdY.NMLT2be28FzuCDrKvTfYgPbjE8fo
KtFV1PQcHrrzqLi8Fbc8FL1r1KDh8LytFbLD7gMW.EGCAf3HigvTH1KwnlCA
wblIbxfftI9z5eFT5ENBBuVQfoYcm8.zZEB5+EblkDVMOnuSKyFChVKV.EZw
7.Y.d4DAh4N5jBh2Il6nSPRpvlSREFABgXypoBAZyrs1JASV2zjMylICyEP1
NJf.4B1RZIHgWDaFC.wBV8HMPjP3EhA30JFfro9BPw.ThkSDWNFvrn.CDHMy
HyUoYpTAMkyMjAAcjGBYttE.5.Nj4ZW.nZ2LKpPCTsb1E1IuZNfMqqBhBHe1
NPjMOHATRepMaXDn84IVrfBrX.CnvhSsJMa+9W3MsmVDkw8KydtVNoj.0mKp
TeV8WCvug+RwvTTcl0OqI+oBAOWbnQ5y9GiO86a3WV24BUGJF7hd32aZYOoq
xJ4s6yT.U165qup6A9qedOd5
-----------end_max5_patcher-----------

My main patch


----------begin_max5_patcher----------
1054.3oc6XEraaiCD8rCP9GDTu5jXIYG6zaE6tE8VOzrGVTTDPKMVl0TjpjT
NwsX629NjzRVxQ1Vsn1IKZNHQpgiHm4MONbj914m0yep3AP468ZuO50q22PI
8rxLR5UJnmeF4gXFQYUzWKRSYfe+0ikSjjLPCx6.NYJN.pyfxAEEZFn0qxA2
Z3S4ZeuOUNLMwNihoe9hqqMg534Td5cRHV6dsvfvKGz2KXh4d3vx6alHdQFk
iqj0BCpI0Y.NwVo+64mYZwl9c1iYzkvkoDJ+6UF4Rhjit8VC+wQeZu3RvNwE
EMkSX98q2ybMiIHZSGFUsCjKbuHWjEyBtIxzLz8Pz06D6BKkhNONYDNGXwhB
ttQXsIvNpTrhrDRtin0R5zBMromZM5VBuF7iU.hYkxqFnNtQ4TMEgBqiLnlI
2PK0bgT2VrHpJVzP+RPePaCVfKoRuxEsF1lFYHXYF7hwnE0lBLAOc+TislOh
k6ggj0itlgtoyOCkE9ZBIdCcsFcIHZe7kfgirDkAA1lQk2ODcoIiXvIXqVzS
vVsf8tWKvkY5k8ZO460hNo603v8H4nhYngGrQP+7Yyze2ybObCatSzwidu1Y
2AcgcObrsYj6r3vezTCAgmfbCAOA4FtYef2vHGpMI72sTCOqxKDbRyKzY95o
mrNYu0LN420ZFeNQVOkL0bFYkgr7SeLk4JgFqoBNQtpcN238w4hFaIag23Nb
w.UdQC9Q+DuJVUBQSdD+IlQyq9V2FDnd9ynLnJH7Gu9p+VAR0UuiLmb0eBpE
ZQ9UuIE7Dy79qrbpDTde.Y3IZIIdg2Ed2ZaeUH18M2SV.bz679.pHxNPYyjh
Lu+QTbawT3xr7nMwV2Jufxc3DoHgJLRpqgBXfEZqX0HD0fZia8Dh7ljTzeEb
Mv02ozDMTsqotaiyMqPpoYPaaXLz.IMkhwXMjkKJqC3QZMknvXegwoWeb2vs
zHmhQb0b5rxhItrMEhERYCOsoNyDLl39TlXZCCZKsxDIkbVqc4u8jHyH7cYF
FnPok.ZLsN4k3ARVR0yyT6.19RAgQ0qNrYb.Ot4xUK7iFZ7B0VyoJGfjcgu3
N7pknRdUxCa2xAd1mIYTGxjLdzy2LI2BDox6sBo2as8tv6c.Iw68KAI1CXpW
xQ7RNh+ukivMWXAL7G8Cks6RMCrUlCknPFWFHJ+BzZ9meBBznusw2q9KLUlX
qIo57BNpSqmwpB1nkPl.xC7Gk6rELtyVvfijE3bufCYC+5.8N4xS1gGO3WfA
bcWLfwGQHuSFvniHBzId+MGQCHrSz9niXLn6VPPGvf0Y+H443g3p0ShawwBj
9rv9RS56dlxcO6NH1WBKokuhqbDehDKqQiY8KjtBId35g9qea7rKIufVhCF2
2rz1ZvLEdnxING0Vq14mgJ7e.TYOgqA
-----------end_max5_patcher-----------

Assignment 4 – yay yay yay lights

For MANY A LONG YEAR i have desired to do a frequency-to-color lighting control machine. So this is that, or at least a gesture in the direction of that.

This patch does an FFT of an incoming signal and breaks it up into a certain number of bands. Yes, I could have done this with filters I guess, but I like that these are crossovers rather than filters here, to get slightly cleaner numbers for the colors. The ranges are based on an overtone series; each crossover is double the frequency of the prior.

It takes the peak intensity of each tranche, scales the values to 0-100 (for eventually going to DMX-land), and and returns it to the main screen. The fft part of this is boring. Sorry. It took me a surprisingly long time to figure out how to make the conditionals work though… Seriously…

OK so then we basically have the data we need to send color values to an ETC D60 VIVID+, which takes 7 values for color and 1 for intensity when in “direct” mode. It does this because it is very fancy. Next problem: the show I want to use this on has seven VIVIDs in it, and I would like each of them to be able to get a ‘rotated’ color value (EG red value gets mapped to green value, etc), with each light being offset. This might end up looking totally nuts, but it’s a first pass at some kind of variability across the seven units.

So I’m using poly~ to instantiate seven VIVIDs, each with 7.1 parameters. DMX channel and intensity from the pfft~ outputs get packed together into an OSC message using sprintf, and then that gets sent out to the main window to udpsend. Because the DMX channel is first in the sprintf message, it needed to bang every time there was a new fft value (often)… So I ended up doing something tricky with an uzi and a counter to continually generate those values. I’m ultimately ‘sampling’ at a set metro rate, globally controlling all the peakamp~ objects and such… rather than using the fft rate… but that would be too fast for comfort anyway, so it’s probably OK.

Anyway, finally, the luminosity intensity parameter on the lights is separate from the color intensity parameters (you color mix then turn up the Big Knob). So I’m taking a final peakamp~ of the original input, and passing it as well into each poly~ instance.

 

ARE THERE PICTURES? no! Sorry! This patch will be (maybe) used this January in New York for the APAP showing of the latest ROKE piece. And all this other gear will be there. Imagine a giant circular screen, backlit with all these crazy colored lights, all of which is responding to a modular setup somewhere back there sawing away. It will look vaguely like this:

Here’s the patch:
https://www.dropbox.com/sh/6n2uk8um97ev7sp/AABgysKzBmILQGxrnoie1n3ta?dl=0

Assignment 4: Vocoder

The Vocoder was once invented as a method of reducing the bandwidth of a vocal signal, as a way to reduce cost for expensive transatlantic copper cables, however, artists through the 70’s, 80’s, and even today use vocoders as a way of processing instruments and vocals. This distinctive technique creates a uniquely, sometimes robotic sounds, and is an effective route to bring science fiction to life.

The child patch is really quite simple;

 

Inside of the parent function, I created harmonics within the vocoder, by passing a major fifth chord into the algorithm. This makes the timbre of the vocoder flexible, allowing for a large range of sounds.

Here is an example of the vocoder, with tweaks to the parameters as time goes on.

 

Find child and parent code here!

 

 

Assignment 3 Convolved – tatyana

Original signal : strawberry fields forever by the beatles

Convolved versions:

IR Signal: water faucet

IR Signal: (Whistling up)

2 whistleup

IR Signal: (strumming the wireframe of a metal fan)

3 reverb off fan

IR Signal: Outside tepper overhang

IR Signal: Under stairs outside of cfa

Assignment #3 – Another Drone

I took the drum break at the end of You Got Me – The Roots and ran it through four different impulse responses. Because of the sequence and nature of the responses, I ended up yet again producing a drone.

The initial signal sounds like this:

https://vocaroo.com/i/s0OBhFS47hbE

I’d like to note here that Soundcloud wouldn’t let me upload the original as it’s recognized as copyrighted music  -if this upload also doesn’t work/ends up deleted I can email the initial signal.

My initial iteration was putting the loop through a recording of me snapping within a styrofoam cup. The IR made the sound a little more bassy as well as more diffuse, which makes sense given the close confines of the cup.

<pre><code>
———-begin_max5_patcher———-
2328.3oc6arsiihi84p9JPn8oUoS6a.1ilG1G1WFoY0J0uspUqVjDmTzKAmE
bpK8no91WeAnHo.CUWljQiltUkfMXN2OGeNGme61aBWIdjWEF7SAeN3la9sa
u4FyT5Itod7Mg6SebcdZk4wB2yqpR2wCWXumj+nzLu3.unYxhi6EGk4boYIv
5YsSIe5.2BuvvfuTeqCox02kUr6qk70R6cIIKAKBRv5OwlqQnkf1UjswB0Ue
6CDXG3lUz.VT8jUxmxMPLLTOwue6s5OVLQxsf+fBFuhZKCp3RjOoWDirLgwX
TplRAZBl.cQ1XZujMvKj8PRYEUGfBfA+xmPe3WWDXGhLC+zrwMhhz7AXjSs.
L6xqErgmm9TPD.7FI8UoE6bR9LpQA.SSVFsHHF6hvuBZ+UNz9AiRUDHSSUDm
TEoWpBNmTkLXk5+4A48SXDmRyEu7s4OWRWHDSMhWfQ7FAzeNn3Ec44DYEaEO
qMp6mSvFhSrMWjJ0jedVk461IlxE5+xJjtYcfDiy.DlnYZPfaSi3KOua0wsa
4kOacIpPvgbNfFkINpWBHJgzwfRoV4jYjbcYF+5LyLfQTiakFlAvEy.QmQlw
fAOOjmIq4EdOhIDDC6DyfwbFrDLiAMxytmubSo3PCLtOsrHcO+za9Y3Wdi5B
i5WkwLxbKe.EEaFPFfCzF17PZoB4j7xuxKRWYo6FQPNeGuvtn+oBmURsf63k
mHYWKxEk0h.M.AKYIrnDl9JPTDJQqL1AG1vWK1v2q9qKf5WKL8d9lulJkkYq
NJ4ubUUM2ul8q4v4G4hsMS2LeWhKWTrykT3jGt5NQo70OceOZi.hzy8xJtOq
JqgmZuuQYp4K+3k4PIWk7wl.0W4oq49zppVkBRLgaXt2AJ5p5fUuu74zAKiY
zugr3I3eEiu77h8O9s.E+X4+9vvac484asN1BycdYjqQnEETx9NO3uA8JcWu
QUTBxjGRjS5NdFio7fxU3VQ49m6m7hGU81wEMaV0ewVZ2ok07r0Q5u7odYQQ
dgEsVreOWs84yUMdRbrLnRbrXS0IAulbZa3DvRrJWbFQa1Sr4has9ACrUSvL
ZBLDc9y+bvNtLPdWVUPpL3No7vO8wO9vCOrTdGWMY0RQ4tO1rr7rBUf3iExt
5nSlkfX0Ivg5vMv394FWgjPlsBSDkXnXLynF3tvD3nqTkIdyZ30TEAYLqwwN
ybfc4EmkCSU+fkWKNos7ZvHadCDmTMdFK13.T8e+YyVneizcUlZat4iP8jk5
skiIljjHNSUBcEpu1rQ4pjjsx5oP3yYNh7uuIc8yuYCUM9qywmXb+ZiBq+rW
7OZtywcWZVwyCljq4tClkaSLeUtKUpnYoxLQQGBMlZnPBvDYoNZa2saLjzeQ
2qd81bZWuJCuGZvWv3JLTipBLlYGM.GOdJ4TKJyZH3Ay.FcYx.9LQzXo.2Ud
2aNvfdt2dEYou2GRzBw9tepQQKt26lUjIyzF0ZgQmcacxCcT8Pspyj2eZ1tZ
9Czz7mld+.M89wys9oarIZrM8amaz.Qt7tnuXMKHAa2boci2t6U.5J1qf+v0
pf3Xa0ZrcQcrNEPul0tYtaT.MNty9ag.mavEFcUYEybaBRrVPsrBm65ERthc
Ivzj.+5ZMNB2I6Mpyx4.wW8VD369CDQMo4EaZPxH0vA9W8GXnJ9+WMG3T8o5
Dnc2b.10zo5b2ZfHpM3pMF6HgZoW4NCLCNTqilPcFL4Jz988GykYqEE2Kxum
+r4jZ8cdo3MpG7pLKmREFpqLp6St2blgtxZ+oUok+.wPF8LnXIw51saE8H1.
0.8xKzq1pIcsz9ejKTwjFniP32RgDlxouvHuqaO.voXGMQw9F91TkFb3Ig6T
u.ETcDqaUZU1ZoJmXMJqB8PZxqNbqHOW7vtbwpzbIe+AQ2b1C0sWJsPEutTS
V0Umn8tMAjsu9lXc5hYrKSwjx4E6j2U2uDLDiWlDkPgHEuSYA9eqZYdurjVL
.hdox.gGxT71Avg+2wT0VCepGzPlo1MorjqVacoBB9xrj++Lzjw5DbQIlZK4
tGiP1el6w3aY+oHu1iQCDL8D6ryBtAK0yeJeqRbrbcC8WeHTC5tG1JoREuQA
9ysGoyF8xWIYlLblBfX9.PnI.nSQl8YaNHTAOpZbIRLBRLwTyZFk0NxG3FdL
bKwMxYM2vwXyo4.QMeaF5CrCMB1oO+ctvtXZK5rvND3QrCNB1oOdbtvtHK5D
gpC1YJofY36E6vSPqKwGp2wpWR7XrgXe.I5DfDzKlrrIv7PHO.oonCEYel2M
b.S.Nua5ALENmOzFPvoBo2MuaJBoyr2NyPOo9bcXOXwwwHqYN8c6DBMEWjPh
SbK15zwzUIyHP8HefaiFbIxItk.awFUVwIQsXpOvswzdvtwMLq0Y8B0Ntf9x
0MZJttQ9XOPHxkxsP7DLgPdwQW7TXd9flljTxGvYJtTw9Pc.OEWpXuPSSx7y
oKUFy9qyfV2TN.nc36E4vSweuOhgclClAzg7wNZvSwr.5EQKcJhVuPSrKj2K
B7BYpOI0Afm.zntigd.PzoXJQ8.flhtfyLEiXPqCD6ujRFpczIXls9FoGNbO
urp90aPpv8oey1dtjElgYE1glxiFVx08nx97lJnDlVt9tLIes7XosLJORsm5
ISEBKKNlU2NKE6315xsbVMUZKUy9mrUiwPZsU67DNVaGD0sKSg671SBzhNez
s+gq10SGGU+KgzbECd9J1lkm2tpt0RsoJWg6JS2j8xot9lvN.ArDw.PVr98i
ALJfXuRM0oPpdUvlkQif.SePoDDhXuBC.DTeqB0ghN4iWdtzhc1ZagR5VQ0R
wAQYawTWhYsO+Qonkvz2qtjo07kshh11bpzE+Whhz0hvF8pE0J5kpE2onZ1o
MMdo4U10vnU1aKd++gqqHcyOg69UAzngtrqM+lOWBhX..sU7ktdMuPdh7fhh
fIZ1YBUEZ01oYVDooSydg.dPaFDrWTHpNz1WUeoDeB0.oTJR+PHJEVqbEAwX
nCEeklNEwHXa+1oQQI1qPHH5ODZ+Swx7TMekXEpRhxHNonjXrYYJArhPuNFB
NT.mjkcHOmu+7klPALnkz..DjZeKXXL8GV6Usle+1+OvBWRcH
———–end_max5_patcher———–
</code></pre>

I wanted the signal to change a little more for my second IR, so I used a recording of me playing Smash Brothers with a gamecube controller, which produced a lot of satisfying little clicks. This really brought out the rhythm a little more, which is what I wanted. Here’s what the post IR sounds like:

<pre><code>
———-begin_max5_patcher———-
2331.3oc6arsiihi84p9JPn8oUoS6a.1ilG1G1WFoY0J0uspUqVjDmTzKAmE
bpK8no91WeAnHo.CUWljQiltUkfMXN2OGeNGme61aBWIdjWEF7SAeN3la9sa
u4FyT5Itod7Mg6SebcdZk4wB2yqpR2wCWXumj+nzLu3.unYxhi6EGk4boYIv
5YsSIe5.2BuvvfuTeqCox02kUr6qk70R6cIIKAKBRv5OwlqQnkf1UjswB0Ue
6CDXG3lUz.VT8jUxmxMPLLTOwue6s5OVLQxsf+fBFuhZKCp3RjOoWDirLgwX
TplRAZBl.cQ1XZujMvKj8PRYEUGfBfA+xmPe3WWDXGhLC+zrwMhhz7AXjSs.
L6xqErgmm9TPD.7FI8UoE6bR9LpQA.SSVFsHHF6hvuBZ+UNz9AiRUDHSSUDm
TEoWpBNmTkLXk5+4A48SXDmRyEu7s4OWRWHDSMhWfQ7FAzeNn3Ec44DYEaEO
qMp6mSvFhSrMWjJ0jedVk461IlxE5+xJjtYcfDiy.DlnYZPfaSi3KOua0wsa
4kOacIpPvgbNfFkINpWBHJgzwfRoV4jYjbcYF+5LyLfQTiakFlAvEy.QmQlw
fAOOjmIq4EdOhIDDC6DyfwbFrDLiAMxytmubSo3PCLtOsrHcO+za9Y3Wdi5B
i5WkwLxbKe.EEaFPFfCzF17PZoB4j7xuxKRWYo6FQPNeGuvtn+oBmURsf63k
mHYWKxEk0h.M.AKYIrnDl9JPTDJQqL1AG1vWK1v2q9qKf5WKL8d9lulJkkYq
NJ4ubUUM2ul8q4v4G4hsMS2LeWhKWTrykT3jGt5NQo70OceOZi.hzy8xJtOq
JqgmZuuQYp4K+3k4PIWk7wl.0W4oq49zppVkBRLgaXt2AJ5p5fUuu74zAKiY
zugr3I3eEiu77h8O9s.E+X4+9vvac484asN1BycdYjqQnEETx9NO3uA8JcWu
QUTBxjGRjS5NdFio7fxU3VQ49m6m7hGU81wEMaV0ewVZ2ok07r0Q5u7odYQQ
dgEsVreOWs84yUMdRbrLnRbrXS0IAulbZa3DvRrJWbFQa1Sr4has9ACrUSvL
ZBLDc9y+bvNtLPdWVUPpL3No7vO8wO9vCOrTdGWMY0RQ4tO1rr7rBUf3iExt
5nSlkfX0Ivg5vMv394FWgjPlsBSDkXnXLynF3tvD3nqTkIdyZ30TEAYLqwwN
ybfc4EmkCSU+fkWKNos7ZvHadCDmTMdFK13.T8e+YyVneizcUlZat4iP8jk5
skiIljjHNSUBcEpu1rQ4pjjsx5oP3yYNh7uuIc8yuYCUM9qywmXb+ZiBq+rW
7OZtywcWZVwyCljq4tClkaSLeUtKUpnYoxLQQGBMlZnPBvDYoNZa2saLjzeQ
2qd81bZWuJCuGZvWv3JLTipBLlYGM.GOdJ4TKJyZH3Ay.FcYx.9LQzXo.2Ud
2aNvfdt2dEYou2GRzBw9tepQQKt26lUjIyzF0ZgQmcacxCcT8Pspyj2eZ1tZ
9Czz7mld+.M89wys9oarIZrM8amaz.Qt7tnuXMKHAa2boci2t6U.5J1qf+v0
pf3Xa0ZrcQcrNEPul0tYtaT.MNty9ag.mavEFcUYEybaBRrVPsrBm65ERthc
Ivzj.+5ZMNB2I6Mpyx4.wW8VD369CDQMo4EaZPxH0vA9W8GXnJ9+WMG3T8o5
Dnc2b.10zo5b2ZfHpM3pMF6HgZoW4NCLCNTqilPcFL4Jz988GykYqEE2Kxum
+r4jZ8cdo3MpG7pLKmREFpqLp6St2blgtxZ+oUok+.wPF8LnXIw51saE8H1.
0.8xKzq1pIcsz9ejKTwjFniP32RgDlxouvHuqaO.voXGMQw9F91TkFb3Ig6T
u.ETcDqaUZU1ZoJmXMJqB8PZxqNbqHOW7vtbwpzbIe+AQ2b1C0sWJsPEutTS
V0Umn8tMAjsu9lXc5hYrKSwjx4E6j2U2ujXjtYQ.LCDq3cJKv+aUKy6kkzhA
PcaTz+i17HGxTL3APj+2wT09CepGbQlo1RorjqVac8BB9xrTDfYnSi0Y4hRL
EXxciFgr+L2nw2xlTQdsQiFHXZL1YGHbCVpm+T9Vk3X45F5u9jnFzcirURkd
diB7maOWmM5kuRxLY3LE.w7AfPS.PmhL6y1bPnhfT03WjXDjXhov0LJqcjOv
M7X3VhajyZtgiwlizAhZ91LzGXGZDrSeH7bgcwzVzYgcHviXGbDrSeF4bgcQ
VzIBUGwyTWAyv2K1gmfVWhOTuiUuj3wXCw9.RzI.InWLYYSf4gPd.RSQGJx9
Lua3.l.bd2zCXJbNenMffSERuad2TDRmYuclgdR8g6vd5hiiQVyb561IDZJt
HgDm3Vr0oio0RlQf5Q9.2FM3RjSbKA1hMpTiShZwTefaio8fciaXVqy5Epcb
A8kqazTbci7wdfPjKkag3IXBg7hit3ov77AMMIojOfyTboh8g5.dJtTwdgll
j4mSWpLl8mnAstyb.P6v2Kxgmh+deDC6LGLCnC4iczfmhYAzKhV5TDsdglXW
HuWD3ExTeRpC.OAnQcGC8.fnSwTh5A.MEcAmYJFwfVGH1eNkLT6nSvLa8MRO
b3ddYU8q2fTg6S+lsGcIKLCyJrCM0HMrjqaTk84MUPILsb8cYR9Z4wRaYTdj
ZO5SlxDVVbLqtmVJ1ws0ka4rZpzVpl8OYqFigzZK44Ibr11Hp6YlB24sGGnE
c9naSDWsqm1Np9WBo4JF77UrMKOucUcKnZSUtB2UltI6kid8Mgc.BXIhAfrX
86GCXT.wdkZpSgT8pfMKiFAAllgRIHDwdEF.Hn9VEpCEcxGu7boE6r01B04.
WEdnTbPT1VL0kXV6yeTJZIL88pKYZMeYqnnsWmJcw+knHcsHrQuZQshdoZwc
JplcZS2WZdkcMLZk81J3+e35xR2763teU.MZnK6ZyO7ykfHF.PaEeoqWyKjm
HOnnHXhlclPUgVssalEQZZ2rWHfGzlAA6EEhpCsMW0WJwmPMPJkhzODhRg0J
WQPLF5PwWooSQLB11zcZTTh8JDBh9Cg1+TrLOUyWIVgpjnLhSJJIFaVlR.qH
zqigfCEvIYYGxy46OeoIT.CZIM..Ao12BFFS+g0dUq42u8+y7UVME
———–end_max5_patcher———–
</code></pre>

At this point I wanted to get wild, so I decided to use the signal of a gong as my third IR. The results were loud and completely mangled the original signal.

<pre><code>
———-begin_max5_patcher———-
2332.3oc6arsiihi84p9JPn8oUoS6a.1ilG1G1WFoY0J0uspUqVjDmTzKAmE
bpK8no91WeAnHo.CUWljQiltUkfMXN2OGeNGme61aBWIdjWEF7SAeN3la9sa
u4FyT5Itod7Mg6SebcdZk4wB2yqpR2wCWXumj+nzLu3.unYxhi6EGk4boYIv
5YsSIe5.2BuvvfuTeqCox02kUr6qk70R6cIIKAKBRv5OwlqQnkf1UjswB0Ue
6CDXG3lUz.VT8jUxmxMPLLTOwue6s5OVLQxsf+fBFuhZKCp3RjOoWDirLgwX
TplRAZBl.cQ1XZujMvKj8PRYEUGfBfA+xmPe3WWDXGhLC+zrwMhhz7AXjSs.
L6xqErgmm9TPD.7FI8UoE6bR9LpQA.SSVFsHHF6hvuBZ+UNz9AiRUDHSSUDm
TEoWpBNmTkLXk5+4A48SXDmRyEu7s4OWRWHDSMhWfQ7FAzeNn3Ec44DYEaEO
qMp6mSvFhSrMWjJ0jedVk461IlxE5+xJjtYcfDiy.DlnYZPfaSi3KOua0wsa
4kOacIpPvgbNfFkINpWBHJgzwfRoV4jYjbcYF+5LyLfQTiakFlAvEy.QmQlw
fAOOjmIq4EdOhIDDC6DyfwbFrDLiAMxytmubSo3PCLtOsrHcO+za9Y3Wdi5B
i5WkwLxbKe.EEaFPFfCzF17PZoB4j7xuxKRWYo6FQPNeGuvtn+oBmURsf63k
mHYWKxEk0h.M.AKYIrnDl9JPTDJQqL1AG1vWK1v2q9qKf5WKL8d9lulJkkYq
NJ4ubUUM2ul8q4v4G4hsMS2LeWhKWTrykT3jGt5NQo70OceOZi.hzy8xJtOq
JqgmZuuQYp4K+3k4PIWk7wl.0W4oq49zppVkBRLgaXt2AJ5p5fUuu74zAKiY
zugr3I3eEiu77h8O9s.E+X4+9vvac484asN1BycdYjqQnEETx9NO3uA8JcWu
QUTBxjGRjS5NdFio7fxU3VQ49m6m7hGU81wEMaV0ewVZ2ok07r0Q5u7odYQQ
dgEsVreOWs84yUMdRbrLnRbrXS0IAulbZa3DvRrJWbFQa1Sr4has9ACrUSvL
ZBLDc9y+bvNtLPdWVUPpL3No7vO8wO9vCOrTdGWMY0RQ4tO1rr7rBUf3iExt
5nSlkfX0Ivg5vMv394FWgjPlsBSDkXnXLynF3tvD3nqTkIdyZ30TEAYLqwwN
ybfc4EmkCSU+fkWKNos7ZvHadCDmTMdFK13.T8e+YyVneizcUlZat4iP8jk5
skiIljjHNSUBcEpu1rQ4pjjsx5oP3yYNh7uuIc8yuYCUM9qywmXb+ZiBq+rW
7OZtywcWZVwyCljq4tClkaSLeUtKUpnYoxLQQGBMlZnPBvDYoNZa2saLjzeQ
2qd81bZWuJCuGZvWv3JLTipBLlYGM.GOdJ4TKJyZH3Ay.FcYx.9LQzXo.2Ud
2aNvfdt2dEYou2GRzBw9tepQQKt26lUjIyzF0ZgQmcacxCcT8Pspyj2eZ1tZ
9Czz7mld+.M89wys9oarIZrM8amaz.Qt7tnuXMKHAa2boci2t6U.5J1qf+v0
pf3Xa0ZrcQcrNEPul0tYtaT.MNty9ag.mavEFcUYEybaBRrVPsrBm65ERthc
Ivzj.+5ZMNB2I6Mpyx4.wW8VD369CDQMo4EaZPxH0vA9W8GXnJ9+WMG3T8o5
Dnc2b.10zo5b2ZfHpM3pMF6HgZoW4NCLCNTqilPcFL4Jz988GykYqEE2Kxum
+r4jZ8cdo3MpG7pLKmREFpqLp6St2blgtxZ+oUok+.wPF8LnXIw51saE8H1.
0.8xKzq1pIcsz9ejKTwjFniP32RgDlxouvHuqaO.voXGMQw9F91TkFb3Ig6T
u.ETcDqaUZU1ZoJmXMJqB8PZxqNbqHOW7vtbwpzbIe+AQ2b1C0sWJsPEutTS
V0Umn8tMAjsu9lXc5hYrKSwjx4E6j2U2ujHBfsLBfYfXEuSYA9eqZYdurjVL
.paih9ezlG4PlhAO.h7+Nlp1e3S8fKxL0VJkkb0ZqqWPvWlkh.LCcZrNKWTh
o.StazHj8m4FM9V1jJxqMZz.ASiwN6.gavR87mx2pDGKW2P+0mD0ftajsRpz
yaTf+b645rQu7URlICmo.HlO.DZB.5TjYe1lCBUDjpF+hDifDSLEtlQYsi7A
tgGC2RbibVyMbL1bjNPTy2lg9.6Pifc5CgmKrKl1hNKrCAdD6fifc5yHmKrK
xhNQn5Hdl5JXF9dwN7Dz5R7g5cr5kDOFaH1GPhNAHA8hIKaBLODxCPZJ5PQ1
m4cCGvDfy6ld.Sgy4CsADbpP5cy6lhP5L6syLzSpObG1SWbbLxZlSe2NgPSw
EIj3D2hsNcLsVxLBTOxG31nAWhbhaIvVrQkZbRTKl5CbaLsGrabCyZcVuPsi
KnubcilhqajO1CDhbobKDOASHjWbzEOElmOnoIIk7AblhKUrOTGvSwkJ1Kzz
jL+b5Rkwr+DMn0clC.ZG9dQN7T726iXXm4fY.cHeriF7TLKfdQzRmhn0KzD6
B48h.uPl5SRc.3I.Mp6XnG.DcJlRTO.nonK3LSwHFz5.w9yojgZGcBlYquQ5
gC2yKqpe8FjJbe52r8nKYgYXVgcnoFogkbciprOuoBJgokquKSxWKOVZKixi
T6QexTlvxhiY08zRwNtstbKmUSk1R0r+Ia0XLjVaIOOgi01FQcOyT3Nu83.s
nyGcah3pc8z1Q0+RHMWwfmuhsY44sqpaAUapxU3txzMYubzquIrCP.KQL.jE
qe+X.iBH1qTScJjpWErYYzHHvzLTJAgH1qv..A02pPcnnS93kmKsXms1VnNG
3pvCkhChx1hotDyZe9iRQKgouWcISq4KaEEs85ToK9uDEoqEgM5UKpUzKUKt
SQ0rSa59RyqrqgQqr2VA++CWWV5leG28qBnQCcYWa9getDDw..Zq3Kc8Zdg7
D4AEEASzryDpJzpscyrHRS6l8BA7f1LHXunPTcns4p9RI9DpARoTj9gPTJrV
4JBhwPGJ9JMcJhQv1ltSihRrWgPPzeHz9mhk4oZ9JwJTkDkQbRQIwXyxTBXE
gdcLDbn.NIK6PdNe+4KMgBXPKoA.HH09VvvX5Or1qZM+9s+e.MxQ0Z.
———–end_max5_patcher———–
</code></pre>

At this point the original signal was pretty incomprehensible. I decided to use the original signal as my fourth IR to see if I could try and restore a bit of the original dynamics.

<pre><code>
———-begin_max5_patcher———-
2333.3oc6arsiihi84p9JPn8oUoS6a.1ilG1G1WFoY0J0uspUqVjDmTzKAmE
bpK8no91WeAnHo.CUWljQiltUkfMXN2OGeNGme61aBWIdjWEF7SAeN3la9sa
u4FyT5Itod7Mg6SebcdZk4wB2yqpR2wCWXumj+nzLu3.unYxhi6EGk4boYIv
5YsSIe5.2BuvvfuTeqCox02kUr6qk70R6cIIKAKBRv5OwlqQnkf1UjswB0Ue
6CDXG3lUz.VT8jUxmxMPLLTOwue6s5OVLQxsf+fBFuhZKCp3RjOoWDirLgwX
TplRAZBl.cQ1XZujMvKj8PRYEUGfBfA+xmPe3WWDXGhLC+zrwMhhz7AXjSs.
L6xqErgmm9TPD.7FI8UoE6bR9LpQA.SSVFsHHF6hvuBZ+UNz9AiRUDHSSUDm
TEoWpBNmTkLXk5+4A48SXDmRyEu7s4OWRWHDSMhWfQ7FAzeNn3Ec44DYEaEO
qMp6mSvFhSrMWjJ0jedVk461IlxE5+xJjtYcfDiy.DlnYZPfaSi3KOua0wsa
4kOacIpPvgbNfFkINpWBHJgzwfRoV4jYjbcYF+5LyLfQTiakFlAvEy.QmQlw
fAOOjmIq4EdOhIDDC6DyfwbFrDLiAMxytmubSo3PCLtOsrHcO+za9Y3Wdi5B
i5WkwLxbKe.EEaFPFfCzF17PZoB4j7xuxKRWYo6FQPNeGuvtn+oBmURsf63k
mHYWKxEk0h.M.AKYIrnDl9JPTDJQqL1AG1vWK1v2q9qKf5WKL8d9lulJkkYq
NJ4ubUUM2ul8q4v4G4hsMS2LeWhKWTrykT3jGt5NQo70OceOZi.hzy8xJtOq
JqgmZuuQYp4K+3k4PIWk7wl.0W4oq49zppVkBRLgaXt2AJ5p5fUuu74zAKiY
zugr3I3eEiu77h8O9s.E+X4+9vvac484asN1BycdYjqQnEETx9NO3uA8JcWu
QUTBxjGRjS5NdFio7fxU3VQ49m6m7hGU81wEMaV0ewVZ2ok07r0Q5u7odYQQ
dgEsVreOWs84yUMdRbrLnRbrXS0IAulbZa3DvRrJWbFQa1Sr4has9ACrUSvL
ZBLDc9y+bvNtLPdWVUPpL3No7vO8wO9vCOrTdGWMY0RQ4tO1rr7rBUf3iExt
5nSlkfX0Ivg5vMv394FWgjPlsBSDkXnXLynF3tvD3nqTkIdyZ30TEAYLqwwN
ybfc4EmkCSU+fkWKNos7ZvHadCDmTMdFK13.T8e+YyVneizcUlZat4iP8jk5
skiIljjHNSUBcEpu1rQ4pjjsx5oP3yYNh7uuIc8yuYCUM9qywmXb+ZiBq+rW
7OZtywcWZVwyCljq4tClkaSLeUtKUpnYoxLQQGBMlZnPBvDYoNZa2saLjzeQ
2qd81bZWuJCuGZvWv3JLTipBLlYGM.GOdJ4TKJyZH3Ay.FcYx.9LQzXo.2Ud
2aNvfdt2dEYou2GRzBw9tepQQKt26lUjIyzF0ZgQmcacxCcT8Pspyj2eZ1tZ
9Czz7mld+.M89wys9oarIZrM8amaz.Qt7tnuXMKHAa2boci2t6U.5J1qf+v0
pf3Xa0ZrcQcrNEPul0tYtaT.MNty9ag.mavEFcUYEybaBRrVPsrBm65ERthc
Ivzj.+5ZMNB2I6Mpyx4.wW8VD369CDQMo4EaZPxH0vA9W8GXnJ9+WMG3T8o5
Dnc2b.10zo5b2ZfHpM3pMF6HgZoW4NCLCNTqilPcFL4Jz988GykYqEE2Kxum
+r4jZ8cdo3MpG7pLKmREFpqLp6St2blgtxZ+oUok+.wPF8LnXIw51saE8H1.
0.8xKzq1pIcsz9ejKTwjFniP32RgDlxouvHuqaO.voXGMQw9F91TkFb3Ig6T
u.ETcDqaUZU1ZoJmXMJqB8PZxqNbqHOW7vtbwpzbIe+AQ2b1C0sWJsPEutTS
V0Umn8tMAjsu9lXc5hYrKSwjx4E6j2U2ujnD09sgwDPLRw6TVf+2pVl2KKoE
Cf51nn9GLp4QNjoXvCfH+uiop8G9TO3hLSskRYIWs155ED7kYoH.yPmFqyxE
kXJvj6FMBY+YtQiukMoh7ZiFMPvzXryNP3FrTO+o7sJwwx0Mze8IQMn6FYqj
J87FE3O2dtNazKekjYxvYJ.h4C.gl.fNEY1ms4fPEAopwuHwHHwDSgqYTV6H
efa3wvsD2Hm0bCGiMGoCD07sYnOvNzHXm9P34B6hosnyB6PfGwN3HXm9Lx4B
6hrnSDpNhmotBlguWrCOAstDendGqdIwiwFh8AjnS.RPuXxxl.yCg7.jlhNT
j8Yd2vALA37toGvT3b9Pa.AmJjd27toHjNyd6LC8j5C2g8zEGGirl4z2sSHz
TbQBINwsXqSGSqkLi.0i7AtMZvkHm3VBrEaToFmD0ho9.2FS6A6F2vrVm0KT
63B5KW2no35F4i8.gHWJ2BwSvDB4EGcwSg44CZZRRIe.mo3RE6C0A7Tboh8B
MMIyOmtTYL6OQCZcm4.f1guWjCOE+89HF1YNXFPGxG6nAOEyBnWDszoHZ8BM
wtPduHvKjo9jTG.dBPi5NF5A.QmhoD0C.ZJ5BNyTLhAsNPr+bJYn1QmfY15a
jd3v87xp5WuAoB2m9MaO5RVXFlUXGZpQZXIW2nJ6yapfRXZ456xj70xik1xn
7H0dzmLkIrr3XVcOsTriaqK2xY0TosTM6exVMFCo0VxyS3XssQT2yLEtyaON
PK57Q2lHtZWOscT8uDRyUL34qXaVdd6p5VP0lpbEtqLcS1KG85aB6.DvRDC.
Yw52OFvn.h8J0TmBo5UAaVFMBBLMCkRPHh8JL.PP8sJTGJ5jOd44RK1YqsEp
yAtJ7Po3fnrsXpKwr1m+nTzRX56UWxzZ9xVQQauNU5h+KQQ5ZQXid0hZE8R0
h6TTM6zltuz7J6ZXzJ6sUv++v0kkt42wc+p.ZzPW10le3mKAQL.f1J9RWulW
HOQdPQQvDM6LgpBsZa2LKhzztYuP.OnMCB1KJDUGZatpuThOgZfTJEoeHDkB
qUthfXLzghuRSmhXDrso6znnD6UHDD8GBs+oXYdpluRrBUIQYDmTTRL1rLk.
VQnWGCAGJfSxxNjmy2e9RSn.FzRZ..BRsuELLl9Cq8pVyue6+GznpUqA
———–end_max5_patcher———–
</code></pre>

The signal is certainly a bit less aggressive afterwards. Overall pretty pleased with how it turned out

Here’s the link to my IR’s (excluding the original signal, which is already further up the post):

For this assignment I did my best to create a layered noisy guitar drone sound by messing with signal delay timings, ramps and reverb. I approached the creation much like I would on a synth. A lot of values are fairly arbitrary and worked out through trial and error, and the end result is a little more irregular than I would have hoped, but I think it’s an interesting sound nontheless.

Raw is as follows:

<pre><code>
----------begin_max5_patcher----------
2094.3oc6cssjihiD8YWeED73r0TA5FWlm186X1MbfAYWZZrvKHWc06DS8su
5BPA1F2xXrcMQnGZ6nk.xLOJyTR4Aq5OeZg+px2o09d+l2u6sXwe9zhE5lTM
rn4+uvea56YEo05Kymue6JZk+yltj+ux8hBpP2Iro0cohrWY7MKqnYByCGiv
uD7rGNNQ8EIP8ID9Rf2+o4dLOFwO1QM2fu+yd9qR4a76tDVtVCJW8G+J.62I
qpzsTAsZIkmtpPe2AM8UK9goA+d5Ki2pt.Ua+0SOo93YKM+sz55zMz1mmf9t
1.8gAAdx+EbZfALNv.SfZDAn9LDXAtbR7.3amMCmQalfHdXxDrY.H5kHxydI
QWkQiug1Lm9coHNxjKXb5GdPxKWb..HLVYlfD8WjvetMWy1vSKNaX.L9QAAA
WNB.AuPT1L11L.1..Q2e.PjtSppe3AlR3NNQa3jHj5qXf0nvIs9P+aWltwsd
F+C432jMcr9qPKb.jxJqjy0OgSY9j6u4WkxyK2NEyGEpGxQPcB.S1fya9L9o
sa.596zW9FsJuh8lLzO7xmiCqC8kSUnL5nnqxoGb+M90Uz+a8qr0pfdPvku1
GLzLxqy7EitjLemAHHwOvbenID+C0v.FPzdA3qxKf.eXo9hlhoSTA.nn4J0G
A8PLe8XObJqxknW2eC.bki83jG1XexDLcyT8PyB+liw9fG3XObBq1O.Oii83
G1XOXJ6zIHRG3Cz9.gQW8fO9AD3mIm6ekZrexS7SLl+UNz+.l4emWcQ42WlJ
DoYeaYsbqOW959BLK0Ca1+G.dUf.x5be80HZUio2X6K7WyJnxg0ZVIu2UuvO
c2tdMun2sn.r+nT+fhdtqIF2zDpqoJ5ar16mz0ZZkDWDRPYekQoeOtccjpGS
YNshum043pG5dp8A1BklIQZxmDZ1GANN3SnTNJuonL6az7dkARBv6nbFeWEs
lxEohFkqq6b55z8EhkqK4hZ1+Sqe5goSz+5zL5n2LOcqw39WUL0x2ZtjMUr7
RtRIF.0plaEmLSgdUQpO+zXzWAWl583aV5KHgkQ5rVZj6qWkVoFIZpIFrsSQ
YYwvt5tuB5ZQS2xLd7CPQQ4tw6rhs40ybuqJkct8bOacO0K2yM8tTFYJVVm9
1PzVjVTzDpN7w+dJmsMUPELyPfbQJscZpK3q0YUkEECrWSOuchdxkNwYzuyx
EupETemA4ky105D42MJmy1PqECaSjtodXKGE0JaZ+plfzkB51cERqX3ELnFs
8iH6mTaP6GjbyjfoKb6nrWA854DYvRRLqaWWyJTP6mc9oiTVtQr2wxTo6Hqb
6VJWbzMv34z26kcnI+dShhIBKZUXbTAbdTIzT2VxY.kwKi4Qo0uPLK3QgYsB
qmb5lrLmsdMsR1qGiKSAwyn0dkq8x9QVA0aEUBedBYdhMxqI2S5tS89NS7pW
8NZFaMKyKc6NOJ+MZgLg1+l2WDpZNlUt2Xjno5GiA5IN.wMoZ09y3nw8jQfK
0UdFQ5AqHYHP+OlrSK.o8ZAl0hCSLUj8m411uPTGUDtjKDif2GLJuZO+axPx
.utxDNc3BMR0Zm.bEcgvE59.WaohpRMCVd+yzLA6MpGXxvlo39.S49.vX6fs
AE4+HbC+0zM6W9X5NWwHydCCujXwC1avQ3D7AhSCIJbHPo7DdQEOFn9FqBLC
dwCF1UMiKG.Ql5pBZb2HVFdNN1A9Z5ioYbabTBZEJAAl0nDZGHMB2aGUL9vu
lPVVAa2Gd+J3JRhEYJYqolMGW1tIEcBHeMy9WTJ2arhTufq.vZptkgdmiI4Y
Zoy9ZhW5kz9gWb7zSd07F.XR9GFOOtWyPv3mUePk1YjscpsGU+mFFqK2Wk0p
ysyd6Mz1j6iVv3cEi42+LE7AWXYUto7UAVM1d6TsnwUMvMQ0P1pYMlvsAeRr
TK.2RkHxVnH4VpEPagBxsTK.1pEg2Rsv1AD3MTIZsP6zBvsRKHVpE2xvTacJ
Fe3now15t6qp8Z9RSclUDfTwVsWXlPnOQBWT8P2TTtJsnoZmcUK+bEG8yJn9
zm56WFtc.wgyI2NwNtcbb6331wwsiiaGG2NNtcbb6331wwsybwsCf331wwsy
MjaG.DSTeSLT674qK4UvrCvDhF4X1wwriiYGGyN2KlcvPGyNNlcbL63X1wwr
iiYGGyN+8hYmeQc9DfPS8mqD1T3Obx0wlSzeK+4JQvyIiVXGiVNFsbLZ4Xzx
wnkiQKGiVNFsbLZ4XzZ190JEQbLZ4Xz5VxnEQ+qURcRuIWUEQGfFLOLaY71h
wNlsbLa4X1xwr0ciYKriYKGyVNlsbLa4X1xwrkiYqunLaIJ2roXBr2.Mk8zb
VCCwsed4GxvPzC5D1eh+AFHxrWArwxu5+.Cj7nr9SSrWdZ1GmFRBNiyPhtzg
gPytnN9vmrm8dKOKg2jx3ebwCnMGQ5njtc+ISGhCr6XSdLu5nuVCqRqkpOSs
klxt8hKNbOrIb2PtXB5pHq8AbXxWS44m23CNGa8lSSYjlvm3fy4dOkSJd8yY
3NJLl5gyy0XvGO+1fkoO1ja8VwyQfpsRBCrPRjYPP1HGLXFDj5urE+bIkLGl
jM1Tq5bc1TjM1DdN7GrwjhlAAEYVi5YETxLImelAEOPWFtE7apfgCVL8A6vd
xRNzBIOGCgDahzHn4PRHajDbNjDzBIglEzK3dkmBmburIL9tIIz8JiHxFziL
GY4QVEOELGRxljSywjwHabHvyQJBXnkI5uZAQtWqMChtSIxASL8pYctG7pTp
DxAuBkG75Sd7qN43u1jG9JSJk7e8z+G.4ZGKe
-----------end_max5_patcher-----------
</code></pre>

I had trouble actually exporting to Soundcloud…Hopefully that is not an issue. :/

Assignment 2 — Delay Party!

I have created a patch which can work with any audio file or a live input, but this patch is set up for a stereo environment. The left channel goes into 4 state variable filters: a low pass at 250Hz, a bandpass at 1k, a bandpass at 4k, and a high pass at 8k. The output of these filters goes into live.gain~ objects where the amplitude level at any moment is sent into a sub-patcher that slides the amplitude and then scales it to get to a delay time. Through early iterations, I found that while the sound file is playing, the majority of the file is spent between -30 and -10dB, so that is what I based the scale object on; however, also due to this I would get negative delay times, so I have it take the absolute value of the output of the scale object. This is then sent into a line~ object that smooths it over 50ms. The only difference between the left and right channels of audio is that for the left channel -30dB will give you a delay time of 10ms and -10dB will give you a delay of 1000ms. For the right channel, -30dB will give you 1000ms of delay while -10dB will give you 10ms.