trigger the Arpeggiator with artificial noteons
-
I have a project (Midi FX Plugin) where the arpeggiator is triggered by the keys pressed on the keyboard.
If I have the Arp in "Chord" mode, it will play all the pressed keys as a chord.
So my question:
Is it possible to trigger the Arp with, lets say, 3 Artificial noteons?scenario:
User press 1 key, in a script processor it will send out 3 Synth.addNoteOns... and the "real" pressed key will be ignored while the 3 Artificial notes trigger the Arp so it will play a chord.Is this possible?
Since this is a Midi FX plugin, I'm not able to use Containers (the midi events, artificial or real, will not go down/up the module hierarchy)
If I place a Midi Player above the Arp, I can get the midi events from the Midi Player to trigger the Arp but I'm unable to trigger it with Synth.addNoteon....
-
@ulrik I don't know how things work in the HISE MidiFX build but I guess you've already tried by simply writing this in a midiScript :
function onNoteOn() { Message.ignoreEvent(true); Synth.playNote(yourNoteNum1, yourVelocity); Synth.playNote(yourNoteNum2, yourVelocity); Synth.playNote(yourNoteNum3, yourVelocity); }
I took a look but it seems you can't go scriptnode for this usage...
-
@Matt_SF thanks for checking!
Yes that's what I've done but the Arp doesn't respond to it, I didn't use the Synth.playNote() though, I used the Synth.addNoteon..., maybe there is a difference between those commands, I'll check it.
-
@ulrik I think
Synth.addNoteOn()
- basically - adds a noteOn event to the message thread andSynth.playNote()
actually plays a real note.Someone, please correct me if I'm wrong because I've always had a hard time wrapping my head around midi events
-
@Matt_SF said in trigger the Arpeggiator with artificial noteons:
@ulrik I think
Synth.addNoteOn()
- basically - adds a noteOn event to the message thread andSynth.playNote()
actually plays a real note.Someone, please correct me if I'm wrong because I've always had a hard time wrapping my head around midi events
Oh, ok sounds interesting :)
-
@Matt_SF no luck with
Synth.playNote()
it seems to make no difference.
Why is the Arp triggered if I run a MidiPlayer but not if I use
Synth.playNote() or Synth.addNoteOn()
I'm running both from the same place in hierarchy.
It's like the MidiPlayer sends it's midi events via another buffer, or something, I don't get it, I have to get one of @d-healey,s t-shirts I guess :) -
@ulrik I think the Synth functions works on the Synth modules and is not generating any message, maybe you need the Messageholder functions instead.
-
@Soundavid Ok, do you have an example of how to do that?
-
What about adding a synth module and enabling this setting?
-
@d-healey I have it enabled already.
My standalone Hise is compiled with this setting enabled and I think that is why it will not trigger synth modules, modulators or containers
-
@d-healey said in trigger the Arpeggiator with artificial noteons:
What about adding a synth module and enabling this setting?
what exactly does this do in an FX plugin?
I ask because I'm looking for a way to include Poly waveshaper in my FX plugin...
-
@Lindon I know no more than this:
-
@ulrik said in trigger the Arpeggiator with artificial noteons:
@d-healey I have it enabled already.
My standalone Hise is compiled with this setting enabled and I think that is why it will not trigger synth modules, modulators or containers
What is a MIDI effect plugin in this context? HISE doesn't have MIDI out does it?
-
@d-healey said in trigger the Arpeggiator with artificial noteons:
@ulrik said in trigger the Arpeggiator with artificial noteons:
@d-healey I have it enabled already.
My standalone Hise is compiled with this setting enabled and I think that is why it will not trigger synth modules, modulators or containers
What is a MIDI effect plugin in this context? HISE doesn't have MIDI out does it?
Yes it has midi out, when compiled as a midifx plugin.
I know you use Reaper and a midifx plugin is inserted before an instrument and sends its midi events to the instrument. -
-
@ulrik said in trigger the Arpeggiator with artificial noteons:
Yes it has midi out, when compiled as a midifx plugin.
Oh I didn't realise! Excellent.
-
@ulrik I don't have a clear example right know but the Synth.PlayNote(); works when the Arpeggiator is inside a ChildSynth, but if you try the Message.setNoteNumber(); the Arpeggiator will work fine outside, the problem here is that you want to play a chord but if you review the API the Message and MessageHolder functions have things like MakeArtificial(); so maybe you want to start there.