accelerate midi messages
I’ve been making a patch that automates nrpn data in sync with my korg er-1. The fundamentals are working fine but either I don’t have the CPU or it is the speed of max messages that is limiting it. This patch is set up to send messages to parameters of one sound on the korg but I would like to send to other sounds – which means i’d like to be able to automate 15-20 parameters have them play back simultaneously. With this patch performance starts to lack when using only about 5.
I’m using Emmanuel Jourdan’s [ej.function] and storing breakpoints in multiple [functions] which I know is not ideal but when I tried storing data in table or multislider it seemed to put the automation out of sync with the korg.
Can someone help to make it faster?
Is automating 15+ nrpn’s excessive?
I’d like to have the ability to in case I "need" to.
the computer is not the problem, any atari computer with 8 MHz
could send out those data, the problem is the midi hardware. and
the fact that midi isnt a serial protocol.
what should help is [speedlim] and choosing priorities wisely,
eventually use [defer] for lesser important parameters when
your data is coming from a seqeuncer patch.
I’m not sure it is the korg – I figure if it couldn’t handle the data coming in I would hear glitches.
The symptom I’m getting is once there are a few functions outputing on different controller numbers max itself starts to slow down – when I click to make a new point it may take a few seconds to appear.
Which to me says it’s a cpu thing – but i’m not sure. Unless you mean having some sort of bottle-neck of data at the output of max makes it slow down.
i wonder if you could share with me your patch
i’m trying to control my Electribe ES1 ‘s parameters but can’t find the way
to format the bytes properly
if you can please post the txt vesion of the patch?
thank you very very much!
Yep, sharing this would be great!
I ran into major bottleneck problems sending sysex data to my old keyboard. I made a patch that allows pattr control over all the parameters of the keyboard (it only has a very clumsy button control to access everything, so I made knobs and tabs to have instant access to whatever I wanted). Most things worked great until I did some interpolation with the pattr, which of course changed all the params at once. Not even close to fast enough via the sysex, and everything would lock up. So I used [mtr] and [speedlim] instead, and included [change] to filter out any values that weren’t changing. Worked far better.
I think if it’s direct [ctlout] messages you’d get better results, but this old thing needed the sysex to work.
I’ve had email notifications turned off.
Accidentally stumbled across this.
I’ll upload something when I get a chance – probably after easter.
I’ve made up three – ER1 mkII, EA1 mkII and ES1, but they’re for Max4Live – if you’re only using Max 5 you’ll have to do the interfacing yourself.
I was very surprised how much I could delete when I got M4L.
As I said I got rid of the UI elements of this patch and I’m using it in M4L.
Here’s an example of one parameter of each device – ER1 ES1 EA1
and some silly notes explaining it as I understand it.
Hope it helps.
----------begin_max5_patcher---------- 2018.3oc6a00aaaCE84Tf9e3B+vZBPSlH026gAzl0GJPSaPS2doYHP1hNVMx jFRTNIqX+2G+PxVN1NRNlJtKM4AKaQJxKO2Cu7dHU99Kewd85ytgj2C9M3qv d68cwc1ScO4c1q5F60abzMCRixUUr2.13wDJu2qKKjStgqJ3KiH4DHlLMY.I GhxHvIIwIv6FNjLfmCCYYPgnBWmvGAm37gifuvT2fOhLFRnvIQ2.tv2Jx4PF YRZz.UQPTAmMNhG0Ok.oISIGQKFKLQc6DA+46AV+uI5geMGXCgaYEvfQLgIb zLKLMgRFvJnJyDWc2gLJmFMlnr82jkDkN6AD8PBMkvUCXT0cShUUUzaGhrqW WVAupxV0a87j+Q05H7Qyt+jH9fQIzKuHSXxZfGGHJF7Bke5X4HuXK9D9a0i7 uu7ExqhKud6cQehR.JSXARnZLaJQVMfQU.869L5U4voIxhGHL+LVpxocZTLf fIYrXg2JWT0jbo6R9HRW10IzX10GcN8bJx2CfCgy3Q7hbn+sbBr+wGe.7KvX ISXvnHJkjBnyogg.Hq5G+7oeDN4r2BGeLH8qjryoX.tSgwB2OLMJsf.v9By7 fMpqBp0ZeXMc0oQYBp.mjAeTUDrudTqPiMp67Vx5+Co0mPmTvg8E3ZNOhxEM osqtdPsdBlLyNTC2USgQ1lfCiwFjC6D5K4spOvX0ETfW2Ph+hh.lqiTvDL5Y j0L1XfDIfQcPHA3ppyUDxDHtXRZxfHtvtgHZrxkco7GRdbYKjVg6JdupkXhh yp4VDwWdUrHNzUhfSLHJV1ABt+wiHCtRGu68imjplWI5KwLqxndymoHetghu ABHuVCqoj4Gtve+9pI.lw+aYP+evLuuSP4ktw4+t2f5YjH3gKzLCEq1rPUaC jDbuPhmqmZ1.Rcw0V8C+NBUNyPnRPWiJ19NZTA8HfJe1PnhemyUJCbZ08fx9 1GHCdJCvYr4RdFLRhud9hsdQj.EhHwkNAKbmiElZFjqIWU0FowB6GAr.OGKL 07FGChEHeWEVX408XgLKw88NPm41eoRHXPDEDYtcqJcgbAfbD7dUJcBL65QQ bxTcxAv0hr6TIXbR8DC2GKtyaxtrPkYvAplqungH70HSIzHN.jIkonUl3qnj 5E4QR9Ym4.BCN.NddhYZ+fHGbBYUIZsFbzwH3nISUBYEpAR0jZcdyd3tAGOQ gigBbrN8UwekJOXzzaAJgDKyIUkPrVx83kntQyotPxPQFsxLmE.QdRLQpkTo me0d.OS3ABMIQ1xW6.vJNrZoYHHra7.BgkbDbbA+vOMb3rhmjQxqHtWz1sm. dKKMt8PlHR4p6uZHAVOYVEY0S8crBG1Dv1pgrfUnL1UEv1uTYX89ntsoZvGr SfRtVLvW1GnY18LHx5uF5n8CBgTwCvApE1b7VFgzc.+1ID8Szq2qgdIR1l9x VvaqsgZyFRSixlAOmtL2sEvSPSDOTP3bhmsdH6tdhGtEvmd+yVUasR3aXJKR hbqkENuKKUneAgJ2CxEJLOZJI9hHNOKoeAmL+a4kfdEpKQUwxWrgU2eVA06g wBeiN.l+LJycpPhx5rVcwIzDtLrpFXrmM5VnRU.w80BqXrtP0xGwxlOGZEjn 6znSSxSJauUOtXwMMzEKFwJ4Qy53U1aoL5k2C+co98dQTQr4qjMV9ZgBYSvh I0m8emA+P15MVVVLIasvRgvaju9GNehXo6zjwq84y4jI4qsTxMSXTR4VJdz5 M.9skdtxJTFmY9WLYrZQB0PenuQzeXaEtIwoCaSXZQvM89zqhy3euwYJCQ2W r5yrqaQr50t7FOUtUhdvlqZydUn1lksaqPMGUJYfqybT6ACChIi4Q0VNeFNX uwCe7JG9qSzD5AL7CTI4aWoi+H2lWbp6XHggFihfMHEoDiza6kmUWRQBLDEw 1fTDeKsZDqeHnHAFih3XPJRI3DhMFE4dDrEWdXbOpp0BcaLo4RPPs9iqeWHV y1WejEZQHddOEDqgLnTMa8dPhCv+XJUaQZaym.XSLNMWq7ysRkVEx449rJsm UosBUZKPceVi1OOZzLmBM6pSHx4ItBMClYUIl4nU01s5ybMRx2tlK0a6vvZG 07SF0YdFjdThPNgcu1LKiPO7MH8Pui71ddOoTlEXP5QIBEDXL5wi1Y33ZPcA 5C2Bqe0ldjkErIBY2ZTy2tIIC5i6q7z9PKiDauH0.8KPltiPVtcoH0lzbc1s T9nMW2Ep4yGaNJtcBub0mpqdy0dV20y5tpq6ZUz2m0d8Si1KrAEeUFmIL7It 1KrAEeowLa2GgyFCajjqwFT7U06yoslqzpUl9ef3KrAUeUAQt3tW8kgHHFT9 ER+l99iBAwTxuvFT+UED0HAQiYp2Ky69e6opYkEbGvImUjMnBXql7C0P+XRN OgNKkvuNm+WuViRhiIzEFeiShmvDQ+Ksj6ym0diSrTFfaz3b2TiK.IU8aiKU xTdL9M7VO2dq1uUPZvtCRQMZb9apw4WBhZga5WLD0uLmU2Lj5rSfT61MExd2 3uQsw3rc2MFWarMzNwzZGrsa3aswzb1YlViAW13XK1g0SpT9K2xeYDitUgqC 1Y3Yiq+swyccrzHH1q5Thp9kQL5VENb2jPg5c7pEyqQ6noOn1E1Ag2Mlm7Mu sMlm0Nz7PMad16PyC2r4g1QlWqhCtDG3Qy7BZm44u0lm7FhK+GrhgERC -----------end_max5_patcher-----------