Create VST, VST3 and Audio Units with Plug'n Script 3.1

Official support for: bluecataudio.com
Post Reply New Topic
RELATED
PRODUCTS
Plug'n Script

Post

ilyaorlov wrote: Tue Apr 09, 2019 12:36 pm Here a preview of a customizeable skin for Plug-n-Script! Already can do some rather complex SVG-backgrounds!
:o :o :o :o :love: :love: :love:

Impressive!!! Is this all done with KUIML only?

Post

ilyaorlov wrote: Tue Apr 09, 2019 12:43 pm A few questions on that!
1) Is there a way to set X/Y position of the opening WINDOW?
2) Would be cool to be able to overwrite TEMPLATES and DEFINES. For example I use some new elements defined in my skin, but I want the .kuimls also be working fine in original PnS Skin. So I'd like to put copies of these DEFINES/TEMPLATES in .kuiml without error that they're already defined.
3) I found CANVAS element and was very excited. Can I use it, is it ok? Would like to try to make meters with that.
It looks like you have been looking at new KUIML features that have not been documented yet :-)
1) The WINDOW element has h_position and v_position attributes to set the position. However these are absolute positions on the screen, so for a plug-in it may be odd to set the absolute position of the window, as the parent plug-in window may be opened anywhere on the screen. We may add relative positioning later too.
2) You can already override defines. Just use the UNDEFINE tag to remove existing definitions first (it works like the DEFINE tag). Templates cannot be overriden, but you can use DEFINEs using the templates if you want to change the template you are referring to.
3) You can indeed use the CANVAS element, but the Graphics API is not documented yet and may change in the future (it is still in work so function names and parameters are not 100% stable at this point). It can do pretty much any kind of drawing, but it has not been used much in our plug-ins yet.

Post

:o :o :o :o :love: :love: :love:

Impressive!!! Is this all done with KUIML only?
Thanks! Yes, of course! :)
The WINDOW element has h_position and v_position attributes to set the position.
That was luckily enough to make WINDOW remember its position on reopening!

Post

You can even make it persistent using the PERSISTENT_OBJECTS element!

Post

For those still wondering what Plug'n Script can be used for, check out our blog post: why would you need a scripting plug-in inside your DAW?

Image

Post

@ilaorlov, what you are doing with Plug-n-script is pretty impressive and it has my attention now... Thanks for sharing your work!
MacPro 5,1 12core x 3.46ghz-96gb MacOS 12.2 (opencore), X32+AES16e-50

Post

@BCA

So two questions real quick...
  1. The new standalone version of Plug-n-Script does not appear to support midi in/out. Any possibility you will provide that capability in the not too distant future? I know this was requested for patchwork some years ago and still is not there. In both cases, this would be extremely useful for me.
  2. When I used the standalone version of Plug-n-Script to compile an AU-MFX, the plugin loaded up fine into LogicPro, but produces no midi output (just using one of your example midi scripts for now). Any idea what is going on there?
In general I have been under the mistaken impression that This scripter was limited to making dials for UI elements, but it appears that this markup language you're using is quite capable of sophisticated GUI's far beyond that... I don't need to go that far beyond simple knobs...but I might start using this instead of Scripter inside LogicPro.

One further question though...

Do you have any idea whether LogicPro's articulationID attribute of each midi event, can be accessed through AU/VST plugin architecture somehow? This is an additional attribute of midi events that LogicPro passes around inside the app, some of their internal plugins are able to work with it, but I do not know enough about AU/VST yet to know whether there is some tricky way to obtain that information from LogicPro in an AU or VST plugin....and if so...could it be obtainable through Plug-n-script?
MacPro 5,1 12core x 3.46ghz-96gb MacOS 12.2 (opencore), X32+AES16e-50

Post

Please find below our answers and comments:
1. It actually does support MIDI in and out. It;s just that it currently uses all connected MIDI interfaces and doe snot let you select which ones you want to use.
2. Have you inserted a virtual instrument on the track to check the MIDI events? I don't think Logic lets you record the output of MFX, you can just use it for an instrument.

You can indeed create almost any kind of user interface. KUIML is quite prowerful, and with scripting you can actually write your own logic.

I am not an expert of Logic's specific implementation, but I don't think these IDs are available from plug-ins, as the only thing received by the plug-in is MIDI or audio data - unless they are using an extension to MIDI with specific MIDI messages. You can maybe write your own script to scan incoming MIDI events and see if there is any extra data.

Post

The mfx scripter was not outputting midi to the host I wasnt trying to record it. I will try again later to give you the exact steps I used

Articulation id in logicpro is an additional attribute of event objects. I have no idea whether the raw midi message data that is available through c++ includes that data or not. Possibly not, but does angelscript provide access to the same low level midi message buffer that is available in c++?
MacPro 5,1 12core x 3.46ghz-96gb MacOS 12.2 (opencore), X32+AES16e-50

Post

Sending midi out to all midi devices including IAC ports in the standalone version is not really a usable configuration from a practical standpoint
MacPro 5,1 12core x 3.46ghz-96gb MacOS 12.2 (opencore), X32+AES16e-50

Post

Dewdman42 wrote: Wed Apr 17, 2019 1:42 pm Possibly not, but does angelscript provide access to the same low level midi message buffer that is available in c++?
Yes you can access all three bytes of each MIDI event using the [] operator.

Post

Dewdman42 wrote: Wed Apr 17, 2019 1:43 pm Sending midi out to all midi devices including IAC ports in the standalone version is not really a usable configuration from a practical standpoint
Yes I understand! For the moment the best choice is to use the plug-in inside a DAW for complex MIDI routing.

Post

Blue Cat Audio wrote: Wed Apr 17, 2019 1:51 pm
Dewdman42 wrote: Wed Apr 17, 2019 1:42 pm Possibly not, but does angelscript provide access to the same low level midi message buffer that is available in c++?
Yes you can access all three bytes of each MIDI event using the [] operator.
It would have to be lower level raw then that. Probably it’s not accessible but I’m just asking
MacPro 5,1 12core x 3.46ghz-96gb MacOS 12.2 (opencore), X32+AES16e-50

Post

Dewdman42 wrote: Sun Apr 14, 2019 7:23 pm @ilaorlov, what you are doing with Plug-n-script is pretty impressive and it has my attention now... Thanks for sharing your work!
Thank you!

Post

A customizeable skin in progress!
Can already load and save themes, customize many parameters.
You do not have the required permissions to view the files attached to this post.

Post Reply

Return to “Blue Cat Audio”