Mainstage e funzione "Latch"

McFly 20-07-21 23.45
Buonasera a tutti, provo ad aprire un post perché non sono riuscito a trovare una risposta soddisfacente.
Avrei la necessità, in MainStage, di attivare la funzione "latch" per un determinato strumento.
Nel caso specifico ho una Impulse 49, con 2 split, e avrei bisogno che, su uno di questi, premendo una nota mi venga "mantenuta" fino alla pressione della nota successiva. Avrei ovviato utilizzando il sustain, solo sullo split prescelto, ma, non so come mai, se scollego il pedale (anche a tastiera spenta) MainStage mi perde i settaggii e devo rismanettare tutte le volte per riassegnarlo.
In rete, su alcuni forum, si fa menzioni di script midi per questa funzione ma, purtroppo, non ho capito esattamente come procedere. Come sempre vi ringrazio in anticipo per il supporto.
McFly 24-07-21 17.50
Il mio post non ha riscosso molto successo... ma io non mi sono dato per vinto ;-)
Armeggiando su YouTube ho trovato una buon'anima che condivideva proprio lo script che funge da "latch" utilizzabile come midi fx sia in MainStage che in Logic.
Nella speranza che questo possa essere d'aiuto riporto il codice per intero qui sotto.



var PluginParameters = [
{
name:"------ Mode ------",
type:"text",
},
{
name:"Mode", type:"menu",
valueStrings:["off", "latch", "drone"],
minValue:0,
maxValue:2,
defaultValue:0,
numberOfSteps:2
},
{
name:"------ Drone Settings ------",
type:"text",
},
{
name:"Note", type:"menu",
valueStrings:["A", "Bb", "B", "C", "Db", "D", "Eb", "E", "F", "Gb", "G", "Ab"],
minValue:0,
maxValue:11,
defaultValue:0,
numberOfSteps:11
},
{
name:"Drone Type", type:"menu",
valueStrings:["1,5", "1,5,1", "1,1,5,1"],
minValue:0,
maxValue:2,
defaultValue:1,
numberOfSteps:2
},
{
name:"Transpose", type:"lin",
minValue:-1,
maxValue:1,
defaultValue:0,
numberOfSteps:2
},
{
name:"Velocity", type:"lin",
minValue:0,
maxValue:127,
defaultValue:65,
numberOfSteps:127
},
{
name:"Drone Trigger", type:"lin",
minValue:0,
maxValue:1,
defaultValue:0,
numberOfSteps:1}
];


function HandleMIDI(event)
{
// Modes are 0 = Off, 1 = latch, 2 = drone
var mode = GetParameter("Mode")

// If Mode is off then all events are sent as entered
if (mode == 0)
{
event.send();
event.trace();
}

// if mode is latch then note events are sustained until new note events are received
else if (mode == 1)
{
if (event instanceof NoteOn)
{
var cc = new ControlChange;
cc.number = 64;
cc.value = 0
cc.send();
cc.trace();
event.send();
event.trace();
cc.value = 127;
cc.send();
cc.trace();
}
if (event instanceof NoteOff)
{
event.send();
event.trace();
}
}

// if mode is drone then all midi events are blocked
else if (mode == 2){}
}


function ParameterChanged()
{
var mode = GetParameter("Mode")

// if mode is off then nothing happens
if (mode == 0)
{
var cc = new ControlChange;
cc.number = 64;
cc.value = 0
cc.send();
cc.trace();
}

// if
paolo_b3 24-07-21 17.59
Giusto per dovere di cronaca, Io il tuo post l'avevo letto, ma Mainstage non lo conosco per niente.
michelet 24-07-21 21.37
@ paolo_b3
Giusto per dovere di cronaca, Io il tuo post l'avevo letto, ma Mainstage non lo conosco per niente.
Per chi suona dal vivo è un software imprescindibile, almeno in ambiente OSX.
paolo_b3 24-07-21 21.47
@ michelet
Per chi suona dal vivo è un software imprescindibile, almeno in ambiente OSX.
Mah io ho fatto una prova a suonare con VST su PC, ma non mi sono "trovato bene". A parte il fatto che avevo un pc miserrimo e suonavo con l'ansia del crash, ma sono sempre stato convinto utilizzatore di macchine HW
michelet 24-07-21 21.53
@ paolo_b3
Mah io ho fatto una prova a suonare con VST su PC, ma non mi sono "trovato bene". A parte il fatto che avevo un pc miserrimo e suonavo con l'ansia del crash, ma sono sempre stato convinto utilizzatore di macchine HW
Anch'io prediligo la controparte hardware rispetto alla software. C'è da dire che avendo molta, molta disponibilità, vorrei fare una prova, investendo in un sistema composto da super laptop e virtual instruments. Non credo ne rimarrei deluso, anzi. Alla fine, facendo due conti, un paio di sintetizzatori si potrebbero tranquillamente sostituire con un siffatto sistema. Il portafoglio ne gioverebbe relativamente poco, la schiena decisamente di più.
paolo_b3 24-07-21 22.47
@ michelet
Anch'io prediligo la controparte hardware rispetto alla software. C'è da dire che avendo molta, molta disponibilità, vorrei fare una prova, investendo in un sistema composto da super laptop e virtual instruments. Non credo ne rimarrei deluso, anzi. Alla fine, facendo due conti, un paio di sintetizzatori si potrebbero tranquillamente sostituire con un siffatto sistema. Il portafoglio ne gioverebbe relativamente poco, la schiena decisamente di più.
Si la schiena e probabilmente la praticità a gestire la "baracca". Però un errore che non va fatto, come hai già anticipato tu, è di pensare ad una scorciatoia a basso costo. Per avere un sistema di buon livello occorre spendere.
michelet 24-07-21 22.49
@ paolo_b3
Si la schiena e probabilmente la praticità a gestire la "baracca". Però un errore che non va fatto, come hai già anticipato tu, è di pensare ad una scorciatoia a basso costo. Per avere un sistema di buon livello occorre spendere.
Ad ogni problema complesso c'è una soluzione semplice, ma è quella sbagliata.
paolo_b3 24-07-21 22.57
@ michelet
Ad ogni problema complesso c'è una soluzione semplice, ma è quella sbagliata.
Si com'era la gag di Guzzanti? "la soluzione è dentro di te... ma è sbagliata" emoemoemo
michelet 24-07-21 22.58
@ paolo_b3
Si com'era la gag di Guzzanti? "la soluzione è dentro di te... ma è sbagliata" emoemoemo
In realtà ho citato parafrasando G:B Shaw. Guzzanti è solo arrivato in seconda battuta.
wildcat80 25-07-21 10.31
@ McFly
Buonasera a tutti, provo ad aprire un post perché non sono riuscito a trovare una risposta soddisfacente.
Avrei la necessità, in MainStage, di attivare la funzione "latch" per un determinato strumento.
Nel caso specifico ho una Impulse 49, con 2 split, e avrei bisogno che, su uno di questi, premendo una nota mi venga "mantenuta" fino alla pressione della nota successiva. Avrei ovviato utilizzando il sustain, solo sullo split prescelto, ma, non so come mai, se scollego il pedale (anche a tastiera spenta) MainStage mi perde i settaggii e devo rismanettare tutte le volte per riassegnarlo.
In rete, su alcuni forum, si fa menzioni di script midi per questa funzione ma, purtroppo, non ho capito esattamente come procedere. Come sempre vi ringrazio in anticipo per il supporto.
Scusa, osservazione banale: il sustain l'hai assegnato a livello patch o a livello concert?