HISE Logo Forum
    • Categories
    • Register
    • Login

    Control individual notes/samples with a slider.

    Scheduled Pinned Locked Moved Scripting
    19 Posts 2 Posters 1.1k 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.
    • d.healeyD
      d.healey @jssrecording
      last edited by

      @jssrecording You can assign volume changes to MIDI messages. Type the words gain or volume into the API browser to see what commands are available, I can't remember right at this moment.

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

      jssrecordingJ 1 Reply Last reply Reply Quote 0
      • jssrecordingJ
        jssrecording @d.healey
        last edited by

        @d-healey
        Looking at my options and still scratching my head.

        Screen Shot 2019-05-10 at 4.58.02 PM.png Screen Shot 2019-05-10 at 4.57.48 PM.png

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

          @jssrecording Message.setGain() and Synth.addVolumeFade() would be your two options. setVoiceGainValue(); might be useful too but I haven't used it.

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

          1 Reply Last reply Reply Quote 0
          • jssrecordingJ
            jssrecording
            last edited by

            Hey @d-healey , I'm still on the struggle bus trying to figure this one out. Would you have any working examples of this?

            Cheers
            Jason Smith

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

              @jssrecording Nope, it's not something I've done. Post what you have so far and let's try and shape it into something that does what you want

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

              jssrecordingJ 1 Reply Last reply Reply Quote 0
              • jssrecordingJ
                jssrecording @d.healey
                last edited by

                @d-healey Okay no problem! I've been able to change the note volume with the Message.getNoteNumber and Message.setGain. Where I'm stuck is changing the slider and updating my variable/reg.

                if (Message.getNoteNumber() == 48) {
                        
                        Message.setGain(volume1);
                    
                        Console.print(volume1);
                    
                     }
                
                d.healeyD 1 Reply Last reply Reply Quote 0
                • d.healeyD
                  d.healey @jssrecording
                  last edited by

                  @jssrecording Could you post it as a snippet (export >> HISE snippet)? Is volume1 a variable or a reference to your slider?

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

                  jssrecordingJ 1 Reply Last reply Reply Quote 0
                  • jssrecordingJ
                    jssrecording @d.healey
                    last edited by

                    @d-healey Sorry David, still new to a few of these features. Don't fully understand the Export Hise snippet.
                    volume1 is a variable for storing the volume.
                    My slider ID is volumeSlider1
                    Screen Shot 2019-05-13 at 11.12.14 AM.png

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

                      Go to the export menu, click export HISE snippet. Then paste it here in code tags.

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

                      jssrecordingJ 1 Reply Last reply Reply Quote 0
                      • jssrecordingJ
                        jssrecording @d.healey
                        last edited by

                        @d-healey ```
                        HiseSnippet 2855.3oc6b87aaibElxNLIVa71jso.aOz1ABsAxMYsEkn9g61rgwx1YcRjsVKG2Tf15PSMRhHTbXIoriiqPcKRwh1dX60bK+Izi6wbrG1C8PQA1EEEY6ghBTTfbsmZmgjRbH0unjkx5DSs.AKGNy27Muu2LuG4vwE0QRPCCjNSjY15.MHSjKvV5.UyZ4qIJqxr1xLQtD6paU.rrdi5Flh5fbIXV5.MQCCXYlHQl9VjpEYlyvX86k2XIQEQUInaQLLaijkf2UttroaoEEtirhxphkgaIWmp17BqIgTyiTPMvTZZ1DLZhROTrJbcQR0lhkIxYWorrIRujonIzfIxYVBU9fR0P6qZW+skMj2UARtfioDFH6hWEoTlvXRoL4qIqTtXqgtACSjyWz0PLssg3xrEjKK2tbWCxEstAvsEz1iHS0O5wQSuDAmdQnn2Yro2kXKIoKqY5dGB2dK10TMg5UDwR.MsrqKyT+kuIadDtFplyWW7gvU0wWztEw4RjHw0.oSjXt2e1nj+agE.kflf0TMLw5OtU3KUfRlfsEUZ.mMpNrJPpgtN9N12XSz9fqCRX0bxM2CofaGGtr2iytzEVvtrRJxkg5b18i8MJpHd.XoFllHU.GfTlrphrJDTogpjoLtTjpFtN1UgiLPzQJwkP00PpXJbMvdDZM2rQOb1n.7O4Jf3cRuqC3l6PB5jpX4rOOA00Qlv374tFfKYVx3mbW6+sI.pX.6IZImCbHc08AYlDCOjo5OjYS5AxlzUsu3x2ebyw6G2YlMZy2uS0I4.UmjSD0Ywwu5vM9UmTSH0Ic.UmTCTcRMITmzIF+pSxwu5vOgTmLATc3Gn5vOQTGtwu5jZ7qNomPpS1.pNoGn5jdhnNIG+pC+3WcxLgTmbATcxLP0IyDQcRM9Umzie0I6DRcVLfpS1ApNYmHpC+3WcxL9UmbSF0YwDATcxMP0I2DQcRO9Umrie0YwIj5v0S0wtMsdFKSY0p.yZPfjnhxt3m4ETAoaU.kFZLuUKZ8DbUgl4aoTwiQ8jQwladCx8rTy7N.FuaO7DgXCBtjCFtjCAboFLboFB33GLb7CAboGLboGB3xLX3xLDvkcvvkcHfK2fgKGEb8BPOOPe2gzSU7.IYBvMUTZ8hEndUC1DX9dupkcSrZQ+W4hdB5Uup+owz2sqSy+.7rbmI4t0j7qKu5CttsBReW0rSXaYkw1wh5HMntoLzXUcT8aWZi0iGyn8vds5hUgwtF3vXnJUv0N1O.DKQrlsVswKxCbM2wOW3R6iMC0B1ie9jJAEeBDK3m.rfOMmKKb7SZGUn2yxjI941jqeSa6bRwbNgaZAOo+nlIQhSsgZb2X7z+6BKfAw.o.mWSWFyhBPCC7HhPMR6VuQ8cg5wmyqMkXL6QEAe.VYy.txUbsk8pl+Pr0m2tZzhPfYzLtswWP4dRtq1EmfuON98by4IJtGeAb3auDJlJbefJFVPLBfCee0l5MCpQkL80MQDmegKzEtP2IoE5.9wuYmK2L.mb9bdbx6bMDbGS1PJmzM37ZAbFOTSU6d0ZRVjro8Zk9WmrRk3yE8vnyDsYT50PcVoUgPz1qi5aYg07VwXjdsomdfrUX58C+3pVFiV41zphLQNi2Mchs2a5D8dhIYKtTUDotlpr4FZP0dsUTLNdDLLQ95NrBWUSqsj5sc1RJ6D2XjKyDYVVpvVLVzldqAY5ED1YJZAwayVWzvDpuskX4GiWdCl.QCpG8YHnQOfH4wmEoN9Pve7gH8w2Vj43yhrGeHxMDPP4a80XoevDuFzm8zm9ki.HdMoOnRk+5H.hWi5yzt9WLBf30r9fO8a+eFAP7ZXe9m8Y+sQ.jE8.xKd7k+6ABjK5ADtD9kmOeTPgyu97OGET7tB.3m7I+iavbu0VVzTjra8NqQ5FwDW1xv8jkf16c+LrKCMdnIRiIx61NCelHm2t2m0o2sBoZ04WhkjfeUcTC0x1k9H5orGPew9xkMq0t.gOQnFTtZM2O8BgeoPEYEmumhuG6gE2biauR9s1Y0Mt6xqrYyU2pPqO0ibIV5VyqoVkwD9Hb6+FTj3GgelCMQ7firbQa9Gs272WhBT7+O86Db4+ypSQtuSGjyAk5Usnk2QJys8ORewtBxFEflhEE0w.hCgXGTSTQqlX6Zcz9B1YrfCaxhyXoainAFXyc37H5giftfOR9Q9I4Q4EjMg0a8EubAV9jKxwkKyhY3YpKJoiZ6adI10QfBzEgMUXgBSLaaZWTSY08rC867tTrTSDRwTViXecdmKkkqTARxHDXPDWvthpOzXdOFhKDzvyTNlaPYIN5GK3msWoC1VfBn6nh10ht3TdJQZkgqUUymUUXa+VUlsDJqKVcYYcnUJTXkjcaxTQIQEFCb9NVe+JEQZMv1gywtDTAsOiVqzbVqb29pmzZ4EQt8YYs9vmBpuBc1GOh1av0B8m86q77M6XTsnvtUa4oDkkKS1rYSxklg1AZF1ToRmlmOkyr1YYKR02ilGC8n7bALAI2QoP4gdT9phlonoo1IVZxSQSs8NwRyzTz7A+hSrzLCsn+qNwRyrTz7CexIVZlihl2+i+JflWHf4fRuv6QJTD842yeP563mnO+m0AQAcPz8qgWGl7Esp203VO6o+2RCUPoatKZOnU4agWIeIzirencCw8fqoVTGZkxBojQwZPu.8K+4TVCls8aM9vNjse5aZVC53.OqQe8MdM1Z7VA9wfcsFEO30WqwnL1oigwz7z0XmNv38O5z0XmNZaheM8Ct7l+XmND94exoqw9hTi8W7adS2muiWnl6f+S+3SYCd57A+C+1SYCd5z+p86eMdv244h5hrEPkanHZ58HaQdcMN2fzazmMJx4eR0P17.5cOXhbNtBJcuDaQYSoZcmuS0E9xvLw4qyohaV1UpTAKYtj8Lrqd+I+QfilJeKap7NrXeJnXcY0pkDqqo.sOBby150ZxAxmrWmUwi92ez+x2YUT3Ke7StQ2NqhZA9rJhy7VAIVtj7iop1yEVpA48q5sz+nfUWcy5nFpd5KmgxlPMnnI1Cvylys4l2RG0Pyeqd4Mr7W1RWT5gXqA8M1PEhM8lzfjWGYXTAObrvxf9VEanWkXqn5Q3dPcCuksdi5X4WUEpP1q4HQvEcOCHQtkkJHhmm6Y2Ir5kDaIZI4SwZeMmuqS565T9tl220o8ccFeWm08ZaCZAQMZmic31A6b3eeyOWv12bLVEEwidpZtjb018icIztyss3Vrh5vp1ki54YOQeRTe0sf6zAitC3vxNSKNVRlnNqntGdFJtDBGeG1kgUDanX1pTNOrr.REoUCoJK4c9.1+tZUxdI4x8tNftooId5naIWVXSrqmnA0D5uqvckUgh5dmlOT1BtfaK5md8tr1zEPVhC7lQfxoO0GnrelNbRhVKXAv8tt4Ibc9BrVqpCHAg+phpahZPNjFsBvwhiBVBG4WBRGKbJR7U6qSPtlPnRP0xVW7+v+btIWq.mjax05lLRsfBO1b9+s9lBhLMTkD5vJ+OEbHYEZWZCb9EDJgC1MBoIkDjOUuRSx5yWIf+Ic3DSZRmWHLMowUZRI2A6bDllTXZRToIkLLMovzjBSSJLMoSUoIkBjmeb7W9pvzjdy7sIwGllTXZRzoIkJLMovzjBSSJLMoSUoIwCxmNLMovzj5UZRoCSSJLMI5zj3CSSJLMovzjBSS503zjdUvRqCC5NR1G8Sq+jkaUBlkpVmV1YXsNanf1muYV1DymfoNNV0NRRjIBuG1B281jbDZSpQnM7iPaROBsIyHzlriPax021PRS3lMLQ0sWjDWPwUrcrhrRaGqoY9+nNge+.

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

                          So when you say

                          Where I'm stuck is changing the slider

                          What do you mean?

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

                          jssrecordingJ 1 Reply Last reply Reply Quote 0
                          • jssrecordingJ
                            jssrecording @d.healey
                            last edited by

                            @d-healey Moving the volumeSlider1 to change the Message.setGain() on note Message.getNoteNumber() == 48

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

                              Message.setGain(volumeSlider1.getValue()); Should probably do it. Just make sure you have a variable reference to your slider in your script - right click on the slider in the widget list to get the script variable declaration. You probably also want to setup your slider correctly to decibel mode with the appropriate min/max values.

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

                              jssrecordingJ 1 Reply Last reply Reply Quote 0
                              • jssrecordingJ
                                jssrecording @d.healey
                                last edited by

                                @d-healey said in Control individual notes/samples with a slider.:

                                Message.setGain(volumeSlider1.getValue());

                                Okay I think I'm close thanks David! Where am I going wrong? BTW right clicking and creating a declaration is pretty slick!

                                //volumeSlider1
                                    const var volumeSlider1 = Content.getComponent("volumeSlider1");
                                    
                                        if (Message.getNoteNumber() == 48) {
                                        
                                            Message.setGain(volumeSlider1.getValue());
                                        
                                            Message.setGain(volumeSlider1);
                                    
                                            Console.print(volumeSlider1);
                                    
                                         }
                                
                                d.healeyD 1 Reply Last reply Reply Quote 0
                                • d.healeyD
                                  d.healey @jssrecording
                                  last edited by

                                  @jssrecording

                                  This should go in on init const var volumeSlider1 = Content.getComponent("volumeSlider1");

                                  Tell me why you put:

                                  Message.setGain(volumeSlider1.getValue());
                                          
                                  Message.setGain(volumeSlider1);
                                  

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

                                  jssrecordingJ 1 Reply Last reply Reply Quote 0
                                  • jssrecordingJ
                                    jssrecording @d.healey
                                    last edited by

                                    @d-healey Ha ha oops! That's my mistake 😑 Setting my constant to the init now.

                                    jssrecordingJ 1 Reply Last reply Reply Quote 1
                                    • jssrecordingJ
                                      jssrecording @jssrecording
                                      last edited by

                                      @jssrecording It works @d-healey thank you! Also changed my slider to decibels. Thanks my friend! BTW you should create a Udemy course on Hise. You're extremely knowledgable.

                                      jssrecordingJ 1 Reply Last reply Reply Quote 1
                                      • jssrecordingJ
                                        jssrecording @jssrecording
                                        last edited by

                                        @jssrecording Just to clarify our conversation for anyone else. I update my code in the onNoteOn to this.

                                                if (Message.getNoteNumber() == 48) {
                                                
                                                    Message.setGain(volumeSlider1.getValue());
                                            
                                                 }
                                        

                                        onInit

                                        //volumeSlider1
                                        const var volumeSlider1 = Content.getComponent("volumeSlider1");
                                        
                                        1 Reply Last reply Reply Quote 1
                                        • First post
                                          Last post

                                        51

                                        Online

                                        1.7k

                                        Users

                                        11.7k

                                        Topics

                                        102.2k

                                        Posts