Author Archives: mingyuay@andrew.cmu.edu

Project2-Mingyuan Yu

In the movie Hobbits, there is a scene about the hero face a dragon. In my point of view, the dragon’s voice wasn’t sounds nicely because it did not have much reverb on its voice, which does not make sense because the scene happen in a city in a huge close environment and it should have lots of reverb. Also, I want to add some spatial effect on its voice, so the sound and video can be more interactive. In this project, I extract the voice track from movie Hobbits, split it into two parts – main voice and others. Then I use leap motion controller to control the sound image position for the dragon voice. Finally, I add a reverb to the dragon’s voice.

 

 

 

 

<pre><code>
----------begin_max5_patcher----------
5525.3oc6cs9iiiib+y87WgfvhfjfdbDeIJkOcI.AAAHKtf69RtawgFpskcq
cjk7JK28z6ga+aOTj5s0CRZI0pu3Y2w1iDEUweUwGUwpJ9W+xClOG+c+ylF+
qF+jwCO7W+xCOvuT1EdH+e+f4QuuuMz6LuXlaiOdzOJ07Qw8R8+dJ+5NaLhi
L7h1YDueewcOk3elUXuzf3nmR72lJdS.nKdCDgfT6GM.T2MVruHVYeAYeZ7W
xe7youG5yq8hJL5xwfnP+TNs.JdKdoaeIH5P82.B5vqULnuJuNsUu1B1weiw
O+yekZU68FeIs3Eakcw+1W9R1GOdi3FZiw1W7hN3a3cYWPrA60b5RpAqM8hQ
bxN+jhmHLHxea7kH9iA6BfGuDU.DAH.FfyFRI9fPSB36hHY0FE0WUKAzaSme
nmrw32exOx3LCy1MhHKlIHQssoPLSLx0pVKahjXcnbPy1F1WcKCpQleTCuw3
repQZrwev+vkPujwPNjnE45L8cycrIan4iiPnV2PWcav7ibPisg9dI+CI9d6
xD5R15O1.kXHuwXaO8XGAQ4cLgna.1vNyOrQYyrj0M8fW5n3kkCqaJIqcLGS
p3.ghZGBuELyd9wL6MF+G6BRMR7e0O44QPMWK9POPHYFvLLkK6h.2RuSLd9g
LvFi+qnrodeMXme7HPFULXlEbFPLQcSuEQLj6zgWG8Oe16f+0hXTG.DgIifT
11BnBh4SugERZChTBBN88S9hpvzrrvM.Q3.fnkKG+Dqsri2pLfXOSlBz.Di7
eiUkWggmBh91uYJOPbN3PjWXOvwPxTPHnbhRjMueN15JPoViGLcs8SgduGFb
NUiF5ic+qr+tKXaFuyK4c0gCWlLYAZ.o0m+CY0Mbf5FNH4WcmWpWNBjCAOXt
ML3TolU0tA6V6CB8i7NJvfyGiOr4MuWyeCE2+aAQhWOWsfrqTq.gwwm38mqt
z13nTl.8SmSyllLmVp+VYnbRvg.FDxd4GRe4XNwUqEyK0ubwKLH88bFwydmC
1Z1n.7KkdIhgoEqMtYMbJfg3aiSx.77tWrWSihbLdme+ugLIltdplMfRxmIM
jFr8amaVImO46uKW7eSGD34WB1m1882GGFF+1gv3m8BS8OdJtKhIMfMxXZhO
qp5516iSN5E0yKnngTqxAv1LhygWRxdIcylxq+Nf4hxv6lJ9Q9EEWYZF5Zm2
1A5PK83z..eDZDQ7EcnwjnSn1M8zp94fzMuw54E+lBCV8LS8c9vRpOtrPoHr
vXE1nAa88rFH3DNm99D1nRFVly5TyX7F9Jz4sYBXn1rs6zMMTes4yorwRm20
hHV5qaogPFnACWhFrWR5r1hwBEIb3K6BgGpASPy9hr9ki9oIwFPiemGafxW8
M.p12VY.HWSJjXou.xPH.dAjwyr3vHqS2QnuATnsFmvgnYeY5BQDW2ddo6YK
p4bvuxeAfrNNxu38R6GlUGkK15eKIHaIjyrDW1rHGieMv2328ZbnRimxdzmN
5klD7c8lQQz0C5xYitCK3AmtIT5AHB88N80cr096EssxR1irbAqQsYET7ki8
fZv.lecfsFydTnbsrDliB5xm4a909MeUU.GqddsxXQz4ej4SF6814+0LC6MY
ZAODr3xfkL62gDF7xQz8.O9.N0fEXmiq7e6kF2CbUmdX8AZokXlhcu5mbtIe
3ASuSmpc4FZxwf1eNlWQzGKuTPj3RvxKk3+ZPwySJupWBCURYPxkDAk+carY
U0vTKKI5RPIelyj+RQEVZSG.rlMcfhct.jMJdoJJlOeXabnflxTdwwwFlA8c
8KPymKLd62DZtUndqYl8eChZKzVd6c968tDl9TCtm0lNu+dus989vcwOev7P
Rvt3nLZnAKJ6xEuMlvUtwSq2V3kHx6TGOLSThAm8byLc3ub9YujLN3yhtCEL
Vyz33vl2p74B82mle6SAQQs.Q15b6+lLEReYfm84X1MONTcyuy4mtDIt6Sr9
9oOc160lfcJS487ACZV8e2KJfMumegBuPqxa5G4wZnubdaBSs7FsWwcdsi6r
iI7u0+sfcByDzPVfU7fSExPlkb4cAGX5y27ZodGN27JWM7D6RWdNuy8SY5yG
la+kpBzXO1aZInpgMaYqlALYcywP+GEiF9Okuww0Ky0zZeqjnuQLEa6jvdgt
BM0t1VIcMhY6QMcMa8Hc1SqmIqaYLiGmSTLHZxAQfEe0JhkrftAPzYsCh.i3
DCKlnXz+RkSfzqyKLkxn0WOndfKcE.tMVlTSrUnSvuY.x9uMiKfNfE0yrEeS
SkpBbKTPDHVP6MMlfslHNbYP7vXucYq62Hw63IChkkFft9vb9Zqn3ZZkqINS
zDmASHN2TApVJQYXY7CfoEcgxHDay0NBKLRiqVXKdEfshpcZmyJuWdt51jhO
afPcr8XcM9Xs6TL4QWqaYBADdqbZkmrFo2JJ2rKxAWvADLFCtDKPYEfVszBW
YLKeLMIgLfFPVqkiz49hUp5DaAJ8rFcNsmc+tAybG4R.J4yq0Zu.Y5bjFD4U
sKcEcZZUtWB1syOpM1sK3blZN6je0FpRwDIoX6UCEi+zQwvOcTLPRJFOQTbU
mQ9HP8zarxT9Y9Ewejaojm9Q+nK0bOhbS5zc674C6CBCKMN0CWUB1RSxGkyT
TpGqcqFF0B5hA.mLSYgXSUBs4+h8CRlQspiH4OGn3AwDrqELq3XaHEysFF1A
hHnGauQ+4OJr5cZAbEuIKWGKr3WrKAdrsaF7foWzgbqGQspuDlLC.GeJNozR
ZaPtMdtKowGR71EjOVZI6pheUYXPtnUBqjcMwg4QFiHndcTyaDJL4q2q96dR
XQrm7RYJ577kTA+utoRUxxM8aMu9LRnvcOxsjS4iNjgeprNj9dWQXvq9aN3E
DUZ.7W8pd6We2d1ngbe2L+qbeYxolgsiSB5xd+R43UY+cOScnzqzdraSue9k
32JZBVR3NsXhvbxhPRnAYWWAcvv9fESFj8NS8SdRXVv5MSgDVon0.BYu5Edw
Od+0Fcup5CiiNzAG5mf+kJCoWUZFXjj1OCsQYK3CVcbuiLfN6desdO4F22iK
mY24cChBRC7BuFZ5pTW4NS0JxEVQJ6Jf+R8wDlRuK5cu8Ik6zRyMR..n17AL
yFnE6V+W.01Xsqj06VrlLn+6v6vgDFBwEowFJgsTbGklv8m8e92XnG0htHa9
lqHdCHzJcuUDpHXU27MMfJ1LeGBGOPCn7.mBhrK7O6Qc.7qfxfnTMbYLGjkH
HDHndd0Rr4tDxX6V40ClpyFmyIkTIi+.BoxYsANpgkEuHAp9X6KnNLSD9sNT
XAN6q8jhFhqYSjgoV1JvAJiBjmu7LCgqj76jwfqWyoOU3vw+TqYoXOzyhMYt
Z78pxxjZDqrmvGzKLfGdgEPF.RerrHPTWEIaf2xRfGsDjwJAHSamxdbkDRgO
rVpESGsOnxsOqwZcH5XsNf6nstIowglClG..Gs80nV59EkovyvMQqpln3WSj
21.lW2zrnGOoHvHX5iwzvant8fMDWBvg1g+mgFcppJsjAysi1jsWFBuTdJb7
QYF1TXWOac7vFDbMAcKsOJUnTzs3iR.q6NozcmT5tSJc2Ikt6jR2cRo6Nozc
mT5tSJc2Ikt6jR2cRo6NozmcmT5Vc6l++nqJU2Bv28So69ozc+T5teJcK9oz
c2WYrjo0N+sduavsSxX68mH1uE4Hgb6EOQIRKhH09fPvdp6grkuLagGUQyrN
koqrcA62ega5T4.XLeURU6Y7TBvhrrUG08MBvHqOP.9kfCuXrOw+Wt3Gs8ci
cLErBp1AkQP67jpnPxapgaBouJ+VEnc+.waNcKE5BoBWHgNGfqHOE1QceiXq
8RHKWrYsx3tEHgx64oXz5pV1daQn1D.k6lqPGKHJ2kScv1Tkc4J82QQDwtOx
UBzGhVF+cQIFfE3SECPj4hzkAfWeL.XdV77yBCHOEppICfrB6AHVTxmFFPdl
pWOF.XgX.i58LxjT9W5DViEa12xCDfaIq0Pf+8bhKE.x82ToRZoDq4MqkBum
1Rum1RWqosz9FFjmB9Ga5IRsrteG4jz4IoIJxEnHHnm2pLJLCl8b104sdg9L
1JS3H6++Z497dCnhc+nBkl6f87A7bGLiuAcWzV+W4Hvr15sID4a8Nye9Zy6a
YscqMypi3ZK1OYnPGbxfoDXHc5Zz6CiYURkV5rApRqyejow9ntNNKM+H9PjD
LICla1g8b.R.m3UR9gBH14.hX+uGAPrVF.omtEIFu3Es6Oe6cJFHXIoX6pLk
pHdI6MwWZO6CDHZw+uyZK1VzJcqaa49xjoKPRSluqSF.isdIo9mC7hL9AfwO
.GKtbEA8FTr4CEGmOy9ZIrEAQUgYn630JipTlKQXIv8dIn4jo+dGtOc2tAgv
74XQ7yIN6np66RxFnGDmwSzvyQ3Jb4XUNOvLfsh7yMTLgMt6iYevdl+fe4+J
H5+4Euy9lpFkh4ptpgBqEvrX.77TgtN3LpmN4nIdLd+es9IaPX7VuvFswdNN
8XqWmTZQQQRXFWyMQZFCytkAtrMOnAy9ENKtlaZLq1Qm.AYIRUDW+Kf7aBx.
Ca3x5FTbtnXK3XczTjYyNltsznvs0KSOBA9uwCqffB08KykA62mEwmUpWW2r
Hh30XWh2gJGwuX3gsgL0vSeII9xgWpe8q7o+l230quwyGJrPP4UDmgiRHAAo
0Nl7PB+MhuGeUc5JFb4kXuMu3GdhAsOg1vfqSdocxqoCcF3X09nyqyWpLV1j
N6mKGYsX3tMwmRCN9aFHihAxlJCyI0u5dzOpZS7z.2spyr0YTQkyx8zOgAUH
I+PBwgaQXhitf0GzL0YxtG8N0U9cIWrt1cG1hTBK.j6rL7u5ZBFw1JV+ipz.
SaNB2O6er02kE+WiiOJBMIBD5.fSvBuH1hEDHN575rozsKNY1JNsjZjIGU6e
f9PylLWIOLPpjY3xVvhQSSxfw7IgBPOUK+C7Denw7iwTC.+++JawMtXaHHa1
WWaLBwWciEO56s1.q+AW3zrQk.E0yFKKJhxyEVtNtNXUpBTqpfSQtXKjJUBV
zXtwZgjWtleb0U53Is09IoZ+jNZ+jtZ+j.K8eTf9OJT+GEo+ih0+Q0WRBnun
DPeYIf9BS.8klf5KMA0WZBpuzDTeoIn9RSP8klf5KMA0WZBpuzDTeoIj9RSH
8klP5KMgzWZBouzDReoIj9RSH8klP5KMgzWZBquzDVeoIr9RSX8klv5KMg0W
ZBquzDVeoIr9RSX8klH5KMQzWZhnuzDQeoIh9RSD8klH5KMQzWZhnuzDQeoI
a8klr0WZxVeoIa8klrUVZ5oCIwWNckhu7qVp2qIv.ZfL3gXVe5EV7Dh1so40
TwUEEIeQwxWTh7E0V9hRkunNxWTW4KZtxjxUVfBkUAFFPANFPAVFPAdFPAlF
PAtFPA1FPA9FTA9FTA9FTA9FTA9FTA9FTA9FTA9FTA9FTA9FTA9FRA9FRA9F
RkAHUfugTfugTfugTfugTfugTfugTfugUfugUfugUfugUYlME3aXE3aXE3aX
E3aXE3aXE3aDE3aDE3aDE3aDE3aDUVRhB7MhB7MhB7MhB7MhB7MaE3a1Jv2r
UfuYq.eydL9VmGL.AQ0S1iy1ACP0tdk4F.v0fC.LjC03hK2rerH9Ic0d6qc+
.2q+SF9m2NMaz+PNkGoV9ZH2oEQpk4awpBR+8XpuEIRKahTvLNOAhYMKIvV3
sj.aqyVtmAaumAa+fyfsyRNpyQDLK4Yg5QyeXNpmj5LWlTM4Y+PCHUirulvG
wtoLgn.Dyyze3qhEftNONrjHe10+fQeXIzyu4+tlI3tG65K8y5c4PtHmCPtJ
VrU.xA5B43kJS3IaNOy4SWNOCN4mMi0N9DKcxLyxyJvtJUqi9v7CUiFG8gtN
VH2qxw9spBkOBDutJtoZnyCSwFk35CUw4OSw8wj225KLo1eILjQ799QUYK2Y
JkQ.DyEvmLvgpitBPk0U3lONwlsSELglSTZOGIX0a1KTpP5mCR2b5sfncwuU
dRW4s8aYVYPjhH.CEzni.AwQBorwTnTDCwXgeSCbfaboTpsiHHGbrrwDmNCn
Tv3G8d7mq4rPBXo8X44fyvig2y32tMJyUice831WwjjkZPRPMvUE0jcJ2TcL
6NqjisLzCZwPGBbUQNtRPMzQnllSO2ZCzqp6IklARPy.Yo4FNNv7QyPInYnb
zL3JOdXlnYjDzLZkgyXInY7JCmIRPyjUFNaKAMauhvYGYlXxomA6.SN4PWWK
hfSNf0C4HCyZsMyDUBHDr1lZhJwTSf01bSTIlaBr1lbhJwjSf01rSTIlcBr1
ldhJwzSf017S1xrXb7xoHmTZNYuxnmrDm4RQOv0E+hHyBbP3EaANDaY3Wj0E
8.WazyJieAQqK5Arf7KxpxNaRQNfka3PBVlgCWP5AsxFdVloKrcWWzCYkYYz
Eb5conGvBhOVxXqVxJjdVFC8StEy6L8jCdksZdrLhyT75hdffkidjRbdgoGf
Lzyxz8RlY2gK2nyH55p6EWuJvMZQ7iA6NEGDkdtHCb5HbmZGwgcCzwp7j1fe
sYvHDHoTx1dwVzMRp8Kc4TJAAVWSy.kYZFHcwFl.5HK8rP3iLiSrbKZBJkN1
KmR.PhrJsAVjtWPoUhDtLzCRV5AsLziLqRAtfC+H6hl.qFxgrbqwE3LAawaq
EEPnfLG51VDLZNhyXgl+Kr3HZCXYUcpfwu1LrdAfTCnYubPtzCngWjNr.75x
JB.obOukacyfUlZofUlZfRQOiNjVmYXXo2JSg6x1JrIyH3VgKYqPk75vjr+P
jrc3Qx86dgKW2xEcqb16rSot+HON.e5GKOPEJhVwlvZMO8usG6WFHDh6V3o8
sh4.LfmBU1f.HJTD8ArejE56fpHNnUzRPvtVvVQKgCDQPMRu84Ol5QHQ2wzv
0wwPY4ujFWFrGkwJRQHD7XtTYB6ts8zcyiL.Mn3YpKEWxLN9t3gtQdvUAihd
g9QSFgCAXwOxFbvPn3vavAwlaD10SAGKObOc.eWGUD4cLcY+ghK9kay1GOjM
DQsRPTVWR+1dVwU8rqGkDrwL9w3Huswlhynual2KBIt+8vK9EwKV2B.da25G
k1fih.Tad94XicYuE2rKUzhmZBDt1IPzJl.+OyBaCk4wb4QBJ6OY+BX6XCoy
EwAWyDGZcRb+I+rydzg4q0CIqehGvnDWKqp.voCp2AR3onrMTGfCOoxydFR4
Idyz2.fe1a.nOgMf2xVOmww3n3ymxRbDquE.HyTpsWDlCaYdVbDygo8r3LKm
ggNP24cs.MZsr2mivekcb.4MVB.g.CdTS4xHRr37Wf5P3IQI1ufP.7VWDQWR
XRszJS+P+iseTpikKP.rVVPwpqcvH.OB+lkktvdl+1W9+.zvKaML
-----------end_max5_patcher-----------
</code></pre>
view raw project2 hosted with ❤ by GitHub

Project1_Mingyuan Yu

You can image this project act as a cell phone noise cancellation. It has two inputs which simulate two microphone inputs in a cell phone, one Mic pick up voice + environmental noise and the other Mic pick up pure environment noise. This app combines both amplitude cancelation as well as phase cancelation. It also provided a gate therefore the pure environment noise signal won’t be heard by the user. The following video demonstrated shows this app can separate noise and wanting signal pretty good in both musical environments, speech environment, street noise environment and pure white noise, as long as some condition fited. However, if those conditions don’t meet (ex: not playing simultaneously, phase no match), the app won’t perform very good noise cancellation.

 

<pre><code>
----------begin_max5_patcher----------
833.3oc2X1zaaCCCF9bJP+OXniatAhRxQ16v.1occ2GFFTcTabg+B1JsonX4
29rkb5R+HMZpIxs8RLrrb7KeHEIkt6zSlfNuZkrEE7kfeFLYxcciLQOV+HS1
LvDTgXUZtnUOQTZUQgrTgBGdnRtRoev2JpCpapRkssYkWd+yKWVjUlKU52F1
LZ1b86Tc9UmQIaO2pkpMSFuY3ZgJcQ2+4uajoJiZYSiBCXb7TbX.DouP59M3
WadmV0s4R82.oG4OmdR+0tKgudS8GKDsR2LVrKFKk1afTNabL2uKTxfKDopp
F6sTB2AKEh0lH835WKk2zovmZmed88iYzq51ZoQXn1rKKE4n+IjG..xy..XW
..dA.PYI8Q1Q3XsoqugPdmBfXG..Ig2a4iD.t3BUmNWG.H6sxDGhyI7Y8l2r
H8B6HcP+6V2bjKw4wZOKC3e.hyYt..p1xGI.TWkqpREM6mCgNQD5NHB4kHBG
z49AyRCreWSbrIBwAhP5Vj7wkHfKDQSBFlLF.4rCaVCrKUG01O0T1v2IM9zA
09SbOoIgG8929ic18OjVv60L52zyMMhZmwvysMAmZRlnaNbXyBlVo7YyCAzo
.ChRnGx3gYuBPXVVvi8KH955.7TxgjAtzIIjrUw.VjeQPW4QUUWgxiTMRlKs
QYhIRFkRjGYd3TakzwCGcamLqbc.4+fFgtjDcWMWR2+VPo5ZIL9n.F3XCFvA
v.XvUvXlCJOq7Impp9C0+fGgq1pkMoaL5g9hB15iMW11gJgJqpbqI0uAqsm0
hr4ykkO3TGlm0JNOWpYAd2NvCrt5ZpM.7pthsRWDuyqXq4ke0E253K+5GmYi
t3dGWQ1HqDuSKqjUr2kEyVZg8trf8IqYihr1Ksh7tSjZarE9smrhFEYAVU+A
dCpKv65hXiaj4c2HwFbw7Ns.6Ziv+oTAt0ByyDypRif+6j.rJcO3+DqfcoJ7
egHvpT9vHrpjXMwv9WX1QLOKLv5fev+BCrJcgmEF1JhA92UZitnihr.ajk6t
wgi2QTWesroc3e1nHTg3ppl964gl6yJM2aNpITi75rMuh4jpPhlzEYJYpZYi
43jVMa3.eQEUykMkKyzytaDsF594ublIaBK
-----------end_max5_patcher-----------
</code></pre>
view raw noiseCancel_f hosted with ❤ by GitHub
<pre><code>
----------begin_max5_patcher----------
1835.3oc6Zs0iahCE94oR8+.hmmlw1X.SeZW080ceoZeXUU0HODmLzEri.yb
oU67ae8Ef.YfLD5DR1tcjFtXNN9b974lO1e6su4B2aDOvJbcduymbt3huoZ4
BSa5VtntgKbynODmRKLD5xY2Kt4KtWV8MI6Aoo8MozGexoPTxW57KoBwFGXC
QhRYJSJebCyNVtEIq4zT2KcbugxW6574ZJ2jyJXbIUlH3Wmyhk1NfIvE9W53
A7W.tzATcYa23kYIb0PXXQXcqIKMblhceGh31hVK+XHF0LxTY7sI70sFUXHx
NpQ5ADhv5aHT6AtP9XpQnbcMs7Ou8M56paWNZDMiUTPWydNjFmxn4CChsfsU
BtrH4qlu.8TrYe3BpM0bZlku+07D8LQOPFX.HCtGHCaFc0M8UOCtg7lM.So8
rJ4AmO79q9yBVdwUJge8U+Fq3ukhMWwEIErSGZ5OAzzKBYz7LZ8HH93.mkYL
do6V1HWILRV90LN8F6ONXPTKgK0Vwl+ODywflwiVplbDaJSoRVGx6BSdM+JR
VVkKKkARRQQRLM8Zyj6h6o2o4jK0W9B8qesmlKRjREH6jvcj2xbxEhrteeCi
EeaOc7ixbFS9GOq86uUwQaIukqrAmOCA1YUu85OokKQkRsos8nXe0Ob9ef3I
XwDf+o6mdASxTbl6+io2G3+Kc9XmM+uhumBIMW5.bfA.P00QY7zuQR6I+fIX
I3CPVseK5ACONYBllbGawZZB+oFd7NZdi081O+Izm2qICbDYdu8I8+qRETiw
jRqVdH3IZ.3zeeIViCsNnM9owDCn5EzANo2wVdMUJyStoTx19TQE.VifZHJs
jIVU2dyGZCMoB959vQXCN1g7haE4xdnuWhqQWPeeLSAe5O9NigWuDPM5DA8+
4DdhT6S2fasWySGpJUT0n.hqHnRCb6CSQkLVjobPKGx.kVtLQrvs2PWpkrE4
CIg62u73heg8FPMCrG0LTfQ+Jz2nfEXth.yV5.EJGjGd.+8hZGXTe7TRgBoV
qcnZYuD6hs8LqAdFW0qQw59D9Rw8mXzaJKYCEXSwmXU8PGm.ECUDlkz3mbO9
.SvDLF8PFDIBDXpoRvoNBJ76OB59haphfbe8vBFclo3vAPV79PV+pL6BFLZZ
7sTNmk1cbmoPr3wDhMSQ5IK3ZOS6CGC9cQp+l6nvCVz0UqjO4XRB+CTdLK85
UpHbXhC5Eq85AjhGFNovHlELF3gGyBNd8yO4il7SLPiSrAaLEU1cz1hdSIki
PnonCVoE5CNNob7BBstT75kYpWioof7GfPClfPS7ClAgdvDFdkVXHJbBZ4gU
oXZCmEcbRUZPq+b1FFeoi5VJMlc3vPukl0aBvPjMnisTQQgyaRO2TtZEKuZu
mTWx2GTzDudmMd5kwE7D1AoJbILztARfSbROmM0L.NghFfgljow1rcNgEM3m
ULXuZiRw50oruiJ5dHUxMZBNqHDSfpPaAsatNS9r2tM4VWUeGaV9KCOgSYWu
wdlvXgVKr.v75M+04bD7xPCZBPSUYf8vdG0CDvrFueJY8fAfyk38GgH8SIPe
MhDXvBxAoXXoQEyf+ryhiYjzeXGbpJKGqfVqN6zZzVxJjIb6Jd1RkNtaaptM
Y4RFuiG4kIEZuzFz.L7T2nYL8AuYDL1ryWZWimi70nlGwmf4Q3nYL3rxX3ww
XgyuFVvnzvHy+TYP2Io9YrS.fMF1Ru7z4Fu.iZhLX9YL+yTFCNJm9yuSL8QJ
5rjuFkqB37aRhGiII7DnfEMJ.6kCemkrbiPsnypDuHQ1S7KtS0Ke0saCekRV
aGtOLDn4drcm1z2pe63IKiRTvyuh633qfyYFalyix+UBw1QoDEZTCIHSIx87
.Muc7TJw3ijrDAWflagAgOSCNrapXC3FCetFcHbhQGP5SRz3luqVZOcyl6X4
EUiukwcyneQjqe2dlLTCF29t8zl5lytKotK1xT3Ryi0G3yXYYtsTBODTUrB2
LwRVNuLwPspEMzoGZSYG1srBa218GskkvJKJfZEsLUtC919PgnvteWvowhVE
TQWXlXQpPW5YsXxZJ87kstzIJzMqMcnpfiVZz6qdHt9oH3y5xpjzzlt0oX90
U8wccNcYRqcF8B2ViCXAJB.iBzCgGHh.v1mTMsyfU0MXc+H9PPjlXBFgv1m7
..Lp2tgZIVctzhPJessZPn1U42cStXiHuVQUwbQa6QoTzHdMpZsqT+k0lI4J
Rd1g40MSMylzzytlVMJD1Zt8WrzTw8MmS58nWTe9hThKZAvOB.HamxnwwJNo
yL.A4CC03WHARfFUC+HereE97ZJJlyFsSlfKJ1rsZomHcbkRMAEg8Lp2gDe+
P6SHDbGkndQswo+4xRYY612PBHBZzzI..BRr+Ldv.xNctSufDBAoIEQHvJCE
enm24iU4n7Zz0hTI3PuPfQsifBC7rvhRVQQmiFnZ6A0s+EnM35mM
-----------end_max5_patcher-----------
</code></pre>
view raw project1_final hosted with ❤ by GitHub

Assignment 4_noiseCanceling_Ming

In this assignment, I create a noise canceling tool. I first import a background noise environment sound track, then import a voice-noise-mixing sound tract. By playing with pfft~ I can use either amplitude or phase attribute to cancel the noise from the voice-noise-mixing sound tract and leave me only the voice. You can hear the difference between the two methods.

In the youtube demo video, I first playing 2 original sound tract (noise background and voice-noise-mixing sound), then using amp noise cancelation, follwing with phase cancelation.

PS: the youtube video shift my sound about 1 second for some reason.

 

<pre><code>
----------begin_max5_patcher----------
1879.3oc6a00ajZCE84To9e.wyYirMFroO0Us8wJUo9T0pUq7.dlvVF6QfIY
Sq59au9CfgYBKwYx.SRUWoL7kMbuGet1GtW1+96+tqBWI+BuNL3GB9PvUW82
5ybk8blybU2ItJbK6KYkrZaCCyja2xEpvqaunh+Ek8B+hntohGntWFTWrQvJ
C1UxdnPrQe31lRESvkM0kOz2yxBAOS1HrcG0c1cLU1s5d8oJdlxYZwwfa.WG
fPw1MfTylH7MffO10qZ0CkbqYze6EMaKDkbk0rgCNqrQ0cZP2oKxscVt5yuK
lFZO4+78emYqdy0ubv48a2EjwDY7x.8ieWy9lLh+ljXbPH.iraa8dvb4uvYv
e+saY0b+8XTZxMwKmKiSmAWtVwpTArl7B4MS5qIPiyQihLaRnu.OcsTnpK9K
aagvahSigTxvKJXac2n2WUvJCeFHTzoiPa400rM7wPH4tIQFhk3SIDa.NxPI
PngHiypUOri65QXn+nF57hZvwPM7rfZZd08Ehb48SSqrgNzXKFRPtYLeKAdw
mN3I32quEOF6xYYecJPKBYiESoPCWKJ4wf1BCLiFKlb5.SYwc7a1vJD6gg6X
U8lx9K+A3GmDnRvVZEwt1K1NoEzfWSPubp.Bu1.cAgqKkLkYmxhZ0.l23yrs
iUosQEu5SbAakaDn+hY2xDBd4g8n9V48c9EXbvEOF3R5c6Z1c77OwTpphUMJ
998paQ3NH1fgkMb45ty2eggFdoTrYLfF2CzGzbs8WsmirU2zQaVG9BF6ha0P
o4huiXV+bzFvrzkjwubgnPo4lif4i0L2v76R0+qe37f10naWe7CtsAsr386b
Ni22sds5qABYQM+mrZOb5Phgn.zjSdRsg9IQ1oCfDnGyd1RuOgoJ7Xtv4PS1
uaEnXAmVkYLUgTLEtPf1383nkPUVTzr4zcuIh5VdPs9UNxmxoaWBcgbZvLHY
.L4XpS+oSqEJclDY8zbbD47ud+tJ9NtHOPuojkwmBFRcqgAsuSYJ47JWB9Lf
gnyOLrpY8Zd0WcTc8OUdAENY2PDvCrne07ULwlWNvfFCXvuPYO4UCdciGo5w
b0mPzSGtXwC2jBI3ooHWe.MojuQyFsOyeV+3biGAtAj.UEK6OCtkWserImmI
y4a0+cLV8bkHsRVkyqxjkxJmoYGT2+CbnarVl0T+r5gGidnCnkddemcIXGMp
OgBrGQgFUFFdb8Q2UTWzMjbN083sb9on0XD1LoOFeRZ4OAU8HunrGxohGiSA
WXs59RS91MdIjq2GVszpvUxMaJmbkEJ0JhhXe4QT+uSPzJDpSY4jwXV.+WDF
lNCZQzZNOXI3ferTpWD.9zK4fntzfl.7+8Pl00hgj4JwVA.iaBZ+cxosfVtD
p8czfjYJCWdvVRlU1hO7jVvHB6dIk1PqWADEzEUTOF.dcnpmLyh58ADRrtOE
+5PN+7ql2GL47okekQ89lJa.qKmJ+2VPOD9pUP+aU07u3RIF+FnRhWhBIl7F
uNhzKWYDieiWEwzkuHhP3afhHBAKQQDQSlOMH1FPRnj+iUDQHdoKhXz+WDwk
qHhlOdqmrDhoQCqfXxktBhOp.htmh8it63u3Oq2XtvQnUakCbFa6K9pE4s2d
y40pBgqJhCZE5vVcaQdNWbPHUdQsgbXMWv2d.zeCC4igYxe3SXXaKx2IKDp5
tTkZEOfA14pvQ12kxdzfm0Y1WPDu.4jmquPzwyFgPP6BTsdl8n4yWvPe7ELY
wIL3XuLrmMHiHVQ.o.a7eTDn+nYDjwyjuPiWdegbl7kKngAW1o97yvfKNhgf
daXKKhk507qfma3RxvHeSUzm+nE573Ij3E2S7iDu7bXx7nqncsXr6yOsSWAZ
VgXjWKS.W90hQQdAxWfQe+TUF8Jcp0kelUX5YhhcT3BM0IVMYVEd6o0iNQqO
BClUqm3KmXge0rjWoS6.wmoUOufF1BGd60zNWfQRuvqW15GsoOgsa2c7p51a
syjB2x9rqVXtT0pi+Etic4qIrhapfjqKtuqoPVU1sEJdlpoxkvmujzlCwPS0
BqDMEckax.JlGsM4PGm5l8456AWxib9hFCVyZJUGgbq1rtnrruzcGjMxt7RE
tohkWLnrTWEdPs9PZkfoIlZ8EARo.raO8ofGV5u1tA65GMFBRMMlhQHrauH.
.iFsan1LF2VPw8+LngLwFW1xPCyTY3tJ4NYU2nu13R22iFkr285Gj6P3CJso
ore5AZtOEaceZ40bseUJXYxAI0a0lA3GzcOLo6jf61KsC553bW2E.ToMzGkT
vPy+aZK5s+CCZ5IDtra9G7xR48uCNMuXXYGz1H5FPbJ.P26CrrLskb.Ofhhg
DiGPnPJzBLwow33YvUt2DpDrUJj061+Af7M7EdIe6w1JgBRgV3lB.HH0QCif
IziFKubAHSSLFM3P6CvHBvh8TDIIx4gPJEktDwJG305mJEYd9HJE15zwvnni
7fYO.SCbZ2GGYgPBMNl31CgfGMSynj5mXRpSkUa5ody+BStzM8A
-----------end_max5_patcher-----------
</code></pre>
<pre><code>
----------begin_max5_patcher----------
480.3ocwV1saBCBEG+5ZxdGZ35NSg9A5dUVVVvVlhoBMTpSiY9rOJztMcZDc
Y3MP3zCv+yu1y4zcOLJ.LSrg1.BeJ74vffcZKAFacVBFLD.VQ1TTQZLNB3z2
EyVBh5elhtQYr+39urwaWIZUUTkYGvAyrRii5c+HbxWNa8TsslZ0AngMmSp.
gu7iiiwGNMzf0ZhpXAiO+UIsPY2Jd533nPTB1LMcbldDMN96SpQssxbM.fwx
GOLpaVOE8mi+BhTIpEUmCCnSfA7EoPzegGIovNRfy5FyiMTwa73s2TL99PzY
vQxIvQ9UfiKBF3kACZR2XJ16fQGd6CgmgLwmfLYfaLYHYpIRyR8aLpyCTBcF
w0jLj9+lLzyij76QxvsTb.8OyCTW8woI2wZCvqn1.zW0F5ahbCkFr9.pX7e0
S0bOcO3HZ0HZkECwQeXFB+9xJoMZRQTLA+GNgNzoErxRJ+fRGkrFxrJpAewm
+02UIqXWjUrek0DWzUp20ExEYcr38jtftfK+90UpKxJ6tHqXWjkeeIl6Bsvd
mV4tPKr2oE14TwaGW8E9I00qoxl9i1JIc+vkBY2ZbjcMiaWa6MCjz0rgsjYM
Qj5dRJcCoVosQyl79+MBrRTRk7VloIl1hQC5gOQPqaPi
-----------end_max5_patcher-----------
</code></pre>
view raw noiseCancelAmp hosted with ❤ by GitHub
<pre><code>
----------begin_max5_patcher----------
592.3ocwWtsaiBCDF9ZpTeGP91khXrAbx9prZ0JmfaiqHFD3zlppMO6qwF5g
rIsFhh4lf7fO76OO76Iud6MAnUU64snveF9qvffW0QBLw5hDLDH.sksecIq0
zQjj+b0pGQQ8uSw2qLw+wg2hI2ssZmpjqLi.FBKJLcTO56fz25rsmpWp4Vcf
ZEOHYknve+goSHGlM7PzZlZ8Fg7g+zvWqrCE.RbVTHd4x3jtGlF33j2mpV0K
kl0AgLQ96s2z8T+H5hAPcUopZMq4bb.eJNP9VNDcIDgjBFTjXHRdhog2Hx3R
IvWiTBLgDSmwbhMrV9yMr5QQBXpj.9pTgE3NB.YlLBZtuSEBIwPJjsjLFRjb
MxIFHAXX.cgeIg1gPUo8JFiMA0KtDzr4vj396UB4gP7YvA4D3HeD3H5h9lo2
9zjhjR8NXzauCgvYHSxIHSFZzG9TiwHYoYmlk5283TtyL859w.E2cEArXVtw
bJlCXevikjYza.Fg2.3KuA62MSwZv1GToP9e0daVmtWbDsZq10rdXezuMCg2
WrBdqlTLknR9gNg+bm1HJJ3xOYcTHZYqJ4F7kb9iuQIqDWjUhWkUtKzh5cZk
6BsndmVTWnUWoYdVWGujmQXf2EF1EckNKxBbQVf2Su99SQh+Su.mEleAVpS5
x+tpoN4S3+79iyc9BfA9WXtQLOKLmRwx7+II1UcMcd0WMFqt9IdSa+LakjtH
0GqZ5ZSirsERaaaAynF9ShggjYCwZzEJpzUItqwV82979+vBZaUAuQtSXprT
GwnA8O+CZgsrmC
-----------end_max5_patcher-----------
</code></pre>

Convolve_HW3_Ming

Sound source: SUZANNE VEGA ‘Tom’s Diner’

IR source: First two are ballon IR—— one from Doherty Hall and the other one from Bathroom.

Rest IRs are made by White noise in an anecoiec chamber at Columbia College Chicago, and I use Kemar human head microphone to record them. These sound track are record horizontally, from 0°-360° with 30° interval (0°, 30°, 60°, 90°…etc.) and two different distance (<1 meter and 6 meter away from Kemar).

178ada1aedc3fdca-1

627170107a6265c4-2

 

 

Assignment2 D..Da F…fung DaFung DaFung!

A second version of music track Dafunk.

I used two note element make some new track, and you can change the speed of the music see how weird it can be.

<pre><code>
----------begin_max5_patcher----------
4460.3oc6csziiiaD9bu.6+ACibrGC9lRAXOjG.4zhDfbJXvhFpsU6V6HK4H
K26L6hji4b9MleIghTx15kaJ2j1RcyAX5t0K6p9XwhEoJ9U+12+c2M+wzuFt
a9re+rOO6t69MwYtSdthybW0Ita9lfutLNXm7FmuLcylvj742Wdw7vulKuv+
6+7eW9bPx5vY6R2mrZVdVvxuLa21vvUydNLK7vSDGkDtTbKxGCUc1j8aR2mG
GlK+Z.UmNZk7CO8we9SDH5vmwt7uEGJux7S9.hRpddX0Y2Fju74nj0OjEtLW
ooTO5B58yfvE.wOorhegIK.y9I4y7u99uq32hec+aGT9qaCSl8m2+z9juTGD
zPcA9FQcIE5GRpkPfu7.fcT1eLcU3L7fTQOyzhBXK3hlTBnP8nTqqjnAojby
zNh3WWkDNHkjXDkDyPWMk7ummtcPpH1LpnnS3AMDahNjOtOOOMoGU4fnnNW9
21Fpji4OJbVOe1O0opBMopJZSKTRR0OeCp5Swohu8dTUTup576aotOklsIPJ
mrNP.ruYb9BA3BD.o7+Rks4HTADb7gxB1DlGl8PXRvipuHvEiO6hiVElMXSg
tMCv9mzoN5Wk2LdAvD3BxWM5KTM3DT1oWCf4PqWbZPtPM1tW9ABuX.KOc853
vACXQEQuzIl4QMhgCiCJLbDebM66XGCmjveQH9scRJCTKLaFXlWOfD4rfz8p
NeE++LXFSaLi95XFAIsp3vic1FQlGlwyJ8Ck4AxHlGTyadrIb2tf0gswkcgg
eYFvT9g45G4A5rCFIG+gU3CeFgYS82bpNvLpNWot.U+E+EzwmqAlYlLT4PqH
e+qiqAyiClYpDBC7hY4yAWGXv3AgKlJjYrGf9pE5.arnv6azfUgwAeq24MdQ
f.kYj9+UcJnxeQ7mD99nHS56qx.vD995y.X6LwUJW4u7vMaSMoo.laH+ixoi
Rg3SWRrFS8P7ThoQoPfJHPLqin3vWBy1EI5nex2xcyC1t8jye2oOTAx8yoxO
K98GOWTh5bnimKK7knpOBxwSGjIzfbg3uOSoxe8nCxhOoTwD9R1GcbZPp1xJ
Q6zEPRpvdbYP.p0ef3ANQwEs6qiSW9kvUmNYKQqz1vjnjsYg6BSxCxKkwiWe
U3SA6iye3ozj7pIJBQK59FdJXYX+OdhvkrTK+CYQAwGzy4qyhVklTHH0Q9hy
W8UJL0oJK8Z5j7VRB110iKLrD3SeWcmPY2u6wfrhFlxQHNzfIF3KMt90N9jw
gOkWd8sQIIMAz7zsm4pYQqe9bO8iohqt4re7xKs6g8IpK+fnma9C6BdoAxmG
DGW1Wtw2vWCRh1DjGlGoZOPfiWUMb4y6VlkFGWWuUW5kttzJg48xveIZU9yx
urZlGhGHZakg07iM6qhVGtKuwIyCVuqwoZ6PPbt8OV1Q9gBeQwBsowcT60eT
qS6od.qegyNr+Yb0oi6tlt7PHTsO4Nzxdc80q6OfZYjg8rpb2cbHgJWIWL3T
eXhlyPJVHSyf9H5YPOzqid2e53msVISxfAPzq.fTLaAp..UylhiZDKw0F.YT
fMAPrwAPBkpr.GI.HEhrI.hLN.h4rQE.hvd1D.glG.Qk.nx62sF.8YV0.DXb
7Cw4K7IDB06fQHidawPOqNLB127XHrlM3sF+nVcTjFNHLA9AY0bBdqwOD2p1
ebiie97wj4GzlfGy7w.BTqcfJKEr4vGRY5hmdwY.ELcvnBX.CKTldCG9YcAo
JmLjeeFGyTvvY.MPufByZy2BodgKuED4j0znHG55alqRgn3F5Aq1ktOaYkEx
AagYMDHwbxyiRNrXOe9XzrMuymiVsJLoEttJZWwZAr53xpqUa7fk9tDotEd4
zoGaRObJK8CwxAN9jd+OHXeWJ5sV5YSZrmOokduIsGSvjV5wSZom7QwiIaRK
87Isz6MoiyALokd7jV5IiNouS+f8X2aXmNUqFwwrAXdwa.d0CpW58CA44YQO
tOWMQxZI5v.egrqiSeLHt7ksd3M3e92N6wWh6AozBoixF4VRZVRZdnoxJGLw
PI3smLALnxeoRJiOBYgB0qLOz.tzPwkFJtzPwLoghvsyiG22OCdQzau+nZkJ
JPOyuznTxhiuAmN1bTuRZ5Zz2Qg8APt4APtLGmwLuaO.1HcXqOPLzBuACDjZ
9DC.K2tdXT2oJ6UCu.VAuLep7T1C9ZfW1MQ6.l26FgIoY.T6MfvU8ErJ54mk
NyW9OqgdlOK6HpviQx32l4YyWOc8MvxfwlZajk1PC17FVTnZmsv5YmsbMG17
LVd+vOLyyVnp4SpNh58yBwRSMrMM3rpqLnu4eG1D3UyUlkwFhwwFrvQ06Crw
74ZNFQTXCbpiM.yG6tmJZIUr6SXrwyZSL7c.1Xi7Ix6cB1XdewPJ+ZgM23Pt
gdlOqtKIFAD1y5gbeqQOt4ymaHVsD9P96ezyBYysuhmjtBS26lidlOWtQX45
.9gnmq4SlajG4CisG0J6kpOJiZPrxV46JsLW1MZNF07QyoduPHp+69n4X1ZK
pbMBGwlqeJjYg0OEvFMqepcwNn4WQGlDtd+icTeKrZXnOF1cTK7ltUwn8A.6
L+3nHBVgcdu2wNrEVsMzGDrCZgUiSQ3Tu+wNfsh8cTfcux63kaITkX90ni.f
Wq2w6q.ZLaAZleo4vT4KbXD.ZTaAZleE4vP9HAzH1BzrvBwoRmwQ.ngsEnQs
0Z+NB.Mjs.MhEdcCvQBnArEnY9LjpJljaOnAsEnY9LjERtZcOeaTEy4S3NNx
7rEiJIOljDEChisUx7SH3wJOwHSCJM292P5naqXJyTIcE+w29fUli5SWwWlW
pSXiGexzF8QS6ttSaiGuoswCiNkQe4NuSSwmOB86yGPWWuQH5q+vV.zTV7kq
X4TV78l1hOeZK9ros3Sm1hOYZK93os3OF86OfXdFiddvSZwGne.yfQ3vV.8Q
evHzyCP+HNAivoqPzlWWkoW3nS702wICNBEesmskLI6FchOSewmOBEep9h+H
bgRzmfQkY60nacdzdAx6b4Pu0hOWez2mLBEe8s88QiPwWeOO9fQn3queeOuQ
n3q+ntdiwtt5Gyi2HrqKCqu3OBs8YZWEG5zG6sV7o5a7vGgAMP02yCeD10kp
+vV7QXDmT865xGg98oCnq6Hb5JT8i3jMBs8Y5GyCaLNcE8s8oiwopizW7ANt
I+h3l7F774w7XLNMc6reG70nk7ZjYM9.aEOueVpVWlLGpMOliNCOlq38Lnh6
XnpMpB9P9MZTDCZHJbGcjNudSpNlKyh3xBocSxO0BDYOxjDYOhaFhrmp1lWe
3Hx9Ogg9Jct3ufLGc16ny9pgObzYuiN6czYuiN6czYuiN66FubzYuiN6czYu
iN6czYuiN6ubrwQm8N5rejPm89.E1PczYeezYOm3nydGc1ODBzRQqyLhiN6u
fHfbzYuiN6czYuiN6uyQm8N5r2Qm8sQOGc16nydGc16nydGc16ny9KY0vbzY
uiN6czYuiN6GiXmiN6czY+E8NdczY+E.ZN5r+B.MGc1eAfliN6u.PyQm8W.n
4ny9K.zbzY+E.ZN5ruKPyQm8N5r2tzY+sa6u517wS9s98Dei2O0o8fINoSLw
o7iINgqLso6lINYCMwo5oINQaM0o4rINIyMwo3uINAKNso2xIN4hNwo10oNw
5Nwo03INoROwoz6IMgpOwoy9IewDXRWJGFTsOC6p7bt592kVwQGi07RvGlZd
I1UwQc060KsZ6Rc0+IW0258TsO6iSkmi3p5htZd4GzJNpmqZ65p0wumpzz2r
578GG5ruOFJeWXrPQOl+m8P2r8rUhuuWNpGwLBUsS4R5oh5qnVVTi7VzBHAz
zHAvLjVOSsGbLIRzKg8uKL7KyfTJXFjSAFh25MF48K2G9bfDA7Y1GG..ANfd
cbvdU7AeyTxGPpsPSIzAAXCTzGdkdSXC2axyLHAqLuVIjqkaEjgAhijejI7u
ZRfn2dSXC4HgaFGITgkOxrkAjdUcjgTclYZ0IXoNyvlq.nTi2501FuMe0WSa
oFoPmfgxcYCk2G+9elMv5nAKvXifEHe4VOknnIIFz5XQOdEUrYyvKLPmAfLi
WgR.pfA9KLVfVbjgko6SD3rX5LHDnunKH8BEE6Tl6UlME+u1FmodUSRafgpA
vn9kuI.l3nWBWrNHJ4eePbdI33ji53x0wlCh6tmS+kpGqVXWMqtNy6ol7zFc
2EsNoHPsS+qh++TbZfD2ii10CfSuj3Qj64FUuRUw3BhYuV2RX84rdXxpmaZq
uDDuOL8oNpOSG+FhSSVelVgZ2q.5yx08lqvWPWWbi.qJt3m3mTLbpeCARyIV
2WNJIJWDacG3SW2VYsfhe5ZIbxcsWbWG5sPNVOod6SDO7WWErrOKZPm06KCE
xqrlmAKK5WU+7Mz8sNYVnsK79cTYl5ZlZX9xn5ZyXEFd.tdC4SV+rLTEeCYl
g1NAXvbaNkmm1FG7s+cuy4AOHut8OjOBXvdFHJSs9JsCIR2kD7wfcQKyEtNJ
DXgaCxwZ50Sowwo+hZQ.KJ+Vo0qvXOklsIHIeYZVgX0phxUTb6TjmXw2vwEH
LMKZcj.lhCSVqpiXEsxb5BlmO2mI.u7nkeY2Ian1COxAg.hNs1isMR.O8IF+
y8AwQ4eqKIonvnsKOKT7zJw.bxRq1v.SIM02SnkFbMW63JytVqYLATOcK6Y8
hw75YBSGqU77MQq1lJbJsqZ1BRK.HorvuPaeDBTygR6EZtyNSFW2nn2ltA8j
kSC4Q2dsgc4ZiZZrHE+vPv1TavMRtm9zFe+AqM.fR9UFbxEPTcjM0FeczlB+
ryfmUYLsj07qraAidajKfNxE3pJWs59zSKYQ6MYHlkHrj44jS6yhFhMxWz95
VgIWcj0SO2Wd2f17lem8IZrafnom4H+52d1XiT1KnAuAflllZnqun038tetA
JFzndPxIDCc4AHHvl9ZP9.8BcDe0gYMEMzMnWCvRgjRwjEbYbO91rQm4YI4u
r7ZZYwukfcwFFs5+ohglqdkvpiXjQQ+ugO0MOXM2Hz1GY4otwskpQEggwON8
.T0TeN8HDfYUaPMUtlc0zvHTMQTju2HvEvvaaHDEK9odG5GL6H0L6.0NhOBL
BorK2HjqXErxYrxsqqOloL6L+jtzyjBbCjLhghWy3d+0RvfC0zjKShAHzpiB
iP1IH3xLv.LJF18BVGt5C6VsNbiAebrId7nCW9OLXzUbQQ0M3Z1EqLWwwa7g
VZltxFDNREcfp0Afrpl.rjl.NUSTA1.r65Ti0a0A4C2yq7k9QrajmsDrtkeF
c3uy.UlsoxoMrpvoJO5V64c35xgfKUolKwuriRYR6IOhxf2d+XCW0pbigJM1
jdyJOhBXWCMSqUJ1avgcUYx4qReX.o8QXKO1iVZF26h0rZsR0NxxZVqW1QOg
JiF7vpLOYUgfhUZimpKF1pqdPqk52XZSQWGo1fqoM3wf1..uMs4PKkU0lVfd
2Zi+fcOP8Pp8piUct0Bk6Q7GbaAyWkl79zwP+bv0ex5vw5hH3qW7fW+0cAn8
ag+5JXTcRmhhLM8JmOET8dMwuI7pLeyB1t8kvrckezJQZ9lfeNMq3X98piiR
TGqRXv4YguDU8HpTwedP1xmixCWluOSkTdekUl3px7zKKYejLu5DmobaEqxN
wl451gjlVUQj+iw6qxhTAL7Tv937Ff2iqWlFqjtOOCr.C4LBW.LKXThO.U7W
9EmBJZDOMuNuupMIKLIuUhRNei3aJ5.tUucrgL921msMdfRoXdhD+BYC5y.b
uh+h3wPxP8MsTpRH0Bj7SvyKkAKWFVjuk2J7TIo+ouEjbARJ.4SIrB4iywXj
Tl8PPHDaMI8ujEFdQhZgrIBeQ7OoM.qno2ZR4OFrV7QDbAxoGAvXRQDv.BoT
BtLenu8LS+GgEoD7qIqmtgU9rbKqP8A.uiNC6RYPTnznf6A8fRkhJrXdqpRw
SJ90+GXPMfSM
-----------end_max5_patcher-----------
</code></pre>
view raw Defunk hosted with ❤ by GitHub