Wiipo v1.0 Gestural Tempo Control for Max for Live using WiiMote

Wiipo v1.0 by 5mg3

<pre><code>
———-begin_max5_patcher———-
11809.3oc68s2iiabsm+8LeJJzvXu.Is6l0K9v.4h3L4tXMf85ricf26lav.
1Rr6lYjD0UhZ5ocP7m8sp5TThThOJRQRwtmJwSKQ8fppemScpy65e912b0cI
eNZ6UnuA82Pu4M+y29l2ndI4K7F80u4pkged1hvspO1UyRVtLZU5UWCuWZzm
SUu96RVktI9tcoQyQ2872f9Aw0Oi9gYxGQ+Wq993OEg94nkqSPe6tzjkgoIa
PeBeiS1MZQ7pnYI6VotaD8Kdu3KuJbYj5W3a2DGt.8mRVLO66rZ2x3UKhRUi
Lbtuy13eU8cvN23b3ylrKM6Cm8pqCSm8X7pG9vlnYo.LPXhuCJvU9Wrm5ARv
MNn+t9qDOWMZRt6e70bmqju1+5suU9mqOSDLLbSxpa1tLdQz1+3pYKtIb1M6
93+0pGSSW+M2d67k2r+Euku7A5sSTnyU8WByuNnif6Sn6akPG56ihP+jB9t5
hCB5YO7.1ubPf0q7OKkq39ip+tU7ETCsns2H93Wd3.SbL.OB5S33WhiEBaxK
h4rm9tcc5SJrjfWwRB29b5+ygqQoJ4s2uIYI5o33kIoQnvYyhVflGlFdIYJb
wbfOf.OPqcURuJp3G+o2sagZ2meQCIWTff.KH3N4enBff50m.w+mcgqRi2Fs
EcW3pG1hRSPah1tVLzjaUqXctnHCUwaP70BRI0gLDRuJH8r1+Xs.EE20vz3j
U4lO3.xgMGCNkg+rwKPiElVFyoxYyOtxOdyyf0oUZKi1tM7gnSfQOm8RdeLd
97nUGydXJxRZCDgqFh7A4LDZf7AA+E+ZkL88PDbaRedcD7Et5pRkG0I4zqhd
R7kOAjVjDNWBf8CRg6YjBDSy8NgYxPjh0yHkTR0DCozasC7TbdyHkZNTJZQ6
DZsa4cQaZCnXNdfugGvw9dkBJjlYebUamAapIU.rZPIVJFtFrgx6B1jl7vCK
hpFaJEAZMo20Ma9Yxrrzsu76w0IKiR2jH.8ZT60bor0xAzL1Pc.KB4MiMUS5
c5QvYsTQ35Trw7EGjFDVLKYQxFXxIl3DOFGes3YLW4SkOy0wymQEhKxuI8oP
I2UK9EmytxZgx6EhJKmQy6p7+NQaz.nFAESPgwyeJZy1hpH7lqxqFiRPGVqG
iq5JktZY+dBJyCKRl8wn44zX4MWMO591cWRVGs5v2Ps5pveJ9IiWcr9M4+kC
2sH8CkS8J992GNKpxubobJu4pG1DOOYkbPT3aJe4reNwLF1Yfmebq9DqBWWx
WNMIYwcga9T7136VDUfVH36CWEuLLMJMFFODm8eu3kq2DCNBZ+qEsJTbOdb6
rMIKVT3VAuymJ4clG8o3YQOEOO8Q085.ZUvgg43cJrhrvqWqV2GYzZNqNpeA
ZkKRqYgZ0JTW0ZOFATUzOHm4Y4W7c7BLLnwyaxDXAO45A.p9SB4kH4h0mkrA
Z65i97rnn4Ba4dTrX3QgtORq5Ry7DP96SY9LbJf3DNrapmVNmxnIJqFDmLVH
9OmApSHFzLWJgIFxfFLVn06ilEE+onsJeMUhOnhDuRT5dMWmDfoKNmWoHbdS
foaeBl2sKMUrykIS3RU3nxYEwK+Jpfi8JuApichJYz9bhWPUshLQydTLLhFS
VDZCfIFCtihVtkMUXb706svIuI.UXjyvCq+6R8P6HpR5BphMCUAoXTeyP05f
RVuxgJTnVLeFS1PhQ.l1l.SYCA6BttgE2rdUpFLH5fTsFjUS8URmY38gToXf
UNYVkeHjsuk7MeUymnQIJ3DcFqO4S3tijzpcqVGN6iSITEzLfB9EkEXt3pF1
.f2qVOTzu7EwTmojzePyDlSd2x623dpUBhiDa4Q9idTXLaDI8fk6fW2Lbag5
U0qWQy79pdRrOJr3kQa09nk4r5SboaehaQ+57vY+Vdj4Sga1Cag6RSdLZw5O
H9PFsvscFEQf3JBgujwy9akLLE1ocQxrPvyRCqYmUgGePsbsrkuaSC2jhB2M
Od77KRQuo2dZA1WSKBNnmLkVCsnW2hdc3pnEUA5J37o3UOMO4oObxm7tjMyi
1Tvi3z.Bl6I8jq29mgwdtLuBdDO2WuD13dPQRrGHB.TQB63jEGuJAUuByrGx
Mq.kxy+Gzeejb2x1mWM62PogeLZKvTihWsdmfAe0bj.LjOcQXZzpYOKdizDo
OXjb4nmdLZER9kEnhzYggnYKhm8waPeWJJ4962J.QTr3eqeLbaxlqQaSPoOF
pW3jcmUd24G9o+B5o3EKP2Eg.++K9kDuR5iHwfLRvpr.9V2T45M5Da8Fw2Km
rOpCbkaMNiDORJe769M4xk9VItFwKyb0DiCJzgMa6zswOrRtIQUq2BFIL82+
axHoLQwTpGryqWufo5DOcT3SmvXJG2FyhaBSGq09ydd1hneaphoftI8El1qp
QucVx5h.mP4zY628wywo20dFRzOFryAFyxLynxIbAsm2HFZyKFG8Sz4v4FNI
fgIWW5y5aUPpgsToAxUi8N3Ty3JgryQS.Lls75CttuRBVu5tAEhTIJct9WGS
8pwYoMjFIGOw8aiCUOjyCR88pH8ATCb46WNPsMY2lYYiMcTnDr5EFeyi1lFu
ZeJf721SiN9CdHWvxCpKimuNQPs0CPB0U5KJpCDR5bWY3Zp1NiXtlNincaFM
TiaSoDT9jZbqFNXSF2SK7lyLbbycmV7Ilh2pIXWVwBd9TpXmbopKS8f7pghR
XHiOYZw2a3ndZsZkXpPlfS3xt3L8FITmcdaSA4j.1gr+pK9LBOsD+fMcb6Ls
F2NlNtmVhYXsZE6DR7Xfoia1K3w8zQBI2X0dmTvsuoi59TIL8KJF+Ph7uM7S
Qy+f3mQXr2GBS0sfgsmjX+0j95KRtKbgtf.1+YtxzrmuzrluuS092d.E5w5.
QlLpsrRPbN6JAw2mP4TUbujA6RUSHXwSbbMtRPffV6hOmJAgb9kBB3GAcsav
bfnn4ztBAo46gsLPdcVFHCUhA5AwHmqSz4FSLP7XjXfR4Nmle206fz8xp9gj
MQnua08IFAVUT945LVNPYerW4Y1dekjztP5zfwJqv0gT2rrjtT2sVQkqeRws
4LVYOmZc5zIA5bo7L26Js76jp0tkIPm6XEv00yj8LpjESnLnykBsqFtuDJ4T
C4bqLWD8Gqxs46dO5cBXaSH5GRl2GULQExQXtAGp1Yri+4IHoo7uPSMDxt3U
+qYn3gfAMWnZON5lGGoktlsafE3zyfRuiFhUbu1FFRLnNlqmC22WoXVfuCMn
+i.YZ3clyc+n3SWLVoN3.WnNrCXXre9mgOE8aEI0CpIHHVaLhNnQ0szvsvRC
wXUqQ0U+382K2I7aWnhA4e48+mxG9+9e9+S9v289qpgIgV7FVXx6FHm8WW5y
NdxWl4GfzPgxCxEi595kmgIKq5echUzcrDg9KwwnMQpJTbazBYePJY0vIH00
2Om..BePEj5Qg1YHEzHqhDc1TJBYRII00aeuN5PHtYmijTW.e3d.ZAMVoStk
lhV7IqnzFJtAoFvHmIjxYTpdUhRBjG4bUNarRBteOBOgrVfR.GGwUJUAkayY
Vrk8ppUS2M3c0I.rtPpgdiEoFQ1p8HKcC9mhikAiR9HQ+HU+H6Bs8NIP2Iqb
.kscMyLxyc+cl+HsJb6Swh4Lpq08LeHVJpaLRtXXQnyYJQi3Lo1YlqaygTHE
7.EFwjyYqYOlSN6y0616g61VyXZGx1ReYgqnVa4ynhAv04dswrfO9q+4+BZc
xlzgSCUpKP9zMmoAUAUl92x0sGTPEi+BtFPo5dpKSIFuWpATb+1ic5spjuB9
VecWqD1AqBVo9pBR8fxGyinzIsG5DClxi63+Rhl3AgiYjnIJGqbInIAujnIt
L2wil3BUDx3SSvNiZapPnM.7eWUZ5df62MJBNifzAZR44n2w02L24smhbzSp
duidsrnVtaQZ71EwyK1FA1FkJPKwmLWVBb1V6AdvkpOBP3fC0OwgtUuJHiHk
mP7viIaSuKToMoKqAJjCrOluZm7JG.kGG0tI+xsXwQsZ9yh+ntu7WRJ.nobX
7XrYiNeCbFYAaAtun1+2kLhjDB4xPR3un19Ove7HItv9KiOI4EkkKtTGfjPF
ARB2eu5eiKI4kqBArBsGzNqP.qiJDv0U2DTVSigBAAih9.04lq0IaikixuA8
OWK8e60HYRJdM54vmP+OPamEtHbStC0n+0Pt3DRrJttCf5NnNDiG.EtLCbMb
E+ZlFCxQqqTqasugZR1mEDJAY5WQgeNd6PRa708IZsUL3Ak1jY3rXAHu5eMS
yZQ1kw9zofIpMJuC54X9p7Zj.Z00cSTa1VU+IVhMfAlZH6NqHMDZGmKDAcN2
sGxrAL1exlZC8UrqnfWRnY4myYkgdbt9PBBpNY8wGCtyQ4Hn8QuxiE3nZPHG
+jIGAvkjuXWzGkPD7Yg+P67hRUxsq5VZJ7Sbd0y8igD4eO2OqG39kIwC+v8D
2Y3GOg49qKo2UJsNtcA0lBYH3hSFHW5rS58fBIO7QkWVQTqxxLqskZVkkaVG
J4r1U1YFT5YlT9YMVBZFVFZ0TJZlUNZMTRZMTVZMVZZUUdZ0WhZ0WlZ0WpZk
WtZGwGdxJ6Sd+lJesZWpVuzxpkXBJ9wqtR1pqZ1pth1JHkqnjtyEWN03vixB
KovOYw2BmKLoInu+c+Yw0qlm7DRwXdz2rdV8FA8JMEoajDc2hEy0oqBuLSRp
IE2FPj+j8bJC3E18gEl9gnbmyDncOCfF2LPSzGExfQefhakhy0uuzIVaymXj
BhKGMwIE3ggTHi13jaYAYhSKzaIz6jBuI.oXc3GEj.GDgdlz.5nPC.+.iI98
FQXJrMQ0YwxXuaL0XJgNuo0M4RinDl3Zv5RuqAj.cbO.sxlPx4xAC19Tidks
i+MfzUcOKZ6wIcHzSAzx5TOk.qmzwdBNogToMcnr11ijbW1mtzd2CPFqp+8z
JtktN4fwKwvYmG+E0jqhgaUTN+RQBimbDcjczdd2it+pKBMEa7718EFGqaqo
p3tO6vYTUnxlf5Z.ybu.TUuVOueoIGx7Ym2KrYmealcC3bK2al0M3fgb8cDt
Sb.aCtRr1tCmwd1rROZNTtC8smhZe44WeHBi8le88s9025Weqe8s9025Weqe
8s9025Weqe8s9025Weqe8s9025W+Koe8mNNkw5NMqqPsN390cXK9hNVTuRiu
3DJxvV+5a8qeCcpQOmd0u9Lqe8s9025Weqe8s9025Weqe8s9025Weqe8s902
5Weqe8s9025Weqe8s9025Weqe8s9025Weqe8s90e37qOte6COTqe8s9025We
qe8s9025Weqe8s9025Weqe8s9025Weqe8s90+R5Weae3w1Gdr8gGa3Lr8gGa
.Fs8gGqe86W+5+cuW5Rqwzu9MbTqxczGqapCxStqg90+5xN4txonme+2m8c0
UV.U4VMFFNg.8wcyC+ld2r9325i+yvT4ecAZ6Bw34r8eG4LrRlXhOqA+DAqC
3svJ4SDCbhIwrIfKKhuG8UwXze3OfXnzGiVIzQLZw1ymrfGX2HQyQUvDm9xM
RSAObKVZrPHSYRur.v+riaq9bQg6THPawavnizGYBFOMOf6m51fno7vqmMNl
mMtCmxmDRfMLlCbXLAo7dbaXLu3gwbPHE1vX1cce5cRgMLlskFnNbEkAOKvF
FyKVXLo4xonVQI9BOLlT3XssWCioO8RmBciQpEBY7qzyfFmZg9ruD.Ffmpc.
C+KAfgR8ZOx39BnT+dEG0bbqhZN67BupKIWzUIZOpT7JHCcHXe0mDiG8HuNx
oQfFRB7giR7CWYSifWvoQPFcT66jCWYSi.aZDX5ri0pEjmYlnkIwEjFmSP8X
Oqa0B0WV60Jsav74l6q34F67la.6oODK.e2rKlxpN42KSYLMSo5rKlz41jO+
0qDWe29QfKPQoLWyHo1T5ZhkRWgylEsXrypKR8Y0ECmOqt7HsHqtpJit33dO
it.C9z0ZstJqc75V9bY18xlMW1r45LhXvO9Su6q2HV1Dgtc8lmQ294m+0WPE
+jXq6VlAKMlEKNLa0NUM7bZDVeU5Mb.tbZgOeYAeI.LfyeZEvvcl7NCWxT2B
Wtvdg4PIVKlcrfWfSNSMug6XqKkubLh46d+7MgO0QKXXCR+lB1Q1S4oCB1vF
N0+HN8CBUT2D+4JMjw014or1w7J2NlkQa2F9PTkFxLaQT3lAL06Oh0oaoEqt
qY.0jFjYAX+yO2ynSg7hcMRJuM4Smhw8nAj8AUf4BTAmbxkNVLbWnBmzDxJQ
R7oXbsRj6hT4ZkL2QoysWBsgRoMURsQRqagD6FjZatjaCjdafDbijhWmj7lk
l2rD8lkpWsj8R3qKU9RoeNSjybbxFO6inX3+W1GrYhecZ7Ynjmlk9TkDHWur
bnPtnyoJAPFJD5DAQrhY55IaIb51BiL462iv8DUiLhTsrVmAT0VTUvKMmroV
z1Hky2R4F.JmODJEHc7FFBm2DmvoqLf9ThItOnfTynfb+bd8GDe1NJ30EdnY
5o6kjdVtsNGuEnXhH01F8UXzWQPeEE8UrwZsI9Fd.G660WKP458.g8EI3pLL
pq6HRunjyxB1SiA74LztfZRfe5HTRKadToG8GYftzPfXlfqZCERkHMfw9bCf
57gDoOvvSsBozHjTN7Vk+1q.jO0u6zRyTn578dke9Jc+dytfuyrWm67m1xYu
b+jWSyeb4wIpNDf9ZCA7aMOfDynuhP.uNg.jWQHfaYQerVDv+U1p.2VyC38J
DAvsdU.9KZdffWg7.jVuJ.+EMB3OhHvQen7IngoIoQoQtwfXLzXBazpPfTan
OF53m71pQ4WtoIICB8EOnWySRL4RmNfuVhVK0ePhVafMXs1f0ZCVqMXs1f0Z
CVqMXs1f0ZCVqMXs1f0ZCVqMXs1f09JKXsSbmyYcPq0I81.0XCVmMfs1f1aS
bCax6XSeqAmCXRm9d1f0ZCVakACbPBVqiMXs8TvZcFjf05YCVqMXs1f0ZCVq
MXs1f0ZCVqMXs1f0ZCVqMXs1f0ZCVqMXs1Jq05ZVak0ZqrVak0ZqrVak0ZSX
CaR6XqrVak0ZqrVavZuzAq0YHBVquMVs8ayntmiUqqMVs1X0ZiUqMVslF4Aa
rZswp0FqVarZswp0Fq1uviUquMVs1X0ZiUqsvZs9m05idabZrwpyFuVaL6s4
sgM2crYu0KDN.ag0ZiU6XGwwEIgyuKb0CS73MhA+Z36Tu69O0Zb0bqtPNRFi
v9ll7vCKhZEB1AHxEb8CKCcLEiJycdE88CYBDa7+6kQoaRPTmg7bZtbux0ch
ACBMLsGYXwT5DfZ7OhSuYwr4HFZ1igaPThChvbtjRQHlPUfHP64lyIolQVDy
2OrLTrq1mkN.ugyxYmqdcjDNDxfzwDtzIgSo93rMRicLfUCqcdraCXWNfg0U
fovMsbmXVDupRU0iPsSUQEWlFmUoetr0XTxmtRcSqWuTiYF55jK3U7by6U7b
ysMyMJ+E0bqpw6qCJm7fNoEStWVyMmVL2BdQM07awLy6kEQqEyL2WuBIegIF
oURQnjWXa.PeMuA.sczN5KqYWq1CfMfysbuYdG2ZhSayMIavbdCbTqINosRG
zVm6.ZzwrF4T1Cn19mcfuXOPbj0lG.nhVYJ8Px5mhWMO4obPf3KuYNTPCN23
5m6Mpx9yqxm7+4svL.blgq5ApOARjFZQaLq1IIkZvOjh9bGlJAOI5eAuitmm
Zu+w9D4piqXg7Sn7MmuC9xpGf7S7Y0A+UkhtK+qeXYU9AVs72USfplurZWtT
J5SAZHOPg9rx7NkANLrnyBw8I.m4PhxP3e25EQgaiPahBm+6t57Q0JX6ILUj
..W34Q.+4cDFkmfDTC8vod5Q.3BGrujbTwOkg74jQhM+G+o280aDyvHzse94
s2hgGHvCT3A1U8KKecHL2H4MLpSd4MlItI++ph8mOVL+vVnnzMgy9Xbgnoob
G2rjcfa7HUwfW4mpeW8vAQLPbzzs2oAZ0CIPmCxXIssheKCW93OVzQgFPBwo
6V.CnAiLv3P3LUh3c4CoPLBljiLTwukgjgbA1nGnCKhledrxfrCnRF7y9aMJ
+zz1uAPtyCa+h8LSVzwAO0XrDWPqvGlkrHYSVcgR4j.10k7Drb3LcnALOZOS
Cn7wjFPlBzfZ1NeazB41JNEJYrgdOaZSjHnPhHp8rCbMiDA4XxgGqQi0QRUo
0nkIah9P7p6SFQvM+6TfcCyc8coR1Le4e3r.GhlWqd5gKTSdXeUQ44xJkdjW
UzB7RkTf8Er3u5BqOeQ0qSyA0usXdntPtuSw.SVUE0eT0za1MqUkReEkQOts
tl3b7xPAOkTYYyaVIy2P4x2Pox2XYxWUIxWe4wWeowWeYwWdIwOwSOBFj.Id
rdM8H3W5zi3T8iKJ37qQoOFuEo.Dj3IwqlsX27n4nvsnPzSgOiRSPODkh1lF
tIU7561JvMjvzTz7vzPj39KuNdE59MIKE2rH46I04NYCJb85EwyNV86SMjhc
L4oRioX8aNIUk237.se.adX9PS.oDlgJ2nni4Yho+t0I66jDzYRvksMYoR9z
VzSOFsBs8oXX1qYaxaolji6HSvE6tOOBIQ5+fCJb0bjX9KjLKYWQqRDWMGMK
dyrEQn6hjebsrR4aK4H+928m02wWTrgY0+quelQeiDen4+vsfQjLMXDieXkP
SQEaQzlMBgT5hKGcu34xW8us2sa+cASijKTyE8CgeFAg.3aP+awq9T3h34nE
waSELcODuZkjwSvV+nPto.wuKZy+F5qEuvhEn6i+LHlUxtF8DJSIrWVLifwA
Za5FSlQS+gaAyHcJvL9C+36+OPe2+6+m+32b0nPBo4ruGClierO7NMDH9mOE
zze2VP+XSA52rvOEEJ1DRH33iqRdZkP+os6h1NVTS8xBJ7fSYlJNDqGM92sE
jS2owdCOmrCMKbkTai36eNulwBUR1sMBsas7Y2mraiPvdrPuikIoBUZt6YsZ
wv9Gu6mNr+gRMlmdLVbOdTnRs7CHeO4GNbgL5ZOi1Jztd25WTaFnkE65m6gw
Xu.i+caAum2Tf26Vvf5aCmOWLx2d686VMSN1Eu98BkFjlZgU+kn9KU8W13Hn
ALFlBdxg34NVBZL92sED6fo.wVno4xvTTx8ELgVYHzdam+lQk1R.vMfOxz1l
+caiktNShUxhMFtEea7FcL6ueQRXp9AB7.cLosLHXsXc.bGMZqA+tsg1hmPz
161klJDM+sHb7oe3AkVR1GslwkV17uaankjIDsLb1rnE2tdyyHlZs41QUtqN
B95fvMdxca92sMzSpcsor+xosucj0Oxfe21PKYSt0le94eEQu.qM8445tsi3
Zyl+caC8jOFzy0gqh5ImLpf.sOhBfveKq51SvfN3FQSu0sAdOoG2KLte07R6
y7GmRJdPRAb5SJjRJuHnZfJdX0CTcDTcH8BUy3acanZdcmp45R7XbEQRkYGx
rHBOdzrl8gkNwsuOJZgvjxnHoCq.+YcMZY3pGVDcM5QYqOVFtimhB+Xd2bEt
EsJJZdg7H6TuQQM1aTzwLbs5j5Fr6fNdgqs4e21va5+hRfclq37x0uhC5kU9
FemaC3Fz8E9zCozkOgxoZQ.Msvuxt4fsJtF+p3ptjEW5JtgKGwoP5HqKBE+A
MGwgaOUW1W9mUktPFqb0WkhZf+PEaXcHT6CXsGoKWEn7IvPJJRn0PTvrtSU3
ZGdpHJXcGxl1MpBkNVTEYPt.Kp2NbDBNN2oQA1g1XcrTLlzsiN.oO.MfqnCU
7iYJcnWqHIHmQLGlE6LrcVHjPnN2DbFD.ekolL33bgddEvRC0jp1MEt9p7Mm
xMuj.ttrhizTBkakkFfVOdWOGtuJWscB7cnAmlr1OJWTTPi.+8emSeVuWVAW
NlCOvzqQg4vK6TWaLYN7rLGck4X+Y+jyHvc3p9s3PsuMZbG9VtiNK5fOdLG5
dcvHybDXYN5rEQiGyg6kf2nP+S0xaztsU.sDIfm0FXIGLXaEFYT4NvVtiNau
HezXNfcv3D+Qk2fX4M5rJGPS2gNJpbn9sXAi61JLKyQm2Vg.QpAJy8Al6fCb
GbuQk6fa4NNOQGZqLGGQGjwk4v5ErNybvzIpr2vyb.I5NiOt5b7x2IXF0G0T
IVF7.AdfBOLg5iZL8oM.Sevb6z28QsQK7QjgKnQPBbwzYv5fFPU8gvia.zFi
Nq.pxCFKrGOzXOMv+vYSzPi85tnoy4f8tNiE1+Cwq1MfALU65LFDJS5Ph+fq
ybc.miPOK3ezZdo+kECI5iGQ3G2m3+nkKG+uRVFMb3uNfjiB7qCHYu.+i1tt
+oAj2W2Gi8CFAQ+PCCf2Kh9YiE3+sCG36RFMrW62SgUOmOzOZss2uO59zgrK
uBslI9vK1wS2KTc6AoNtiE5+93GdLcHk7.opElMBh845FVBuGH.diEA3Om7z
.1ji0NVGjIOz65RfFZseO.+9iTCHEZnYnt5FAdGfwF69tNY05orUhZXqcsRu
F3MVc8dAkcczp4n0IaRGQmxfMxoLXvI.tdmKZ1qxk2IDJr6XvrXCoUrwkav0
k9ri8i29uLoKe6tRl1H9NEFxNpln60k9LbMRCJXnL3KUkHDOdo45abZzxsYG
QDNhOwUWekLQ8cvGdJ4vSoGdJ6vS4Gdp6gm5c3o9GdZfo407ZY0eHa7gGiUO
tnHwUVBZX+C0jlOihYmBRU2Xn096cO8N.64x7ttzmc7ccd71BCFFMffUDqSe
1IbZhUJ6KGl7udRwZuIqJ6J6YFzTkoPReKSwedk7AU4R8teZ33US+HuNR1XI
lMqfKtPML6Z1xxWskEuwtes2ncTR7K661Wnu9eOWGtkbymkufrdUTymJOqPn
FcVgPGtpcI.19BROBk.QogjUJKhbN05BDIUc7K.Z5I+XltJJXBcJUPgy9ceJ
TfUY+snbjUE2E6PcB1jD47Cfj6u+3ai9OLWw+yyH4dYGAU9rw37Wv2Yhe9Kj
KLf+00nak1KgtU5z.zsJiWQ29sna+SnaUduGcqzKlnak9RFICYHwniAngVIU
hIq7nbUJIgc8LamtShbXc+qxi5AG73erXo5PHHcSeAca7lQbuLlYQw0WkiGX
FsCQwsZrlORX8t4hU+yhh+TjR63Im8XYmmamq8XX7n4d92G9D56dOZl.51DJ
rxcaLzzyayoMVOqa.ETNf4jKwZGrJvj.QP2ExaR44iXIMwSyO3k5UO6ebeQn
8PIjuNfSJ0tL33i6jVpLkSNkozdlDK+A5FbUHGvJu6Gb7d296siSZkBUYMne
dK5FoEN+00Cs6MwZM6FC2axXry28lXr2zh82ARKGu7Gb.GeLpzR9eHKSbUx4
EhoK8NZ7QDFosr+0m8aSOQOL2.3nVB74UvYA8vFAfaSzhd7B5JzSm1RdNa7W
mhn51XPELpsKNft46UAmKqO60NqeVunGb5KkxNKdecNtQAs2Aa8ojtB97W4L
+YpPB0CNADBQwmCEPGpWWekj+ptkFSAbe8x9S44xDScno7OKnmn8vEj2SAkd
GMF48d8h7YM4Z8YggWOnuOwYuwX782Sutx1ScdkK3gxbNXwE1g0GT.sqEfR2
BZCc9Nck.PdkS.v9t417k4f6gMe8zdhfx6CMOoijlm6Gb4ayeGSUTyV46WNs
YaxtMyx7Vk5.qPruE5nHtFsMMd09o8eK6b963O2iwymexwI5UKimuNIdU5Is
gvZYlZ6v1ywvgsavjZbWxvo7wM2eRMtKY3T93lLs3S3lxd6Q5131ETgAC6lp
qeuhWoyxUpJydTWMPSVloLWDmtMYoT0Di3AtVRmvvEuhCYUJ7hpqFpYqorjr
NJBf5nLNSlShJGo4r+pAZFQLUnlL9LcaJoIK9pYlri7kc0Ps9Sr2HhZJKIa5
H2PNtIlNtoSqwM1zwMYZMtMVzEdxLtgUhlvnT2JVb0iatvFYrqqK2c+9Jr.m
b6xnuhgU5xRfF.q5pK9T12aRoKPICmJDuR6JsRuEuhvv0t3q3UX01itZGfT3
Jriat8aTWMjHAwTshXc.I.cdnL8FLGtZPYJMRw5IlBp31nfJo8jB8l7YjBHt
MCIoPMivlNincXF4QxOiDpz3MJbWXizLC2MYGLWoC.nTFS5WTPVttRTKdErx
xEOzFSXLiItipWmwXBSENDID0UWZFSgn2NNk.NSttjXvr8WMTtAwyz0Ztcjs
Dx+IcYonIYpqFpkZlp.KtiKzHZ+IxfUPvdtpqFJZDwTI79caFMjTBiD.P5Hk
PqnC3XDBjuJpqFLw3RdFeClRzNRJvtA2fotTWeYUFnW5.J9U3JtGL0gJ.Uc0
fNmMwBbVGsPQ7KbiuXJK23Bx4N8YxZwqX5LLCD2qtZPmxbSlxcTFBl3eimGw
iT+TlS.wkbfJSFZN6.S3r853T1WPvBbBv4myrByYfyFRjJBbxWT7JWpNuwYk
cErhf.p2PG5UDXSjrQ63tlpN.IiyjFs2Y.AJOeLAzkvycfADOSvifNhGhU.t
9BVHlYKXnkckNC8HZkp7GZFDSjev5FdHLYIPvcvN.GfyyKbAiB4FDbzjczU5
y4GVPIWAJgpaFoGcktZAHfPX+gdUlQtmuiKxzajX.JomsxqFzYKyjYaGUVRd
.DPwh0PL3vR4.OS9K3fIGAvZD7POgMwERrNtgiPeIlSfiLAcpYMBSIcDpmS0
EC5700j4qSGIvBMhHBUJ7qk9BBA8FbYfdFmV.05rzKfC4M1rE9K0AtXCwtZL
OXoEj1KY8WwhWwgnbBsyixuhoKrFmAzI.lt4guyzxlYSi.OdZkdGXSikd.d5
MtMQSs.xzabaxtmA7o231DmID3NoF2AlF5O2tERhgZX62hgMYxLr4lxj3MoD
daZXsClV9oMf0BlD7jBsMRxMaZg1zVf1SKdai1emNoF1Fm8lSqgcYAPrJyml
XJTgMNruXmI3H2rv6FLAG4DiF4SLyFvFGayoUpfwMMSaYcDvoPzLkE5lJJyz
8WUQoc7V8T6sv.N7SQy+fX.DMK8Cx1zW7c6RgR9H2TqldTvUOrH4tvEJbIZy
9Oy92ddz8g6Vj9gBMcCx9lNf5NeeHfYEdwx9v4uYm7kx+lGMVe6ATP8Wfxpl
b4ptHXxVUe1pz5IpxtvfJUIgimKn3y44pjqxaPLmzprn6aQkpJ2gp5udAhWr
XSypzS6.Ge3PIE70BK6u6+N01rrppfjJTLRYvxQ0ajK2WE8kxd195MpkDgh8
RiC8Qi2EtXlr80EgReLBsIb4ZTZ7xnqkWJ6CMwO7PzF06IWwh.t7r6RYsjlR
3yQ+ojE0yBTfY0IiYs75DqTZEDFNJTj7XH8MI4pQrBsA3q5Q766VEmJlhwai
NFjPoIHwne8tTz8KRD7Aqd.oj5f9T3hcQambfHSuVKfjkyM0.hj9DDe2lHIG
Xn.91lhRt+X.CNpu19MJHd1tMaD2DTZzx0IJ9TTZ3lGh1+JgqlWjYFEuBsrb
7lcAwaBvzxYrb8GkBx3xe5Ry5BfWnYdc.uSVEoNbv5vjmzlIOolUrTc2oSGJ
riqp7SktBi3iNVyJbrk0iHzxnzMIH7JzeLbVprgmgQ+w+6cgqRESYwKO3HGt
YjSWdy5LjqYnqTtpqF9sRP28LRrS3b4xY0hU4pTovQ4EaEKEEKWEqekssZ0Z
e4KG840azhQuFcexhEIOEMWdiBQx4h7auL7ivOzL8OqXe1aP+rXWqqa01V7K
uD.ltr0ghCwkUtD.tWuRrDC83U6R1scwynkIhcwR1bf7b0EDT3DcE2C72PNv
Wf+NOnv6UP4QAyUzz.FvZX.T7LvsNTfEzmnvunz7SfApQERrU77sWiTavpVO
8onOrUbQ7bz8aRVt+EuQ7wertUZzKHZRgN2.VuWqtUviq.N85wcRDZ+gtCc+
fyJQqQwNleNwLLC1vPo+09MauN6EJErH8JXcG5tAGpLPsDu7G7ummZIjdcS1
2q1VUsEZxm1e721Irpp1Xy9cgDhcNU36YKdWeVXC7jArS9ALwvYmNwyk+.Ct
ID6tjMyi1bZa2lcn6CUzCBB.Nd4tk.r33zAfW2urxrJnaHec71YhA7gSTml4
sK6fD1D5CoW2U9myYc2.vuiAG73m0Zk5a9cXmGlSU+.lvu2uZ4j2.5g.Pc2i
m9N8NdRKhmdcAO86wsrxNghDpDM3abgabOd8FWtAMu3tbCB6jljKi1tM7gnS
vFYZRVMnLnVIy.VOJbR8ARVkLlsEO76YUAuuk3QeoXil+f.81XJsE5.Vstez
N4JUw8SLraFGJYKXtCNvEu+jx4nsfaiPpC9yWUetm0dsyBWIvaooilsHUK6p
js3aPQ71Hii1I8xUFxAmfBYjgGiAy2t5mRC2jhTSTkubxu8wmBOD2pRtGkRY
.OqcTrOZjBWxx+raTgSakrCSI886jaUYGzo.6PVDevY+skxL12bcE+FxCxrz
nMeHZU3cKJvd.QMbe3BqIvgpvEjb+9nklEqzb2dgc1eTh+E6md49.KSlmc3g
U1aGu59jBwbL+ataULf2k9tpEoUcemGce0u410QQyWDCpLeSoehzn0aqdL+o
3swZTsrOPzJPcbYzgu+d4hH4hk+dYexOuNYUDvlW9HIb0pDsLjShO6IXU5yZ
RcoTBw5sp+cVJVmnlOk9tYbdjRgCUfnxwoUJh9XxlzZVodBSidvJO.HJ4SHj
j+Pata6mbuMeP06TTkqRmCkWnxbR0AYXGkeQis5HD+79exyoipifw8n5HJ5U
Q+0cIhmgFZxhFlWG0bE229gZAhI8FEZwfqVuaMV6.mODXHlrPq4wL+QI+Wd6
2y8X43GsuYsjqDujt8LaMGXvnqILVGeVKU.fX8ooQay7nA5qvWHSjzgVP+f1
A4cPljWux3rJRr+PWXan8qkR5zff4aHaSo1GQ6SVluRnF6WQPeE8RYRsFX.N
E845X64WHNipQiMYGf3WIyusAA6OIex6NWRArpstykLTtykqO5fFCiIw8pGy
Bm8QAc.9uAektALzr7B.6flGt8o.vjv44yMGSzbc38tX1VoPLoMQGsJCGFu+
0fcazlNFJLRO6cMXUnG6L1yf62m6YrdSx5nMoO2jy9G1MNzJZ.wV0qyJZDzI
dm7GpAku5nEwtTe7F.mZ3fukkGSbkFX7BiV0mn3YA.L3ONa30SgS62zEpJnp
p4fB0V3oY+d4Yr+I.poiohcCjp5CMEG3mJPqmGSLCFSGMvG7wD0fwDwuciIe
n8oP.dx7WcliVpiIiVVEi1ggS6HvoBNMmQkpR4lNlvsfpF.GT5PbZ78B1e0Y
NZwlvCVrDgZlpRI3b7fj.u9hGrXmkrtQKtEiVsb6ryDNduMZYlLZoi5JF0OG
ugwD2ukHne.DTDcVaSJ4JHWtkWw0W0GyDVSna.ukrtd66A6G5EUDn.eN+gKs
IwB9sbzp6uPfoJLecahtmFsjlD12VrkAMNOnGmQ0JGW3JFnLnKrjr7qfybKF
87E9QLQ3GskB+bgdqCyARqR8n0woeFs3dlljglZu8k6pyU4FhoJlNdB+nlLl
XjwUEFiTLscxi0Z8Q45S6wCWctDUSTAbb2PyH6evipFfXeSY8aAMkC5Tw0hU
.EA48fXErIVqQbF2EpFoUpW6FSZQwtPhHRfGJdU1C5s8wmuNfDSrZhNx5.hM
AcYi6ZFuAvNjL5nVSCscHL+yeMSfIhc3sTaNVggqlcsOFtTWCzbf1Rk9YdP2
2GhmAGZB+pqNWI5FYT+Hq4fQhzaK8VquttufBYVVwqXP4bpE9qtpO3EZDcCF
WzMX.zC+bGSlPv6jkATfz5h81e0HLVGYGyYh3bu1sCCW2M00cN2bWclCVuyY
sc8CVBT1T50upqJLXEW7ud6+e.qiJ0PB
———–end_max5_patcher———–
</code></pre>

 

Comments Off on Wiipo v1.0 Gestural Tempo Control for Max for Live using WiiMote

Live Electronic Performance submission

Main patch window

Sub patcher: looper

Sub patcher: effectons

Sub patcher: effectons - pitch

Sub patcher: effectons - transposer

Sub patcher: effectons - reverb

Comments Off on Live Electronic Performance submission

Live Electronic Performance project

Initial ideas…

Perfect 6 sounds?

Field recordings
– hummingbirds wing [very close]
– honeybee
– frogs
– water droplet
– crickets
– whales

Contrast with inversion (harsher points of spectrum)
– trains
– hustle bustle
– steel works
– chainsaw
– demolition
– catherine wheel

Algorithmic composition?
Iterative production

Concept that formed..

Divide pixel array up into rectangles (16?)

Top half (8) nature related
Bottom half (8) industrial

Each rectangle triggers fields recording loop

Proposal…

I wish to use field recordings from nature and opposing urban/industrial environments.  Contrasting such with an equal amount of synthetic sounds.
I plan to create a field of these by splitting the frame of vision/pixel array from a camera into 16 equal sections, so that different points trigger and mix different recordings.  Moving hands as if swimming through a sea of exploration reveals different findings and sources.  This also applies different effects.
The closer the hands are to the camera the more frames it will cover and more layers will mix, so if the camera gets completely covered then all recordings will be played at once, without effects.
The pixel array will be divided into 16, which represent the samples/recordings.  And the screen is further divided in half cross sections both vertically and horizontally.  Vertically classed as Left (L) and Right (R), and horizontally Top (T) and Bottom (B).  Left associates to the urban/industrial recordings/samples, and the Right associates to the Nature sounds.  The Upper section further corresponds to the synthetic sounds, and the Lower section to the live field recordings.  This is shown in the diagram below:

Further relations to the sections are the effects:
L + R  = Spectral inversion
T + B = Pitch shift (0/ > + > -)

Comments Off on Live Electronic Performance project

Live Electronic Performance samples

Field recordings and synthetic sound samples.

Recorded, produced and sourced [from FreeSoundProject and SiBegg/Noodle Recordings] for the LEP module:

WHALE SEX

HUMMINGBIRD WING (EDIT)

FROG CACOPHONY (Recorded on my walk as assigned in LEP then using the lengthy recording I mixed and overlayed the tracks to create a more active sounding environment and tweaked and edited it by changing the pitch of certain frogs.)

BUBBLE POP

BUBBLE POP ECHO SLOW

FIZZ DRY (Also taken from another walk as assigned in LEP then edited)

FIZZ SLOW

FIZZ WAH

TIME STAMP EDIT

202_Q_Dying

EUarp

EUarp Rezdelay

EUdoor

EUloop

Fbak

Fuel Bass

Logic crash

bloops1

break2

ElectroFight

hats1

cuts1 FX

cuts3

bass1

weird Pad2

Strings rev

Synths rev

Comments Off on Live Electronic Performance samples

Mock-up code

Memo’s beginnings of a Processing / Java port of a webcam-to-osc/midi app.

This version doesn’t transmit midi, but does transmit OSC, which you can use OSCulator to forward the OSC messages to midi. The advantage of doing it this way is that you can have another computer on wifi receive the OSC messages and map to midi (and send to Logic), keeping the CPU on both machines lighter… (or just keep the oscTargetIP as 127.0.0.1 to send the OSC to the same machine and have everything running on one machine.

I can use this code as a basis for detecting hands to send midi/OSC to Max and Ableton to control filter. From there I can develop the code so that the hand movement also controls tempo and head detection controls left and right panning.

For some reason the applet doesn’t work when published on an html page, probably something to do with video input.
/***********************************************************************
———————————–

Copyright (c) 2008, Memo Akten, www.memo.tv

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see .

***********************************************************************/

import oscP5.*;
import netP5.*;
import processing.video.*;
import controlP5.*;

/**************************** CONSTANTS & PARAMS **********************************/
int oscTargetPort = 8000;
String oscTargetIP = “127.0.0.1”;

int numGridX = 15;
int numGridY = 4;

float gridSpacing = 0.1; // spacing of squares

float vidMult = 0.5; // ratio of camera resolution to output res

int fps = 30;

float triggerThreshold = 0.05;
float velocityMult = 5;

/**************************** VARS ***********************************/
OscP5 oscP5;
NetAddress address;
ControlP5 controlP5;

int numPixels;
int[] prevGrey;
Capture video;

float totalMovement;

int gridSizeX;
int gridSizeY;

float gridMult = 1 / vidMult;

float[][] gridInfo;

float maxTimeDiff = 5; // trigger once every 5 seconds

PImage img;

/**************************** SETUP ***********************************/

void setup() {
size(640, 480);
video = new Capture(this, (int) (width * vidMult), (int) (height * vidMult), fps);
numPixels = video.width * video.height;
gridSizeX = video.width / numGridX;
gridSizeY = video.height / numGridY;

prevGrey = new int[numPixels];
gridInfo = new float[numGridY][numGridX];

img = createImage(video.width, video.height, RGB);

oscP5 = new OscP5(this, oscTargetPort);
address = new NetAddress(oscTargetIP, oscTargetPort);

initApp();

frameRate(fps);
}

void initApp() {
int sliderWidth = (int) (width * 0.4);
controlP5 = new ControlP5(this);
controlP5.addSlider(“triggerThreshold”, 0, 1, triggerThreshold, 20, 20, sliderWidth, 15);
controlP5.addSlider(“velocityMult”, 1, 20, velocityMult, 20, 40, sliderWidth, 15);
}

/**************************** UPDATE ***********************************/
void draw() {
if (video.available()) {
initGridInfo();

video.read(); // Read the new frame from the camera
video.loadPixels();
img.loadPixels();

totalMovement = 0;

image(video, 0, 0, width, height);
for (int i=0; i= numGridX) gridX = numGridX – 1;
if(gridY >= numGridY) gridY = numGridY – 1;
int gridNo = gridY * numGridX + gridX;

color curColor = video.pixels[i];
int curR = (curColor >> 16) & 0xFF;
int curG = (curColor >> 8) & 0xFF;
int curB = curColor & 0xFF;
// average RGB components (there are better ways of calculating intensity from RGB, but this will suffice for these purposes)
int curGrey = (curR + curG + curB) / 3;
int diff = abs(curGrey – prevGrey[i]) ;
//img.pixels[i] = 0xff000000 | (diff << 16) | (diff << 8) | diff; gridInfo[gridY][gridX] += diff; totalMovement += diff; prevGrey[i] = curGrey; } drawGrid(); totalMovement /= numPixels * 256; OscMessage oscMessage = new OscMessage("/cam/movement"); oscMessage.add(totalMovement); //if(totalMovement>triggerThreshold * 100)
oscP5.send(oscMessage, address);
}
}

void drawGrid() {
noStroke();
for(int y=0; y triggerThreshold) {
fill(255, gridMovement * 250 + 50);
OscMessage oscMessage = new OscMessage(“/cam/note”);
oscMessage.add(true);
oscMessage.add((y * numGridX + x) / (float)(numGridX * numGridY));
oscMessage.add(gridMovement * velocityMult);
oscP5.send(oscMessage, address);
}
else {
fill(255, 20);
OscMessage oscMessage = new OscMessage(“/cam/note”);
oscMessage.add(false);
oscP5.send(oscMessage, address);
}

rect((x * gridSizeX + gridSizeX * gridSpacing/2) * gridMult, (y * gridSizeY + gridSizeY * gridSpacing/2) * gridMult,
gridSizeX * (1 – gridSpacing) * gridMult, gridSizeY * (1 – gridSpacing) * gridMult
);

}
}
}

void initGridInfo() {
for(int y=0; y

Comments Off on Mock-up code

Feasible architecture and data flow

Speaking with Davy Smith (Queen Mary, London) who is a previous fellow student at Culture Lab, we discussed my project and possible options. The music engine side of things was pretty much decided; Ableton Live at the end of the cycle, receiving signals from Max/MSP. The factor I had to decide was whether to use Kinect, or whether a webcam would suffice for this relatively simpler model.

If I was to use Kinect I would have to familiarise myself with the RGBA and 3D (like wireframe) data it sends and may also have to use OpenKinect and/or OpenNI, as well as, OpenFrameworks to communicate with Max. However, it may be simpler and more feasible to use a webcam and read straight into OF to communicate with Max and Live using midi data or OSC.

To control tempo using hand movement I will look into optical flow combined with OpenCV (frame differencing, blob detection) to detect the hands and create a metronome, which controls the tempo in Ableton.

I have included a couple of extra ideas, which I will build into the sketch. I will include panning; controlled by head movements through head tracking, and also high pass and low pass filtering; controlled by the x and y position (height) of the hands by dividing the pixel array from the webcam into rectangles and tracking the movement within it.

Below is a basic system diagram sketch of the architecture and data flow:
IMG00692-20110124-1711

Comments Off on Feasible architecture and data flow

Current practice

I previously met with Iain Spears of University of Teeside where I discovered the controller route was a redundant path for me (as I posted earlier here)

So, I met with Steve Gibson from Northumbria University who is also working on motion controlled music: Virtual DJ. He was using FlashTrack and an array of web cams set up around a perimeter to create an ‘active’ area/zone. At different locations in the zone, different layers of the track are introduced. Flashtrack recognising position from the LED sensors you move around the zone, which then sends midi to Ableton, triggering instrumental layers. This was relevant to my practice, however, this system doesn’t offer me much in respect of specific gestures, especially using the bodies movement differencing to control tempo. With this system there is no way to achieve this. Although, the system and data flow did open up possibilities when considering the architecture of my music engine. I may only have to consider replacing FlashTrack with something else i.e. Kinect, LILA, or webcam, but I could still utilise the midi > Live operation.

I then met with Atau Tanaka to discuss my current standing. Atau is a relevant practitioner notably for: BioMuse, Sensorband, DSCP, and S_S_S. Atau explained that my end goal was over ambitious at this level of study and that people spend full PhDs on similar kinds of research. He advised that I would need to scale the project down in order to realise something solid and avoid disappointment of underachieving what I had hoped within the timescale. We discussed the architecture and data flow of the system, and considered the music engine in parallel with trying to determine input. Taking on board what was said made me think more realistically about the feasibility of the project, programming and timescale. A starting focal point was necessary as a basis for commencing development. I decided that tempo had taken prevalence throughout the development of my concept, mainly because tempo will be the dominant and primary attribute the system will look at to determine the style of the musical output. So I thought it would be most practical to begin here; looking at optical flow, combined with OpenCV (frame differencing, blob detection) to try and use hand movement as a metronome for the beat.

Below is a rough sketch of my initial and basic architectural plan.
IMG00662-20110120-1859

Comments Off on Current practice

Wizard of Oz experiement demo

I conducted and produced a Wizard of Oz experiment video that demonstrates the concept of my vision.

In order to achieve this I had to produce a track to demonstrate how the interface would operate. Below are the productions sheet that I used to plan out the piece.

Production sheet 1
Production sheet 2

I selected tracks that featured prominent effects, specific instruments or particular characteristics that stood out, so that I could best demonstrate certain features of the proposed system. Below is the video I produced using a video camera and Final Cut to piece together the audio and add subtitling to explain what is happening.

Gestural Live Music Production from Aaron Smiles on Vimeo.

Comments Off on Wizard of Oz experiement demo

Motion Capture: Gestural dance study

I organised a motion capture session at Culture Lab to capture, record and analyse dance movement and gesture with musical genre. I enlisted the help of four dancers from varying backgrounds (pro and non-pro) to cover four different genres.

Dave Green and myself set up the motion capture system with 8 LED sensors and decided we would need 15 markers to get decent results. This covered all the limb joints, chest, back, head, shoulders, hands and feet.
IMG00685-20110124-1548

I planned out the days events and arranged for the dancers to arrive at intervals throughout the day. The schedule was as follows:
0900: Set up and calibration
1100: Dancer 1
1230: Dancer 2
1400: Dancer 3
1530: Dancer 4

I got each dancer to bring along music they liked dancing to. I had them dance to 3 tracks in order to get best results. I got them to choose 2 tracks in the genre so that they were comfortable and then selected one myself from the genre to get a capture when they were out of their comfort zone. I also asked them to respond to the music naturally and without routine, so that I got a more natural and organic response. This was also the reasoning behind using both professional and non-professional dancers in the study, because both can be very different and my target user may not be a professional dancer.

Here is the list of genres and tracks selected for the dancers to perform to:
Dancer 1 (Saskia): Techno/house/trance
* Track 1: Pryda – Animal
* Track 2: Claude Von Stroke – Beat That Bird
* Track 3: Rachel Barton – Goose Step (Justin Martin remix)

Dancer 2 (Katherine): Dubstep/DnB
* Track 1: Magnetic Man – I Need Air
* Track 2: London Electricity – The Strangest Secret in the World
* Track 3: Noisia – Square Feet

Dancer 3 (Kelly): Commercial/Pop
* Track 1: Cheryl Cole – Fight For This Love
* Track 2: Willow – Whip My Hair
* Track 3: Rhianna – Only Girl
* Track 4: [Ballet style] David Guetta – When Love Takes Over

Dancer 4 (Rebecca): HipHop/Rap/Street
* Track 1: Nelly Furtado – Promiscuous Girl
* Track 2: Eminem – Crack a Bottle
* Track 3: T.I. – Top Back
* Track 4: Plan B – Love Goes Down (Doctor P remix) [hardcore/dubstep]

I video recorded the session, which I synchronised with the motion capture in Final Cut after labeling and post processing the data using Vicon. Below is an example of the capture and video synced and split screened.

Comments Off on Motion Capture: Gestural dance study

Kinect bricolage

Some of the Kinect hacking going on at present..

This one could prove very useful as I could take the approach of teaching the Kinect to recognise gestures this way perhaps..

Although this would much more responsive and effective for what I aim to realise. I could analyse the data from the motion capture studies of performance artists and dancers and use it so that OpenNI recognises similar movements and gestures to then trigger similar sounds and music that the dancers from the study were originally dancing to.

Comments Off on Kinect bricolage