HISE Logo Forum
    • Categories
    • Register
    • Login

    General Midi library question

    Scheduled Pinned Locked Moved General Questions
    20 Posts 4 Posters 753 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.
    • A
      alfaholic
      last edited by

      What would be the best solution for a general midi library?

      I am thinking of using Rhapsody, however presets remember and change only visible GUI controls, which is also good but besides that I need a completely different sample map to be loaded and played.

      Should I create 128 samplers in my project? Then how to change between them, which one is playing?

      Thanks...

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

        @alfaholic

        Should I create 128 samplers in my project? Then how to change between them, which one is playing?

        Definitely not.

        When you load a preset it sets the value of the UI controls, so you have a control (can be hidden if you want) that changes the sample map. Then when you change presets it will trigger the control and the sample map will change.

        I have a video on YouTube showing how to do this with a combo box, but you could use a knob.

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

        A 1 Reply Last reply Reply Quote 1
        • A
          alfaholic @d.healey
          last edited by alfaholic

          @d-healey
          I got it, however I constantly get the same error:

          Screenshot 2023-06-10 at 11.26.15.png

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

            Your component reference is called cmbSampleMap not SampleMapList. It will make your life easier if you give the components the same name as the reference.

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

            A 1 Reply Last reply Reply Quote 1
            • A
              alfaholic @d.healey
              last edited by

              @d-healey Thanks.

              As I can see one sample map can not be separated into groups, so for example to have a group for each drum family: Kicks, Snares, Hi Hats (monophonic group ) and so on.

              Should I create 6 additional samplers for 6 drum families (Kicks, Snares, Hi Hats, Toms, Cymbals, Percussion) and then create separate sample maps for each of them, then change between them with the preset script as you already explained?

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

                @alfaholic

                There are a few different ways to map samples. Generally the main reason to use multiple samplers is to be able to apply different effects or modulation chains to different groups of samples.

                If you don't need this then you can include all the samples in a single sample map. You can separate them using pitch, velocity, rr group, or a combination of these.

                With your hi-hat you might also want to look into the choke script that's built in. I haven't used it but there are some threads on the forum discussing it.

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

                A 1 Reply Last reply Reply Quote 1
                • A
                  alfaholic @d.healey
                  last edited by

                  @d-healey Thanks David, all clear.

                  I am not able to set the knob for pitch intensity. The knob is decimal, while pitch has 12 steps, is there a way to make it work?

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

                    @alfaholic You can edit the knob's properties in the interface designer

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

                    A 1 Reply Last reply Reply Quote 1
                    • A
                      alfaholic @d.healey
                      last edited by alfaholic

                      @d-healey Sure, but I went through everything multiple times and still do not get it, this is why I am asking. Here is how it looks:

                      Screenshot 2023-06-12 at 18.37.31.png

                      I tried everything, but the knob shows 0.5 while the pitch intensity shows 6 st.
                      If knob is set to min=0, max=12 then the intensity goes to million.

                      trillbillyT 1 Reply Last reply Reply Quote 0
                      • trillbillyT
                        trillbilly @alfaholic
                        last edited by trillbilly

                        @alfaholic You have to change your min, max, mode, etc values to match what you're trying to do.

                        Like for what your are trying to do, it could look like this:

                        min: -12
                        max: 12
                        mode: linear
                        style: knob
                        stepSize: .01
                        middlePosition: 0
                        suffix: st

                        A 1 Reply Last reply Reply Quote 1
                        • A
                          alfaholic @trillbilly
                          last edited by alfaholic

                          @trillbilly Sorry, I am an idiot. 👍

                          Edit:

                          Or maybe not... :)

                          Screenshot 2023-06-12 at 20.40.41.png

                          Yes, I forgot to put the negative value before, however nothing changes really as +12 goes up to 50 khz, also the scale is not the same as 0.83 on the knob moves the intensity slider to 9.96.

                          1 Reply Last reply Reply Quote 0
                          • A
                            alfaholic
                            last edited by alfaholic

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

                              I see what you're trying to do now. You need to use a control callback for this instead of the processor/parameter ID method.

                              HiseSnippet 1144.3oc0WE0aaaCDlJwJq1cKXsnXXOJDrGb.5Br655FPwPchicgQaRLhba2aELRmsIBEoFEUV7F59Ysm2Og8So+C1NRIGIuJ33XzsfkGBLOdGuOd769H0PkL.RRjJhS8QyhAhym55OSnm1cJkIHCNj3rs6QzDMn7xLcvrXZRBDRbb174FCN0qQr+89mc.kSEAPgIB40RV.7RVDSWXcXmWv379zPXDKpj2Otyf.onqjKSQ7roaKRLM3b5D3XpwsMbINa0KjokJeMUCInOGHCm4OU9yhL+eMKgcFGLCZS7wEJyLo6TFOb378ZBg33NrXmuY1N+AtGwBYWYunB741I7JhnbMvYikAo12.H4TBR0xfz8b8CTrXcwLF7bW2AB7.YLEK0kgRlujM9cG2tRzCgduH54PeEN3pHZ9jVsdnG9uceZiFX4NQ6cAU4MjoCl9lo.vORFlxo3Nps2O3Y4B6MAzWYs4NVW8r95U37Nl0iI3LA3MNUDnYRgmT7Bg7r1Fznj7lAxnXo.w0CwbxSgca7qMpWUl2KArHVjvzyZl46Sa7NLCy2XHj5Ne0ZtiMK6rqIr7b0kx4mgrmlKBAbUJAtikZ3DQSKLZ7tFd+yoFOtx4xWKNnpbZCoVsr.aJRiNCTkKBFGwS8EoRasZTofrRRIGkhABl9jXHebeIOzPQL+9CIdj7ZpgBliPzUsk.tcNAzmyBAEggKxm3ZKnDK3K2pSd0fCoZ57kAWQLKwfRyLaFmCgKPofLdcc2Cgjy0xXqu4Gin1y0lzKwNWmeCy0LyOhvejnmYJIaYcfDwBC4vPIxavRdYzgRXw9reAc00s8dsPOKMcy+HhdYogcRRGOlcoUyYLiGknQ7LHBkhHN228UIfWHLllx0dImiqCR5OGBGIs9S9v1XT.YN0trphQ9LeBCXK2JeE4ur75MPpo0RkZVUHdOWayY0XbiJvHd1+uAFyEn+L2diGCA5B.Vys+Ottpwqd52NK8200GE2rJh1j+E1wdugdA38bP.Jqz0Rtf7OW0KHiW4KHOIPioejhJRhkIKrv9PDaD1XkT1HRc6qfe5TyoYY6ckTUkS89m0G2jUFiOUmprzh8ijoB8BzfMW7bn1pIksXGQI+q35xZ2B2f+wos5VryegGYTeNF8YQwbnm3BfiB1VLdeTg1pvM25hD6ijBY7TofET9T+T.0ImLATkwdkan80Z7x4BKOnyo.GnkYveUmWhLOpBqSvZVKt4O3pxyquzMCtdltQu++pXu4JoXWa0vXwaJt1Z6cl+kEEO0KutV8SIudLe.KVxoJysPnh1HpEeESO.4rJsI9RpUQRod5h5orNezHS21WWcpLUyDSNhhcflGIcbZjOdKQ.fYWH.dh48RaXT5yF2xLN6ZBQncveg+kOYayXm7IaOex+SxQDMPIeaP1yPMDo6Xsf6ag8i.qieMJN16p2e551x9ZtP1aCBLk3uFusn5XdzZDy2rFw730HlucMh4IqQLe2ZDy2uzXL2rtepVFko2fFF1y9c.NN8DlNSKSm728iXYiA
                              

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

                              1 Reply Last reply Reply Quote 1
                              • A
                                alfaholic
                                last edited by

                                Is there a way to control all 3 bands in Parametric EQ with knobs?
                                I would like to have Lo Shelf, Peak, and High Shelf, also 6 more knobs for frequency and Q factor.

                                At the moment I am using 3 EQs, not sure how much more resources this uses.

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

                                  @alfaholic - so each node in your paremetric eq is displayed with a number - and you use this number thus(lets say we are talking about the first node(node zero);

                                  
                                  const var EQ1 = Synth.getEffect("EQ1");  //assume our EQ is called EQ1
                                  
                                  
                                  inline function onLoShelfFreqControl(component, value)
                                  {
                                  	//low shelf freq
                                  	local eqdx = 0 * EQ1.BandOffset + EQ1.Freq; //get the index....
                                  	EQ1.setAttribute(eqdx, value); // set its value
                                  };
                                  
                                  inline function onLoShelfGainControl(component, value)
                                  {
                                  	//low shelf Gain
                                  	local eqdx = 0 * EQ1.BandOffset + EQ1.Gain;
                                  	EQ1.setAttribute(eqdx, value);
                                  };
                                  
                                  Content.getComponent("LoShelfGain").setControlCallback(onLoShelfGainControl);
                                  
                                  
                                  
                                  inline function onLoShelfQControl(component, value)
                                  {
                                  	//lo shelf q
                                  	local eqdx = 0 * EQ1.BandOffset + EQ1.Q;
                                  	EQ1.setAttribute(eqdx, value);
                                  };
                                  
                                  Content.getComponent("LoShelfQ").setControlCallback(onLoShelfQControl);
                                  
                                  
                                  

                                  HISE Development for hire.
                                  www.channelrobot.com

                                  1 Reply Last reply Reply Quote 1
                                  • A
                                    alfaholic
                                    last edited by

                                    I just tried to use Choke Group Processor to make the Hi Hats and few percussion elements choke themselves, but as I can see it does not serve this purpose.

                                    Do I need a script for this as well?

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

                                      @alfaholic

                                      404 Not Found

                                      favicon

                                      (docs.hise.audio)

                                      Link Preview Image
                                      Choke group processor

                                      @Christoph-Hart I sense you're working on a percussion plugin. Tell us more about this new processor. :)

                                      favicon

                                      Forum (forum.hise.audio)

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

                                      1 Reply Last reply Reply Quote 1
                                      • A
                                        alfaholic
                                        last edited by

                                        There is some problem with Container audio outputs section, when I want to change from 2 to 16 output channels the program crashes.
                                        Any solution?

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

                                          @alfaholic Sounds like this bug - https://forum.hise.audio/topic/7528/bug-changing-container-channel-amount-crash?_=1686836854779

                                          Are you sure you're using the latest version?

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

                                          A 1 Reply Last reply Reply Quote 0
                                          • A
                                            alfaholic @d.healey
                                            last edited by

                                            @d-healey Yes, the latest version. The workaround was to create 16 outputs somewhere else and then copy to the container.

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

                                            21

                                            Online

                                            1.7k

                                            Users

                                            11.7k

                                            Topics

                                            101.9k

                                            Posts