Jump to content

Scripting, MIDI Output destinations & Sysex


Recommended Posts

I think the indirect answer is "No" :) but is there anyway to output MIDI from a script to a MIDI destination *other* than the current channel strip the scripter plugin is loaded on?

 

Either to another environment object, or to a MIDI port directly?

 

I guess that you could have the "External Instrument" plugin on an instrument channel and set a direct MIDI output to that, and events generated will get sent to that MIDI port?

 

Only problem with this is that as far as I can remember (and I haven't yet checked) MIDI sysex events do not get passed through a channel strip. And possibly the MIDI scripter doesn't have javascript objects for sysex events as well...

 

I'm investigating a number of ways to achieve something (remote MIDI device editing) and while I can go the usual environment approach (which is what I'm doing first of all) there are some things where the more "programmey" environment of the MIDI scripter would be useful - so rather than using the environment to receive incoming CCs and output sysex, using a MIDI Script to process incoming CC's and output sysex to the hardware would be helpful.

 

(If sysex can't be passed, the MIDI scripter is less useful as I'd have to add something else on the back end to convert generated events back to sysex, and we defeat much of the point of the scripter plugin if we have to ultimately do this in the environment anyway).

 

Anyone have some practical tips on this?

Link to comment
Share on other sites

Well, painful as it is to deal with some stuff in the environment, the real pain comes when needing checksums, as in my case, the available checksum routines don't sum the correct bytes I need.

 

You have to go through a painful routine to synthesize and insert checksum values, and at this point I looked into Ctrlr and had a working editor with some fairly sophisticated features in a couple of hours - I'd still be working out how to create checksums in the environment in this time.

Link to comment
Share on other sites

  • 4 years later...
  • 1 year later...

Using a MidiFX plug-in yes, Scripter no.

 

As I noted here, AUv3 handles incoming SysEx messages and you can send back to the host, which you need to do to contine the flow of the Midi Events down the MidiFx chain.

 

 

I havent worked on the SysEx part only because I've been writing/testing my other options in my Objective-C MidiFx plugin. The only reason I wouldn't put support for SysEx is because, I have no hardware to test this and to be able to make changes for updates. So it's a extremely low priority for my MidiFx plug-in.

 

What's great about this MidiFx plug-in is, it's a MidiFx plug-in, not an instrument so you can have a loaded instrument, but my MidiFx plug-in can redirect to a virtual port I create and in The Enviroment you can cable from the virtual port to a final instrument destination.

 

So yes it's possible.

One thing to keep in mind about a AUv3 app extension, it's a sandbox application. So API's that you normally would call in a regular application, won't work in a sandbox application and if you plan to write out files like I do with my capture Midi part of my MidiFx, you can only write a a sandbox folder location per your app extension.

So far, these aren't bad limits, I've been able to write the MidiFx plug-in that I want.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...