truncate a note (addVolumeFade) *after* the note has ended
-
@Lindon Think I found a solution. The problem with noteOffByEventId is it's tied to the event and makes it inactive.
So instead I'm using
Synth.addNoteOff
which is not tied to a specific event.HiseSnippet 1211.3oc2W0raaaDDdojYPESqQSQPPOxlSREJNh1xJ1HnHx+HmJDKaASG2dKXM4PoElbWFxkpQsn26s9vzWf9HzGkf9BzNKonDUrrqqPcAb3AAsyrCmuYlc9lk8iDNPbrHhnYb53Pfn8o51i4xg6Mjx3jt6SzVUuGMVBQlYh1cbHMNFbIZZkeoRfVkUHoOu+E6R8obGXlHB4LAyANjEvjyj1u8qX99GPcgSYAE1cy1ccD78D9hDDOk0aPBoNWPG.GQUaqjN4aowCIZes9lqugSS2m4t95atcKGZKXaOpmm0FtMa1Zqss1XaZysZAM1jncuNtLoHxVRkPLQakcEtisGJ9AdlCNiEyN2GTKrH1nmyDefv2UEhJoj8Fx7c6mmnhIDM89yRakyRaOTuGykMU9rz2mmpvblEESfZklGdkmCdVEgWiBvaAPRq.jVICROP21IhEJmoQgm6q2kiUSOJVmJBkr8Rz9c88D3F3x0BnW.GDgKlZP0VMZT2D+o1y8R3NRlfaJ3GIjvw7p0L9IiJF+rg4Gpxyag5TtIR36CQKTs5nQz0YXUdRv4PTcyQT+DX5Fwve9bp9UmSKVxcxh5BaTv6xYxiCA9UcPfLIUg+60c2mJopBwDY39BgHISAAs8gQXaPVYoh99P7ERQH1HboZFdZQ3l3SkyeDR0nMQAlClqtoJN7XlbbwFw+yNWcSg3Cz6yjNCWLFKs.LhYpaCLNoa7yz634ANxY.bE8C99amVuhte0L2eecaFGR4QSc9iRWa9czQf4KANDoRdVWCU5ebSoRCuwToG6HQ2eZDkGGJhm6EaCArSEbUVXlvWGiM+vaOQUMKJeOAMZgpd+KN.CxEZiMUlDkdrXm.QBWN2wfxWGCs0RxPuxcXFZC8.AWfsRKjftzeVROBFX5iCkUzqlei4SrdtAVsiklvHj4oqKJqCe.VMVyIBPbqhuCYwRjN03oO8qLufed9QlIFVPBZb9D.pq6q3hyq93bcOttoENA.4+MJXwZwf7DJe.TE0sYC0LBqqbBguvg5axQuzCCYb39ZCfz.4nT57p3q1nByyrZZ6yZr3cPRTOlCi52QEc6fuzQP0IQpx3yT7+UyyG0pUynRkLiQ7elvOI.TH8ZLodw3eldT9SrTC6PDkabbtRd8oAfZP4LTVsFZPkBkmqLNulYk2VYI9GjdxcZAufMFbN3qh97fndQTnxQwRZPXZf9Q7L8rQ4HpvsJS6WWcR+psOyEhHLWUy5Tx2TLWjZaotTfZuAgHarhl7d2D+9NLenYftar5OJ+hWWOzl8iPQx4.56lt7W9s12At6wbLlUxwnMKHzG5vGA9XtLEieAl77nI9xboyOZsGxlFNTvYNEKNm.xH1fAPTQruv.ZGoD+LjYRdX6S.efVXFZ6es8gHaKMJkzd4xEV+qmdrv50WpmAWyTp76t2Yr7G22Y7DQhjwGzihGBU8uHstMdUMGXB6qhiSqjhMJaci7Vaaf6lt3uvmIJsTq0lnzJW4+K9Hf5DIdiSFOo5b5mjJAiad52rWQumZso0kYGCvKk7FGm4eUWxv0WVC2XYMr4xZ3lKqgsVVCe1xZ3V+yFpty3NIRQPVqIgzqemzoYZZc3T7TdZGA4uMZBWPD
-
@d-healey yeah that works, but sadly it seems to add a distinct click to the start of every subsequent note...
-
@Lindon What's the fade time set to?
-
@d-healey yeah I just worked that out if fade time = 0 then click, else no click...
so well done - good work.
-
@d-healey ok so (sorry to be a pain here..) this is all nice but....
its using Artificial events, and now I want to add "legato" so:
step 1:play note 1 (and hold) = plays
step 2: play note 2 (and hold) = plays note that slides from note 1 to note 2
step 3:release note 2 = plays a slide from note 2 back to note 1...So pretty standard stuff, and my way (and I think yours is similar) is in the note off at step 3 create a new note and slide it from 2 to 1....
BUT: if we are using Artificial notes for our mono system - then I have no way of turning the new note generated at step 3 into an artificial version of itself...so our new note isnt joining our mono processing club...
So my question is: in the mono code what value is Synth.isArtificialEventActive() adding?
Why are we making it artificial at all? wont it work if we leave it alone? Just trying to understand the script... -
@Lindon said in truncate a note (addVolumeFade) *after* the note has ended:
now I want to add "legato"
You're one of those moving the goal post feature creep clients, I see how it is
@Lindon said in truncate a note (addVolumeFade) *after* the note has ended:
Why are we making it artificial at all?
We can't turn off real events so we have to make them artificial.
I think what you're wanting can be done because I'm doing a similar thing in my legato script, but it's probably a little fiddly.
-
@d-healey said in truncate a note (addVolumeFade) *after* the note has ended:
@Lindon said in truncate a note (addVolumeFade) *after* the note has ended:
now I want to add "legato"
You're one of those moving the goal post feature creep clients, I see how it is
damnit! I am!!! Let me take myself outside and shoot myself....
-
Actually thinking a bit more about this.....
if we are doing legato/glide - then this whole "stop the release sounding" thing might be a bit pointless - as we are sliding some new note into teh equation anyway...
-
@Lindon Yes I think you're right
-
@d-healey actually its simpler than even that I think.....
..separate out mono behaviour from glide/legato behaviour.... so two scripts: mono followed by mono glide...
-
@Lindon Let me know if it works, since we're not calling ignoreEvent I think you should be good.