Changing Hise Legato To only 2 Octaves???
-
@natan I see the code is misspelled, my bad, it should be Message.getNoteNumber()
-
@ulrik said in Changing Hise Legato To only 2 Octaves???:
Message.getNoteNumber()
Thank you So Much Ulrik, works Like A Charm Now
Just A Small bug:If I play notes Outside the If statement, Notes Gets Stocked :(
Take a Look:HiseSnippet 1157.3oc4W09aaSDF2toFsDn.CMg3iGRnoDozJaVYkoRYsMMcJh9RTSofzzzzM6mjbp12YrOGHB0+G4Ok8c9.7bmsicZcqRiXCIvpMQ2umW7umWtm6R+HgKDGKhLLqe9zPvv7irFLkKG2YLkwM5cfg4mXcDLhJEjAtQrPow9SCowwfmgoYsWnTxr9pF5m2978o9TtKT.YXbgf4BGwBXxBz969CLe+Codv4rfRZu4t8bE7NBeQBRnZV1FgT2KoifSnJ0Vwxv7C55wjhnARpDhMLWceg2zAiE+JOU+KXwr23CpENFCPGkBenv2SwXEpQmwLeu94AdrggoU+hzPszzvirNl4wlgWjN9Ts.RgEkyGlqbWzyoL8rWX5YThcqlxNjDBuDerpLGyTkiLALAeNl0iKAdLSNsb45eU59Pq9Lo63p46JUvWrP8tluYE+0r5NbH3JKH6pVG9yueqzebJU9PqALNn2RpIxmqWS9I5Df7BfCQpjpycro7OVzMkgK7lxSck3q+7HJONTDOmiG.AryEbUFo.7GigCife4LUUtLdGAMpRQu84GhAYk1LfJShzsK6EHR3x4ZOpsv0j6wvgUeWMbn1h0xTAkLu4VrGZkNdtPhhOOvxWO6dNdjMGek+rlUDLh.S.trmGYGx5O6YauVCElOMVdhPBYfZrwfumBKFAe4q1dXB2UUFHBtB8TdyVq032WqQ8iwWONxdi.5kvdQR1PlKi52rE555q0.+fMjzT2PuAKN8nE0l8nIJkd7iI41OBzT3jjf2.QMaQ9dxlaQtC4eGYqmPPNTWQBB9feoeW4A3WpClVHpRCsJ3W0SoB0y6BgeR.n1.jaRahicax5N11s1Vo5rTvFgIwialmkzBuB+W41pbWIJ2M0yMa0lnbMxmsu2VYqs4Jcxrn5Uk5J8JUKukTGp0UWubNbXd8TkBusb9N6LqUIOymEJ7Tmr+zbtjQTctpHOFAAhIP4LYVQqPEefORNFK+15RmpNTDzyxaY8fNsK5Se408w5NupM4oapSfJ2TJybmFkWdw+.+X3lrPuGYdGlAckpP0.s7Fg7sjRudwnifKiD99JYMvWaiqZPJIVMptZIYF1jqcbaBt8JAloHN2X9gQMVrYk3IA34xxRJJ383L4ogvr0okhbDaiYcTkgJhqxn5voB0Jfp3PyNobRcPSuCnRpZ.YFFpWHfyfTQn4AvD7Tuzwk0sN.huTJBeOd6p+Yl2WOmiCXAg9PW9DvGCRMG+LLpFRS7k4nyewfiEbQ3XAm4V9Tyy.YDazHHpL2qLf1SJwqiWf7ncOC7AZ4a.7U6dDdxMMBySvRlKbt2m8UY85KrRoKQ0SQ9uwshq8+yaEelHQx3iNlhMp+F9q0vYkCvKi5BHS3bbjLhYthZRP5Za05zaix8zK9K7ISniZsYlPmbguWdGAT2HwqcSGoo5kefFAiat922V25X0ZhigdXMZmk8F1FA3UJesqqJcuNlep1ludIr4IKgMatD17MKgMOcIrYqkvlu8NsQca98RjhfzshHP+t5iXLM6xoXmrtq23uItlshA
-
@lalalandsynth I got carried away in this, low-high-last note priority thing :)
try this
HiseSnippet 1994.3oc6Y0uaibaDeWausYUqaZJBJ5exJDTHk5SVx95kObbN+cNiXemfk6kBXbHfdWJsDlhTgKk0IT3Wi97zGg9nj2f1YH2U6JKcxNNWBRBpf.r1gyP9a9MePtzs0pHVZpR64Gd93ALO+eaPmwRSx9ITtz63C77+yAmv5QMJRmHMefgLh7LdujSTiZq4JM2L1auwCnoorXOe+k+BzL+vU7re91mtGUPkQrBQdduTwiXmv6yMERauyWxEhinwry48Ko8i243HkbekPMDf3xAM8FPith1i8bJp1RAd9+pCi4FktigZXod9qrmJdbmD0HoS+WxS4WJX3Cs75.SjS7QJQLhXTp29IbQb6bpH0yyOncAwrriXd+fS4w7IxKHneuc.RgEk4C+klFdKOE7ZUFdMKAuYgjWIDshCQvBqhGJfXyTnACAYCvUxoPywRCSlhwrRgnezg36EzlahRlOFWZNXDBH+Pfwr.6pAG1sKKxT.vUBN5e7CeT724V9eSPGtjYK5rK9ez9L4qnWyHeASxzH40ZAEY+m6aQ1f6cQ1KhLvxetlJSGnRmZh6v5yOWIQVnP3eOkcjl8MmgQyxx2WQ0ycnu8oGAN4bsoC0LTaSK1suZnzLUZvxKpXu0CrXekexUr66Oaoz6E3Z.WLBhm2IPX6NOENbJ5sz+5cCf.apgbMUSv10cFgEdjsI6qvpLSidLy9p9Cf3ozTqZgJUqu0pUVshl0ijvDwOWA9CX1EuZKmvAB5XlULH8QexmrUEq39.2bBGVvsIGJ6AQ3FQZFvEmlIuV8spjqSitPxXMvVPFrTqudX2gxHLtmRfcahRXQWQRfsZXv78WHB0H7GHZHRXcsV.veNCvkBrBJe5HfVmXUBwas5qV4etZkPgJhJHB.os13i.uJD91UoI0jDtrvoAsCQ0CkjOCz9oVKjjOkTsJZzMNC0LHmURDfnaVsxDnki9Eism4zZVvgApl2Kn84ftO0p+aBZINnkwzsoRlfnUCM.XRA1c+8VsRQzuQJyzFx3Mm4znVNbq0KCfXB0HX4LI7TLI5q3wljZXRicnjRC8LF3elhwtzHgQGQVmrYtnTa8BleU8DZpo5ZjpP.C+CxMUwjtvd17kcgTlpMe8ladj8iMMMzNZJlIicvp49SZCvUR1ULHgNQB8aFRWizrwl0qWLkfOJgtCmA6.Pk8DrZWrI4uZQ4GNwGdIULDBNqAN1GB12ZM63Oh7jbIe7qVi73EBlDtgkspwZ5ncE7dRV74rWap4b+Kt0hAy3EKDEaXQQ9SOAzuZDTFqYw4zxMtp3oCrmpFlx1mJDWBmjpHxxtFr86WzE9x6RbyTiHAO5JV7jjTzvqQG.L9TpIoAr4ROVM6O6JTJclcuFRLFAdzlfe1bMxF1YNztbo4TfcdJMPTBNWwNTbSYW+1kaJYAYf8.0JQsn7Ffq4.XFIr95fBoJAqw.MTJTrn2LKmlMUSX04rL02pDHv52WHyq1OEZmCGosQe5Urc0FdWdDmJvdkgYLtDKYxUCXcz9mOr+kLsUKGuaOBQCdp6353wnzWiSiMD.T05qSFjcjcRpEZfP2OH0J4OEYZ0AEPKyMkHfpSaiLTXDMkQZ9o3OCcqMNxK518.lc2g8FeHFQONt1jV9Sl5h8OfvbqlMQuHzkjvbFANraRowwYzET1Ig78m7XHyHyfIy7jbCTiroHSmo1qRJcBuD1W5J2OcNXnyAcalLkK1x4hHEKwVskvtc.KCENIJB00JMy550LZLkwMdoU7lIq6uXHt7s5lh41XJl6y9+LmyMPm.9NYi7FvgzLv1sovLUG1GuZUXS7hQGLLMAGw1bCK1YhTlqjd9XoTihb5ntEXyYNqLOvBc3t41cq5101tpbqFrQzv9s0L7bmeIabZs5P4Qy5NrcO5aUBPZVe00rbH8cM1BlUDS+90pqbWMzErs71tHbbQAlELYOSxiZ8psvx.qhNtjbEabQhJRXtYY62ZU.Sl76L8EW46JA1oyBRgQEla4e4FjV1x0+b6aelaGCU5j5HCUvNYV81getm7hcMuSlISqEwMVUdyryFErSdSxsm4X+H+L8qKLSJzDi29saez6joxV36hpln1B3pLclse3s5q8Vo29LMWJo0L88ruC6sa7kczMA1tBa8U4lJkOJIdKJyej7iVJs85xOWYthvqzO88DDb+tFiH2KsWRQk7XI27hAL4a5xM7xdSe7RZN9.pghWtPlLPuAL37lHD7OfcMOh4tpgvfCXoWYTCr5lc5XO+esI69xxtHB7kH83w3cFWzS060EWXyGry3xOLBeMhIB92WtSh8kGJT4y2AN.sZT9wnAX8tAva7QJD7yfaAcp6tILGic38GHXGJulI.R2hw+.vxcoCElboSeIempjpAIJIOp7MfcFyn485wzkw9bcncMFfxJj796bFSvnkuMuOXmSf2NhpAdh8.4hVemuGq4Fu9SAN3RvZJxOeu85k+k8sW6tOndvKsq4Pcd.bVtNpg5HFr5Rna.1KyeIrqi64l3ytaMVFae3+BexFrE9re1fsxG7Gk0nOMRq95HWWZLO8crR.+VZ++JEFbJ9LokmsyMXWPyFM8vMd95nHjheDzrc91rwCvlMe.173GfM+sGfMO4AXyG8.r4iWnM3MHu6PipuqjCDz9P61Y99GJoP1qMS26+we6NjC
-
@natan Yeah, you have to fix that, maybe you should treat the keys outside as real note on & offs, and have the
Message.makeArtificial();
inside if statement? I don't know, you try and let us know what you've tried and how it goes.
And consider also the note off callback, it must be treated the same way I guess
-
@ulrik Definitely will be trying this ! :)
-
@ulrik said in Changing Hise Legato To only 2 Octaves???:
@natan Yeah, you have to fix that, maybe you should treat the keys outside as real note on & offs, and have the
Message.makeArtificial();
inside if statement? I don't know, you try and let us know what you've tried and how it goes.
And consider also the note off callback, it must be treated the same way I guess
:( That Makes Things worst,
Can't useMessage.makeArtificial();
Inside The If Statement :( -
@ulrik I Just need this to Work Inside The Range.
and Other notes work as Normal.Also i Noticed If i Held a Note inside The range, and By Pressing Another Note Outside The range, It Still Does The Legato, I Just Dont Want That
-
@natan Why not? Show what you've tried
-
@lalalandsynth updated the legato script so when switching note priority while pressing more than 1 note, it will update sounding note to the relevant priority.
HiseSnippet 2101.3oc6Y8uaibaDdks2lH051j1fh9mLBAERI9jkrud4GNNm+cNiXemfk6kBXbHfdWJsDlhTYWJqS3fd25iPeTxaP6Lj6pcWq0xJNNWaBpfgsWxYH+32v4iyR0NT4whhTgNkJe93ALmR+N2Nik5f8CnboywG3T5CcOg0ipUjNdg7AZxHxy38BNQMpcHWEx0ic1a7.ZTDy2oTok+ZzsRkWww74Gd5dTAU5wRaxw4kJtG6DdetNs0167Mbg3HpO6bd+LV+3cN1SI2WITCAHtraSmATuqn8XOmhlsjqSoeyg9bsJrilpYQNkVYOk+3NApQRq8ujGwuTvvGZ4zAFHayGoD9HhwVc1OfK7amPEQNNkbamRLKaIlOv8TtOeZ6oDz6Y5fj5QV9nzR4g2x4fWqrvqYF3MKjbxfnUrHBlXk+PADaxgFLDD2AWIyglikZlLBiYYBQu0g3661lq8BJFiKU.Fg.xOGXLNvtp6gc6x7zo.bE2i9G+7GE+81o+251gKYljNyj+mMOS9V50LxWyjrPj7ZMmjr+0hljMXgSxdgmFl9yCoxnApnbCbGVe94JIxBoM92iXGEx99yvnY112WQCKrqe3oGAKxB8oCUOLzrsX29pgRctsAKOuj8V2yj8U9etj8RklMU58csBvo8f34ccEF04b3vZnyR8+StPfMRStlFRP45NivDOx1j8UXVltQOldeU+AP7TpqUM0jp02Z0JqVIj0iDvD9OWAqGvsKd0V1FGHniYllgVezm+4aUwzbefaNgCS31jCk8fHbCuPFvEmF2ds5aUIwlFcgMi0.eg1foZ80K2cnzCi6QD3zFu.l2Uj.3nFFLd+UhPMB+GDMDILuFO.3WPGbo.yfRFNBX0IFiP7Vq9pUdypUJKTdTAQ.Hs0FeJrpJC+zUERpIIbY5hFrtLZdYI4KAqepwCI4KHUqhNMw5XHC1yJIBnoIqVYJzRP+7w1yrVMK3v.UyEBZeEX6SM1eaPKvBsXltMUxDjP0PM.lHfc2euUqjF8aDwzsgc75yrVTKAt05ECPbC0HX5zA7HbSz2x80A0vMMltBxz0yXv5Sm12kZIz6Hx5jMSZJxjuf6updBMRWcMRUHfg+A4lp3ltx8L6W1E1xTs4q2byiLeLaSKa5MB2IiJX0r+IpArTB1ULHfNsE52OjtFoYiMqWOcHg0nDTGNCNAfJ6IX0tXSxmXP4GOcM7RpXHDbVCVXeL3eq0L8+HxSRZ4yd0ZjGOWvDv0r3Y0OjNZWAumj4eN605Z1k+E2XxfQ7h4hhMLnH4om.1W0CRiCY9IzxDaVb9.6opgQr8oBwkPkToQV10fu+zhtvO7tD6H0vSv8th4OcSJ5303B.b9TpNnAb3ROVMy+1UnTgw98ZXiwHXEsIrNatFYCyHW1LcQITfYbxzgW.NV9VTLI6R+loaJYJYfZfgJQMuDAv0r.rdk2XWHSyzZHXxd5.HMqUcX4.SajUHMFIPCuoL7qxdzHFo4Wf+qYDxHS9gaml4dwMG4G05U0MN8FyuSDmnFkz451VVGLkOz.kXdQ2tGvLS6diODYzi8qMUxc5lnTfAzbqlMquU1IlY8Cla63R8Ml9BYMXmOhp0HO4wP3Iwqoi+zHj0n3wIwrbGZfVXaeh42WBGTbksgoLYqaiIughdQbm8TgYL8+B7kY1uaFK1r4xYFatKVai4vZ4Nqo.ZK4DqYM9sOwEik6j4lZ27ntXiJj6l.b2D6A24kJiUHlJVVf5Q8sxnsDi8XUzSgpzf2TsQe5UrcC07tbONUXXxXgTIdRXhY.kg9+7g8ujEZrxpBYYFdj8svw2NJ7ZbXLJq.5Wecxf32DmXkkxnOkY8jd.hQuBofXWsBMXL8lZXOPQabsN2PsTlOJOaPFsHe7MW3UJ2pn7AnTG6BzpFjaIlQbQhUPkA6YyKRBOvw0pPlYoWSGhG+X6OyLNY579qFhKQOHGysQNl6K++LWrLREyRH8PZ3cuzPUzQvHUGJOuZUn17zdGLLJ.6wTyBlryDQLaJcwXIiPQBcT2.rBFyJEAVPgaxMUq510HWkUpAEhF1ucHCecxugMNpVcH8nYbkOKftUF.Ex5qtlk.oerwVvszX5OMotrpZ3RXgpsBSCLFZ4RxUrwoaTQByNJa+fkALcvuysuyVE1hUD1sTC1bp9xvV2V0TFFJyKfiLTJ6D60CC+rf7RAUasnEacq0ZMmprLuOzsWzDtkM2s.LyVnoNu8CqN5cxTEVd0BWc0sWbUV8vanq8fnsOi3RFqlQ2yb0T2T3KtzMAJWgReUlTI6aHhWNZw8j7FiRiVW1WWDMzozJ4u9O2E61I8r2EWFCUxikb8KFvj21cV5DeAd3cud7ATMEuyv31.6Fvf5MQHT5.10bOl8FDK6d.K5JsZfw13W50oz6niuF736WDuaHGtO9UAkpo575z6g8i1Yb1GFg2NvzF9mWtSf4NARM4q1AJfVMJoLZ.V+A2cEBRZC+B3K2H2UxVNAic38GHXGJulI.R2fw+HvxcoCE5jVye28mpjpAAJI2K6EaeFSGx60iElE6Etf1UqAJKskOXmyXBFM6kz+Q6bBWxng.OwtmbQqezWOcgwq+hqEtDLmh7K2uTpk+08WJk8Zd6cJE1DB44tPsbcTCC8XvrKA0.TKqzRnpi84l3y1uLHou4g+M7ItyV3ykh6rURmuUli9TuP024YUow8ouqoEXcKMecwkcOEelzxwnbC941rQSG7fmuyyCo3GAhsE6yF2Ce17d3yiuG972tG97j6gOe58vmOat9fewP6NTq5aS4fFZen43rRkNTRgculc5N+Gx+YKiB
-
This works !! wow , awesome !
In terms of analog synth synth behaviour , one would need a way to not retrigger the envelope , or have a choice of whether to do that or not..
-
@ulrik said in Changing Hise Legato To only 2 Octaves???:
@natan Why not? Show what you've tried
I Just Added The Line
Message.makeArtificial();
After If Statements,
It Just make The Notes Sustainable, and Stocking -
@natan Why do you need it legato for only 2 octaves , just curious ?
-
@natan like this?
if (Message.getNoteNumber() > 47 && Message.getNoteNumber() < 73) { Message.makeArtificial(); if (Synth.isLegatoInterval()) { if (eventId != -99) { Synth.addVolumeFade(eventId, 10, -100); heldNotes.push(lastNote); } } eventId = Message.getEventId(); lastNote = Message.getNoteNumber(); }
-
@ulrik
Similar To This, Let me Check Yours Thanks Lagend <3 -
@ulrik I am being stupid and super rusty in HISE.
.
I am unsure of how to name the switch panel in the script processor interface when I dont have access to the component list interface ...that window will only show me the main interface.How can I name this panel and set it to allow all callbacks
Can I not reach this window after I have created an interface ?
-
@ulrik said in Changing Hise Legato To only 2 Octaves???:
if (Message.getNoteNumber() > 47 && Message.getNoteNumber() < 73)
{
Message.makeArtificial();if (Synth.isLegatoInterval()) { if (eventId != -99) { Synth.addVolumeFade(eventId, 10, -100); heldNotes.push(lastNote); } } eventId = Message.getEventId(); lastNote = Message.getNoteNumber();
}
Perfect <3
:ThanksLast Question:
I Need The Rest Of Notes To Not Trigger The Legato Script.
Let Say I Hold Note 60 ( Which is In Legato Range )
and Press Not 24 ( Which is not in Legato Range )Note 24 Still Do the legato Thing, I Just Need it To act like Normal.
And Getting ThrowEDIT: It Looks LIke It Works :)
Let Me Investigate More -
@natan Is what is outside the range of your legato playing another sampler ?
-
@lalalandsynth
I Have an Idea to Use The Lower Octaves for Chords, and Bass Usage, -
@natan I see , was just thinking if it is playin different samplers you could just set the range of the one that should be legato. THen it will not see the notes outside of the range
-
@lalalandsynth you only need the SwitchPnl Callback, you can use a script slider with the the range from 0 - 2 so that you can switch between 0 - Last, 1 - Low and 2 - High
There is the paintroutine and mousecallback, you don't need that, just add a script slider and put the code from SwitchPnl inside the sliders callback.
Then you have to change all "SwitchPnl" names to the name you declare the slider to.
You'll find them in the switch code in Note On & Note Off callbacks