HISE Logo Forum
    • Categories
    • Register
    • Login

    Global pitch modulator problem

    Scheduled Pinned Locked Moved General Questions
    60 Posts 4 Posters 4.7k 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
      last edited by

      Getting a few build errors - to do with the scriptnode additions I think

      ../../../../../HISE/hi_backend/../hi_modules/nodes/HiseNodes.h:152:24: error: ‘extra_mod’ does not name a type
        152 |   DEF_PARAMETER(Index, extra_mod);
            |                        ^~~~~~~~~
      ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_dsp_library/node_api/helpers/node_macros.h:51:112: note: in definition of macro ‘DEF_PARAMETER’
         51 | #define DEF_PARAMETER(ParameterName, ClassName) if constexpr (P == (int)Parameters::ParameterName) static_cast<ClassName*>(obj)->set##ParameterName(value);
            |                                                                                                                ^~~~~~~~~
      ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_dsp_library/node_api/helpers/node_macros.h:51:121: error: expected ‘>’ before ‘*’ token
         51 | #define DEF_PARAMETER(ParameterName, ClassName) if constexpr (P == (int)Parameters::ParameterName) static_cast<ClassName*>(obj)->set##ParameterName(value);
            |                                                                                                                         ^
      ../../../../../HISE/hi_backend/../hi_modules/nodes/HiseNodes.h:152:3: note: in expansion of macro ‘DEF_PARAMETER’
        152 |   DEF_PARAMETER(Index, extra_mod);
            |   ^~~~~~~~~~~~~
      ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_dsp_library/node_api/helpers/node_macros.h:51:121: error: expected ‘(’ before ‘*’ token
         51 | #define DEF_PARAMETER(ParameterName, ClassName) if constexpr (P == (int)Parameters::ParameterName) static_cast<ClassName*>(obj)->set##ParameterName(value);
            |                                                                                                                         ^
      ../../../../../HISE/hi_backend/../hi_modules/nodes/HiseNodes.h:152:3: note: in expansion of macro ‘DEF_PARAMETER’
        152 |   DEF_PARAMETER(Index, extra_mod);
            |   ^~~~~~~~~~~~~
      ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_dsp_library/node_api/helpers/node_macros.h:51:122: error: expected primary-expression before ‘>’ token
         51 | #define DEF_PARAMETER(ParameterName, ClassName) if constexpr (P == (int)Parameters::ParameterName) static_cast<ClassName*>(obj)->set##ParameterName(value);
            |                                                                                                                          ^
      ../../../../../HISE/hi_backend/../hi_modules/nodes/HiseNodes.h:152:3: note: in expansion of macro ‘DEF_PARAMETER’
        152 |   DEF_PARAMETER(Index, extra_mod);
            |   ^~~~~~~~~~~~~
      In file included from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_dsp_library/hi_dsp_library.h:111,
                       from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/hi_dsp.h:56,
                       from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/hi_components.h:57,
                       from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/hi_sampler.h:54,
                       from ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/hi_scripting.h:80,
                       from ../../../../../HISE/hi_backend/../hi_modules/hi_modules.h:57,
                       from ../../../../../HISE/hi_backend/hi_backend.h:55,
                       from ../../Source/../JuceLibraryCode/JuceHeader.h:17,
                       from ../../Source/MainComponent.h:12,
                       from ../../Source/MainComponent.cpp:12:
      ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_dsp_library/node_api/helpers/node_macros.h:51:128: error: invalid use of ‘void’
         51 | #define DEF_PARAMETER(ParameterName, ClassName) if constexpr (P == (int)Parameters::ParameterName) static_cast<ClassName*>(obj)->set##ParameterName(value);
            |                                                                                                                                ^~
      ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_dsp_library/node_api/helpers/node_macros.h:51:128: note: in definition of macro ‘DEF_PARAMETER’
         51 | #define DEF_PARAMETER(ParameterName, ClassName) if constexpr (P == (int)Parameters::ParameterName) static_cast<ClassName*>(obj)->set##ParameterName(value);
            |                                                                                                                                ^~
      ../../../../../HISE/hi_backend/../hi_modules/../hi_scripting/../hi_sampler/../hi_components/../hi_dsp/../hi_dsp_library/node_api/helpers/node_macros.h:51:130: error: expected ‘)’ before ‘setIndex’
         51 | #define DEF_PARAMETER(ParameterName, ClassName) if constexpr (P == (int)Parameters::ParameterName) static_cast<ClassName*>(obj)->set##ParameterName(value);
      

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

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

        oops, try again, it should work now.

        d.healeyD 1 Reply Last reply Reply Quote 1
        • d.healeyD
          d.healey @Christoph Hart
          last edited by

          @Christoph-Hart Yep that fixed it.

          When the LFO is set to bipolar the intensity slider doesn't appear to do anything.

          HiseSnippet 1193.3oc4X0saiSDE1tId0ltvBKrBgPfjufK5J5VkvVJ+cQZaZRUDIMQ0YKHwEql5bRxnZOiY73.QHtfG.dG3IfmAdD3NtkKg612.3L1NISZyllZkFsqvWX44bNi824m47iaK3tPXHWXXVnyn.vv70rbFwjCpLfPYF0Oxv79VMIgRPXmP5vQAjvPnqgoYtiUDLKj2vv3W+ke9OKeHwivbgTRwWmwotPCpOUNkZ68+JpmWMRWnC0WS5c2utKmUg6wiP7jypnQ.w8BRe3DhRrMrLLuS0tTIW3HIRHDk4Pd2QNC3eOKQ9yngzy8.0hRFN3KJgrQkATutsGqqgF3Kp8TMOWhl+PqlztzIzmZAdyXF1S2gtMvbiEAoR2.HYpAo7IP5AVNtBZfbJGEdtmUcF5P5QPSsNTRj0v72spvQAXxc7IW.0D3hIaXq8JVbaa71i9xdQLWIkyr4rS3RnEaqGs4OtYgM+oMsuLqd8lKO0mQv87.wbYq7thEswsXQ9mChssGR7hfIBhp+r1z6rb1T2DsVSPNqNiJaE.oqqw85prUpmupGvH0rgO8z5GQjDkSIkFJW.HjTEbLOBFhQ0ItnBVGAgWH4AXb8U7eXjCuajGQNa3j5bSJCzdLiOT4nXgT4noGKdd4KGik+EaOJpYOtFscIg6CrZSktClOd2XN3EsZ213M8D6qaUsWOvUNEr4sp8MK734JGJ2MAJum0wd7yIdSMfXbChJH4H6Gjx1dBe6IBT5EkSEu9ikMmZvRmS0L2pJgU9aqbnq03629Jtlva9IxbKGhulr9uQBLsrZTqUpUCeZJvJc8.6PZ.2iHTGMqIfuKBXti4a+aG+OkUQH0Y5QSeMYHziK7SSmM4M0.5ieScJc.+.N1cfq91c74b4.Jq+rwcOb+FbdPUFAsBc0eIsGPBUETBAsn2+tbknPI2eLVhK16Hgf3rvleq0d6tCd06iT2+7J3smzZ0r1X0U+dikNfS4Tm38Tt2WxKAjf3IwSuBf3EVzJ2+OKZcJORhmSaRjB5OfYYNIx2AqJ3BHRXLvC+PVlanZCJYcQ053i3.qa7h+EuRYVRs1LkYowL0U26mnt2yxAKxEOSQrx9NwqsUmzsOFvxeWMw1sdIvVtR7y2QPXgA7vYdwNfOsCmor5SI9zPPE7epJRRmdENQLWVOubMTIm6dbHxHQbH4A97HlblPvbKseWOWzrsSpI+5rlclq.t9ZaN6Eo0SsWXLFcn9AdPU1PvCmMHFiuENLPORjmbL0YCraxY7fAbFclJnmB3Ax98AgN1mqBcfThCDqWj8TvCH5Qve39MvHOh.sSPFsE27wTmq+5csRfqs5zn8KUi6j1y96m14mBfmQDTBSNQOhUA6wsFFqBohbiZGCybzgDiU0nRCwIHSDNlXRyMXmN3n.LHd1XCysWzjBewkZGbk4UWi0UWMsJWXM4B+K8Np07l4dUwal8tNxdF80QmFqiugOwUvelaxOqREAd2XJndyh+ijErZpVaWxH9GXolbq3NEM7wplOy0UYheLlJZ964iyvddRF1ytYXOeRF1ydYXOeZF1ymsv8nZX4fHbRxjjSHg1USNXZNYVTybF+GDUFkjG
          

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

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

            Yes thats the idea...

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

              @Christoph-Hart Oh, well when it's set to unipolar, if I pull the intensity to 0 the pitch goes to the max

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

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

                Set it to bipolar, add a MIDI CC to the intensity modulation.

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

                  @Christoph-Hart That works, I understand why, but it works :) Now if I set the pitch modulator to unipolar and pull the CC down to 0 the pitch is left at + 1/2 of the set pitch value.

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

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

                    @d-healey said in Global pitch modulator problem:

                    Now if I set the pitch modulator to unipolar

                    Then don't :)

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

                      @Christoph-Hart lol but what if I want unidirectional pitch modulation? It's just occured to me also that it will require one simple gain per mic position to counteract the ducking, I might use a scriptFX instead.

                      And now I've realised the +6 simple gain would only work if I leave the gain mod intensity at its max of 1, but if I adjust this I'd have to figure out a new settings for the simple gain to counteract it. I don't think we've reached a perfect solution yet but it's very close.

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

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

                        @d-healey said in Global pitch modulator problem:

                        lol but what if I want unidirectional pitch modulation?

                        why?

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

                          @Christoph-Hart I don't have a particular use case, I'm just thinking to the future. I actually think this won't be an issue though because you can use a bipolar mod and adjust the table to get the same effect as unipolar with the centre position at 0.

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

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

                            I'm finding other problems with sharing the LFO with gain. Using the simple gain I can offset the gain when the intensity is 0, but as the intensity is increased I now get an undersirable gain boost from the LFO. Is there a way I could set the maximum upper gain?

                            I think the same issue is going to occur with xfade, I don't see a way to counteract this as there is no equivelant of the simple gain solution. A constant mod might be a solution if the value could be inverted, but I think we're getting into hacky territory again.

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

                            1 Reply Last reply Reply Quote 0
                            • C
                              crd
                              last edited by

                              @Christoph-Hart

                              This is change is working really well for me. I haven't tested it as thoroughly as I need but it seems to fix any issues I was having with the modulation system. Thank you. It feels like Christmas. But.... How do I change the amount of a global modulator going to a pitch modulation target?

                              Here is an example:
                              a global LFO Bipolar is being sent to Pitch, Filter Cutoff, and the gain of a sinewav generator. I can change the amount of modulation for the gain and the filter cutoff, but I can only change the amount of pitch being modulated in the pitch mod not the amount of modulation being sent to the pitch. The only way to change the amount of modulation being sent to pitch right now is to change the LFO intensity being sent to all three destinations.

                              I could work around this by just not sharing global LFO's between pitch and other modulators. In any case this last update makes the modulation system a million times more useful for my use case. Thank you!!!!!

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

                                After playing around with this some more I think the improvements made to pitch modulation from a global LFO are excellent!

                                The changes to gain, xfade, and the like, though are a step backwards. With the new system there are hacks required for non-pitch modulators as there were for pitch modulators with the old system. The simplest workaround now is to use separate LFOs for pitch but that again negates one of the purposes of the global LFO.

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

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

                                  So I went with the option of using separate mods for pitch and gain. Now my problem is that the bipolar and unipolar mods are inverted from one another.

                                  @Christoph-Hart Any suggestions? Currently I'm inverting the target pitch mod but I wondered if there is a way to get the origin to be in sync.

                                  Peek 2021-11-08 17-26.gif

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

                                  1 Reply Last reply Reply Quote 0
                                  • d.healeyD d.healey referenced this topic on
                                  • First post
                                    Last post

                                  52

                                  Online

                                  1.7k

                                  Users

                                  11.7k

                                  Topics

                                  102.1k

                                  Posts