HISE Logo Forum
    • Categories
    • Register
    • Login

    Syntesizer group unisono detune spread and FM in interface

    Scheduled Pinned Locked Moved General Questions
    11 Posts 3 Posters 2.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.
    • M
      MIDIculous
      last edited by

      I'm looking for something like this as well.

      1 Reply Last reply Reply Quote 0
      • staiffS
        staiff
        last edited by

        Ok...
        So anyone help ?
        thanks in advance

        Excuse me i'm French.

        1 Reply Last reply Reply Quote 0
        • Christoph HartC
          Christoph Hart
          last edited by

          I remember there's a glitch that prevents the parameters to show up in the pop up, I'll take a look. Meanwhile you can resort back to magic numbers and the conventional way of controlling parameters via the onControl callback.

          1 Reply Last reply Reply Quote 0
          • staiffS
            staiff
            last edited by

            ok,
            what is these "magic numbers" and onControlCallback script ?

            thanks in advance :)

            Excuse me i'm French.

            1 Reply Last reply Reply Quote 0
            • staiffS
              staiff
              last edited by staiff

              Link Preview Image
              AppVeyor

              favicon

              (ci.appveyor.com)

              Seems that you working on it. right ?

              If yes: many thanks :D

              details:

              • changed internal content data structure to tree (more robust parent component handling)
                o.99.432
                12 hours ago by Christoph Hart
                new_threading 22af3f4d
                12 hours ago in 4 min 44 sec
              • cleaned up the popupmenus a bit
                o.99.431
                20 hours ago by Christoph Hart
                new_threading 857e195e
                20 hours ago in 4 min 54 sec

              Excuse me i'm French.

              1 Reply Last reply Reply Quote 0
              • Christoph HartC
                Christoph Hart
                last edited by

                Well, in fact I am working on a complete overhaul of the interface designer, which is be the biggest change in HISE since the layout redesign. It includes multiple selection, drag and drop to change parent components, delete, duplication of multiple items, etc.

                It's not on the master branch though, I need a bit more testing before it's considered usable for other folks, but if you're brave, feel free to check out the new_threading branch and give it a test run. The fix for the synth groups is also included there so it might be an incentive for you :)

                1 Reply Last reply Reply Quote 0
                • staiffS
                  staiff
                  last edited by staiff

                  ok, i will take a look at it.

                  i tried this:
                  OnInit:
                  const var Unison_Voices = Content.addKnob("Unison_Voices", 411, 61);
                  const var Subtractive = Synth.getChildSynth("Subtractive");
                  OnControl:
                  if(number == Unison_Voices) Subtractive.setAttribute(Subtractive.Unisono_Voices, value); // Unison_Voices is the name of my knob and Subtractive is my renamed waveform generator.

                  but it result as that controlling the volume of the generator, not the unison voices.

                  EDIT (!!!)

                  Yipeeeeee !!!! i found !!!!!
                  i right clicked on the waveform generator and choose copy to the clipboard. paste it on a note and took a look at the good names for voices, detune, etc....

                  for the Unisono voices it's: UnisonoVoiceAmount....

                  etc....

                  so for the unisono it's working !
                  i test the rest of the module :D

                  Excuse me i'm French.

                  1 Reply Last reply Reply Quote 0
                  • staiffS
                    staiff
                    last edited by staiff

                    ok !
                    for the waveform generator it's:

                    function onControl(number, value)
                    {
                    if(number == Unison_Voices) Subtractive.setAttribute(Subtractive.UnisonoVoiceAmount, value);
                    if(number == SubtractiveDetune) Subtractive.setAttribute(Subtractive.UnisonoDetune, value);
                    if(number == SubSpread) Subtractive.setAttribute(Subtractive.UnisonoSpread, value);
                    if(number == SubFM) Subtractive.setAttribute(Subtractive.EnableFM, value);
                    }

                    Of course all the names in the (number == names) are my knobs/buttons/sliders names and "Subtractive" is my waveform generator name. you must change it with your own names.
                    don't forget to set up your buttons, sliders, knobs (the min, max, default value, center, etc...) in the popup interface before writing this code !

                    thanks to Christoph for this link that helped me a lot (http://forum.hise.audio/topic/74/how-to-control-modules-with-scripts)
                    thanks to d.healey to put me in the right direction.

                    Excuse me i'm French.

                    1 Reply Last reply Reply Quote 0
                    • Christoph HartC
                      Christoph Hart
                      last edited by

                      Yes, that's fine, but if you use a switch statement, it will be faster. Or simply use else if. This way you evaluate each expression every time.

                      1 Reply Last reply Reply Quote 0
                      • staiffS
                        staiff
                        last edited by staiff

                        yes !
                        i also work with RackAfx (some times ago with WDL OL) and in this case using a lot of "if" and "else if" or "case" with the functions to do.
                        but it's pure C++
                        here it's JSON.
                        i must learn again how to work with C++ codes in hise before doing this.

                        i actually make the synth in hise and the BDD Juno/Dimension-D in Rackafx.

                        Excuse me i'm French.

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

                        53

                        Online

                        1.7k

                        Users

                        11.7k

                        Topics

                        101.9k

                        Posts