VST clock sync
The last topic I could find related to mine is 5 years old. Is it yet possible to send clock information to a vst~ object for beat-dependent delays, etc.? The vst~ documentation does not say.
You have to include a transport object in your patch, and turn the transport on. That will automagically make your plugins hosted within vst~ sync to the same tempo specified by the transport object.
What about named [transport] object. As I know Max may have more ‘timing streams’ at once. Is any option to relate timing from named [transport] to particular [vst~] object. Global transport extra in just a patch with unnamed instance of [transport]. Any clues?
That’s an interesting question. It would be cool if [vst~] had an @transport argument.
I don’t have access to multiple tempo-sensitive vst plugins now but I guess that [vst~] will not reliably synchronize to any particular [transport] if there’s more than one active.
One workaround might be to not use [transport] but instead send MIDI ticks direct into [vst~]. I am also not sure how [vst~] parses time–is it at the standard MIDI 24 ticks/beat or the Max 480 ppq or something else?
The patch here takes a BPM, translates it to MS per tick @ 24 ticks/beat, then sends "248" (the MIDI "tick" 11111000) at that rate. I don’t know if that will work though.
----------begin_max5_patcher---------- 741.3ocyW0zbZCCD8r4Wgp5UJwxeAzdp8d6z6cxjQFq3nTaIpjfRalze6UeX Sb.SvXnt4.VnkkUu8oceR9gQdvT9FhDBdO3a.OuGF44YMYL3UM2CVh2rn.Ks tAWvKKILEbr62TjMJqcAAWnnkDfTwWBJIRINmT6EaUIekpfnrwvux5sh7T67 I0VVhUKtixxuQPVnbnBMcR7X.ZlwI.J1NDneBttNJblRR+Mw3NJXannYVXwS u+cQIvF9xvkVegeTPwEMPHkUCPjw1iiFYdLti7xNY7VdIHNncV.8B4bRyjNL vM434rK5pesj3hCDt8ezjNhNQ5HnGzwQKSTzEe+BVlDTwRwQ15joy6QcR3zS sNoFOBhTmrXEkydFlPth1Dyfe0Cv0WP57Se8y.k.yjEXEICn3ffHK0JuJkfU WBh00xMO4L30jKLuVAof+kz5ki5RrTW3z9vbwCfxkhmmWP5gHkk+muUQdmra OwHplnaSOJLDtcUD5TTQD2PX3zBRSF+rSSF4m5Uaus50R0eZO2m8B6r9U4qs c.gBMZOcYucORQRyYl8xley7ofJUlQCoUYx9oUBDcpB5UFk30033sewDdGYn WcNNaEi9iUD8xnauzl9.rWcXGf00c1KIrLPIMiRV2nErykeUaA0WLvuyBSc6 PxP+Any6.jitEPv6MgDDZFhP8lORwr7V4jf4CvEGtsfqiQ6YevQydmVa2uk3 dIud4w1NtCyByNNK7+PH6MWYNvweReKbbmvGiNSpqMJCEO.ENG7B3Qy5cuj6 1jW5KfGdFrgMd5SGX69Va1rvX+4TjjuRrnFM029G7ThjQjJJydCqFNYNQogS 2QyxHrlEwYToot1lS9stY0U7XDZeUgmvNfGiR3PgmtPO9CFb1IyO.dFL3XTV dMsaYNb3n3YGP2c73Z9wKWtlHjUwzBEsR38bgYZxX6TJyM0pwoeo60zZ+smg BwBsjmRq2sR3Te1jDAGYVmGG8WPbiuRV -----------end_max5_patcher-----------
Oops. put the Real-Time stop message in the wrong place. Should be here:
----------begin_max5_patcher---------- 714.3oc0WszbZCCD9r4Wgp5UJwVFLP6o16sSu2oSFAdiiRskbkDTZyj9au5g Mwk.FiaBC8.VnUx6iuc2OIe+f.7BwFPgQuE8ETPv8CBBbhrBBplGfKnaVlSU tsgWJJJ.tFOzulF1ncxk.MWyJ.jRKJQEfRQyf5cwWUHVoyAsSGgURKo5k2x3 YWKgkZuODMczjgnnIiGEZGBsCDySzWqdGVpyZhE28lwI0p+FY1BmhGUq5aDb MmV.tM+dIiliarhh8K2JQjsufwCY7ZGLxJ6gACrOF1QbYmHdKtPlP1OJD0BJ jzDFhItIyN.JLFezX1aU8OKAu9w3sZpKvAoGvwQKSzrkeq2kIjJLopNY571p ShmdIUmbHf4Ce9iHsjxU4TMjhzBDYrCjTWs.n5SGh7MOyS5BBk7eBB0WTHwg BwSaEDlbIABZQVVNzClChKquk3rk3MFuUORSroA40.mtHGZhoOg5fYxLaU2+ bXxgeX7kmjpWqz+d+w9rVx0gUwqqVOJJ1RQbvnOpGzlJVF2tby+Y+kyTZ6nE apD49cZrrUBUz00160expFOXXrhflthy99JvDGCMYHD9cFS77g5kRnD3onBV JCV2nErykeUofnY9gv1YcBewO45YrjzzfHE8FPHw1gwQsgGj48.OVP4Yu7ml eStvni8G8jiF8d121uLGY1wC9Shmx3xTW23oiPOiUMu5J6QPgi5agi+36IsV 2DMoG0Md34Euv4f2Jd7rd2K0kaEGeVuTr6EMmBv28SobQgU9eCQJwJ4xZyVe IdziARJnzLNUyD7FaxxW1XS2xRSAdydfTlx1V3Pgv8lr5p+X6FOp+Xq6NS9y NlZ+9ik+7bgOy6R95r4NwWVUOwwWVYqcB8CfOQ8ze7M+zxx0fTUoSmqXXBuS HsSSF5lx39oNNNyWBulUue2YnXpzP4oM7cqjd9pMyRvCr14gA+gGlEAP -----------end_max5_patcher-----------
I’ve tried this before and the main problem is that [vst~] need midievent with at last two arguments. RealTime MIDI Msgs are without arguments. It does not working neither if I send midievent with 2 args (the second 0 or whatever). Timing in [vst~] is a little out of control. The good plugin to test is TAL-FilterII (Togu Audio Line) its envelope driven filter and is free.
Adding @transport to [vst~] will be nice :)
Yes. Posting feature request.
> Timing in [vst~] is a little out of control.
What exactly do you mean, inaccuracy (jitter) or latency?
Neither. Just that I can’t use MIDI Real Time messages and rely on global transport. I did not tested time synced [vst~] for phase/jitter/latency problems since I’m interested in being "out of sync" :-).
BTW: 32Bit’s question about the internal timing resolution of plugin and it’s host [vst~] is important too. Does [vst~] take tempo value from [transport] and send it to plugin or just send real time msgs in right intervals?
I’m trying to use this with Native Instruments Battery but I don’t seem to be able to get Battery to see the clock.
I’ve tried putting a transport in my top level patch and (just in case) I tried putting one in the same patch where the actual vst~ is defined.
I then activated the Global Transport and tried changing the tempo but Battery doesn’t seem to be seeing anything.
This is with Max 5.1.9