HISE Logo Forum
    • Categories
    • Register
    • Login

    Make the Gain knob smooth the gain?

    Scheduled Pinned Locked Moved General Questions
    68 Posts 3 Posters 867 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • CatABCC
      CatABC @d.healey
      last edited by CatABC

      @d-healey
      Thanks David, I tried a lot and I'm now clueless again,
      I think my logic is very confusing now. I hope to complete the KeySwitch switching on an uninterrupted note. When the new KeySwitch enters, fade out the sample of the previous Sampler and fade in the sample of the new Sampler. I hope that the faded-in sample is played from the beginning.
      Keyswitch.png

      so I made a snippet, could you help me with this?

      HiseSnippet 2326.3oc6aszaajbDdFJM1lzO1GYQPPNDzQHGnhYnHodGkEVun7JXIKESY4cgwhMiloIYCMr6IyzTxDF5XNji4ePtkqAA4PNt+.BxOh7Kv2xgbvopoGNOjHoFQ30aVYQXQntptq9qqt5p+pVv66Irn99BOM8BGzykpoeOiF83x1az1jw01dSM86Z7DZuFmxjVs0VumqouO0VSWehGicPO+jZAedyiV2zwjaQiEoocnfYQ2g0gIikt+pOg43rkoM8.VmD8dtU21Rv2P3H5BfYBiJZtlVGa1h9TSra4Lz9BS+1Z5+Ri4qMq0b1KZWq17Kufk4BzkaZ1rY0YsmatEVZ4pytr4bKs.sx7Z52ptMSJ7ZHMkTeM8IWWX2qQawob0DbHymcjCEaTUqALyJwaIbrwkH96Zazl4Xueeujull9s2O1mMgxm8YF6xrYQxi8cebfBR7HR5.0yMJ3U8xgW0AAO8DvaRE79DiFVdLWYrF0951bI0qoIrmkDVp9pk6EFFaHfdvkk6XdLcKOnQzHJtPkJkHvWSuRgYlIJ.o.rE5KImX5QN1m74jWVatRjZyC+rvWuRglBORQFHtxJDF42.corCk2R1FZ9vGN8qKPfO04sXbZYepDrpJbn3w9uj80kHpV9kgop8ZNtsMK1WhG0tDoR4ZyOMfmyRfhNcA.GfDX9SHG2V1E0gppVpVoYQ8mGfylDXJSA.AzGbDobKpL09dwohL6TjGFOGvXBfUR.bL+H7Lvdck3w.vj880fQ2PzwUvgFEmJc2lBLyELw17rXAUuPCT.GayTyckUhDFYMPFi6.aEjlc4VRlfSD7zvAmPOgSQq9yVI.WNcoSW30ExyZRJF1Je9zSWf3U.wyLCXBegCsrqGC.ahtgNL.qYyqfQKgfYCSGmifDGEGBXQGvvWXpU+UacE4wBWVWJr6uULRTmBI.nSf0mJjz83ECPSxydJrAGpXba5q1qYwcgnRHAJhBbLOsamindEmdZxO+yI+pp.9eMtDF8gRnGXuxGE8indMozicDHoXrXVKtvitdWoTvKQpNMt+dVgnAlAXMXSW47lFS4fVF1Ggku5jnos8gBmtcnnqqHGr51PBgDgSkfEbPxJ3XH479xlMUNyyoKz46ffa.pQy5MpAVjGrxRF7fcDRKmNu+sxVdeKULUhNJ3ayYx8bogsG8MCZgAkvcD4BQHzUYvMDOH7FhFNLapmFyFu5J84GsfUQ380e6+7e+GWUKCV4iLREOmxHj+vG+mVU64auoozDu3JDe.lcodRF5Zz2jdBPgPcMVdiMo9GKEtZ5FQmp.BKxv6fUS9VNBSIi25.F3BUPHonpZuJICkdQM9y8V8TlsDXXXn+k4zzZSYsZKwVaE66T.o.xH5Hgoms1Qs5yXI+srsseKZIlj1IV5ae6a+ookVKTbPmkzWIi6beXE3Rx8U5F3UOSAy1KPnM0ulTctxUJgx1j465X1aOKo4IgGgP0A51QbJLDn4xAM+BlpU0ZKFzdit9RQmG6Y51lY4CJZZ53SUVk1zrqibMWWpoGxlCzJ85pTttCjgBL0y.mo.TTo7BKG7Yokpr3xUVTM4GHZ0xgtqvllxx3kg.uHNm5Dgym6SOjZAmDRfknYCTtkiorgrmy4rz90669Oub3DkmLdVp0Wdctch4dgBmganQAP4y9YfDwNe0p8R1HJ1wVKYric3Vrl98MRZnNlwlx8urZGvcAIBLBzkDa2Iymrhs225kYnkUXbaELteHL1w7HpS.JtiQvuWcndF1vl9e1P7LWkos1PW0YXZumQBum1EYMCb2E1cgPvzD5wxdBU.Y6SwbFYGy8YxdIKK5JvxuRlY4mU39IF6iTCFLdyM.7hWN7cLdCqY59F0a1DN8GC1IM15KG2BjFOn7.ETtqQCfNX.Sh.f7iCZSdAjYk7XJm5gN0pCq32U+O+q+dVK90MyE+pRre.jD12U3mxvMncXG.mP7SJDSW5Q+8A4lSJeCHO4.U8lGsErHG3XZXJ65EDtrVGQWtLU3wDiUQqoO0jn+CnB1I++lBrGX8+4tH7tqQTsdAn5dwsSG1bdu2DYCQiGYNEg4f7kOvHIG5Trv5Glbo13iLZxdUCYWqiQRy9CvHY8kG9QgRi21pNvWf3ISXDWsK8DX4tsMVKe3SDX4QAuH5o2g4KKN8JjB86TYKGf.CHp.ovE46qpchj2QXY5PNArXhRRNjBhgbh3fg9zWix+UGseQjiBZ5KT6DvvRU0DAMO7Oh5yLyPfSTv72rIw0CnzJ55qVPDnjMSWWGlkIruGOBEzvpJiVRH1PWdQVvbG1QrjOZ+B5hjheTUFwUE3rdu5J6TTgb3SJ3gbIIb5oDr+nQOl1iv7I1PnY5ISYVlOvAaSPIfF0pMwLq.OXMzaG8ZIPMZgd+pkHLnpHUoboFYzh0OZwVpugR12yvsF3a3K3G.+CpLv9FavEBd1PpBrPXXAOcXQxJUg5OGly8BaVb7Eoxew0EGABppv2SUcZ7tppyQkbZrpt68GWrIxFghK4UVy2GiMXcbcn04m.oP.IHF+TivRp5KMcltcEbgaaAmYkLQ5ynROVqVTujXefKn0jRnlrXIe1pOiBY9RxW3Wr5NPxRSucC31OV9hpY2WLp8qehgBtjf2K65AG5I9vjC8yDcwGTYWSHPEJAy.xL1.ntZQCKyFyunmCyDnZWAaq3txsCZfu+QnxpXa8PkU6qbb4oWaX7z+c+1m+29PgmNbjYhwJc+P4oeIjhuVwYu1O.3r+lG88Mm8ZCjy9+MmA4JRZmbAV6C4O1wkxWOegQwWejz0ggdUIqmUt5CjpdFYpmBVijj9kyQeroneEXnGSPOev2i3u1x6UZ12vw9CHN10tgi8Mbrugi8Uii8cTK2aa7TAyu+AqfeOCuAN4k+i+56dt0uq4vt2ITuSXzS+PhK6r2vkMCbYmcfbYm3cv6OO9u870Npr3aNeckMaFe13qLi1a3zdCm1.oydCm1qSbZycCm1uq3z99XN5XZ4I9FKUlSLV9NARf0MO3+sB4M1EaSpdQVJc.9BeikUZScgAVabG3ri6.mabG37i6.WXbG3hi6.W5xGHRmastRQG0QVMsc2udvUQ5504HWofSGZ+OhPWPzA
      

      //I am a new student at HISE._
      //Windows11 & MacOS Ventura 13.6.7_

      d.healeyD CatABCC 2 Replies Last reply Reply Quote 0
      • d.healeyD
        d.healey @CatABC
        last edited by

        @CatABC You don't need to put the midi processors within each sampler. Just use one below the interface script. You don't need a loop in on note on.

        Start really simple.
        Make a practice project with only one sampler.
        Every time you play a note the previous note is turned off.

        Once you have that working we can start getting more complicated.

        Libre Wave - Freedom respecting instruments and effects
        My Patreon - HISE tutorials
        YouTube Channel - Public HISE tutorials

        CatABCC 1 Reply Last reply Reply Quote 0
        • CatABCC
          CatABC @d.healey
          last edited by CatABC

          @d-healey When I only use one Sampler, it can achieve that when the second note appears, the previous note will no longer sound, but when I add a second Sampler, it needs to be triggered at the same time with the KeySwitch below, which makes the script completely illogical and gives me a headache.

          //I am a new student at HISE._
          //Windows11 & MacOS Ventura 13.6.7_

          d.healeyD 1 Reply Last reply Reply Quote 0
          • d.healeyD
            d.healey @CatABC
            last edited by

            @CatABC said in Make the Gain knob smooth the gain?:

            When I only use one Sampler, it can achieve that when the second note appears, the previous note will no longer sound

            Share the snippet you have made for one sampler and we'll go from there.

            Libre Wave - Freedom respecting instruments and effects
            My Patreon - HISE tutorials
            YouTube Channel - Public HISE tutorials

            CatABCC 1 Reply Last reply Reply Quote 0
            • CatABCC
              CatABC @d.healey
              last edited by

              @d-healey
              This is my method using only one Sampler, I used artificial notes

              HiseSnippet 1352.3oc4Ws0aaTDEdVaOHrSnkhpP73REOjhJQdcb7EPQ04hcZTqaCYcaAwCUS1cV6QY8LK6NaRrphTE+R3m.Oxi7Sp+CfyryZ60tNEWqREB1Ghx41b9lybt4iCENznHQHxnTuQATjw5X6Qb4f8GPXbzQGfLVC+P5H6KXRmAn8FEPhhntHCi7GpTvnXATx2qu+dDeB2gNkEB8LAyg9H1PlbJ2ia8PlueGhKsGaXFsq15HGAeeguHF.SdbYT.w4LRe5iIJ0xgQOfDM.Y703sqrkSU25tUprcyZNjZzldDOOqsbqVsVilVa0jTsQMZ4sQFeTaWlTDZKIRZDxnvdB2Q1CDWv0N3YrH1o9TEgExF7rlcGguq5Jp3h1e.y283wQoHDx.e7zXVdcL613tLW1D9SiceZh.yoVjM.ZjaV3keF3YkEdky.uE.IiLPpfFR2Ba6DxBjSkneKOhKogdD3cJKTz5hx8JC79BPCtbygjyncBAhIVrQsxkumI7m69ckJUJj12jdNn4QtQl6X9MVJlvmWL2QxDbSA+wBI8I7MtaoWVpHyaiIZ+kJ0uaoh.6hIIaaxUZ54s2n1ZclnK3phWUrTwLdpKbcfzhD.tanj4wbXD+M.Mupj47d2yah6uN6L2YmIWjTPM28p3U.u4NcUXJT36SC0NXNwpb6EKI0vM3wCOkFdOyyI9wzIJBueylTfu9jhr4rN5WsLJJ3GwYxmDP4WWlLJ8oF9umdzADIQkIkxCzKfBAIEDLNfdNTGqyqJhOfFclTDjn6v.AWcBFqKSKDzYRc7EDIi2uGCfJCRwtINKKKzkYaSLZBwuNp0ELW4fIL9ieo0.Jq+foMPd022JEiZ.UR0d5TAIzEcZ+wsOVGWsRip0q0bqFkQLIc3XAqgqtcklMp1XKqL7qnsnY0l0pWo41HI8RY1NQIAmb+nA9kkLMuC3umq.4c9VSqpaV9dJdGvhB7IidhijbN8wIOsJwIxdj3BvDfrYB4CXZJqJ0Sn2ONRJFdXHIX.yIBD3Q7in5Sk5Qh8k6FDPIgplqfTYXrV3d9P+Q3nNABqBPP4Mq0L4qQix0aVtt148D866S6Jboybxp1RPaJNm5OAmOMh9LpCj6kAKS7FHriOQZKG4O2Icb6wO.yyGxgCkS8Rkw7aycy36ZktBlJ7FMvfVmB2Xvky1OUM0IU.TOMSSLUiJdDSNJ6To4axVX4Zx91mArrv8V3iUiMWLdys.7BUf+Si2zQVeBtsmG7ZOErEvc9g257o26P4FZnrF1lwoICBR.xmmPa9bnRx7PJmFpBpVW2tGl+zu+aK6tGAK8tG5B4dPQWTfHZlC1lNj0CZ6Ekkop7Hj9yI0hY4uOTWrPQu99cfK4BswlHiCSRW1cnHlKmI8H+R+l7NrRSg+cuRS9w4IJO2MFVGIAIqOkd1ri4CR4WtfzaaBoQtz41fp5Qc2HcT2dwRITXqFxcCLqOWDRSYkLYO6iGZINiah8XWZKicNSs+RzBNjOXsJe+73UbLFsYCC7os4mS8gcKRv3mgSmvMl6ruicEbQv.Am4jM.bBUFx52mFlE6K7BsqTBiHmx41sNg5SIYKm+pVOBJCIgpAjqXrv5cd27E9d8EXMbMUslL+uwHt7++bD2IhX0ltcIPhJrnKF1GzFlr3PS25QsVuQNU+.McYEsdzB2Mg3OguTgVJZiTgViE9AwGCINghW3naZoxk+3DNv8lm7axKh6pnMsdytTCgNyuvwY1i5MLrxpZ3VqpgUWUC2dUMr1pZX8U0vF+8FpFbtaL7yNzkrHDrUdxOxwvnMm.Y7IUGn+Bn0aimN
              

              //I am a new student at HISE._
              //Windows11 & MacOS Ventura 13.6.7_

              d.healeyD 1 Reply Last reply Reply Quote 0
              • d.healeyD
                d.healey @CatABC
                last edited by

                @CatABC You can use Message.getEventId() to get the event ID if you don't want to make the note artificial.

                Now modify this script so that when you press a keyswitch key (whichever key you want), while another is held down already, it turns off the note that is held down and plays a new note of the one that was held.

                For example, if you're holding down C3 and you play C0, you turn off C3. Then you play a new C3 note. - And you ignore the C0 note.

                All of this in a single sampler, for now.

                Libre Wave - Freedom respecting instruments and effects
                My Patreon - HISE tutorials
                YouTube Channel - Public HISE tutorials

                CatABCC 1 Reply Last reply Reply Quote 0
                • CatABCC
                  CatABC @d.healey
                  last edited by

                  @d-healey
                  When I use Message.getEventId();, and play two different notes, the previous note does not close.And I don't know how to convert the events into notes🤡

                  function onNoteOn()
                  {
                  	if(eventIds != -1)
                  	{
                  		Synth.noteOffByEventId(eventIds);
                  	}	
                  	eventIds = Message.makeArtificial();
                  
                  	if (Message.getNoteNumber() == 36)
                  	{
                  		
                  		Message.ignoreEvent(true);	
                  		Synth.playNote(60, 20);
                  	}
                  	
                  }
                  function onNoteOff()
                  {
                  	if(Message.makeArtificial() == eventIds)
                  	{
                  		eventIds = -1;
                  	}
                  
                  	if(Message.makeArtificial() == 0)
                  	{
                  		Engine.allNotesOff();
                  	}
                  	
                  }
                  

                  //I am a new student at HISE._
                  //Windows11 & MacOS Ventura 13.6.7_

                  d.healeyD 1 Reply Last reply Reply Quote 0
                  • d.healeyD
                    d.healey @CatABC
                    last edited by

                    @CatABC

                    This returns an event ID that you need to store, so that you can turn the note off when the key is lifted. Otherwise you'll get hanging notes.

                    Synth.playNote(60, 20);

                    @CatABC said in Make the Gain knob smooth the gain?:

                    if(Message.makeArtificial() == eventIds)

                    Here you should use Message.getEventId() instead of makeArtificial

                    @CatABC said in Make the Gain knob smooth the gain?:

                    if(Message.makeArtificial() == 0)
                    {
                    Engine.allNotesOff();
                    }

                    What's this meant to do?

                    Libre Wave - Freedom respecting instruments and effects
                    My Patreon - HISE tutorials
                    YouTube Channel - Public HISE tutorials

                    CatABCC 1 Reply Last reply Reply Quote 0
                    • CatABCC
                      CatABC @d.healey
                      last edited by

                      @d-healey

                      Synth.playNote(60, 20);
                      

                      The 60 here should be the note that was pressed before,

                      Synth.playNote("eventIds's note", 20);
                      

                      I can't stop the artificial notes

                      
                      function onNoteOn()
                      {
                      	
                      	if(eventIds != -1)
                      	{
                      		Synth.noteOffByEventId(eventIds);
                      	}	
                      	eventIds = Message.getEventId();
                      
                      	if (Message.getNoteNumber() == 36)
                      	{
                      		
                      		Message.ignoreEvent(true);	
                      		
                      		Synth.playNote(60, 20);
                      		
                      	}
                      
                      }
                      
                      function onNoteOff()
                      {
                      
                      
                      	if(Message.getEventId() == eventIds || Message.getEventId() == Message.makeArtificial())
                      	{
                      		eventIds = -1;
                      	}
                      	
                      	
                      }
                       
                       
                      

                      5505e20b-18d0-4802-82b3-4495df412210-image.png
                      In this case, the D3 note cannot be turned off

                      //I am a new student at HISE._
                      //Windows11 & MacOS Ventura 13.6.7_

                      d.healeyD 2 Replies Last reply Reply Quote 0
                      • d.healeyD
                        d.healey @CatABC
                        last edited by

                        @CatABC said in Make the Gain knob smooth the gain?:

                        Synth.playNote(60, 20);

                        You need to store the ID of the note in a variable so that you can turn it off later.

                        @CatABC said in Make the Gain knob smooth the gain?:

                        Message.makeArtificial()

                        I think you're misunderstanding the purpose of this function.

                        Libre Wave - Freedom respecting instruments and effects
                        My Patreon - HISE tutorials
                        YouTube Channel - Public HISE tutorials

                        CatABCC 1 Reply Last reply Reply Quote 0
                        • d.healeyD
                          d.healey @CatABC
                          last edited by

                          @CatABC Here's a basic example using a sine-wave generator.

                          I've put everything in the interface script but in a real project it should be in a separate MIDI processor.

                          HiseSnippet 1122.3oc2Ws0aZbDEdVr2ntj1nlpnp73Vo9.T4ZAXLwnHqXaLNEUiMx33z2hlL6YgQdYlMyNKsnJ+er+Txq8o1yrKW10F4hQsMpkGPbNy4x245LzSIYPTjTQrJd4jPfX8418mHzCaMjxEjNGSrdhcWZjFTtorNZRHMJB7HVVa7ZCCKmMIIe93qNhFPELXAKB4JImAmxGw0K316fejGDbB0CtjOJiz0OnCSJZICjwHd1vtBIjxtlN.NiZDqfM4GnQCIVem8t01gU26Ed0psayFLZCnoO02u5Nd0q2XulU2oIs9dMfJ6RrdTaOtVp5qoZHBM5QRuI8GJ+YQpCthGwee.XHpR5idNkMo0PdfWuYImHBwxt2hT0FoopmY2k6wmyeQJ6KSNvcgFYSZVEtOHU8A.IqLPZyTH8T69LEOTu3DCddrcGAVA8oXsIKTRkkT32KX2RhRHzaOhdMbhBIlqQoFUprkK9U4WVrHVehztWG4tuas5yogwnpc7LbaKFvEv1LEfQmIKbJORWBUclLa6i09ReeylFyofAtAX20YRM7R+XASykBWovPetnT4h+ZQm.IiF3JPa2EiHraX6APhBmEO58fxXamhNbe2RnL6iXqbQGTsDNycJpxUzfXnzLuU18a120fBTRizNIc8aKLN12+nIsS079rfwwN2TD+ZtPQ2VnsbSsaX.chgNyAYhlq.LH45IkJiF0wwXREniUh4BwGHjJHATkzpXv36aLw8L6goGAx6tHQrvSlZ6gJM2my3zfRoAPwaJ5d6Luu+CM0e2zjHSF1jfW47qnbZvkGWl9SkLHv3UCzt0wlEIK+joJVRj.4sbGabxbAwAm7SiOZ0lFYoiKYDTJ5H35yCgozmHC7LSYlee2YWxz4M7WuoywTM0LNOkGJWHfkICbrNFFiKPSGtcrOFhtVKCwUn2YxG24H8hCn57KhLqnmd.lOxM8alvEQXaW1U3OfsSUt2sSqJDepcOtlMb4XrvRvHlo9m.iS2o+E1s88AldA.2z9jeZcWfu5t+Iot+w18w0mIyJIN+qSnceKcL39ZP.JSxq58bI7uspWBGtxWBeNSit+REUDEJixY39vH9kRgIKrf4ahvaPfObgoZlkeKIUszi93qNACxkpSeJtFLos3vQxXgNWavF4qCatZit4mHxH+RtgcyOAW5+2yX0mvI+buKwYFF6yGEF.sEiw65PNFL9U39LeZbfdF27M1ckBY3PofyxV0u.zJ9fAfJK1WZ.cnViOebAmmcvEP.Py1A+sGbJ14QUXdBVybwC+MZKsd8b6T35ZlFc+u6F6M9+8F6KjwZtXPWJ1D9K3eJ.eHTebQICPuKDP.ZbaqBlkcozULzoaJEdID+A9Y5gUMzVSOr5rC+WwGinLk7crz2FY5S+rDNXbKR9uVN3e5CocqRRduT1Z4HbK26Xr7l5NJVacUbm0Uw5qqh6ttJ1XcU7Eqqh68Wqn4RnCi0xQoilDR2dsSdfokUaAE6xSlHH+IYKulm
                          

                          Libre Wave - Freedom respecting instruments and effects
                          My Patreon - HISE tutorials
                          YouTube Channel - Public HISE tutorials

                          1 Reply Last reply Reply Quote 0
                          • CatABCC
                            CatABC @d.healey
                            last edited by CatABC

                            @d-healey
                            I tested your snippet, but in this case the second C0 triggers the playing of C2 again, is it possible to not trigger the playing note when there is no note above?

                            a148739a-fa1d-45fb-b89f-0de9484836c3-image.png

                            //I am a new student at HISE._
                            //Windows11 & MacOS Ventura 13.6.7_

                            d.healeyD ChazroxC 2 Replies Last reply Reply Quote 0
                            • d.healeyD
                              d.healey @CatABC
                              last edited by

                              @CatABC said in Make the Gain knob smooth the gain?:

                              is it possible to not trigger the playing note when there is no note above?

                              Yes, this was just an example to get you started. Synth.isKeyDown() might help here.

                              Libre Wave - Freedom respecting instruments and effects
                              My Patreon - HISE tutorials
                              YouTube Channel - Public HISE tutorials

                              CatABCC 1 Reply Last reply Reply Quote 0
                              • ChazroxC
                                Chazrox
                                last edited by Chazrox

                                Have you messed with scriptnode fx at all? This seems like its pretty simple in scriptnodeFX. You can rig as many samplers as you need and trigger them with built in X-Fade nodes and so much more.... ??? Skim thru the documentation for the entire scriptnodeFX section and see all the stuff you have at your fingertips!

                                Link Preview Image
                                HISE | ScriptNode | Scriptnode

                                An introduction to scriptnode

                                favicon

                                (docs.hise.dev)

                                1 Reply Last reply Reply Quote 0
                                • ChazroxC
                                  Chazrox @CatABC
                                  last edited by

                                  @CatABC for example....

                                  wanna fade between 3 samplers that start at the same time?....different times? You can do that too...either way check this method out. The fader node has different fade modes, blend & switch modes.

                                  Screenshot 2025-07-07 at 6.45.45 PM.png

                                  CatABCC 1 Reply Last reply Reply Quote 0
                                  • CatABCC
                                    CatABC @Chazrox
                                    last edited by

                                    @Chazrox This looks like a good choice. I tried it, but there is a problem. When KeySwitch is triggered, it requires the Fade knob to automatically and smoothly go from 0 to 1. How can I control it?

                                    //I am a new student at HISE._
                                    //Windows11 & MacOS Ventura 13.6.7_

                                    ChazroxC 1 Reply Last reply Reply Quote 0
                                    • CatABCC
                                      CatABC @d.healey
                                      last edited by

                                      @d-healey This seems to be back to the HISE snippet I provided at the beginning😲

                                      function onNoteOn()
                                      {
                                      	local n = Message.getNoteNumber();
                                      	
                                      	local v = Message.getVelocity();
                                      
                                      	Message.ignoreEvent(true);
                                      	
                                      	for (i = 0; i < 127; i++) {
                                      			
                                      	       // turn off previous event
                                      	       local e = eventIds.getValue(i);
                                      	       	       
                                      	       if (e != -1)
                                      	           Synth.noteOffByEventId(e);
                                      		//Synth.addVolumeFade(e, 2000, -90);
                                      	       // play new note if key is down
                                      	       if (Synth.isKeyDown(i)) {
                                      		       
                                      	           local newNote = Synth.addNoteOn(1, i, v, 0);
                                      	           eventIds.setValue(i, newNote);
                                      	       }
                                      	       
                                      	   }
                                      
                                      }
                                      

                                      I don't know where to put Synth.addVolumeFade(); to make it succeed

                                      //I am a new student at HISE._
                                      //Windows11 & MacOS Ventura 13.6.7_

                                      d.healeyD 1 Reply Last reply Reply Quote 0
                                      • d.healeyD
                                        d.healey @CatABC
                                        last edited by

                                        @CatABC Don't use that snippet, use the one I gave you as a starting point.

                                        Libre Wave - Freedom respecting instruments and effects
                                        My Patreon - HISE tutorials
                                        YouTube Channel - Public HISE tutorials

                                        CatABCC 1 Reply Last reply Reply Quote 0
                                        • CatABCC
                                          CatABC @d.healey
                                          last edited by

                                          @d-healey
                                          I used something like this to prevent lastNote from being triggered when only ks is pressed. Now, I tried adding VolumeFade to the old events, but this doesn't seem to work

                                          function onNoteOn()
                                          {
                                          	local n = Message.getNoteNumber();
                                          	
                                          	if (n == ks)
                                          	{
                                          	
                                          
                                          		if (Synth.getNumPressedKeys() > 1 && lastNote >= 0 && eventIds.getValue(lastNote) != -99)
                                          		{
                                          			//Synth.noteOffByEventId(eventIds.getValue(lastNote));
                                          			Synth.addVolumeFade(eventIds.getValue(lastNote), 2000, -99);
                                          			
                                          			eventIds.setValue(lastNote, Synth.playNote(lastNote, Message.getVelocity()));
                                          		}
                                          	
                                          		return Message.ignoreEvent(true);
                                          	}
                                          	
                                          	lastNote = n;
                                          			
                                          	eventIds.setValue(n, Message.makeArtificial());	
                                          
                                          
                                          }	
                                          

                                          //I am a new student at HISE._
                                          //Windows11 & MacOS Ventura 13.6.7_

                                          d.healeyD 1 Reply Last reply Reply Quote 0
                                          • d.healeyD
                                            d.healey @CatABC
                                            last edited by

                                            @CatABC I was thinking more like this

                                            HiseSnippet 1134.3oc2W01aZbDDdOfqpGoMpoJJpR8KWk5GfJWDXiIFEYE+FNEEiMx331uEsYu4fU9X2K6sGsnJ+er+Tx+f1YuiWtyl35fZpZJe.wL6L67ryKO6RekjAQQREwp7ESCAh0WXOXpPO5vQTtfz8Hh0Cs6QizfxMU0ASCoQQfGwxp3KLJrbJQR97tme.MfJXvRUDxkRNCNgOlqWps+dujGDbL0CtfONi0M2qKSJNTFHiQ7TztNIjxthNDNkZLqfM4mnQiHV+f81atEqo2S81bysa2hQaAs8o99M1xqYyV6ztwVsoM2oETeah0m0wiqkpAZpFhHVkNP5McvH4uJRCvk7H9aB.iPCx.LxopOVF3YNhFsjCGwC75OOQEQHV18Wl1Jll1drcOtGeg9kouuJYA2kdjMAZUHO7JlCdMxBu5Yf2JfjUFHUJEROxd.SwC0KWwfmGX2UfUSeJVmxBkTaIE91h1GJQKD5ZioWAGqPgEdToU85a3heU8YkKi0pHs6UQt65tYyExvDz0tdFscDC4BnFSA3oyjENgGoqftN2lZ9XePkercay1ofgtAXm1oRM7L+XASykBWovHelnR0x+dYm.IiF3Jv8tGdhvNiZCgDGNMd7a.kYucJ6v8cqf1rKhspkcP2RzrHnnKWRChgJyiVU2uaWWCJPKMV6jLATSXBru+AS6j54csCl.6bc4YgJ0edzKgoGg0xLlY18EaSzM2lMbS8LLfN0HmYgLm2KALMv0SqTECqiiInJPGqDKLhOTHUPBrqnUwfAcWaxLy2OLAJPc2FIhkQxT82Wo49bFmFTI8HV95xt2r136+gVbtchTjoFXJA26JfnZ5gKOtLcvJYPfIpFncikMzNqdkYNVQj.4MbmXBxBCwQq7yq1u+40rzIrzApLFJEcEb8Ygf38QxPlMEh+5UcOhpolg7Y5P6BArzXff0QvDjhMcj2w9HH5JsLDIYuEe.xDI8hCn57zSFR7YKf4fbbBl4dQD1pkkj+eLNq6KDejcetlMZ0XrvJvHlo9XfwYL8eocGeefoWBvR1G+Kebn0yF9GlF9GXO.IUSlORB9SRjc+Y5Dv8Ef.TljWi63Z5+39dMc389Z5yXZL7WnnhnPYTtMd.LlegTXxBKU9pH7dE3smaplY0enjpV4Ru64GiGxU5y.JR8kzVr+XYrPmqMn3cc6ei071+R+m61+OAF1y8.Em4Xb.ebX.zQLAuRC0Xv3WiTX9z3.8bs46k6IExvQRAmksPeNnU7gCAUVruxCz9ZM9lxkZd7dmCA.MaS62u2IXyFUg4IXMyEM9fer1JqWeicJbcMCfte5RRW7+2jzmKi0bwvdTrI72vGEfu2Y.xMx.L5BADXdnfUAC+VpbcibJ4nvKQ3OwOyVrgQ1Z1hMlu3+JwXLkojulk9DHSe5mmnAO2hj+.lC9OAQY2FjjmEksVNFY4dMikeqtkiattNt055Xy00wsWWGastN9z00wc96czbIz9wZ43zQSBoW+NIuozxpifhc4ISDj+R75.WQ
                                            

                                            Libre Wave - Freedom respecting instruments and effects
                                            My Patreon - HISE tutorials
                                            YouTube Channel - Public HISE tutorials

                                            CatABCC 1 Reply Last reply Reply Quote 0
                                            • d.healeyD d.healey referenced this topic
                                            • First post
                                              Last post

                                            13

                                            Online

                                            1.8k

                                            Users

                                            12.1k

                                            Topics

                                            105.4k

                                            Posts