Hey, i’m working on a project that could well rely on the handling of SysEx messages.

I’ve heard from some people that the VST spec doesn’t handle SysEx messages properly. That may indeed be total bollocks, but since hearing that i’ve been trying to find out what limitations there may be, but have come up with nothing. Does anyone know?

Also, some have said that Tracktion has SysEx limitations. Perhaps there’s a maximum length of a sysex string? i’m not at all sure if that’s correct or not, but if there is a SysEx limitation, i presume it would also apply to JUCE. I’m working on something that is linked to SysEx, JUCE, Tracktion AND VST, and would like to know if anyone can clarify anything on the matter.

For example, is there a known limitation on what SYSEX messages can be output by a VST plugin? Or a limit to a JUCE SysEx string? OR a limit to what SysEx messages Tracktion itself can send to a MIDI output?

As far as I know, VST doesn’t do sysex messages at all… their clunky old spec only allows for 3 byte midi messages.

crumbs! is it possible at all for a plugin to send SysEx messages then?

I don’t think so…

It’s a while since I wrote that stuff though, so I might be wrong.

how does Tracktion respond to ‘abnormal’ midi messages sent from a vst plugin?

if a sysex string were to be spread across several midi messages to the output, would the bytes of data get sent to the main midi output (if the track is so routed)? or will it just ignore the data because it looks weird? The first message would obviously start with a sysex F0, but the tail F7 wouldn’t appear til a later message. would it all make it thru, or would Tracktion get too confused and cry?

Hmm. It might make it through but I think it’d all go haywire - any data inside the sysex that looked like a real midi message would get treated as one, and you’d lose bytes all over the place…