[Feature request] bach.ezmidiplay note-off at note offset rather than scheduled at onset + durstretch*Δt

Discussions, advice, bug reports and much more about the "bach" environment.
Post Reply
aparment
Posts: 2
Joined: Fri Jun 26, 2020 9:24 am

[Feature request] bach.ezmidiplay note-off at note offset rather than scheduled at onset + durstretch*Δt

Post by aparment » Fri Jun 26, 2020 9:49 am

Hello,

First, thank you for Bach, it's amazing to me.

I have made a short video to introduce my problem/feature request: https://www.youtube.com/watch?v=3j_F0vJyXCg

I think that the noteoff message is scheduled at the noteonset, rather than computed in real time during the playback. When changing the clock during the playback, the noteoff message is no longer following the offset in the roll.

I am not sure whether this is a problem or a feature request, but I think that synchronicity between offset and noteoff event is the expected behavior in general.

Best regards

danieleghisi
Site Admin
Posts: 1347
Joined: Fri Dec 03, 2010 1:25 pm

Re: [Feature request] bach.ezmidiplay note-off at note offset rather than scheduled at onset + durstretch*Δt

Post by danieleghisi » Fri Jun 26, 2020 12:10 pm

Hi,

"playback" of notes just means that the note (symbolic) properties are output throught the playout. This happens when the note onset is reached, nothing is output after that about that note. I assume you are working with the setclock object. I understand what you want, I think we have had this request other times, and I really see the point, but this would be problematic for a lot of reasons. What happens if a note has a glissando, or slot envelopes, etc.? How do you schedule them? If we follow this path, we would need to make bach.roll/bach.score sample-level objects (roll~...) and take care of all the playback/scheduling/etc. ourselves, bypassing setclock, etc. As you see, this is a massive change of view on the whole project, and we are not going to take this road right now. We may do something along those lines, we have it in our "maybe list" but that's not going to be for right now.

That being said, if what you look for is simply noteon/noteoff , there are a number of things you can do, for instance:

• modify the duration "by hand" when it is output by the playout. This is perhaps the easiest way (see patch below), althought it does not account for modification you make during the note duration. If you have very long notes, this may be an issue.

• bypass ezmidiplay altogether (in any case, it is an abstraction, you can open it) and make your own playback system by communicating directly with noteout. In this case the noteoff can be set with a delay of the correct duration, and [delay] can be linked to your setclock.


<pre><code>
----------begin_max5_patcher----------
13788.3oc68s0bakijlOa+qPgdbB2NPl3Z1OsSrQryS6ufZpvAsDca0srnCI
55xzQ+eey7P.ZgikcQ.APTnW4tZeQTh77Aj2u9Oe8qt7869ssOb4E+0K9oKd
0q9mu9UuZ4KIegWE+2u5xOs42t51MOr7sc4ca+0cu+ue4aN7R629a6W9x2ta
y0eZ6CObAjdo69xmt4ta2te4GChewatd46leG9Kzi9F28k8q+NO7k1+6ed6g
mtKu7heN9Redy9q93M282d28auZ+gWETD8V6at..8aUu4BuR9cDeq5heV9Y9
Wu90xu8lmGFe+lq93a+OdR7geK9BsDejEdqACVOD+cCCVKr.SPCuU8neAfoS
X+t8e7ByE3E3odF369YfwSxYPv90K736vCa9ksW+N9ofeCd2l86u+l2+k8Gn
0e0Qr+pK+ks2+vM6tie.e+16kWLn.Et7hKmbs776gu79G9AGf5u8.z1xCvf2
+DDQFTN5H8eVN.uZ2m9z161+MmfvasW7oGt3u7CkuHe2Ws61c2e.wp2ZU.4f
27j+M3Qf8Qm4vwamOr6t8Oby+yxg6hfkm5tP8nu4617oku4K+Ou+lM2d4ORd
kAVjWYVHbs9kSenRd1u6Q1Y5.SeNNvrGNvnExUyy6.6C2tielNUMUtu9bcO+
7te68ua6cad+saWil+Pni+gP+a4neiH73t+1Io9SCgExIyxoi9QWWeX28eZy
x2sKcye+MOb0lHHdKUwo3C2dy0LK+IdJBlS5XjMjXOeH74ur+wuOOs3uim2L
1+CEHt69aXdjM6YYUO9p3GYLgYQ2B3V9cgG83a18aukem9kCe5Mji8S69ksW
r+iau3vY6E62cwUeju8O7E+uu7S2b6s27v1q1c20+2Wl9ou8l63uxWta+iUh
7GdcbT0x6+x6iWBP+YiAztbz5ObnB9D8ZKMV4gs6u51cW8Ot3C61cwm9xsLA
xoZwB3KRVFTAC8IwH6NP5cf16.mbCIyTmIECgyhhAkbhggEQelPWzj9e9vC6
t5lM62JbjGIuNXazExy50LyISs8cXJwSjoDUifozublwFGJLltEeJLpJO.Ee
.27219MGfG4GOYFQ2fYDWbqXg8ygOKlvejGA+is+9CWb2Nlt5+0+X61Oe5dO
CW9CMvnNyHdRGDLGr0BXCVm.Wr19+7oat9lOe6le+TcwBwJNJuQ3qK1UK+AW
srOqfSr.y62c6sOl+3CatJyLJFJrUV6iQ1QjPy+2wG3s28wM2+oc2cyU6S1e
w355seXyWtcu.um3ud7G9ouMepCa22SUh5MO529N5NNdq79ekEJyGw279at8
l8+95OwLoC3QoCBUfX4zcau8qGBHqX83mU9scHgtc2b01G97lqtQ3UN93dvN
ku96e8zP99EANwOkK+I4P6mke6a9aG+ghmoBe+C2tKcKwOQ7k5wuoqtc6GRu
x+k7F7+4vue4irouHuH9d++bwBejs67vgPD9uY4+d7w1We4D6jHFK9I8+9+q
7dd72+ikwB3ASAU5EALZkgcz+nDl8a9vGDUow2dgKh+uuZT+A2Dt7tC+5nx2
c697iu8TJ0ity97M7ix1quY+8hk0O4g+u9wc2t8cBW16tdy9Mu6qQWK9sefA
Ld0JWh2b2G1k9BP5EVtc3+7W1xp+Xh2K1dm7W+71bRikKJ9O+vWt6pE+SxdU
9v8xkKgG80N7jy+k28aw+mHV3cKdO4LG+hG94Tm32GnBJE3BjK6y5gzC7o9Y
8nGyse99sObzsqrW6ucOysm8U98Gtaymy+RWu6Sat4t1CTO5HMZBOwG1y.t6
29oOu69M29ocWu8.7idIl8cwRC2d20eyU5udy06+n7W17k86x+I931a9aeb+
S+ZWs6y+9u9ws28vmYoieya5lqXN0GN7rr45M2c8ud+M6W877AlTd2uJBi9H
+8732hieO3ZBZgh+hmlb8OMDyO4c7KDy++8Dy5mjXlsn61adX+SSK+ju3+lJ
W9Q19chjeAJX7JyOj54tc2UHkyI9gSVuwhgpIwfdPhYdZ4kBF99DYemW9eSk
XVHYl5EpqieO1um.ruqvqWDb8hfqShzx88Eb8CDZ8h.qWDX8inp7OIU0Rf6d
Rhpu8UdJZpo4LsKVwFdZN0atc6OvBim7UG4YaPgf1tRD7voWom7r8gO+8DB9
sux4TFnCT.fpygLv+s0mPP8jW42d6gn78sW4e6q7hHpu4PEdxCU.d5izu8vY
pOR6hjI3oiDmTxZubjV4Q5SGOHon1d4HsxizmN9GREf8xQZkGoOsS+RUb8xQ
ZkGoOsytRgm7xQZkGoOsmdRQ08xQZkGoOsidRo08xQZkGoOs+c.8xQZ0IH9a
7e55em+a2b0CO8Y5S+pGNWu75KGzIqWGzt+j4DE9MNQc6ue+28b86E4rKu8x
WbL8qmoeiWTate+MW8kaWB4w24n8G7sDOi2Lozs8Qhv23V0i91eRorO0qFOY
+3KmrO5j8a7tZyc7Ovlueo37ckJr+xWzg80y0m1EK7EWrp+H8ocwBewEq5OR
eZWrvWbwp9izm1EK7EWrp+H8ocwBewEq5KawmNEUZ0KGo0bj93OpO8I9s3gu
s582se6i+yG8i7wc2ec1e4w4O8PB1S+428B3Ipt5yzGn9b+AZN2ef1y4G3iK
C7ce4yqbN7Sat+er890ewG2dRuI0aR4z3OxeyTyk70WMQW+suxOcRbknQSVC
XDmI.UvgJx90n2dhEugkHMELmxOf1BAi1iRP2WJ6CmwKNVEBe8zLWBye7aoy
psAqURf2BDr76aoPvoLxS1fff0iNGpUtHBH9ZHTLB7JeQHXAuMBAARqsZf7G
dVzHobXoH.PnPxHoj+ZDB.qRo8VzfQHXHeEjQi7R.YErZxigHcj1qzVr+bBM
7V.kdjEXhIHBARQzbcKn0nfAlV5vCiA.mYt3EzDFLLG.FeXLZDCEeK.dMLNd
AiheSAWHh.KxDUEi.J3G1kPv3sFotHiHvqs9vTcG.Fqw5PzF0JXHCh5ohS.U
NvxuopnVAKXBtNdKrnzQEBG9AAxXUV8yiWNDPmUYzQwQV9HQU7kfVAEg.Bvl
g.vnBdCg9HmfSGX0bkh.zasC6N.QJ.L2bTwrWobdSwHvPzntC3COR7RH5lf2
gtuVqrmL.XuMF0U.KDxQLguOJKJfhvo9oPnCrAJsxSHD4iCr7z.LSRh.BYOM
s5n3YGYBluV7UsWc.wB9BgknMw+frDL9m7Yh.17TsLgJnk2R9.pF6hNcqSaO
QjVQn1ylCcPVJCGVkbGcQn8TQNPLLh8uLB.RTPOSrAqB4hGsAEo6WHWZOBLn
SwTw1nccdMpTXXlHhxCWgm0JvFULU7wjEzNJ8V5MxyisXhHWPOJDrxSeuvU3
08OxiszCMuxXXi4rQDXnCs3bYHvfiyGyUwpvabrCmkxHXCDXGWb6Ld9wN3sQ
EBF99v.ECAmsL5H.U8JbKdSP73ZptEPUfI+Y6SiJ0LD6u3bwKjGwHldBrJZt
tDb7mNfAcz7TKeGnmKVg7fdw14w96XJFArLgwIRkc0W7wIjffF42yRgfmIjF
nH0r31w2Hnmn45VfTVq0QXhals1CmKVgUgdzaYMDlNxKDsxNdIzDqrQVqljo
zH.H1TCrebBsG.qhcp2gVsm58UPSsxlc0mcSHXi5kcBUjui5kk5jVyFgc.Bn
EMjy+7B8HoPOakejMvqpRXzIyIGuC7wr6GHTKgY64HN0CdJvxhh..BXniV2k
yFzB.v9HFjD5mbW1yL0tNZbWGPPd.38R5DrpdGykVRDgN.zFE.IDHIDzz8Xt
zv6.fXswNlRJJL0GpvWyhC5RSQ.KXSGHaRcfTMiJr6QtqgHHOMN9.TgWZEDA
9NdEDA.5b9hyCkhb5QwGy+7ZRqHazGsfg8vQOSWAZfX2CrtjixrIZNsu6Qfu
gHXUt.8AeENGTdt.aoIEjMv1FpBIDDpH7uiUa.qLSgjmh5yHkgeamIpH1uFK
yHjLoffJhe8XkklkPYOoYJJeukk1TIQKZfALE2ThAfYprpSCNPzEnSHv4Tno
6oDO5fYKRItSRAqw6NHHJHNm4T8ynNvvtWpbPzBFsBCdIJsOKsArepLcrBhP
HPrAFECAQj7fBSwpxRH.XM4O3z4ChTQGuCd9TQqJKg.6hru3JfendXhr6Xj3
dFFQ.eHEvtWhWszlh.qNCsgXnaBHTgW9EWnfMUgFpchNfPjSlc5ubu7K9Nnk
HHu3VBriZU3j+HMLM8fWSdjGJsi1wheHTESlOK+g8sGlIZGMS3q.mGRHPRAa
2qvw1JCMqxnDE8N2T4S.q2B3GZPG0iowZ7tu3BKpkZAPEZI9PIg.cUd2exTQ
s2hT1lPsy5RGJAMwNIfcrwIho7vnZVJOXKIA14RaTSrQy7EtyEmbSqPvPDAF
xnOabxMI0eNCa.DhIGaLh1gyl68soTey4CLAkQMU92upDA425.XnY5NPZmZh
kLDkMDrJsq71PqTeKSW4so4axJuNVRMaVQ+aP7lVHEdEJAVIDMLR5wWen60l
VGqPPFBUHOs7hSqoU1E+wSZSLuGRIR4TyVA4jUiiLDXFMr6WBZeCmUBZE6fR
.vzsfoBsZkyJzRHjWllAqUoJ1KmwdI.FVXDadmJQGwF5YbyEqPdklFrtJrsn
7JDrshTA1AeE3S2BNqs3N6s75zreEKK+vn7Z0TcIfxSrlQQha1KrlyUw6mWu
uxApxhc+VnohTkh6hUDfID3Pvz8Kg1JRMqhkYUTG5okIRq.5BJkUxEXBBNq1
MYVolUz0hiKNxOWVopcRmIm752obAKMykMt3+qBUS0kfVRpKahmNcK.dn3Vc
errBH3c.3RwdgEMoM8u4FaqHUiFjrhCIH3Orf95TnK5hHUmvAqMoaAM+UrS0
sfNPFPocgD2rVp4wohUHuKPBNCavT3bUzrsIHdQIpQ.v+cONUQBNuMVBNulr
1yUUy1lAniy.dKXRHHTS9Dps1w6Pi3HsNdE4Sn1J1rMrAnGQFEIDfUkOgQVm
T4CRpfWWi2liTTTduPIc3a4t4T9r7pkoSHqWnBdWE1WW9n7poxRy5EJoEDzF
7bUmHcXXjE7TElTT7r7pkDQq5EpP.z5xmFYiL+3q5EJV+bXIsB8J+3GSA1gp
rPjgIDsMqQbDQQkGC6gV3xqZikfLvhA84J83MgM.cdOaYuNJLkpJofirczV0
FKARWgi9UaRQSPfD2Tm2XR2A0kPsQdGj2HNLKcUNIOvRu9XerD8vjbmSCSae
qDw.nh5bYnDQF.0fDrkH.pJMN+ofFJBfPE0oS08neSrpKuShHEXbJ0TUmND3
PK4nD.pn5JJe302R..Z18FTqiI1m8UqJe7OYSJ5QbqsFzgJmNcKnUpfo6ir6
ll8.9M.XuL8oaAMaZps62BsLpuNRbNPESruzZrlyvFMooYOHeV+xPnhpqXrW
BZVGri4FBI5HqxizTwJvjPdziIxHaEZkqXCBzTIpJqLszsIxHWEEWQ4qwg1J
QUKIBTSoaAWM9YNzaAsmcSleavzsfW79ep3DxaSYFAUTbECseDh.H87SUjT+
p6utlXepr2+.vDCcMAJus70PwPi7KvN5qYgIPDARbT8mqN7sM6.grNcm.V4p
G59VbnkwMU7sLXW18DKHvVSlLGZjey6Ue1mmyQmQ0RpHmECZqBS.Hz2FipCQ
90Kt5B937KP75OPpYJYxqFWB7+nFExCMYx4iKA1aAWn703voGyt1SEsZXCPn
urzncwO+lW+J9WW9qeb2sae286t812c8l8admJ8K3xK9qW7SCOmy4yj.R1iZ
fp6aZfFJvJ9fqUUjisRJcpHSY7nmOm7AY1z0tV5mO44ykNFWUzxF4qfESikk
0LKijd1qUSTiAXYLVr.ASE4KufHqd.Bn5vsPSffQz2AFkMQHYNTq7Szs.5Mx
3pTkBtp1Tg02i8VfkXaTlCCItEHXqHxjEeKzTHvbu7GuyjhOrVR0lYptEVMh
NXHTQvUKdZL21QSfgO.M5XcMyuiRSQNU8qiDcaG+llDHYrU3G2XaXmicwoKB
Am1ow4pKEbZkSJHuDgjSlghyUuhvp1jYUlOFXOVbANY7Bq196RHxzULQfGZa
J.fLYHr5iPfHKz6T2xrdsaS+lOvZHov1z3T0V4Z1pN1pnfKwJvNKB3TcI.AE
4.LDqlJFBdGomJVAsheSAEhIBIBCku+eFaeSw1kpkpg7HDrKMdwDcKrZ5MwP
f8B01u.j0AdAzuLIKsoDlXkdq0MU2BfLocXJI5HDzf2OURjVskJkvk4sSUKi
rZLfI3wT91mgjFXcTHPqQw3zjHUKBno6MSaaUr4kFVfbFHAAc.woRq.JCuIi
ycDANip6plaKub93jigfTkj8VoPiaoYoH4AhRPPCVmYxTMmG8Bq1.l4x.oUS
0OFBNOZmLUyw.vbDBjV4lJCj3mXVury4R7BF1ITW2qomdFCIqQ1FyECAiebB
Uy2fzLB7KAqchtDVGELqgbX2Kzy15qP9P5jr1JhBVIM3Op.kU4BotwK3HwI2
lMbEYIiU3pPAklTWni.RleS9DqPnFWEJsROaLcT17gjgPPqCcuROa4s.y8Jt
8CIDPJB5dIO2V8Z4S3RoiXJ2gswdIvrtVopgMGgfiei6dQO2ugzIiffyActH
2.HlW01jkPjkG5CoxzyoXG1lq17Oe9VRrgNk6ovfGYJYSDO1++JBI+XUI.RO
vv98mB.l7NVdH4K0D01pXNen9QNqB64dtqGJl0LgIJkOeBBUjUgwF5h74RHi
fZRpvXcTfUioYa7RM.fyVSREFJqvpQqnLPMpHoBirzmWMT+X5oZLsXnskG68
jVa.MlXE7rsEp4JvE4ykPoc+KOj7C1FUfcswCZ2QHTQH4GqMpqFshjnxQg89
VnwJ1XiibAepgdbgZhI+P4ExmNjjLW4clo5RPypDDQP5Dq.Uig1i0cMkUIck
j8HDpIj7CM9QVoUvjhVHgfZhH+o2fj8PdD5sNYkJDYEXt5JhH+PuDXmMWJtb
3HDpJh7iMHdOdXut3Sa4Qjej98a.hoaBpTeI4kpyjloVjb03pk7nDMr9oSfM
kQCVeHEOdsQ+bmNdhQ1rSy5TQW36b10xC.VS18ZRlbzdqJwHXpJd7mr6ZGHi
rwACZSPPPoXR.WpDv7UkYpRmayMEA4yLXxaqIV1ENhBaKUjgDgBJchOvVS0Y
WZ2N2z6.s1IEOkJFHXuqJe0FIUDDDsj5TZx8tZBiZgABtsTQ4SdZFAUU5QCr
cmSi8XHFDUuuu07R2mc1DSLTtockzGysOI4FQPj3r4ADDTUDK9BJDx1G8NCa
khL7ERkVd.0f204oTXSSq1pomMyEqnh2S7EzyTcX3QjO8rIYw.q53595.Bbw
ZSoIHH.R4pQohEgj+ks2M8UacRC8DKKjR8sFUi40isAH8RwpIkpPBA0HNcr6
RT1EMmTFm5DDXWk8SUSeARbhrrGeGgPEtHL1aA1KYjsQMMIXHaUcvYgbBsM9
o4ChcRpBx.MUWBfisOFOZrBCgJbyYv8XAxj.xFDMgfyQOn11fXK6nLfeqRrB
tZBazP6wBPlyHrR9jAdj6bzDpsUdD.ryNROYmffeYauLSaXZK+HGT5TfiXqf
KuhWJcjM0TyrWsYHXDTUsVLvUV1pMCgDDrZ5bvAtcNVsYHHppBQcj0eW9lgf
jIRVEg9ZngcIayPHHnp.GMvvtjsYHX..UD2ngN83x1LDL.vpBazIqNHFlJcz
ie9SC0hLjmWK2okw1zAi6XHnYtRpyK2hlF+TiZIgfAWhJRyF2o581snkwvVK
IUlevM5HBL5.BcdrS0z6.1ZB1q..wDifoF6hJvKGmiM.V4SCQNlQdYDN9rZs
BqG0n2eDBUE3nS2WSAB.4OvK2DHfLcjr5POTV+LDrUE+wxtEZLDrrqZVabP0
HPnB2bJgUfercrL6CDtdhs0FbO609EyGH0+aBBlxMOsj4fGn8fWZgiHDVFvn
OOdAiWoEFBaBBVi1LUBjjZdPxOOlPPeCCr2ZIYtAFmdYFGRNrgq7HFAtpRGx
Ii.V3szeb53bilYL3CsuykPNTN4GHU2m8ZoDY2lvmxbAGrtWdGYxG5LL.7v3
Vrr8H.zVofK5dnGaIBVMPNk4Fa4qWjxi2R+tDXIDZvXmpKgUK9Kzq00jMmQx
IrhNRyBSOGQgukPPSXvHyYmXtRQ9.0RSLqf1XAO1+nv2RDjTyGQfi88Ofce3
tzQlYlM.W76bhtDffOn0nNlZBsLXWUlohSXk7HCH6ag9G4qfpcAgOuaAMFv6
AW2CBeCQPNurw4XyiBcOF7MD.qV5TFh4sOCwfukDQ4rAVfOOOCwfukHHebeY
k4fG1+c7c+XjsLi.R3LIJZUwaxr0Jv0+ReDaWQqkuelsrVYRY6cDr6nnHK4f
kYcTmWbBsDA4KcJG+33LtoRibtvTmL3u.+LQEIq.HKqCyG6WQoVZ6XwmF2ES
wjo0AsANMoHxOSDQ4Mr7hIQEuIQkxCiF0pteU604rro5kuKf7NssFhnNzWTR
w24qX+mTIaPKPvJExN1DYulNWqQmlffXGsfQ.3HuxetlK1MgMHuP9ksLsya5
bZ8aKQDQnrm3wHirjXtJVsZERD0RDj6foy6PWEqVvJqtk1HKMqWJbdRaqXF8
W3xQrkHXUwN5X0aVS2iyRSYCxJSMFA1CaCn95hbSQPlyMKs6S.NWUJXSXCxx
DqzmidSwSMggpM.HzHypu3aoiLAS4AqajDQ4a3dVcLoClYhOdkGxxvqTWQKH
LTYoY6Wcux.ZXtrpKe6jyu8HF5n6Yo.EEZVfhx2VwLKgD6tNZUmr3pcZWLSK
njCR8ycQaXbVY3vc3PwyOJdc+aJMzD50R4yiLEQ3LrZDCl1uCrNHO0qQ1HiP
+KOmFdKX8nyg5nCNd1LoJbvYnWBqVzodsqJApijUHOhcd1NamNz+JCokLy4a
FQVVDeoz+BUqk64zU6jOOqdBCcLjW83VHeUpICZMW4Y.4zi6XGf.BJ9j2iwA
QiLSrnxEoNzag703k2fDZgohUXU.38RJQ7cO5uscRz38xtVNoTPpXpxWncdV
qvvFr8YaGAFHr7IZlxhiFIIQ9gPz9NYF2WdkWyzP1gkGp7b56ECtKeOpIuCi
hHJOOTdYCFUdqhKE51eRFyidoc8Kuu5XuuFWxLyyCkewsM+LwHuJOTrxEut7
NwYjxRyyCkmc+nBK6J8JnorA44gxKWGUzblkNRrREnaCB4RdVb7A.ffq2SDq
lNSux5MyvRa5Y5ddnRaR0ND.durZJPy4pQ2aSrSMni0JqiQdT3ITgYJWfqRg
fmjgKE18DJ2PpHPqrRdviytkfLuG7tYhJJOIHrCS0DphQRDEAP542TiUokRB
0zLAlmDm.SKQ3YqtPZhQc4IwQNUBjclFSnZ1jZZIkAxyOvtZVQ+gexwLsCKo
H1wJCZC9HMjz91N24JMZsfFJOITxTHwWQygWpEQMzjtUUJqzNftxaL1ZiRTS
zkwjM7CMDGsiA1Lavp6cQUzTswnBsDenjP.yEn8mqg3UKPfUZaKq0F4ik7ff
SUcsrJIfAYZ+o5tY0M0w.mgEeJyCtHBBxv.ZlHhzJow+boCkfL6h73LQEsZO
0yLE1kMsz7XVcdRLChmZf4b4ebaZ6.SfcxWk.fAbT3bYWca1luYo+KXrrExP
2ackVh.sFCjrJMhHPpNA6LYU2pTmwu0gkcz87bGHM7DYLp3P3IXW1GB8Nbus
jQdUx+X+NH.5YH2iqgh3lwqEqghUKl6f0YstvTk4l7z+ImmJK1uL2nCKiSPU
b7BvxQfkvk+rfPfOS.WbYfH6XnJjmd5YvrGYxG7N.bI6hXAq5xGSEmdFL6wX
SOeaDyPf4qKOIr1Qt4LyWkuRKYVgVsgdKrZO3FjA+C5lJVg7bgGXednhcxoj
KAwQPs2DUihVzrrY1a2VaTZntJFiWkVQEM0OMqWa.zmB5kiktVdm8NTDvThf
2tL7wNf.xTdSYtrTWFk8c4Kqt.yj0UoQcvW47U8VPlaQk2WomtJgdLywkMmA
3h8zfTgcUXisUqGVuPwrv3RIxFA.64Y4SpBqxaGkSBq1SZRMU3TpNif1NbVy
2SZL0LpKu0dMgws.GVUVKAOUiUEi7N.ITY8derXekbYVgeZiLYxH6ef1vlWG
uCB.KUQMUUEhVgfBM9zc.VimlispPxZReFALqvTkRefs0k8LChyPEIKHV8TE
9ZV+EaQCY0o6.ibbNUTQJmURjeHZXmLasP0LQEkWjfL.XE93LUUBqF0C7Ugx
i8r4daejGWsTkBjtpjHLvJ0Lac3v.vUSD3GZ4JmMpGjsQTENGL1doSiRkcXS
QfmB0nPq71JskQNkogTdMSZFg.KY21+INdSCZWdIKKqWL.buYlVyddPxBBlV
CwJUMJkG6Z+jzVYqYR1DDpIfQCkUXUgiSJnFWkK9VnkPf.GSD4RjQPMFVTLi
PaknlMvwI1eGB6+.GusRTypdeh0xoBltO12aJm.+FHya.e5VPawdNHr5f7HG
IdZpRKjakolXmN3ExcVOTvP3bDyklVfB48PAobUDwhgt5Uy6gB1Kmpb2efad
0rdnfTTEtJOz8t5pdnf.k2pzW7yu40uh+0k+5G2c612c+tau8cWuY+l2oR+B
u7h+5E+zDsdV0.5jY5BAQfJwL1etJu1NzrHDvD89dtvVhyf63k.xdvG7pVNx
uXqopwH1QJxM0uKQE2rNjZJrvJKKuljsmG2vNr3pZTae5dQzgUjqjjAG+9RI
HfZmFmoAe2pgaO+OjfF2wcIXrw6SLxM3R.Amw4zKSz9EHXqxUtJaE91zyNYM
9EyGWSVOO8tNpCWBD5YuRnCacWY7FUUscNv9lJu00HjpHkgkLloNTJU1zlyq
AkREqHx5QxYi5j0faIyOmm5qsMMsCKIRzCDiqjFYex78dxnz1IbTV+CJwI6b
3LcSiG.aDgRKCVmHDXSkUtoJvRVRj93SZk0UUn4iMBq4cwIataeS5VOhTe93
bkg.ejplpaAlFFUNYoMGgfTu+vbEi07lokgPM0W6PiyMqDHH8yuOQHQUYh5P
y1P9bAlgPMplGZ5Oy6oYRb7o7pb9zy.cOXEBJxAXHVE.LDbAa+mrwsUlJ+lB
JDS2B74CLWpEV0Z4LDNTgUcd1w0xvtj2Z4jQZ8EyLYk5pVKmLF97bp5DuUsV
NYb0D3kZ2FYsei1QFuwWt0QE5v7wxDtE.XsBA1G1JtAF4znMq23IiT8+cMxW
Vi0gXr4oLhM.hOVsqslYudNzBL8JmacPcfk+3UjxcDAUvFTPRq5gNYMJsG+R
qhb.B7aupeaPmd3soWVCbNMcDBRq7LUk..ZYQofARHvUgznhuDX0OlFZamTU
a7oRhUvwl5gSEqvpgT.CAui59FIqokoJaRApOpmjrdqoXG0JsJFZpZYwYcRa
RQuyFzf2OSS7EK+VZE8pQ.PJBnYhFJeJ2y.Hrr2D5ZcXzTRnUCpC1oYCXLSk
jH1yDD81kxt+.Dbdz185xqkPPRGkQgvQDPZkapzIqW1OwnEixhbHDBcOSBMU
oLpX8wroco5xygFiyOU2BVcf8225Nh.upXe8KlSnsVFkO1cXHPN7r0FaMQk.
IYT1ioRcwoqxGgAVadnKnTVof4iHvTg0oicFfwm3ATJPxHBr3xBrXhnhx2cK
xrt2RmsFRsMKsBKpMNWJ3uNWPq6HmbZQkjh4hUZ8lmWUVXAqlbofF4gJrNsT
hnl1c+qF3NhSy9.0ahHK0t8kqgUHiNBSUZtGXCrUyzcvpM.DqX.sZnyNo0VD
3wfR5gJcBANiBmIpnUisIhsyC85ohJx.AujJ4jrHcEtoMVpn7AOkTJvJvNUF
UPViTYKpDUjw5s9oJSZ46xKxyVZScbaj09die0nyhX2MnvYaDx0xc4Ejzn4q
HZEEvICFmrYCfnWlrjufWQsb5eQdphTQULqbKUHHYAmXsZIYQjT3WctT9apz
z7wWFCfZRhSgEVQSA.yB5rVHkKP1.i.hyDIjI.KCVZeB.Uj9igRBcTgbD..X
clYhDJeqHtLH1zS0Zcb0H7ijrQ4mqkJH6eLeJnREFRPWi6Yi7NX0H7i4Fqv4
lgxFnURtOb1TqAFr03bSosiSKEktZHDJ1mVgyMEZXcaGihdVPtUp35DBpw4l
BKSv1hf7wnHKWsl72Tpg0MkJh8JviReokPvYv8r1dGjOHHEcaUj6iRK1zldG
vxAMAsKkBsfuJGLGHUzpQYIifJxdSoSW51ZVDqDFkthMwGD.z.yDUzpgwII1
rTd9mFJUjzbox7LL4cPnlvTLTpn7wIJszluldOixa5c.acqWNVR1lR0DnkRG
w2MEA4CDUhTUjCvRGP1MkJh.19bsJE0ZRUSEULRhn7I5JCfZxg4oSC0iBywJ
SsBmMEoERxhYn26ellVSHL8KH8efOwG.0XUwP2+LLcuS7Q3HBpIfikt9YZbg
4nbjL4YRrBUkI1wtJlD+C7ZRmf.VikQikUHoVNgfZBa5PuDPIoMxNaIwJTS1
jKeSL0T5H15Th++gPBBUkDpSe0v0A4QratPbQ+t.AMvmo8yY4tzEHA9sjuFN
BgZhZTo2BskalsNZYdVlXm00Xh5P4EVMw3kZjPq5XjuX0PrmsNBSqIQmZItg
OK0B76Aqc6H6bMM00XUNKSXZlcLUoZTU8z0fUKHCqB9sJwJ3poLoFrtYKXBZ
UJcNTMM00fMSE.vCx7qHAA+R90lHARnkejCJcZznxtDVQ5PpMzKMoJcPm2a3
G5Dcje1pTpU6fCohipHT7ibMXCxrIy4MG4koZb47zqXPPqYKv7gnwLZMaYi7
Y+b5oHVunW1G4KEriRAUUB7ir4.cNRylFni..qI5WELMiNLQh0wnGAdo3NrM
QVT5J.qI5QirHWx1jKL.zUUnWCjO1rrS6jUMaBArkQpopDKLdEKbv5S2AVqQ
alpRrHa8avHv02xbAPT5qXcLnsFkLo5+N7A4PopVywKC9txc7r3fBmlfqses
p6EGd5Yb46ABx2I4xYoJz+XB2RHjuPu8xzcA5us1McT2gLwOqTKNa68NkwWt
rogdI.FYz4J65qHD.Vd2bwJrpCi7hmy94hU.YajXmdBfJBAVemZt3EjlMUcX
PTrf.iSg1tGS31JRMq6P7KSzUe2iIbSEop.uzfHgHB3eUQj7F4kfFsL.fPLS
gdI.LzjwIDm37dcDBAut6ECYW5QmnAddHfA84ZICzgpZ1KWG1tWW1Tzsm1DB
or5vi0MnPn6KYfVhf7RGg0sAP4ET6HmZkqRsCSLifUOU86Xdrf8hfHr6kBYS
YCzFkBkFT6.Bj8cWniETaGheQ9x2zKSxBzz43w23nYmsu97DUiJ4RqhsVREk
us6XIoRCONSrAq1VbAkMv1Wz6Z4roq6j70.WP4Yu8gy0nvtI01e9ZfKrTRsk
mVJiROtUuTf7LgbzKSYAOTgixCc4QkuG6BrY6AW260qVREIShIsUgI.nqwGy
QRDksG6BR4YqgYhDh80ieB.eztz.vhk.yLs8tVsF6Br2YKq+myik0soU07ZR
50tn5LfM6Jz8Fbokrwq1hcAD3aDW+nh5fco46eLlFx5UP+7tIMGNh7cMYNbj
uueBZ9NPOUqPsUKHDYO4sTRpclQnkVlludMBR9k834RbZ6WNEAYG2Cl4p1AA
1xN4bHxGXzGlP+yTlzzFCaHTHN4VkRSr7ERd4QttoqtqrUrQfcuwQgtm8flF
3ZqRl+uXrnuXH3BVZxtDVTJa8oaAaEKF9AyJPV1q.JIjlgfGBvTsxkjptiLN
Lg.eMKqa19zwMp67xZNQVKtQDv1nZntWhKskLRKsYmyEULapZI+Vbh8aIDXC
Dk9kMYgpgDJo4Ryb9RKhURKiLq4pAWxW4OAoploIy9nr8kC6EEKh0MUbBqV1
LLDH.7c+RnsZlUnj6iP5VP120gISyLFLNsAS2BHYzyk8Q4aLGYSC35oS+8fN
hUzaXqrISBBrum3T07oZshVFKMoaAFP3boUHeu+Hl5rvX24Lp0xEaZ9d+IXq
ZuoOxAo6pMEhDU8k4P3LoXFIkDDRLgfpB8RoJla6Vf6vhtLE.OKUSnWF5.RY
01NggPMgd4zmxNcQwrhICN1Tzxv1uhE18PcWKnYSibo4auTZ+UD5kgZi5p1B
Q1LfUD5kS+RH0xfVWyZYvz9NIZhpypV1PkExIvZEF1DTLcGj.PMdLaTiaeBt
pV9YCDXe05XnizRJWjcZvg6.j8JYgGrcqIAlotl32MxZ0YUgvKggoB6S0XPW
zkfIFkjVbIrZKCD7XMAvqPV41VpK4UQdvqkNgsTDfRwaOpKg7QDuzgWUDzhZ
kF09IrtzOEUnTFQO6bzftBVMfxkBnUELmqPw2lwzeVo7yHvypHJEAfLQXCiw
UyUiVZonupIR7mrBg1WqHqFFpRlAqH1cENHNapcE4Mif3jSEAMZj5jyGfhhg
QVk4bkTvlNPci.Pxyr6b0LEsYYBlMx33ewBl7yzUvpFZIDHkGoyULuZyhrSY
bRhLSTQRJAgYZF2qA18.q0khbJobKq854gJZ0jJiMJsFWzFIUzp1hheGqJbQ
mbjSiJjOtAxZgB4r1hhEqVSEVb5gKpClT73IqyxzguhDiWqB41zRNrQwrjj3
.xheuqwjHsZX7wwlhJNhxTTMQqajNHyNFZLFBviHfVlDlSTOQk2UWDvOKJcu
artdzLHos.G.rUckqKPRG5eN5KMlbpJq5Fo1r.3MRv5hatHPWiUcijJZUm0w
HnFq5FpMQ.QrAQnMtsP.SUV04.XbaMmrdCjjLgXsSkCl1.qQfMIJcG3pwptQ
1VTq5tQFA0TeQE1KEscem3PV3iKVTED3qpzkGn5f71yTF+GUj4iQRCkzHmtA
nZbLXnAo3w8WpzeZFkuyBRarYo7yrrIDoDBBfILUF0k2grhSZr008iF5Pkgl
bOdY1U9LyiO6IllMhHnRTQZZI56STJXy6PVBkVwILUlkBNiie.fnqA78pSoN
Wy8jNziurjTbo.SlGNYfOyYC6PL5ZvRlHMyTAs.n1QVkM.IDTS1+JnHG6PJX
Ssq+ADnU0TlliLPQpzCdUM9wHUjIyceQ0Rj3QlzoZ6TEgn7lzmzRSS3OWIds
IHXYk9Xzo0umViJflpBPPIKyZmGR2A59FmwzfR3Xv1avfRHffhMJN1f3j1WS
HhJkLpk0PwpQ8.adcMAXYnU3Ky5JShevGMJUKkJdGUF2i5rVjexGiP5VfpQf
5oWQWc.B78O.rVonMclppT7BpuzNzKfAE4.LjVtLFUMtFT7kPSa.JE+lBJLk
7LCTiRghYEZ5lhJexsvP3v95dhtE.oIR0dKkf.Vi+MCkW.M.6iogRqJJ15nJ
xfVAUpbOjoZXMYxNuJBAM5bkWglJbbc9gUluCnNVglLBpwGsgdIHk4KXImI5
ofwTSV.6FqvE+7ad8q3ec4u9wc2t8c2u61ae20a1u4cpzuzWdwe8hep740Di
zZBO4oeY0gYyQp0SSHvocZr2EDb+l3Tjwa7kGeUfMks..zzMz2ZinBns7afS
ut36w7c4wypIxPr3SS+5shNN33BIDTyNR7z0Zzg5mJeLGIA4qhcjXwZMZaSv
ma8gUUy9sqTsFMcmsJSOT5vxxcAAfhpvP7g5KwJ6mXppJ1TkC0WBDTdM4wjF
MKvpllKeIVYBH+A3JOFYEa+TaGJGYCsLxhrIBPuuDZ6BXdkUrVTGPbtXEjwq
iYg14.BbFU2CyWSuDVafsEkhatXHn0CLv.lkZhmnDDzf0YlpgZASDQf0ngDg
j1.FybwJjOCBYHHYRYlJQ90dpI0qsyOSKuEvGbdkSSwb+XsGrU57TPaMIwI4
SNNxJKTstOqoZpDUCp8xrZJUXm1NuQ66Bub1vuSFQ1UrLxG6jNh4iQ8wvHvP
vZzy0jNZ076igPMNMOzaATSZl1IUeJjTyyjq27Bs0kyrQPHi.M38mqxJoIQ+
heKsxNLIB.pFelG4jiKe38w.nFm0N8xLuKIPTI8JkIUlyNUMNqU7brrsFYy5
C.aZxCwPnFm0JcNV1XEynCM9PpeEbJ1aMbtlikN1MAPVg2IHTi2ZC8V.Xmy7
deHEJXGTi2ZCkWX0v3jgPMdqMzQduSw2AnM03HRGxGbyzZPY03DkQ.+egoxJ
aPV+ODQpDDzHpndG5klxLmOQTIY4vQp4ZbhRABIOl5fGm71qlpHurZntxPnF
u9Gb7uXG+YoB9DqfAskum9FZTHWMWZYHXWpI1IJ9WLge.kgrPDA1p75efq92
UyzUIDFU3t4PssvxzQRJZOhfZb2bnF3okB.mcWKMjEbtZxT9PMyF7VTajG7D
DpIS4mdbT6glY15B.boz53780q+tnYl8RvnIJwJ3qIS4i0WGiQCxfh.RPnlL
kOzaACpzZCnSisF9zz4TyUzrcxXvisMMwKDpI5KCNZ1r7GOncGgPMQeYrQyV
J5bEyekXmC0D8kRuEZqLUMacmK3SC9EWnpbkORdg.ZjIbLlP.UUpxG4kfDxA
QDjNwJP0D7kw5yoxpjImh8HDpIU4EuBKZpYpYqd.FAzRwT0qtDtGxiPO6zbP
mljVLWcEg.anWBf2Hc0lANBgZJXggV9Q4a.hEGBM8dRM2zN9OwHDe9qpfTKr
cga5yuAHltmeqRzPfwGn92tvGmtnO+1EVaYOC.bIxiKPPWSAWLxw8sl4jXeN
gzPWvqqJS+iL1Q4aQDxa5qS+su1oPs1IkSqJlRD184J7RXj0NExj8HZrQwyL
BpJ4fEloeaz+71LBa7nSY8oJB16OGQfroHHeQtvHnppfrrxEosivFlBf0wqR
USqutR1oPYQM8NHeUzvHnFyhFoQE.ZMfVYRUAoOTS7GGJUjRxAE3vDe.UUtM
GHUjzpoDFRixFOUUStLvYQkW5RPMkh2hmpIqf0NHmZRSClsOlnfplRAdjaGt
78wzxZARa68rDpGZyRO+03jegk4RictgsBk8w2jtAP8hiGyy92XYuInHapFf
CH6fb22hKsjFhO5BRUhjZeb1X8Eqi5pUoscGnvhcbd11TSBA03h7P2hK4qUM
FA0jDmgREwmcFlONUvZgpJPjgREkuX3XDTU9OJy2l1h.1ZLfb1TULGr0DmkQ
REgDxdW58o90jMOnlB2bfTQnrT0rx.kKgfphTz.ohVsdAYyKpIt6k1PEMkJh
sp2i.lpzqPUE3Rg91z16.sBAEtr0JNffZJd1RiXZSuC.i2DzNShOnphCYjTQ
.wdW5jYQSBA0T3oijJBjhPPlR1I9fppqhR2ISM8NvwjP3gIg2ADTSMaVpKlM
EAVTVQt5TkpEppjDFYBnVsrVkxwthX9V5D9po2AHPd4XIYcccoyejTQJmErx
N04.BHUMw7cjTQDv92nUoopCUUlvGIQT9F+kAPMQ7cni3qrM9KQcdn.0gn0k
sweIppoQyPmIPnjyOVLTJfcDViKlCcFkAr9Xh++gPBB0nO6z4C5QEylu3kIR
FGM59MtA6AgjMvuk70vQHTiexkdKz1RulEG3XGaRSfcppwQyP4EVs+qYHv+K
6TcKvTwDv.HMD4ISMN6OTdAuLEfjp5HgfZrr3zGeq8fNJeKjyPnlbHnXOrGF
D.oBSsrIQGgPMArXn2BFMSGKCR2HBr0jP7R4DZakWmuK3YHTSdPF4jLFkYFu
SFEvQD3qRuVgSB3lF2Kz48FzmlgqTUyDnB8SnswdD.MagDkpyNJTiJgBcUqs
QrfkDwjhpzFsPVaSV+TkW+fRyG5XpRAkPVf8dav216.YpC3XcyI9.puiQ2dT
kZjwYBtzzngYkqH9uCkJRuTcB9CUJHoTUMUiFZDrAICfJ5Pl8EDTU7eGXdP.
EyDJq7THgfpZIsAVmcAuC7xvLNB.nuiZvNTmc7oOKIQk3Bfpp32AVyxrEcj1
5NLIcX.f0D72RKTvVBfiQbIAfpZCpARBgVuiDcxI.TU49NxRtNIFJBfpljQi
rhqMnTcQrGRoq.YBYMWMxkZoMtBtjbHYJ.olIhHsDlQ9A2jDDwhDw4pFu7LA
fGPLIIh84lvoZvvY7JsVa8INYV0l17lyz9OsIH.bfDyTc5NvUSM+d5Qofusk
IrpNl4NCCGk86PFc3O+tqGqq18k61eXyXYt3mkum+0qes7aK+DWd6M2s8gCu
7qd0+Td4K+7l8W8Q4qKe4WE+pu5xG18k6uZabGas68+8+BIe3G+bud6C6u4t
M6uY2cO56ALG9ldzm6aJ9CJbBePVQi2y7yweBeNgFfG2I94.G+d9zMW+4c2b
293MEKegdqRhGm6sK7Td7sREN3AyxuurRjVdwiuC6t+5s2K+zP2ezg7ywu2y
twK+Q1+7aeZUOqmV6I7zhXCtQk2C2ezwRC9bfS47uE.Jw29C+fbs3C5D9bxo
mZDsAbhBUT+XVnCRQ274O+Kau+g3O8xm4keZyee2x2d3MK+yat6v+DV9m2u8
WtI88aW9Jat+pOdy9sWs+K2u7bd4u43Kgkezc7G7ce4l3mMiV9i7pa27vC2s
4Sae3yaN.rKe+te6xW+ud8+O.AhiFZ
-----------end_max5_patcher-----------
</code></pre>

aparment
Posts: 2
Joined: Fri Jun 26, 2020 9:24 am

Re: [Feature request] bach.ezmidiplay note-off at note offset rather than scheduled at onset + durstretch*Δt

Post by aparment » Sat Jun 27, 2020 8:29 am

althought it does not account for modification you make during the note duration
Sorry for my perhaps confusing message and demo. Modification of the clock during the not duration is exactly what I am referring to.

Thank you for your answer, I will probably stick with what I have for now!

danieleghisi
Site Admin
Posts: 1347
Joined: Fri Dec 03, 2010 1:25 pm

Re: [Feature request] bach.ezmidiplay note-off at note offset rather than scheduled at onset + durstretch*Δt

Post by danieleghisi » Sat Jun 27, 2020 6:10 pm

I understand. Unfortunately, I really don't think that a bach.roll~ is going to come out any time soon...
Best,
Daniele

Post Reply