Assignment 4 – Nasally Controlled Filter

Hello!

For my pfft project, I wanted to experiment with facial tracking and use information from my webcam to control parameters to a pfft. The x and y coordinates of my nose provided a high and low cutoff for the frequency bins of the original signal. As an additional point of control, I added an adc~ object to take in audio and alter the magnitude and phase of the original signal in the frequency domain. Below is a clip of the original audio that was used:

Audio Player

Now here is a clip of the audio after I used my nose to alter it (the adc~ picked up a bit of the feedback from my speakers as well):

Audio Player

Here’s a video of me using the patch:

Below is the gist for the top level patch:

<pre><code>
----------begin_max5_patcher----------
2628.3oc4bs0baaiE9Y2Y5+ALZ5ScU0Pbg21oOj939ancGOPTvxHghTgWrrS
mM+1WPbntXGQPPYHJlzGhbHEEN37gCN2A+6e9mta1x7mEkyP+azeht6t+Vcm
6z2q4N2s+F2MaC+4jTdo9AmkI1ku7iyl29cUhmqz2mur7vMyqqREUUurU.i8
LYl5g9u6+5r5MxL0CnGP796JWoGG0f+awrCC0VdUxixr02WHRpfQCGGtvaNx
G6sveNh50bAgrv6HAJqdIUS5YyNglvrBHp9t+ue9mZ9q5OymVrO0D6GyzbuW
vsf6q2rTT70Ci6l7UZJQNPa45lqalUs24g7rpG3I5G6U2rT9E8MwjiO72fbp
wKimNaNZ1Co47SQwlgHiuAXz+nP17TmCfImAfCCLAvz3FLMlA3bvE.vjKFfq
xWuVM1GmcEJVrRTbuHiuL80f36ULKz7tLrFFhh70..a+mihb1FQYIes3a2lk
uUjgVmJqTXxhc7m5dOWWHwYkGH8KODwBAwhQcCWR9lMB0x52.DrEHMVvqWIy
QOHSEn7GPujWWfRdLWlHP7rUHPbBkmcX.RkYhj75rpWgE8JqDDaDgHZgDZLs
4OXesRI5vDV7bOFQWffsMsnjLaac0ekMyZt12HWGPiZ3Slu+IbMw6Vy0jEnj
TYxmTq5f7PVdoXPbsQyO9.Wi87lTbMdwQgcsneytC64YluQdVaD.GcK33tb3
n7A07KuX0Wm0mwyAXRfZgdvXMXDfmDtc8uP3EcC.u0mgdMDPL5XfumV4eDU+
G5z.A19vCUeEodJ0hMq4hKUdfcF7HJznKBg9.dnU6G6Op3gZsUMTWnmRMNTt
jms9U9SVrgqYr.q2tDYVbgokPBiIfC6ipijcIt7qMZtb3NlHOiP.n4LDbej9
OOIjvXy1UzlT7gsNirDxj.dBMCOZEKAAd2.3oSOMDYk0EhRT0i7J0GBTZ9Nj
xX7mQxRDOcG+kxlaIJZdhLzix0O9Wua+uCM5eBE.pP+PvCkfQ0+awW3qR52M
j4WhCIglUuDokIXLRStPX9f63ikFVctPb29m9iAy3lEpGXsIH9VXsYzwBi4t
f.dnEBgpLQr7Vmskm7IyIIb9fShS.1nPgN4ZnPOshAV7nBDqK2IUynKUpnCP
fdNPvnVBJjIu.HNcvoL5q.AInNFeKSnS4N91shUnm3o0hxADsdjIdmAJEa8v
HNZRD5p48ACw6SeylEi0UHvORK8SClFwq4Nl2rNP0RdCyCIrbhv7+9EUijyx
7F2xSHgMLe.FX63lKt84rswUPsmhCHuTlC.mBUBCVcCmHohau+vCfKMWIhHs
fLvjAib12FaGanVU5y108evcxiZrrLgQmH6OQ7waE+j.g5OaiQ1jcsPsWavJ
9.YPuqSA3bi4KhQIcpu1yUFkbwb+0HayDOmYACGYwNcV6pOaRv++Jh4N9mfs
g+YZk+fTvOXq+g82kG+.u7i8sf8mTq9qVVkyGttuyYYCSsIumvxNabqyTp3I
Qp1t9Is4Cu3Shhx5RglEhbUGnfwukDv3nBneN52XQpOnApOHL0GXh5C0UMHy
QZzcVAa6OLLQ6mP.6FK8.o+A8Lxq4eFJAy9j.MG9uFqHyYA0f9KkMEhUH9RD
sXeGCMliXFStcXSmNbUvWIqKQXGky.iBGXenEGZygLcTU7Lls9luQeOHQ5Tm
vvzaPqu0c+drMk+xWQeP2KS5F9p5QYYauvoX.UzUqVrYKE8gz77slDXNVPFS
QjcNwGlwxYRBzIZgAvGABPanwjc3I4OIVcuhnpg+ddUUgbYcEzrx2cD6TvIu
TlTUmIyzcdJisWHoohjoo46VmlujmVI1rM+TYn1BVlUkjWzvBx7rW+066sUf
ByNb+7B4ZoB+REYqqdbuDCMJbQXfebjxB0rJYxmJOhqG+MGlEXxwVjUgkM4I
uq4wmq4p03WN2ToRpTaTUHZxxtddnPZ36Zk799HNelwHgB.ugZatvezy4AKv
hBddivhQsvVLitHGfgx3zVy2wsvVcZqtTTo1B9KXzuPbi4ZlwLfwh8NADBG2
iBvGkUKdXa45Z4L2zp+Zu5Fd+8e1DGZzLEKBpJPHzMed6qOxMcSTgZzEHEMJ
EyrEh5U7gFYVYBnXEJNbX3jPYRxSKZjrpJTpTVrpfuqazP8b2ugqbL34AgIg
V35GA78MlL5ao1tSlsJe2kICb18BlMnfglWmBwJCN9iaZnyWQhqaGU8Bh+rb
.k7l5aQPLTP5Fp8+sunXOOTdD2eIwnPSXOxr3TnuAIl2D6E.INi9Oz1pjXSt
UuInSmtNsVEDiHMU49jmiJujEGhxV07A9Sh7K2n9u0dlM17Fnc.hm4hMB4ED
NiG99SBeAtt.BNteAjaCdLETgfMG4AS6kDjizIRXnMRKsYRlZq7hoqFjrj4M
Wsmg1HnqTmFIc+TGsQeHaatJ9bioY9xQGyIMDZfCbL35IYZDFRA5I4px75hD
wvMG4ctyIi4d2FZhEnOUimLViJVujjVugeUT+1WyKpkFf1WlNMN4G+mLYkjm
J+hnQ5PjOjCUK1iZwILkQmTGwzyrInqz47dRWSfY8CZHAZFpKR2o22EkjhXA
Hbn8sGrvwU3UwPRZdY+xElTZ9ddEdvLq+.NLLAPieOtJTsq04Fa7JzhTl.Ze
lH8Z2mU6zJxQDGkc4uwk3KGJ86emJH34GMYrjutfuDgC7z+6C0YxOWKNwYOq
gwNs2+dz+yrP0GlAVFcQjXvOUeTLe6K+J8Dn4KdCP2ZED.g8uhpPmLIVIJqj
Y78ku8OO1M2GJJ6YWSslfMsKZ+DL1cDr4sPkEbHwcbXnUbH0YDjXEAa5SUWQ
PrMDb+JsKHnuUDz2cqg1QvPmQPqDRadee4H5EYkLyalU4EqDE8DTh0yfP1.l
AtfdjwkdwVQtvNPXuwZFPtlqwVMCZR5zYmA3QSNmDMMlB3qjjPTfUSAGpdwy
FBF4PBZkjl6TlXmjsC0dYkPzdX2EDzpUPrCgTanm6bKLvN.s4oHtgfLqIH1M
DD+ZMJmmfAtyGl.qbKLvgqgVIiF3NYTeqziF6N5YkanZXvMxL9LqIna1U3ak
LCygPpm0bniH33pWiEasZFGQPpMpYXQtkf8inty2BFY.65ObPvjqfZQtuGW0
mo.ZDb1bZKKe6UvK1Cb6AMfoacO8UtY5iGYIPq1f4tHmsx0OF8JFnkkSAxUL
HCpcwyGXTHssbkj1yrbaEZd0UsuDHI5FmHl3HQTpU1UotyJflf8pzh5NkVTq
1U7V68tUJ0to.qi3Pwi2TvqiofKRIAkX8Bw0JZbKmBrqo5Bh0KDWqbCQBr1Q
EpaRhLajc0jXkiJDuq3dd6lB33qnnFwyFUsX24+gch1tqTAwVwetygG8PQ6U
rxgbHyJB5tPJv1UMDGRPqbQNzcpFvVsof34VBZsh.WPvKHlImp2Aac8WrwNe
as14a29jnnrcP.hOaC+i45eT3b3ZYFbM7N9bVg3I49ehObKdQxixJQRUcATx
+m2+lfUedsKxpk6wA8bP8w+Weqr0k
-----------end_max5_patcher-----------
</code></pre>
view raw assign4toplevel hosted with ❤ by GitHub

And finally, here is the pfft I created for use in this project:

<pre><code>
----------begin_max5_patcher----------
1074.3oc2Z11aZCCDG+0To9cHJR6MSrN+PhILMsuHaSn.XntBhQIl9fpV+rO
GaRKkUbNhNVi5avJNAe9+ub24yFd7xKFDOUeurJN5aQ+LZvfGs8Lv0WcOCZ5
XP7576msJux8fwEx6zSuId3t6Yj2ab8+4mdtO8VyJow7vFoeniqTKKxWEG86
lmnX6ZUg8YbCIqoW0b2HYG9uvedv1jalcspX4jR4Lie7nBwUjgQobdcCa7Uo
1OYWQdY7qLOrxY7338Loed4rI006et7h5Vayvdl9YA0Oi1+z+F8JidVdY6XX
XW.h.BPFkV2HHNrbZ.ggNPrrvnsT4LAjD..IYTVOBHphnjiyhioc5ancZHsy
xXds6TMuKZ+YaVkeqb9DqIsi9jbioTMcqwmwbvKxePb8slLSudsrvq0X+c1g
uNgwlg6e330pkW+qhXvzJIXxzTtyGgk38X7WPNIbQvWiqz2cBBLn+PBk50z3
87Gd2E3Z87no1HhoOXitiLWKKhTKhj2ZaM4ar1ttQ8xa4UpB4L8Vu6ECLZ3o
gPCm4CUnt7lzTeDSx+I1br7De5oHFp0RDz+mIbt77Lu6QVWRWbNRUxwIUIOX
kDoD1dA+cKW44P7LjDOnDC9xn5Ih+6OEQIjqP0+mDLGvtT9YibkPQ6ET3G3S
A1X.YAdenvhUZ6Ps2zqLeszHKmHKxm5MJ43wC1pGmlWrbOVrPWtN2ILA3PEV
VPmD5t5BbAIo8i5IQdGWBH9GuKa4pW3eDtPhwtHFpXbOx+3q13XVfbHVrVSg
SvEgAHFgJR70T0KRjtXgQUrPGHRQUWc5a0bBqyxBtNKOyQDpO1w5bb5wNInC
FSjJZZqT4f.m1AAAfGRVVmq2.+fj4UapL4FY6dH9vkN6iPCt9Km3NROtqbTA
uCnAeWjkgwxouDCM3ZrzQNYm3IQOI+A9LXTPF3KvHgR9Py.A.+.tuHzOrLHE
feP+hA10RsiucmIwvUY3ywm51sgHwc7KoIcPkjySEC6Kx1O05VO+52Z8fwge
+6fgH0eRtc.L7C.i+q5NFsC+Aub1u9FGfqJ81xYMhd2TNh8xbXtrxhpbiRWr
2CUuOhH6L83uXNI6Qayd0ISpeJjrGoU6khl8DfrGCMdJ.wSFZ5KAh83nIuDH
3DOZxYPrW8gOgDNqOMO.BbLdFj.xAM60OktbtrrkbyXOEFcjo.Eio.jY.dIg
XvxBINiPmAOQ34B5rLP95HhcA3n4yF1EfiuOaXOEzT.ukHXfRh13MfgAgkDM
EOCR.iTDMXqK61vALLHzDj3XNJnxBavNFFDTtnDzhINb0riaOjzm.7x7HIvT
vKpijAAka+0tUnlZmBszTJfD661JW9lM2JKq1MFdaa2h6MZ2WZzP+0pB+0b+
0kxaUMekTeW4k1ceZra8baoeGk2K182Tp9OogrrXqpYV3lC1O9KP91Je7
-----------end_max5_patcher-----------
</code></pre>
view raw assign4pfft hosted with ❤ by GitHub