Jump to content

Make your own Logic Pro X MIDI Plug-ins in JavaScript!


Recommended Posts

Hi I'm wondering if it would be possible to write a script for Reason that lets me automate CC parameters by the actual name of the parameter in Reason. basically i'd create a lookup array in scripter that has all these values in it (see bottom screenshot)http://dl.propellerheads.se/Reason6/Reason%206%20MIDI%20Implementation%20Chart.pdf

 

my question is.. could i automate Scripter parameters with normal logic automation? So for example in my Scripter plugin I select "Thor" from a drop down and then I'd need the list of mapped parameters "Mod Wheel", "Osc 1+2 Level", "Portamento" etc to appear as Automation parameters in this menu http://www.musictech.net/wp-content/uploads/2013/01/Logic_Automation_1.jpg

(eg 2 -> Scripter -> Thor:Mod Wheel)

 

All Scripter then would do is send the actual correct CC number to Reason along with the automation value.

 

anyone know if this would be possible?

 

http://d3vvl31cy8gagb.cloudfront.net/381_seqreason/MIDIChart.gif

 

thanks

J

Link to comment
Share on other sites

actually i wouldn't want to expose all those parameters on the UI. there'd be hundreds! is it possible to have automatable parameters without them being visible on the Scripter interface?

 

also I'm guessing plugin parameters (& UI elements) can't be created & destroyed on the fly? in which case the best option would be to have one script per Reason device. But looking at that chart: whereas some instruments/devices only have 5-10 parameters, some (like Maelstrom) have over 50!

 

does anyone know therefore the maximum PluginParameters you can have on a Scripter? (sorry i dont actually own Logic Pro X yet, this is all forward-planning!)

 

i know i could wrap all Reason devices in Combinators and just have 8 automatable parameters (4 rotary, 4 buttons) but hey that's the easy option! ;)

 

thanks

j

Link to comment
Share on other sites

All Scripter then would do is send the actual correct CC number to Reason along with the automation value.

anyone know if this would be possible?

 

You don't need to use Scripter for that, you can just use Smart Controls. There's a video tutorial on track stacks on YouTube about it by musicprotutorials that is pretty good.

Link to comment
Share on other sites

  • 2 months later...

There is a MIDI script for Reaper that is splitting Polyphonic Aftertouch to different MIDI channels and then converting Poly AT to Channel pressure. A great use for this is to play with Polyphonic Aftertouch on Oberheim Xpander. You have to edit the script to make a round robin on 6 MIDI channels instead of 16.

http://forum.cockos.com/showpost.php?p=1245297&postcount=58

However I thought it was based on javascript but I had no luck just pasting the script to the Logic script plugin.

 

Here is a video when I am playing live on a Roland A-80 controlling the Oberheim Xpander with Poly AT .

Link to comment
Share on other sites

  • 4 months later...
That's exactly how far I came. Neither Run Script nor the Scripter preset change calls the reset function.

Hi (first post!),

A bit old thread but anyway...

 

I might be wrong but I think the purpose of Reset() is to have your plugin a change the reset its state before the playback starts.

 

For instance, if you want to have a plugin that plays only the first note, here's the code for it:

var firstNoteSent=false;

function HandleMIDI(event)
{
if (!firstNoteSent && event instanceof NoteOn) {
	Trace("This is the first note");
	firstNoteSent=true;
	event.send();
}
}

function Reset() {
firstNoteSent=false;
}

 

If you play the project the firstNoteSent will be set to "true" when the first note is played. And if you stop and play again, the plugin won't work properly without resetting the firstNoteSent -variable to false in Reset()-function.

Link to comment
Share on other sites

  • 4 months later...

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...