HISE Logo Forum
    • Categories
    • Register
    • Login

    Routing Matrix existential questioning and suggestions...

    Scheduled Pinned Locked Moved General Questions
    15 Posts 3 Posters 383 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

      The routing matrix effect does seem strangely limited - I mean it only has one job and it's not very useful for it :) You need to stack them as you suggest.

      Depending on what you're doing you might also be able to use send effects.

      Or possibly you could use a container's matrix:

      393d0492-c9f9-49e3-8d86-61073668dda7-image.png

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

      ustkU 1 Reply Last reply Reply Quote 0
      • ustkU
        ustk @d.healey
        last edited by ustk

        @d-healey said in Routing Matrix existential questioning and suggestions...:

        container's matrix

        watizzat & hoyoudozzat ???

        Are you able to make all these connections by changing the number of outputs of Hise?
        Because I can't, it's only stereo direct + stereo send, not multi connections as you did...

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

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

          @ustk You change the number of connections between the matrix and whatever it's connected to. In my case it's just a container and the main project container. But it could be a sampler and a container, or a container and another container. The final container (HISE output) can still go down to stereo.

          c68f59e9-8fc0-4828-a662-031376f1a351-image.png

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

          ustkU 1 Reply Last reply Reply Quote 0
          • ustkU
            ustk @d.healey
            last edited by

            @d-healey Oh I see now, I was hundred miles away... Nice, but in my case (FX plugin) I am not sure it applies since the connections have to be made in between the FX modules...

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

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

              @ustk Could you use a send container/send effects?

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

              ustkU 1 Reply Last reply Reply Quote 0
              • ustkU
                ustk @d.healey
                last edited by

                @d-healey Yeah I just tried and it might work, but since this is more convoluted than stacking routing matrices I'll stick with the first solution, or write my own router maybe...

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

                DanHD 1 Reply Last reply Reply Quote 0
                • DanHD
                  DanH @ustk
                  last edited by

                  @ustk I'm currently designing a routing system using Script FX and Global Sends / Receives to make the connections

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

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

                    @DanH Oh nice!
                    I just tested very quickly and noticed a latency when using the container + send thing, which is normal since sending back to a point always happens a cycle later.
                    In my case I am refactoring the routing of my plugin exactly because of a latency issue (so comb filtering) between the different FXs, so this would make it just worse.

                    Ideally I need to make my own latency finder per channel throughout the entire project, that would leverage the need for exporting and codesigning after each modification because my preferred DAW for this is ProTools 😬
                    But I don't know if I can write such a thing since I need script an emitter first in the chain and a recorder at the end, both synced to the sample...

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

                    DanHD 1 Reply Last reply Reply Quote 0
                    • DanHD
                      DanH @ustk
                      last edited by

                      @ustk what's the 'container plus send thing' exactly? Worried about latency now! 😆

                      Currently I have an fx module with a script fx after which takes that signal and sends it to the next chosen fx destination

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

                      ustkU 2 Replies Last reply Reply Quote 0
                      • ustkU
                        ustk @DanH
                        last edited by

                        @DanH The fact they are both called send is confusing...

                        Screenshot 2025-02-27 at 20.48.15.png

                        Screenshot 2025-02-27 at 20.51.01.png

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

                        DanHD 1 Reply Last reply Reply Quote 0
                        • DanHD
                          DanH @ustk
                          last edited by

                          @ustk Thanks. I'm not using either of those. I'll make a snippet tomorrow

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

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

                            @DanH Two things are to be considered with latency:

                            1. when a signal is sent back in the chain (modules or within networks), it needs to be "memorised" by the system so it usually happens 1 buffer later. That's because you cannot send a signal anywhere before reading its buffer. So up the chain, where it is sent to, it arrives at best when the next buffer is read. This is the case in the module tree and in any DSP (even when considering a frame processing but it would be a 1 sample delay). But you can compensate for that by, I imagine, branching the main signal and delay it by a buffer length. I'm not in that case but that'll probably where I start.

                            2. when treating signals in parallel, like for instance a direct signal and a DSPed one, the second might introduce latency (delay) as well that depends on the processing type/complexity. So when they are recombined, they are not in phase anymore. Here delaying the direct branch by the same amount would resync the two signals, but introduce an overall latency that needs to be reported.

                            There are other cases like non-linear filters but since this is more frequency dependent, it's more complicated...

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

                            DanHD 1 Reply Last reply Reply Quote 0
                            • DanHD
                              DanH @ustk
                              last edited by

                              @ustk Thanks, that's well explained. In my case I am not re-combining any signals. But there could be some delay generated based on your explanation. Would this kind of delay be auto compensated for by a DAW?

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

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

                                @DanH Once you get the overall latency created by your plugin, you need to report it to the DAW. It is the DAW job to compensate, but it is your job to report with Engine.setLatencySamples()

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

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

                                52

                                Online

                                1.7k

                                Users

                                11.7k

                                Topics

                                102.1k

                                Posts