Thank you again for the last update, it's working very nice.
I have some good news. The conditions "slide-up-into" and "slide-down-into" test positive for any note that is at the end of either a glissando, a portamento or a guitar slide! By checking it, it's possible to set PORTA (CC20) to some 75% and then LEGATO (CC64) ON, prior to playing the note, thus producing a glissando. I'm working on the details, but the base code is something like this. Maybe you could include this in some future version.
This is the prototype so far - just added at the end of the rules (so that under-slur rules don't interfere). It works fairly good, even with continuous up and down glissandos.
The caveat is that the glissando will wait until the first note has ended playing to start, stealing 75% of the time of the second note. A rule could shorten the first note but i guess there's no way to anticipate the attack of the second note, so the workaround is to edit durations in the sequencer staff to fine tune the glissando. This also happens with the Notion3 strings.
Now, these rules should only be applied to instruments that can do 'portamento' glissandos: strings, solo strings, trombone, but may be useful in the french horn, clarinet and some other winds. I don't know how other non-portamento glissandos can be coded.
- Code: Select all
<rule>
<if condition="slide-up-into"/>
<cc type="note-on-prefix" controller="64" value="127" />
<cc type="note-on-prefix" controller="20" value="95" />
<cc type="note-off-suffix" controller="64" value="0" />
<cc type="note-off-suffix" controller="20" value="0" />
<duration-change amount="1.0" />
</rule>
<rule>
<if condition="slide-down-into"/>
<cc type="note-on-prefix" controller="64" value="127" />
<cc type="note-on-prefix" controller="20" value="95" />
<cc type="note-off-suffix" controller="64" value="0" />
<cc type="note-off-suffix" controller="20" value="0" />
<duration-change amount="1.0" />
</rule>
EDIT: trying the glissando or portamento marks in other instruments than strings, I see that the glissando is played chromatically note by note and the rules don't apply - Notion knows that the 'glissando' is to be played differently in each instrument. So, I'm undersanding better the "slide" conditions: they don't apply directly to a notation in the score, but to the condition of <if it WILL slide or not>. If a glissando or portamento marking will cause the notes to slide (because the instrument features that technique) then these rules will be applying. AND, if we use the SLIDE marking, it will effectively slide independent of the instrument. The slide up and slide down notation becomes then a glissando, always.
I hope I'm not cluttering this thread with these snippets. Your Rules rule! that's why I'd prefer to contribute to them than just tweaking my own. Of course, they are just ideas.