HISE Logo Forum
    • Categories
    • Register
    • Login

    Change Sample Map via ComboBox

    Scheduled Pinned Locked Moved Scripting
    14 Posts 4 Posters 596 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 @pgaudioworks
      last edited by

      @pgaudioworks getSampleMapList() is a function of the Sampler class, not childSynth

      Try using Synth.getSampler("Sampler1");

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

      P 1 Reply Last reply Reply Quote 0
      • P
        pgaudioworks @d.healey
        last edited by

        @d-healey I updated it and I'm still getting the same error.

        const var Sampler1 = Synth.getSampler("Sampler1");
        
        Console.Print(Sampler1.getSampleMapList());
        

        Error:

        Interface:! Line 5, column 14: Function / constant not found: Console.Print {SW50ZXJmYWNlfG9uSW5pdCgpfDEwNHw1fDE0}
        Master Chain:! Line 5, column 14: Function / constant not found: Console.Print {SW50ZXJmYWNlfG9uSW5pdCgpfDEwNHw1fDE0}
        
        
        d.healeyD 1 Reply Last reply Reply Quote 0
        • d.healeyD
          d.healey @pgaudioworks
          last edited by d.healey

          @pgaudioworks The error message is telling you it can't find the function you are calling on line 5. You are calling two functions on that line, try eliminating one of them and see if the error remains.

          I just noticed, the error message tells you which function.

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

          P 1 Reply Last reply Reply Quote 0
          • P
            pgaudioworks @d.healey
            last edited by

            @d-healey really grateful for your help. I think I'm confused that I'm calling two functions. How does the console know what to print if I don't include both Console.Print and getSampleMapList?

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

              @pgaudioworks Console.Print is not a function ;)

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

              P 1 Reply Last reply Reply Quote 0
              • P
                pgaudioworks @d.healey
                last edited by

                @d-healey I shouldn't have had the p capitalized, got it. I've now gotten this far:

                const var Sampler1 = Synth.getSampler("Sampler1");
                
                const var SampleSelection = Content.getComponent("SampleSelection");
                
                
                
                Console.print(Sampler1.getSampleMapList()); 
                
                Console.print(SampleSelection.getValue()-1);
                
                
                inline function onSampleSelectionControl(component, value)
                {
                	Sampler1.loadSampleMap(SampleSelection.getValue()-1);
                };
                
                Content.getComponent("SampleSelection").setControlCallback(onSampleSelectionControl);
                

                The console is returning the right values, but the sampler isn't changing when I update the combo box. Am I any closer?

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

                  @pgaudioworks Is SampleSelection.getValue()-1 the name of your sample map?

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

                  P 1 Reply Last reply Reply Quote 0
                  • P
                    pgaudioworks @d.healey
                    last edited by

                    @d-healey it's the name of the combo box.

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

                      @pgaudioworks

                      Sampler1.loadSampleMap(SampleSelection.getValue()-1);

                      loadSampleMap expects the name of a sample map.

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

                      1 Reply Last reply Reply Quote 0
                      • M
                        Mighty23
                        last edited by

                        @pgaudioworks try someting like this, where "cmbSampleMap" is my Combo Box

                        // My Sample Map on Combobox
                        const var sampleMaps = Sampler.getSampleMapList(); // get a Sample Map List
                        const var cmbSampleMap = Content.getComponent("cmbSampleMap"); //combo box
                        const var Sampler1 = Synth.getChildSynth("Sampler1"); // Sampler Reference
                        
                        // populate combo box with sample maps
                        cmbSampleMap.set("items", sampleMaps.join("\n"));
                        
                        inline function oncmbSampleMapControl(component, value)
                        {
                        	//Console.print(value);
                        	Sampler1.asSampler().loadSampleMap(sampleMaps[value-1]);
                        };
                        
                        Content.getComponent("cmbSampleMap").setControlCallback(oncmbSampleMapControl);
                        

                        Free Party, Free Tekno & Free Software too

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

                        32

                        Online

                        1.7k

                        Users

                        11.8k

                        Topics

                        102.7k

                        Posts