Forum
    • Categories
    • Register
    • Login

    Builder InterfaceTypes

    Scheduled Pinned Locked Moved General Questions
    27 Posts 5 Posters 243 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 @Christoph Hart
      last edited by Lindon

      @Christoph-Hart opus? is it? _ Imholding off on my great Anthropic journey until we have a well defined workflow - so Im not actually using any AI at the moment..

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

        @Lindon well I took my first run at using Claude, and (after a fair bit of fiddling about from me) it gave me these:
        SamplerScriptingApi::SamplerSynth.getSampler()
        MidiPlayerScriptingObjects::ScriptedMidiPlayerSynth.getMidiPlayer()
        TableProcessorScriptingObjects::ScriptingTableProcessorSynth.getTableProcessor()
        AudioSampleProcessorScriptingObjects::ScriptingAudioSampleProcessorSynth.getAudioSampleProcessor()
        RoutingMatrixScriptingObjects::ScriptRoutingMatrixSynth.getRoutingMatrix()
        SlotFXScriptingObjects::ScriptingEffect (hotswap)Synth.getSlotFX()

        but surely there has to be more than this? Where are all the containers for example?

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

          @Lindon ok so some progress...Claude tells me it needs to look in one of these files:

          hi_scripting/scripting/scriptingobjects/ScriptingObjects.cpp
          hi_scripting/scripting/scriptingobjects/ScriptingObjects.h

          -- but of course there is no such sub-folder as "scriptingobjects" and no ScriptingObjects file either...

          As a first experience with Claude, this isnt going well....

          DanHD David HealeyD 2 Replies Last reply Reply Quote 0
          • DanHD
            DanH @Lindon
            last edited by

            @Lindon if you have Atom or similar then ask Claude for key search words, search the source and find the relevant files that way

            DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
            https://dhplugins.com/ | https://dcbreaks.com/
            London, UK

            1 Reply Last reply Reply Quote 0
            • David HealeyD
              David Healey @Lindon
              last edited by

              @Lindon I'm not actually sure what you're searching for, what do you mean by Builder InterfaceTypes?

              Free HISE Bootcamp Full Course for beginners.
              YouTube Channel - Public HISE tutorials
              My Patreon - HISE tutorials

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

                @David-Healey

                this command: Builder.create(var type, var id, int rootBuildIndex, int chainIndex)

                what are all the types available to me?

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

                  @Lindon so Claude seems to think its this list:

                  Sound Generator Types

                  "SineWaveGenerator"
                  "WavetableSynth"
                  "AudioLooper"
                  "Sampler"
                  "ScriptSynth" (Scripted Synth)
                  "GlobalModulatorContainer"
                  "SynthGroup"
                  "SynthChain"
                  "BerlingerFilter" (or similar filter synths)

                  Modulator Types (Envelopes)

                  "SimpleEnvelope"
                  "AHDSREnvelope"
                  "TableEnvelope"
                  "CCEnvelope"

                  Modulator Types (LFOs)

                  "LfoModulator"
                  "RandomModulator"
                  "ConstantModulator"
                  "MacroModulator"

                  Modulator Types (Voice Start)

                  "VelocityModulator"
                  "KeyModulator"
                  "RandomModulator"
                  "GlobalModulator"

                  Effect Types

                  "Reverb"
                  "Convolution"
                  "Delay"
                  "Chorus"
                  "Phaser"
                  "GainEffect"
                  "PolyshapeFX"
                  "Saturator"
                  "CurveEQ"
                  "ParametricEQ"
                  "EmptyFX"

                  Which in the real world renders Builder to be nearly useless for me as it does not include Container, or Syntesiser Group....

                  When I have a very complex structure like this:

                  60a9cdee-6c97-4d68-8112-37e9c9d71539-image.png

                  dannytaurusD 1 Reply Last reply Reply Quote 0
                  • dannytaurusD
                    dannytaurus @Lindon
                    last edited by dannytaurus

                    @Lindon said in Builder InterfaceTypes:

                    According to Claude:

                    "SynthGroup" = Synthesiser Group
                    "SynthChain" = Container

                    Remember that names can change magically for no reason between source code, docs and HISEscript 😂

                    Meat Beats: https://meatbeats.com
                    Klippr Video: https://klippr.video

                    LindonL 2 Replies Last reply Reply Quote 1
                    • LindonL
                      Lindon @dannytaurus
                      last edited by

                      This post is deleted!
                      1 Reply Last reply Reply Quote 0
                      • LindonL
                        Lindon @dannytaurus
                        last edited by

                        OK back here again fighting with the documentation(or lack thereof..) so now I can build a set of nice processors, cause Clade (and @dannytaurus ) gave the documentation to to me.. except of course its not complete...

                        The Builder documentation tells me I can add an external script to a Script Processor, but nowhere do I have any documentation on how to create a Script Processor, even something as simple as adding (say) a std arpeggiator.... can anyone point me at the file that contains the definition of what I can call in builder.create() ???

                        David HealeyD 1 Reply Last reply Reply Quote 0
                        • David HealeyD
                          David Healey @Lindon
                          last edited by David Healey

                          @Lindon The auto-complete has it. And the connectToScript function is in the documentation.

                          Here's an example of creating a MIDI script processor and connecting it to a script file

                          local index = builder.create(builder.MidiProcessors.ScriptProcessor, "myScript", 0, builder.ChainIndexes.Midi);
                          builder.connectToScript(index, "{PROJECT_FOLDER}MyScript.js");
                          

                          Free HISE Bootcamp Full Course for beginners.
                          YouTube Channel - Public HISE tutorials
                          My Patreon - HISE tutorials

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

                            @David-Healey thanks yes I know where to find the connectToScript, and my current version of auto-complete refuses to load my selection so I dont use it (much), still I guess I can read and copy..(ugly)

                            thanks.

                            David HealeyD 1 Reply Last reply Reply Quote 0
                            • David HealeyD
                              David Healey @Lindon
                              last edited by

                              @Lindon The autocomplete is a bit dodgy, if you add a new object or you have a compile error it doesn't populate until you next successfully compile.

                              Free HISE Bootcamp Full Course for beginners.
                              YouTube Channel - Public HISE tutorials
                              My Patreon - HISE tutorials

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

                                @David-Healey it turns out its worse than that:

                                var stdscript = builder.create(
                                              builder.MidiProcessors.Arpeggiator, // the module type
                                              "Arpeggiator1",                       // the ID
                                              mastercontainer,                       // the parent (root)
                                              builder.ChainIndexes.Direct);             // the slot type
                                

                                gives me:

                                Interface:! Line 19, column 31: Couldn't create module with ID Arpeggiator 
                                
                                LindonL 1 Reply Last reply Reply Quote 0
                                • LindonL
                                  Lindon @Lindon
                                  last edited by

                                  @Lindon turns out its me being dumb...

                                  var stdscript = builder.create(
                                                builder.MidiProcessors.Arpeggiator, // the module type
                                                "Arpeggiator1",                       // the ID
                                                mastercontainer,                       // the parent (root)
                                                builder.ChainIndexes.Midi);             // the slot type
                                  
                                  LindonL 1 Reply Last reply Reply Quote 1
                                  • LindonL
                                    Lindon @Lindon
                                    last edited by Lindon

                                    OK so now I cant get builder.connectToScript(strum, "AScript2.js"); to work its telling me

                                    StrumProcessor:! onControl could not be parsed!
                                    

                                    heres onControl

                                    function onControl(number, value)
                                    {
                                    	
                                    }
                                     
                                    
                                    David HealeyD 1 Reply Last reply Reply Quote 0
                                    • David HealeyD
                                      David Healey @Lindon
                                      last edited by

                                      @Lindon Do you see that error when you use that script manually?

                                      Free HISE Bootcamp Full Course for beginners.
                                      YouTube Channel - Public HISE tutorials
                                      My Patreon - HISE tutorials

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

                                        @David-Healey nope...

                                        David HealeyD 1 Reply Last reply Reply Quote 0
                                        • David HealeyD
                                          David Healey @Lindon
                                          last edited by

                                          @Lindon What about through the builder in a minimal test project?

                                          Free HISE Bootcamp Full Course for beginners.
                                          YouTube Channel - Public HISE tutorials
                                          My Patreon - HISE tutorials

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

                                            @David-Healey this is a minimalist test project...

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

                                            19

                                            Online

                                            2.2k

                                            Users

                                            13.5k

                                            Topics

                                            117.5k

                                            Posts