HISE Logo Forum
    • Categories
    • Register
    • Login

    getTableValue and samplers crossfade issue

    Scheduled Pinned Locked Moved General Questions
    11 Posts 4 Posters 643 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.
    • LindonL
      Lindon @andrei s
      last edited by Lindon

      @problema can you not simply scale your output as required?

      Console.print("value: " + ((value * 100)-100));
      

      you get your table value out of

      local gainValue1 = CrossfadeTable1.getTableValue((value));
      

      so your call back

       local gainValue1 = CrossfadeTable1.getTableValue((value));
       Console.print("Gain value:" + gainValue1);
       Console.print("value: " + ((gainValue1 * 100)-100));
       SimpleGain1.setAttribute(SimpleGain1.Gain, ((gainValue1 * 100)-100) );
      

      HISE Development for hire.
      www.channelrobot.com

      andrei sA 1 Reply Last reply Reply Quote 1
      • andrei sA
        andrei s @Lindon
        last edited by

        @Lindon thank you for your answer, but i couldn't make it work.

        local gainValue1 = CrossfadeTable1.getTableValue((value));
        

        The issue here is gainValue1 has only 0 and 1 values, so the result would be 0 or - 100, or am i missing something?

        SimpleGain1.setAttribute(SimpleGain1.Gain, ((gainValue1 * 100)-100) );
        

        Here is a pic of my result with code from starting snipet
        gainValue_0_1.png

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

          There's a function for this something like Engine.getDecibelsForGainFactor

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

          andrei sA 1 Reply Last reply Reply Quote 1
          • andrei sA
            andrei s @d.healey
            last edited by andrei s

            @d-healey thanks for answer.

            I already use Engine.getDecibelsForGainFactor

            inline function onknbMixControl(component, value)
            {
             local gainValue1 = CrossfadeTable1.getTableValue((value));
             local gainValue2 = CrossfadeTable2.getTableValue(value * 127.0);
            
             local dbValue1 = Engine.getDecibelsForGainFactor(gainValue1);
             local dbValue2 = Engine.getDecibelsForGainFactor(gainValue2);
            
             SimpleGain1.setAttribute(0, dbValue1);
             SimpleGain2.setAttribute(0, dbValue2);
            

            Because gainValue has only 0 or 1 value, dbValue is 0 or -100, but i need smooth gain changing.

            Why gainValue has only 2 values and how can i change that?

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

              @problema What is the end goal? I might have some suggestions.

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

              1 Reply Last reply Reply Quote 0
              • andrei sA
                andrei s
                last edited by

                @d-healey the end goal is a crossfade slider between few samplers with ability to control the behavior of gain value changes with tables.

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

                  @problema But why do you want to crossfade between samplers? Is it for crossfading dynamics? Is there a reason you can't use a single sampler and crossfade the groups?

                  By the way I made a video years ago about crossfading dynamic layers using a few techniques that might be of interest to you.

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

                  andrei sA 1 Reply Last reply Reply Quote 2
                  • Matt_SFM
                    Matt_SF @andrei s
                    last edited by

                    @problema why multiply the table values by 127 ? The values goes from 0 to 1 (displayed as 0% to 100%), so just remove that and it works just as expected :

                    HiseSnippet 1817.3oc6YszaaaDDlzRL0VMMnIHG5ghBB0dPA00Qhwwonuhr0iTm3GBhttomDVStVZgWwkfbkcTaCJP+kzeB8ePyef9KnWZu1S4RQO1N6tTRKUjcjUd5.qCBblcmc+1YlcdP1Hh4giiYQFlKrS+Prg4Esb6Gv6ToChDXrdUCy21ZSxCvQMhvwFq0ODEGi8MLMybGwDLWHqg72iu8ZHJJvCOhkgwtLhGdCRWBeD2FkuGgRqi7w6P5pM6kKutGKnBix5AfIiUQiPj2An13sPhoMmkg4Ep4S3rHWNhCXwL6ZL+9tcXGEnl+tjXxdTrfnjgKrPJ10YTeAhEbMpzgP8aL3PGa.KZiQpfLJUvUgSrOYH+Qph2UNf8HIz0GlykFdYRAuR5vqnF7l.jL0fTVEjtrkqWDIjOZDkoY8.NNZeDn10ghZtFy8GYspvfYDvWpK5.b8HfXnDEVoXwEsg+t1mmK20u9lqe+ZMyYC1fXt8gnHaWR2PJVXkKY+k1RmhkZi401eerGuPd0v1xwyCKwDkz4oHoiPRcQOHXOvaCjZ.tA4pv5FxB.hB4UCmWgXa.x1UZtsqa8UqVyM2nUoRDKNdegKFBz3kzVNjuujWg7iMm7KZeyEscDJiAyMFKT2g3HNAGC5tt20c6sljf+PNa67GQ74cx+Y1NqTbQAcGLocGNvnzM.FOT.4iCfNSA.cf8wYkYBhNmBHRBnj.r898B73DVfMKPoxEaXDiVvafsXQ3bP6guVNXkoLOD0tMXO2UvSpuSqjDlQ4SxITnPokJZ+IIqfv2YrUv4IVAmwVAknBeGkn96MbqqEzFNBh4WE6Q1CSiqyhDNa0Qdv0yBiv4ncNQbmSi3NxsW6VhvZrJmGQ1qGGW.taM.Th8Q6NwwMO0BBZ5XFEuTXDQ3wKOnelcd6O1dvYd7ozd2RpInexry8vQtIS9Rj.GI10JHJcOHbagwr2W6y07D1hwwaGTPXxWH2CyYO9P6u+DGKYon3nINrHKPzIIXgfdc2CGo4vImHDZLc7VqiOdqd5.OkNQahrf0CH7sCwAGWRBiDEIDaNSBpfm3xHyWJIxrKk3iiLHP.34sTJQCIhSRw8K24u96aaLT5rJoemDokt1Rgur0X2cRsJxe9HNRlQbFVNmSZ49l0qJdFRgjbfGEbA3UEeHjNWkOZAqp33C3rPoFIw0BrAOccxCFt0OhVt+PB6nxcI99TbCVLQ3.LBg+oPsMbKtvzq3fsxxDNVF8EObU3AYDPXkuPVS0ZqBAJ37yCTGyxd4n1qELOk60SlnGJwf42ih3oq6PD3HY.gtQOYuHgd.ny5qWL1yshQlVHdYqFDtWmIiw4l.FAurWDXLoDt2wRUswH.l0p98ewTul91+9ps+JVt7HLpKInsKRD3WUuVNqDpROOpjNbpqjFpcmxP9tjuWaZOp7Z8.cTTZt+ZY4VsZWVufT6UBxahCwHNXl0jY9xMadmHVuvwk5w2V5TrSDjZATE5Crc.Fz0b8y3vqTx0JVenF8hZKzUi3zDeHNJNMus50Er2AAPNawkPw0tuIFKruDuMQPB2GnOa4tTTcmVD8SRWZLZmwnuwXzKOF8MGidkwnu0HZSqz9eu0zk+ZSTXCDbD0l4ZjDuLXLEG8ddRGoRqeoWlMCkc5tbcx8pcFHbYpd2VX.FUE+UK3P3ZHvQfwq.IP2G0ixGvMcHgMYArvNr.hWZmdvItcabjN1m3ABpuDtyMhyUK2DSwnXsaseT4MfBcQQouKepzEkN08wNQ606YofqsHNl8yhc6kpa1IlxKyTkx64NdeEj9KkYd9guDog86H29KYo+9BN1reevue8GUESQoTZeaRgTIL9txSH+35vsnHdCFEEMtJOyyK24rSseg3Hc1wOVDJBT4mk.rzk3rCfeWKHk8qAvsIqGGpCaPsPVPAStPQhdX8xllSTJlhtnfV.HWbfuj3+feICVZPMVhAKMXvoUkbojRgsgSXD+0b62EsjEuYKp09MYam2fkBNaIOKeg.lYvAhhGk8xQgJuo5QXig1HDPR7FDhkF0tPcnvTUDPRglLQk9VleAL6MX2C2e.wWSzH1fsqXgUn9qIID+j3rqZuX.nqSnIeUfux5GZzb66VqxNspu8FUq07gtUasSslMWcqs2c0VPEO9snLVXq1TTba1QsJtbqRNK2p9GtzQnCMp1KjR7.qjvVNCsw4bdabm2F2XswcgWPswcl3SW8FcGZNm2g1ydGZuZeQjYdi9EQd56D6XSf8K+3+7u+14chcdmXm2I14ch8JNh9yV2WyN7NuiqIzwU4StiqtPkR98m9dtdYni6h7hXs7TepbglddIGPGGHORKXsof1d3WZ2xp3REM5B0K2xySjv9Sf6vSVFmYPlaLCxr7LHyMmAYVYFj4VyfLe5IJinUkU6wYcUwnAFMpotVXVa30hLF+O.CjqWN
                    

                    Develop branch
                    Win10 & VS17 / Ventura & Xcode 14. 3

                    LindonL 1 Reply Last reply Reply Quote 1
                    • LindonL
                      Lindon @Matt_SF
                      last edited by

                      @Matt_SF said in getTableValue and samplers crossfade issue:

                      @problema why multiply the table values by 127 ? The values goes from 0 to 1 (displayed as 0% to 100%), so just remove that and it works just as expected :

                      HiseSnippet 1817.3oc6YszaaaDDlzRL0VMMnIHG5ghBB0dPA00Qhwwonuhr0iTm3GBhttomDVStVZgWwkfbkcTaCJP+kzeB8ePyef9KnWZu1S4RQO1N6tTRKUjcjUd5.qCBblcmc+1YlcdP1Hh4giiYQFlKrS+Prg4Esb6Gv6ToChDXrdUCy21ZSxCvQMhvwFq0ODEGi8MLMybGwDLWHqg72iu8ZHJJvCOhkgwtLhGdCRWBeD2FkuGgRqi7w6P5pM6kKutGKnBix5AfIiUQiPj2An13sPhoMmkg4Ep4S3rHWNhCXwL6ZL+9tcXGEnl+tjXxdTrfnjgKrPJ10YTeAhEbMpzgP8aL3PGa.KZiQpfLJUvUgSrOYH+Qph2UNf8HIz0GlykFdYRAuR5vqnF7l.jL0fTVEjtrkqWDIjOZDkoY8.NNZeDn10ghZtFy8GYspvfYDvWpK5.b8HfXnDEVoXwEsg+t1mmK20u9lqe+ZMyYC1fXt8gnHaWR2PJVXkKY+k1RmhkZi401eerGuPd0v1xwyCKwDkz4oHoiPRcQOHXOvaCjZ.tA4pv5FxB.hB4UCmWgXa.x1UZtsqa8UqVyM2nUoRDKNdegKFBz3kzVNjuujWg7iMm7KZeyEscDJiAyMFKT2g3HNAGC5tt20c6sljf+PNa67GQ74cx+Y1NqTbQAcGLocGNvnzM.FOT.4iCfNSA.cf8wYkYBhNmBHRBnj.r898B73DVfMKPoxEaXDiVvafsXQ3bP6guVNXkoLOD0tMXO2UvSpuSqjDlQ4SxITnPokJZ+IIqfv2YrUv4IVAmwVAknBeGkn96MbqqEzFNBh4WE6Q1CSiqyhDNa0Qdv0yBiv4ncNQbmSi3NxsW6VhvZrJmGQ1qGGW.taM.Th8Q6NwwMO0BBZ5XFEuTXDQ3wKOnelcd6O1dvYd7ozd2RpInexry8vQtIS9Rj.GI10JHJcOHbagwr2W6y07D1hwwaGTPXxWH2CyYO9P6u+DGKYon3nINrHKPzIIXgfdc2CGo4vImHDZLc7VqiOdqd5.OkNQahrf0CH7sCwAGWRBiDEIDaNSBpfm3xHyWJIxrKk3iiLHP.34sTJQCIhSRw8K24u96aaLT5rJoemDokt1Rgur0X2cRsJxe9HNRlQbFVNmSZ49l0qJdFRgjbfGEbA3UEeHjNWkOZAqp33C3rPoFIw0BrAOccxCFt0OhVt+PB6nxcI99TbCVLQ3.LBg+oPsMbKtvzq3fsxxDNVF8EObU3AYDPXkuPVS0ZqBAJ37yCTGyxd4n1qELOk60SlnGJwf42ih3oq6PD3HY.gtQOYuHgd.ny5qWL1yshQlVHdYqFDtWmIiw4l.FAurWDXLoDt2wRUswH.l0p98ewTul91+9ps+JVt7HLpKInsKRD3WUuVNqDpROOpjNbpqjFpcmxP9tjuWaZOp7Z8.cTTZt+ZY4VsZWVufT6UBxahCwHNXl0jY9xMadmHVuvwk5w2V5TrSDjZATE5Crc.Fz0b8y3vqTx0JVenF8hZKzUi3zDeHNJNMus50Er2AAPNawkPw0tuIFKruDuMQPB2GnOa4tTTcmVD8SRWZLZmwnuwXzKOF8MGidkwnu0HZSqz9eu0zk+ZSTXCDbD0l4ZjDuLXLEG8ddRGoRqeoWlMCkc5tbcx8pcFHbYpd2VX.FUE+UK3P3ZHvQfwq.IP2G0ixGvMcHgMYArvNr.hWZmdvItcabjN1m3ABpuDtyMhyUK2DSwnXsaseT4MfBcQQouKepzEkN08wNQ606YofqsHNl8yhc6kpa1IlxKyTkx64NdeEj9KkYd9guDog86H29KYo+9BN1reevue8GUESQoTZeaRgTIL9txSH+35vsnHdCFEEMtJOyyK24rSseg3Hc1wOVDJBT4mk.rzk3rCfeWKHk8qAvsIqGGpCaPsPVPAStPQhdX8xllSTJlhtnfV.HWbfuj3+feICVZPMVhAKMXvoUkbojRgsgSXD+0b62EsjEuYKp09MYam2fkBNaIOKeg.lYvAhhGk8xQgJuo5QXig1HDPR7FDhkF0tPcnvTUDPRglLQk9VleAL6MX2C2e.wWSzH1fsqXgUn9qIID+j3rqZuX.nqSnIeUfux5GZzb66VqxNspu8FUq07gtUasSslMWcqs2c0VPEO9snLVXq1TTba1QsJtbqRNK2p9GtzQnCMp1KjR7.qjvVNCsw4bdabm2F2XswcgWPswcl3SW8FcGZNm2g1ydGZuZeQjYdi9EQd56D6XSf8K+3+7u+14chcdmXm2I14ch8JNh9yV2WyN7NuiqIzwU4StiqtPkR98m9dtdYni6h7hXs7TepbglddIGPGGHORKXsof1d3WZ2xp3REM5B0K2xySjv9Sf6vSVFmYPlaLCxr7LHyMmAYVYFj4VyfLe5IJinUkU6wYcUwnAFMpotVXVa30hLF+O.CjqWN
                      

                      ...exactly.

                      HISE Development for hire.
                      www.channelrobot.com

                      1 Reply Last reply Reply Quote 1
                      • andrei sA
                        andrei s @d.healey
                        last edited by

                        @d-healey wow! It works and it's so simple and don't needs any scripting.
                        Thank you very much!

                        1 Reply Last reply Reply Quote 2
                        • First post
                          Last post

                        10

                        Online

                        1.7k

                        Users

                        11.8k

                        Topics

                        103.2k

                        Posts