HISE Logo Forum
    • Categories
    • Register
    • Login

    Roadmap to HISE 5

    Scheduled Pinned Locked Moved General Questions
    114 Posts 16 Posters 2.6k 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 @Lindon
      last edited by

      @Lindon maybe I should go away and state this problem clearly - there may be another solution...

      HISE Development for hire.
      www.channelrobot.com

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

        @Lindon The note generation must happen one level below the global modulator container. You have to make sure that every voice that receives the global envelope data is started by the same event ID as this is the most robust way of assigning voice indexes.

        So if you have this setup:

        master chain
           global modulator container
              AHDSR
           sine generator
              Arpeggiator
              GlobalEnvelope / MatrixModulator
        

        it will not work because the arpeggiator will produce new events where the global modulator has no idea how to assign that to voices. But if you either move the global container and the sine wave into a new container or move the arpeggiator to the root level it should work correctly.

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

          @Christoph-Hart yeah but sadly no _ want the arp to be shared(able) between voices...see my post:

          Link Preview Image
          Global Envelopes - The "filtered" voices problem.

          So I have a problem with Global envelopes...I'd really like to use them, but..in a multi-voice system they are problematic....here's why (perhaps someone kno...

          favicon

          Forum (forum.hise.audio)

          HISE Development for hire.
          www.channelrobot.com

          1 Reply Last reply Reply Quote 0
          • OrvillainO
            Orvillain
            last edited by

            I'm getting a crash when using .setEffect() on a hardcoded polyphonic fx module. I'm doing something like this:

                            modeData["polyRMSlot"] = Synth.getSlotFX(modePath + "_polyRM");
                            modeData["polyRMSlot"].setEffect("polyRingMod");
            

            This is in the context of a loop, and modePath is the prefix of the name string.

            But interestingly, the crash only happens whenever I call Builder.clear()

            IE: On the first run, it doesn't crash. But if I try to rebuild the module tree, then it crashes.

            Going to try to reproduce this in a new project.

            OrvillainO Christoph HartC 2 Replies Last reply Reply Quote 0
            • OrvillainO
              Orvillain @Orvillain
              last edited by Orvillain

              @Orvillain @Christoph-Hart

              Right, I've confirmed this. Here is a demo project. Created on Windows. Not sure if you need to recompile the networks or not.

              Link Preview Image
              BuilderClearTest.zip

              Shared with Dropbox

              favicon

              Dropbox (www.dropbox.com)

              If you load this, the first time all will be fine. If you then press F5 to recompile the project, it will crash. If you remove the call to setEffect() then it doesn't crash.

              d7678da2-c938-40e4-83c4-fecfdfcb6e26-image.png

              I get a read access violation on:

              if(auto pitchChain = dynamic_cast<ModulatorChain*>(getParentProcessor(true)->getChildProcessor(ModulatorSynth::InternalChains::PitchModulation)))
              

              Details:

              Exception thrown: read access violation.
              hise::Processor::getParentProcessor**(...) returned nullptr.
              

              In this function:

              void HardcodedPolyphonicFX::connectToRuntimeTargets(scriptnode::OpaqueNode& on, bool shouldAdd)
              

              Hopefully that helps resolve the crash!

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

                Hopefully that helps resolve the crash!

                Nice one, it should be fixed now. I mean the builder docs says that you have to expect crashes but this is in fact a reproducable one :)

                IPP

                I made another attempt at this subject:

                • IPP on macOS and Linux is completely gonzo. You can use FFTW on Linux and VDSP on macOS (and ARM doesn't even support IPP so that was not very useful anyways).
                • The USE_IPP flag is now an internal flag and must not be set explicitely in any setting (in fact it will deliberately fail the compilation if it detects it being set from the outside). There are now only two things that determine whether IPP is used (on Windows only):
                1. In order to compile HISE with IPP support, the projucer setting Exporters -> VS2022 -> Use IPP (One API) must be set to "Static Library". This is the default now so people who want to build HISE without IPP on Windows must turn this off explicitely (readme is updated to reflect this).
                2. In order to compile your project with IPP, you must have compiled HISE with IPP following step 1 and then set the HISE setting Compiler Settings -> UseIpp to true. If you set this to true without HISE being compiled with IPP, it will throw an error (this is not really required but I think anything that boils down the ridiculous amount of scenarios is a good thing here). If the HISE setting UseIpp is true, it will automatically set the OneAPI setting in the autogenerated project file and subsequently set the internally used USE_IPP flag for the project compilation.
                d.healeyD OrvillainO 3 Replies Last reply Reply Quote 1
                • d.healeyD
                  d.healey @Christoph Hart
                  last edited by d.healey

                  @Christoph-Hart said in Roadmap to HISE 5:

                  IPP on macOS and Linux

                  Why not on Linux? It works well here. FFTW is only suitable for GPL projects.

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

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

                    @d-healey Is there a single non GPL project on Linux?

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

                      @Christoph-Hart

                      Thanks for the fix! I'll check it, but I'm seeing this now:

                      03876c5b-3884-428e-b9a1-9a70538b0c40-image.png

                      Is that meant to be a comment, or a jassert or something???

                      Oh wait, I think I get you now. I need to remove use_ipp..... brb....

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

                        @Orvillain nope that's expected. If you hit this thing, it means that you have somewhere defined USE_IPP to a value which causes all the weird stuff you're experiencing. Check all preprocessor definitions

                        OrvillainO 1 Reply Last reply Reply Quote 1
                        • OrvillainO
                          Orvillain @Christoph Hart
                          last edited by Orvillain

                          @Christoph-Hart Yeppers! I just misread your previous post. Doh.

                          Compiling now. Will let you know about the crash fix.

                          BTW - I love the Builder! I don't know how many people are using it, but for doing repeated patterns in the module tree, it is a life saver!

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

                            @Christoph-Hart said in Roadmap to HISE 5:

                            Is there a single non GPL project on Linux?

                            Not sure, but if you remove IPP from Linux you guarantee that fewer developers will make their plugins Linux compatible.

                            Although I don't use proprietary plugins myself I know a lot of Linux users are crying out for more developers of proprietary plugins to support Linux.

                            HISE makes it really easy to support Linux so unless there is some good reason to remove IPP I think it's worth keeping.

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

                            1 Reply Last reply Reply Quote 2
                            • OrvillainO
                              Orvillain @Christoph Hart
                              last edited by

                              @Christoph-Hart said in Roadmap to HISE 5:

                              Nice one, it should be fixed now. I mean the builder docs says that you have to expect crashes but this is in fact a reproducable one :)

                              Right, yep !! This looks fixed.

                              If you want another crash to investigate, if you have the hardcoded fx window open at the time you recompile, it will crash. I'm guessing there's some GUI code somewhere that gets a bad pointer.

                              1 Reply Last reply Reply Quote 0
                              • ustkU
                                ustk @clevername27
                                last edited by ustk

                                @clevername27 said in Roadmap to HISE 5:

                                @Christoph-Hart Meanwhile, I was fired by all three clients because of HISE bugs and secret ScriptNode documentation. sigh

                                Same... I have one that is crashing some customer hosts and I can't seems to find why. simple stuff, no modulation inside, just scriptnode, faust and third party C++. Hopefully this will be fixed one day, but without a proper investigation chances are very thin...

                                Don't want to troll the thread that been said! But might worth to speak about that again during the meetup ☺

                                Can't help pressing F5 in the forum...

                                Christoph HartC OrvillainO clevername27C 3 Replies Last reply Reply Quote 1
                                • Christoph HartC
                                  Christoph Hart @ustk
                                  last edited by Christoph Hart

                                  @ustk Have you tried this:

                                  Link Preview Image
                                  HISE | Glossary | Crash reporting

                                  Ensure that you get meaningful crash reports

                                  favicon

                                  (docs.hise.audio)

                                  ustkU 1 Reply Last reply Reply Quote 0
                                  • OrvillainO
                                    Orvillain @ustk
                                    last edited by

                                    @ustk said in Roadmap to HISE 5:

                                    @clevername27 said in Roadmap to HISE 5:

                                    @Christoph-Hart Meanwhile, I was fired by all three clients because of HISE bugs and secret ScriptNode documentation. sigh

                                    Same... I have one that is crashing some customer hosts and I can't seems to find why. simple stuff, no modulation inside, just scriptnode, faust and third party C++. Hopefully this will be fixed one day, but without a proper investigation chances are very thin...

                                    Don't want to troll the thread that been said! But might worth to speak about that again during the meetup ☺

                                    Don't want you to try to teach you to suck eggs, but have you gotten a project from the user that reliably shows the crash, and slapped a debugger on the host process to find out what is going on?

                                    1 Reply Last reply Reply Quote 0
                                    • ustkU
                                      ustk @Christoph Hart
                                      last edited by

                                      @Christoph-Hart @Orvillain Yeah I did read and pasted here the crash report. Unfortunately I can't reproduce the issue so I can't slap a debugger. Will try more...

                                      Unfortunately when I publish a new version the users need to resync their full library in LogicPro in order to get the plugin to update to the new version, so I can't ask them to do it 10x per day...
                                      This is another issue, as I don't think people have to do this each time they update a single plugin (and one of the customers has more than 1000 plugins...). It's like no matter what you do with the version number, Logic doesn't take it as a new version. But I'm no Logic user so, who knows...

                                      Can't help pressing F5 in the forum...

                                      OrvillainO 1 Reply Last reply Reply Quote 0
                                      • OrvillainO
                                        Orvillain @ustk
                                        last edited by Orvillain

                                        @ustk

                                        If you can't reproduce the issue, checkout what platform they're on, and make sure their CPU supports all of the instruction sets required. If they're on a really really old machine that doesn't support the relevant SSE and AVX instructions that HISE and JUCE are using (no, I don't know what they are!!) then it's entirely possible that the issue isn't a bug.

                                        Also get all the information about the audio interface, sample-rate, buffer size, etc.

                                        Oh, and Logic is a real butthole when it comes to refreshing or clearing the AUCache - a lot of the time I've had to walk people through doing it manually.

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

                                          Seeing this on Linux when compiling HISE, I don't have USE_IPP in the exporter and it doesn't appear in the makefile.

                                          Still would like IPP restoring on Linux as there is no fallback like on MacOS.

                                          125 | #error "this should not be defined before this so if this error appears, remove USE_IPP from your preprocessor definitions...

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

                                          d.healeyD 1 Reply Last reply Reply Quote 0
                                          • clevername27C
                                            clevername27 @ustk
                                            last edited by

                                            @ustk Thanks for the solidarity. It's not trolling…I think it's a valid reaction, and suspect I'm far from the only one. And it's the kind of thing no one thinks will happen to them…until it does. @Christoph-Hart wrote right on the website's front page not to expect fixes, so it's not like he dropped the ball. But we can still be frustrated about it. When it works, HISE is great. But you know the saying…it's only free if you don't value your time.

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

                                            20

                                            Online

                                            1.8k

                                            Users

                                            12.1k

                                            Topics

                                            105.5k

                                            Posts