Help with a simple coloring clip patch

Learn about building and using Max for Live devices.
Post Reply
chapelier fou
Posts: 6025
Joined: Mon May 15, 2006 12:15 pm

Help with a simple coloring clip patch

Post by chapelier fou » Tue Mar 01, 2011 10:53 pm

Hello,
Here is a little patch made to color my clips the way i want : red, orange, green, yellow, red, orange, green, yellow, etc...
It's working good, although it could be much lighter with the use of some uzis for the clips. Anyway, my problem is i want to refresh the colors from times to times, because i record clips live and i want them to adjust their colors.
My idea was to refresh when i select a new track. (any better idea ?). And that's the right part of the clip : link the output of the "change" to the upper left bang. And then i got this message in the max window : "changes cannot be triggered by notifications", which i logically understand. Any help ? i got this problem in several patches so i think there is something logical i didn't figure out.

Thanks

Louis

<pre><code>
----------begin_max5_patcher----------
3131.3oc6cssbqhiE8YmuBJWyiYNkjPWf4sY9M5pqTXaNIbZB3Biy4zcW8+9
.RXaHAijsIXIxNODaiwvVKIs0k0dw9ueXwxU4+Jd2Ru+i2u4sXwe+vhExCUe
fEMedwxWi905zncxSa4qw61E8b7xGUeWY7uJkGeaQ913hx+zaWbZ75x3MOUV
Ds9ONbdeOOqbWxeEWetXz2PMGNa+q46KSiKkWbbyQUGp7O2FqrrkK898luJY
i7tku5G+ar+gK91nx0ujj87SEU2Y0Og3GTcS7vTr7Ehu7E92PGuR0VTVzqxa
wx+aQRTp2+KOcyxSVVR1ACiTer+4gGp+2i2HPkrwiQ+DgE9PnBVgCg02JOFZ
xAkr3eVYie.SRyi1rJJ64wAVjWo9fFBY.rAGJwFgDYXRjI3JQF73gLEUktXu
jMWDxPNaClGOSiFBdnVMBUCkPIpPE1B1rsHIq7h.FTOkbj9RNgJcl36aKk70
uT0DO9hJ59C0lPhipW50SanAXDVhQTtsfQkdq71MNcaTtlN2vPzg.m.EdHum
dgAeiYGfSZxaweKe0t3h2hK9j8sXPiGLWMZM917sbMiHsZeYYd1xQZDlfgJq
gTYODYQkfN7+iWlO055J64Eu528zt3Ru2Rh+43483r07C2yPVWGnleF1ZFvc
qmbdq679Qz9r3aczE1Pitbn4NWMwifaCBZeep5SqJ3Mk7pKURZbUW8cIUs0O
c1KVdxZ3TUWwfv5WZ9DMnUKzJD84z70+Q7lVk1EK2D+8K6pTsPgrS+B4Yz4e
cOyjrsEw6hyJiJaL9124n8okO0o1g7sd+9uGsN9r+3tf7xCmxyEIaxypMhN+
x5Ce31UUKpZ5xZa2xyHKZaO+3x77zUQEukrKYUZbm5hp1qQYIuFUFWlnrGB5
3uK4U0zcZeshyhptFuracQdZZmKk5adqmuYS7aIqi+YxlxWjWqSnUmkB1psS
mdRcN9fq3oa2pZuNqySyKpZtKD9XAo8os5Y42cnAQHJL.Qery6P7p+DU.cKb
978LOuybMqj58cf8ossyd5DyBUyMV16ML78qnxf9wmYbrEGboodyiWYkh7pt
75PkNCy8g48nCXji1wjt3HrC+uyUqSgtcM257WeMV0Xe4xQDLFpEJlsb5ZVQ
00rB2LQZjb7Qehbhi1T6pAgR7TBkDcPYiGZDxAgRwThjHMHYfCCj9SHP5yMx
2n814tybi6cki+ntrLcHJQnCQUiy3qVNwgIg5FPZ6cp3x.Sh1QuebHPkq0yY
yZRjiEIDue2KtJPEOQc36th2lE08ulxQlHLiZzh86r4GtjefZL9p.T+AAz2u
mBe.X8MCX4j1b.8Yzv8zR9RSxN2pmjFX822OhuKeew5Ck8Cq4vqqstIdWYR1
wU.+am7J9tS7kjMa5thSYkZxls4Uqdrw.89ciZibo1cc0hQ1cOEv6ociMzro
NpYSbSyF4jlc8b+rHylZruDlcY2DG0tQtoc2SyVmvtqmCqG1zwJw1icyLEu8
cyw3IioevlCVU.TjbrK5s3MOoVE5SQkkEIq1Wpl9UGRO5ae++zHKHMeUTZC8
KGOmksusm4WdNZLd3DJLxba8VbwMG3DzPCn1RszFA59RskefhyU9MQskIWEf
ZquxTaQQTAGyGfYKBUfXg0MEDXAmJjMJBoXbvzyrk1EQyUgnfb0ypXW.X1xI
Y1hBLaMVPIBX1ZjfRNvr03.jDfYKfYKfYKfYKfYKfYKKmYK+4NyVV1t04p6x
nitqtt5tn6prV3rrD4nrx4njfNyob1UI3mBLaALaMxLakWbwJisOts3FvskR
SmAz6rrsBT6H.61jskAWEfaq4I2V.OJWgF1vzPFRLjF1nU9I30cLXGY5CyC3
joWCajPcUDMRRlXoZXaPFY7AxsFInLD31ZjPRFvs0H06F31B31B31B31B31B
31xt41BTQDrkty0MPudEjyZda6o.B7CAp1BTsEvuOnZKfaK6faqh78i.0VL8
TaoD5jH79xrEoY8.B5svrkIWEfYKfYqwkYKbqmzqtfBgH.IJiDTF.jnLRHIE
HQYb.RDPhx3G..BLIjyLJ..P9LRHs86lZo9pc7plmF415CwVfYKfYKfYKfYK
fYKfYKfYKfYKXGcc1cP2XkThsKlVvtICnfhDAFPmyLNCLa4zLasNMY6HkpsF
Jav1j1SYx4eKv2WdsnMayhzLDLeUR0L3xn0xfKBvpEjlsbkzrktc9Qn1uXBw
EknjqVona6hnpT3HgPgJkoioJMUJDUXa.8TrpmkpJd.ZxQx.AKFrW05n1Vn7
5PZRG4gbqigkKlL.LSNe3m1klWVSMf7SSIlS0h4nV6iMAgbo1w2MVszMLpPk
6PaFFsliKaiVKak1EtgsWad3UGP9z3cY132EqkXajZ9EMwn0rvuK9952EGnE
yUK9kq14B2Z9C2K+tX8O0K7U9c8A+tWleWj11qMNGHfeWS8Ana9tjvl46xlM
9cE2Y2t9Zg7lI31YVDfa2gc6paQD97fVaPA310X2tXlgsWA2tluaZ5WblxqK
c1300+950kpcQarVOIBAmtF4zkpaUaXVybcwfS2KxoKMvrlqgXa0m6sHBNIS
nmaU.lgLpPeerEA2mRbtZbnRQbyPXzth7RSsZrcEPcXSeTnXYw2konskELzl
Z21UnmabdNgZYsRDNbdNAapqaKJZno2inWbD5VFXpcirOm2XSGzAaWtAwl59
1hraS8ChsL+flNUPZf84+Fa53NVjePS8mPsL0CYpci8cT6NvMsahcMePpwsu
srE6X7hzrrb4iopGBGZep5axUgCnlkQUMKuEWTdqhYgnWLK9xW39fXV.wrL2
EyBEQEbLeffAmPEHVXcSAwwzsCp9QvSvzGL3lpkE4KVHAWyv5DhVorvUAneH
TmLYweitvYHnoeBBpSlLeW5pT7UR9Bysz5DPHK1P.UScLgrPffLADxBHjEPH
KNteWjSIjEP.gfPVrcgrzDce9feWPHKm0uKGDxBHjEvsKHjEPHKSnWWBHjEP
HKfSWPHKfPVde3mOyExhkELcybgr3lOd7cUgr3nO1ycVgrfg.bEBn34a.baY
ALuqJPAWUPHtp.bbVAO4pBLyQEzmqJfRWUvpfPV.gr.BYYlKjk8+Uhm3hTvR
yVSd9M78vqs2GtNTBg0J3EUVSjxuI8tPFOTZc99rx3BO9EgTzygT0Hyim1G2
yBTZwItjnA9skjaXiurnJx2+7smjezKLJE0Vh6rtnHTUtFRomfPYr8xpiyzK
QWTFbQ.cQ8EOI+3PogbsQkMpIexHb8TWhKka30pLpFBWYPkh0HWMBucDeBUJ
SSkh9tJs00Ijje.sQ0WL5SbLsQ4CwsDnMJPaTf1nba+tANlznvfaWPZTfzn.
oQ41tcofzn.oQAtcAoQARiZB85h.oQARiBb5BRiBjFED.xtgPLHVV.16nYvk
Y+SReP3KeoE9BclKsUKKOVMyk1piJjXGUZqDPBFPNCCxYXfD5lm4LLPZTfzn
.oQ80HG+jWDkMBpYAoOM+ndQDbmkyhbu83g2RV9Q+0.Dyx7TLKPfGaCAdrui
E3wPDvAAdLD3wSgJbvzPFRXjJbXGyPQXd.mHldU3niFbdHqUrGAxvABG79FM
LzoBGbHDYfvAGBGbXvvOTsf0JIUDnIUHH80LXHCBReHH8gAC+BEj9ywACwbs
O0LXsSnvvfgfzI5YaRAoS.Rm.FJ7KizIlkKKT69fnVUHNzRGHDzyhwQShvgC
HZWL5KMMZoHB3Ak9W8nF0H6FCQ65Xz9F6nRUf6vA8uKFcwFmGt3PhbAzspA9
uCgDrzX3+NDzaKn+SPus1l9lAUs.pZAT0xbQUKUnQYUswA0fzR9DeP3IpTw.
5v+OJ6jd2Ityrm78l.azq4kycqeubOv8J0kVvh7W1c21Tnz6ac2fUZVsfQiP
9wVy82R9C0bFaS9FXSgSpI0cuEM4IavmtIYTE2zZRAVGHEZfEwauLgO+F2HS
.I1kgRDRMcdprJClvO7ga0TMvR8uFCMfdTyasdKl1jbbjTSRmF6mLh1OIrk8
W+ga09Mo.fulB.GcxR4noogB55Q5SueJLThMXnl3k.iuduDmd+j3OieC9yTw
ccmOfQAsb0I+zjTLBG4hgOqcwvmMMECFZjKFMgpSSwfMBd95r26CLCvIbbaS
lJAAYcytgfm1IJazXVV3j2w2BNU8g+4g+OXEEiBI
-----------end_max5_patcher-----------
</code></pre>
MacBook Pro 13" Retina i7 2.8 GHz OS 10.13, L10.0.1, M4L.
MacStudio M1Max 32Go OS 12.3.1

Fairland
Posts: 18
Joined: Thu Oct 05, 2006 3:11 am

Re: Help with a simple coloring clip patch

Post by Fairland » Wed Mar 02, 2011 12:02 am

I've worked around the whole "changes cannot be triggered by notifications" two ways. You could use a metro object that periodically sends out a bang to pass through the data collected by live.observer, or you could use a midi note on a live clip that goes into max. Thanks for sharing, didn't realize you could change the colors like this! -Adam.

chapelier fou
Posts: 6025
Joined: Mon May 15, 2006 12:15 pm

Re: Help with a simple coloring clip patch

Post by chapelier fou » Wed Mar 02, 2011 5:18 pm

Nico Starke from ableton came across this thread and sent me a corrected version of the patch.
I don't know how people can still claim that ableton support sucks. Anyway, the "deferlow" object can be used to solve these kind of problems. Here is the patch :

<pre><code>
----------begin_max5_patcher----------
3403.3oc6ct0bihiFF9Z2UM+GnbsWloKcVvT6M692XptRQroSXFGHEljtmYp
8+9BRfCPvNxFDFY95KZGeBK8pCeR5UOn+4W9xp0Oj9yn8q89Mue2a0p+o3UV
odsxWYU8KrZ8yg+bytv8pO35MoO+bTR956pdy7nelqdi+8u5sM56QYd4OE4k
jlG+83Mg4woId4opWaW5O7dIKNMKN+uJdgrnvsGtJeOMIOI74H0U5+jEGt6v
ak75ywI6hxU+73FuZ5q40uLp9ki2ptBoO7G+Jo0Eee7eqt3XxWO7geILeySw
IOdeVzlbsJfozh22SDT9+DIW8.5qHuuo9N+ue4KkOV7vcFKXIQ+nH47Q8RIV
EZxXoA3dz.1gqf9Cl+WuDoynqW68sKPejnREQ++bwHnNOGsee3iQeTddIK8k
nrhZJ6i1U7yGs897rvM+4ITKu+a5ts8KYDykLL870LzI0LR.6q7BghxJ0KLQ
UCCKrirEu0Kv5Zz3KQEM3JkHek1vQifBcrlc6RC29PXxiWlHcFs8HjiqRpDv
koTLkRgQ5lfpNnv9VQoxJR1QdwaGUkhzmRgOQ8o6tz5TThPWmxuTiXRKpTEQ
0ZDQbLjodCngVe4x.0uricOc3MKICadpnZcznpCz95gN3zUWTkE5GFREGJFq
p3Hrnhk68f2dq29By9jdht71XLhpMFRUsJvW00jcjpcwuE80zG1Gk8VT1nFg
qOIiaydjDpJVXbitjp+V6CeqXjNEofhuz8g44YwOTzI79JAqVwVs99hwFsOd
edTxF0uLR+FUB9EI7E+P4oICNrmuwQ85SgJB8WVEhgqGZo0F9sp9TQR3Iux+
598Q4duEG8C626E5SpZMfFiTk3I0iyDaywF7hmZz3689ivWShrdnO9EE5CKU
BBQOQEo+Gato9REcmzs402i2E8VYKrhFDMRoqV+9EWvziR0WMUwpmw7QMt7E
p6i6R27mQaaluVUNyuy75TLUnj2+JpORq+qyGMN4krn8EyRWM+6O7iG95t76
Oxj9Z+A9dXU2K89t8OY0UqeLKdaZRYBo82s70q+IKJcz0O4sR8pORR3K880y
SS28PX1aw6ieXWT6xkhpwgIwOGlGkGqSTDz6ey3m0iPq0kKJIr3x7z9MYo61
09poeq256s1F8V7lneDuM+I0kqgv0ZwTZVcpUyr1uwomVW61bkcQsIcWZVwT
ijRJVRZ84d3Q0aVWEI.E3iX205uPhh+IKD8lZtAsaOdnzSDT3CSZj05xchYN
dp14GqsNW07AGnZjGDzYBjMiMt5PWfWVYjRDNtxfNekAeZgocXyiJ.pd84pw
TP30+e6uV8Z2U9CudzElSV4EyWO0U3XVsBGtZhAH0PUnpwAaoZbmVXwSuvRr
pvVEXPuBGWOgUN85Jxl5p+7PVoStrREVMvCap5Fn8Xw6c1wkSabx0Whzp5qN
hFUOm45AK2Mx1mLu4N55Qm+bmhqIonq0Z.cYEZ3iWnQNVglvfAcb2v6KuZRW
5YfI6r9PSVmNsmme0TW+WSejSB29MUvT+lKuzUpunRE2ZUpoGSdoeh79g0WY
.xrfn6QB2YYV9nL2X9s6hSN5bDU+TkefiT.rO80rM0Yk5rqWmNB2FsOON4v7
9+82as28S9T71sclhspXNd6KoESVtJUdN0cN+L.23L.cdlAJ0UrQY.4G+jyf
L.UXbI.eVVBTNlY2NCPb8L.ywy.XSS+Tgam96qshSk9INd5mMOChY7vHnyyL
.07dfjidFn9MJyKmoItm1okS4vhItv7492zq8OG8MdbW5Cg6pbL6vO55ga77
m5w3aQY1e20vBFhEi5kmPhFUKFo5stDQLPKFM55.VLBVL1vhQFhIEXwobXjv
jHdPYkCIVJXRU0j.FF6esbXjZ0UWoZ6NqZoGv.GFmaNLx.GFsivh.GFshvJ.
GFsgrR.GFAGFAGFAGFAGFAGFAGFWzNL55qM6xYswQf2Pf4b2h1i55FT67aQ.
meSZ39aSFycXbdlAnTvgwaYGFSyFcx060iQwP7XTCYsOabwXzWudG7ghwnIW
GviwkgGifAVCkuSLKfijmjuSFFKEkMa3GbeEK7EjqEemj.qtxS5sv.hXc9NO
sWXTvjQqHrAfGiVQW4fGiVoe.viQviQviQviQviQviQviQfhQfhQvhBfhQfh
QGvikxEpYNlABthdr.6U.fizk7dUB7Xz5dLlk95TXwHe.VLh80XLFLpVLRpl
pg99R6kawnQWGvhQvhwqoEi56Y79yUF4Hf8UVQX8A6qrhtx.6qrgrh.6qr8N
3PhIABtY6fCDkSBXM+qqC+7XqVFUcZNX+6P2fEifEifEifEifEifEi2FVLBX
bANzsz8Hkhcb+gNCJnvv9D.1oFfEifEifEifEiFXw3lcwuLUmEiuefScNNLV
c.eyTq+oDOpFLxpVSIs4kbp97d1+b8WzjKCXuHbWR00OHFs5JwK0qAOgbkA0
ywKir5xew70KULgAkQCwoPaVFQzaBGnczb9VBs1qEBdAaokU2EBRcOTDldgj
CDNomVmugKXtZD82ueWZdo8KpmM8ksL6V1hZ3N.AgtRsdtRtJxmBWEk5iC6p
.8kdLZOaEmoFcIlBitpqKWcp.3S9Tmtt8hDfs6la.oGNT018a4DI.OGhDf8s
aYqdAHD5UE5pMNpqSj.bvTDIf6S0QBnK1HAnIYKOfp5fhrfiDX04DPBplS.e
YEIPNKBDPsaQa0j.ZMZpESf.1TDHfJ7artRKw.AX9TDHntt7RNP.ypqhc0Bj
xXKq3.z4Pb.lc8Ph23VI6RKL.SNI62bd07AvK0v.L+IYkgpFkJ19QAFehXIe
hDobx+aFo.ZbTFBQrVaug67GuAFuyjwyya7KXi2Ul344gzSYWIFts5lo6LYi
y.DlimAv9tdFf53Y.1LEwFooat8xo0LC2b6LiCjwlmsAvFyGAddFIVEdxnpP
kKQ5LrJjZ.BlkAlm.dfMOP17Dv.B6V3lgpYLBMOaCz2PztQOqpXy3tQMKCLO
GIgwgwloPBY7Mhy4Y8GymNozwueROOCAX9BpP.HybNHydKJK29LlQF.iYDkU
PBJvXFvX1M.iYLDSJvhSgcAgIQ7fxJGxCmEbnxauX9WKrKlDDyTOXU6AugKh
H1kvLglLl.nHZ.61JqtYq7qZEgfhn45sLQplSSrv5EQ.eYKJpBXKO9xH.eY.
eY.eY.eY.eYMiDfVZ7kszHMF3K61hurpMTJE3KC3KaLiDH.9x.9x.9x.9x.9
xVz7kQ.9x.9x.9x.9x.9x.9x.9x.9xfME9Mv1x24Aiv8QSw4gCx0wyx4Ajy4
QTz4gDcAgoqyCJ8LEU8yfuLrieNr477kgc6CwImmur4Y5mrX3KalB3JvW1MH
eYu92wdxKCrLR+fkQ6CrrCVFc7U9t9wVK+34ygFlpLVfI5rlrionsI80j7nL
OwkIb79ENVeBm33BWoPc26qn8P0M8wFs.aQcqFlwrzWez9mXdzAPyH1W4Rkb
boYjvTNEns3LHPI37xsH84QynIWFflQflw1mhTXRffexSQJFFKEpZGTNIf07
ut8NoujnpSiM4L5j9x8Jin1kmwJ6r4PYzbk4Thn4VPFJitzxHK2PpI51vIlG
Pz3HwwBY4QzHEHZDHZDHZDHZDHZrQj.+kGPiX.nQ.nQ.nQ.nQ.nwFABX.Pi.
Pi.Pi.Pi.PiKZfFQ.Pi.Pi.Pi.Pi.Pi.Pi.Pi.Pi.KTvQUEPjIvDqySkr4fr
35fT35fr33fT37fr33GTXDBPCKPC6x9fadtRDtqeZKZNOxDJbac3l615..zn
s.Zrlwrzrvjo.xLz.Nx7PJyfj9iKjYpEuTDLrSLOCtJ.hYKCDyfsz+hZK8SW
daoeLrk9gszOrk9GO.7vr.NRZF.d7CGofXgufHuV.3YUr.DA7FamsEIAd.2E
1HbcvRi6hE21sE3t.3t.hV2szBaWb4QKcd4A3XrQzZN.GC.GC.GC.GyxJZMV
X26.QUysFsXiVCDLYiUBGHXBHXBHXBHXZQMw5.6tTdp1B3.qGoFnLCnLCnLC
nLC1cu2z6uZmeGtOW2e0A2B6uZW9Pa6L1f3AvFDGnMdXm3VB.WZqjADNNqkD
riCqn6Crt4GaaX3LPFHteP.6RfCxb6jAjvgmmCyZVg3jWTJc.NqNbLgOGHxv
8cJuI68Z2ziyJC+07JT++uyKV+lWzgmrdOnyPntWyNxj9hzdYFqjstsCpEuO
A4dyFAQOU6ORU9dKRMNs0oEmYCwexRbXiRbAWkDG2jzV2bvDk15JIFMhiIKw
0ddMGIw0Nn2jk1jlHb7yV3zah.bM4UXUmOsdFgWYZm1vTN4zmAkibNhEXgbD
wuYNh3Os4HgExQUrxUkiP3IMGc9cB2JG03IiShVXRhlRtvDsT1HQW9joLQil
WIZiB0fuzJ75snQimLgJMdXUO3BUizlOoZagVsqsHjoM6fG8rCqQiW0Slx9P
GVONU8SNdc4XT6.5UYfC9FU83JMfKjQIN1bdBHWIkiZzvAudCi9yEN5LdBHm
cMNJUs8ao5wJSIe3IbbUukb8e2y74+kuT7v+G9FaznA
-----------end_max5_patcher-----------
</code></pre>
MacBook Pro 13" Retina i7 2.8 GHz OS 10.13, L10.0.1, M4L.
MacStudio M1Max 32Go OS 12.3.1

Crubier
Posts: 51
Joined: Thu Nov 05, 2009 8:37 am
Location: Toulouse, France

Re: Help with a simple coloring clip patch

Post by Crubier » Thu Mar 03, 2011 2:16 pm

I used to have the same kind of problem.
"deferlow" is definitely the first thing to try out when you have weird timing behavior and/or when you get the "changes cannot be triggered by notification" warning.

chapelier fou
Posts: 6025
Joined: Mon May 15, 2006 12:15 pm

Re: Help with a simple coloring clip patch

Post by chapelier fou » Thu Mar 03, 2011 2:18 pm

Yeah, that's definitely good to know.
MacBook Pro 13" Retina i7 2.8 GHz OS 10.13, L10.0.1, M4L.
MacStudio M1Max 32Go OS 12.3.1

S4racen
Posts: 5837
Joined: Fri Aug 24, 2007 4:08 pm
Location: Dunstable
Contact:

Re: Help with a simple coloring clip patch

Post by S4racen » Thu Mar 03, 2011 2:53 pm

I'm gonna search to see what deferlow does!

Cheers
D

pid
Posts: 354
Joined: Thu Nov 05, 2009 9:51 am

Re: Help with a simple coloring clip patch

Post by pid » Thu Mar 03, 2011 4:42 pm

i don't understand how anyone can programme anything at all in max for live withOUT deferlow. any big device of mine has masses of them. in max alone you only need it sometimes, in m4l you need it ten times more. knowing your deferlow (putting the request to the end of the queue) will make for much happier m4l patching...
3dot... wrote: in short.. we live in disappointing times..

S4racen
Posts: 5837
Joined: Fri Aug 24, 2007 4:08 pm
Location: Dunstable
Contact:

Re: Help with a simple coloring clip patch

Post by S4racen » Thu Mar 03, 2011 4:53 pm

So whilst i've read the documentation and a number of posts i don't understand how it can do anything more than using delays to ensure messages arrive on time, am i to believe then that even though a message is delivered that it's not actually processed until sometime after whereby i might have sent another set of contradicting messages that should have happened after?

It would certainly clear up a number of issues that i've worked around for a long time!

Cheers
D

Crubier
Posts: 51
Joined: Thu Nov 05, 2009 8:37 am
Location: Toulouse, France

Re: Help with a simple coloring clip patch

Post by Crubier » Thu Mar 03, 2011 5:09 pm

pid wrote:i don't understand how anyone can programme anything at all in max for live withOUT deferlow. any big device of mine has masses of them. in max alone you only need it sometimes, in m4l you need it ten times more. knowing your deferlow (putting the request to the end of the queue) will make for much happier m4l patching...
+ 1000
S4racen wrote:I'm gonna search to see what deferlow does!
deferlow takes the input messages to the back of the low priority execution queue, which mean that after a deferlow object, the signal is treated as low-priority, which has differents effects :
  • Depending on your CPU usage, it can add some delay to the following treatments, which are done after all the other are completed
  • Since the computer "takes his time" to treat the messages, the message scheduling is always respected after a deferlow object, e.g. "right to left" ordering at the output of a trigger is guaranted, which is NOT the case if the message is treated in the High priority queue (I discovered that to my depends...)
  • Notifications from the live API (through Live.observer for example) are treated as High priority messages, and such messages can't trigger changes to the live API, because that would allow infinite loops (If the notification message triggers a change to a live parameter, which triggers a notification, which triggers a change etc... This would freeze the computer, That's why this is returning the famous "changes cannot be triggered by notifications" warning). Switching these messages to the low priority queue allows to use them to trigger changes through the live API, the changes are then slightly (or not) delayed, making an infinite feedback loop impossible.
I am quite confident about my explanations, but not sure at 100%, since it relies on my experience. Correct me if I am wrong.

S4racen, did you really NOT use deferlow in your patches ???
I can't believe that such complexes (I think) patches can work without deferlow, that would be incredible !?!

pid
Posts: 354
Joined: Thu Nov 05, 2009 9:51 am

Re: Help with a simple coloring clip patch

Post by pid » Thu Mar 03, 2011 9:25 pm

yes i have a suspicion that S4racen might be a genius. i dunno how you do isotonik without deferlow. what this means is, you must be completely awesome at 'working around' issues and logical thinking. maybe if you spent a week reading a complete list of max/msp/jitter objects and their descriptions you'd be taking over the world?!... seriously, it may sound like i am being a wanker, but i am actually saying "respect to you, and your project".
3dot... wrote: in short.. we live in disappointing times..

chapelier fou
Posts: 6025
Joined: Mon May 15, 2006 12:15 pm

Re: Help with a simple coloring clip patch

Post by chapelier fou » Thu Mar 03, 2011 9:41 pm

pid wrote:i don't understand how anyone can programme anything at all in max for live withOUT deferlow. any big device of mine has masses of them. in max alone you only need it sometimes, in m4l you need it ten times more. knowing your deferlow (putting the request to the end of the queue) will make for much happier m4l patching...
+1
I just came into M4L patching using the API and this became a critical issue within hours.
I still can't really understand what it is really doing, but i know how and when to use it.
MacBook Pro 13" Retina i7 2.8 GHz OS 10.13, L10.0.1, M4L.
MacStudio M1Max 32Go OS 12.3.1

S4racen
Posts: 5837
Joined: Fri Aug 24, 2007 4:08 pm
Location: Dunstable
Contact:

Re: Help with a simple coloring clip patch

Post by S4racen » Fri Mar 11, 2011 9:24 am

Lol, Peter you're right on the live.observer, if i do use it to update something like a knob lighting then i place an updatevalue in front of the message going to the live.dial, so whilst it'll update the live.dial that it's mapped to, it won't output a message to then be read by the live.observer etc...

Crubier, with yours and Hoffman2k's explanation of deferlow i truly now "get" it, the main benefit to me has been for lighting issues i was having in that i was having to send repeated bangs to the apc40 based on running through multiple delays to get a consistent result. Obvioulsy this is then finely tuned to the performance of the computer running the device and some people experienced different results to my three set ups i have to test on.... Thankfully i've had a really good bunch of people test my latest device on all sorts of different setups which have all now benefitted from liberal uses of deferlows!

And as for genius, not sure, probably not, just like solving challenges and the logic of M4L really appeals.... I'm thinking of doing a max course now i've finished isotonik to look at the msp and audio side as i'm sure i'm missing a load of tricks i could be using, i've really just focused on the live.api so far and that's got me a long way....

Cheers
D

Post Reply