HISE Logo Forum
    • Categories
    • Register
    • Login

    Creating external sends/parallel routing

    Scheduled Pinned Locked Moved General Questions
    15 Posts 5 Posters 591 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.
    • A
      alfaholic
      last edited by

      I am working on some kind of drum module, but I do want it to have 4 outputs, 1/2 as its main output, and 3/4 for send effects so it can be used with external FX.

      I have 6 samplers and I would like only some of them to send the signal parallel to 1/2 and 3/4, but I do not see any other option to route the signal externally with sends.

      d.healeyD LindonL 2 Replies Last reply Reply Quote 0
      • d.healeyD
        d.healey @alfaholic
        last edited by

        @alfaholic Sends are internal. You just want to send to different outputs and let the user assign them to different stuff in the DAW, right?

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

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

          @alfaholic said in Creating external sends/parallel routing:

          I am working on some kind of drum module, but I do want it to have 4 outputs, 1/2 as its main output, and 3/4 for send effects so it can be used with external FX.

          I have 6 samplers and I would like only some of them to send the signal parallel to 1/2 and 3/4, but I do not see any other option to route the signal externally with sends.

          Take a look at the Routing Matrix component

          HISE Development for hire.
          www.channelrobot.com

          1 Reply Last reply Reply Quote 0
          • A
            alfaholic @d.healey
            last edited by alfaholic

            @d-healey Well, sending each sampler to a different output is my last option, however not very elegant for what I am making.
            Each sampler contains a different drum family, Kicks, Snares, Cymbals, and so on.
            I want all samplers/drum families to go to outs 1/2 for dry signal, and only some of them to go parallel to 3/4 as well so the 3/4 could go to DAW's FX send.

            This way I can get only one stereo channel in the mixer of a DAW to play the complete drum kit, and only one Send to a reverb for a complete drum kit.
            For example kicks will not send signal to 3/4, cymbals as well, while snares and toms will.

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

              @alfaholic routing matrix is the way to go

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

              A 1 Reply Last reply Reply Quote 0
              • A
                alfaholic @d.healey
                last edited by alfaholic

                @d-healey Sorry but this has little sense to me.

                First, I can not get HISE to show more than 2 outputs in the plugin, both VST and AU in Reaper.

                Screenshot 2023-09-27 at 21.59.04.png

                Second, I am not sure if the signal goes up or down, it is probably set to go from top to bottom on the routing window while Samplers are located below the container, this is a bit confusing.

                Screenshot 2023-09-27 at 21.59.51.png

                Third, I am not able to connect all channels in routing matrix, but only one pair.

                Screenshot 2023-09-27 at 22.00.19.png

                And all this from an audio engineer. 😀

                ospfeigrpO 1 Reply Last reply Reply Quote 0
                • ospfeigrpO
                  ospfeigrp @alfaholic
                  last edited by ospfeigrp

                  @alfaholic As far as i know hise is set to use 16 channels in the routing matrix (or that was the case in the older versions) but you can actually extend it to as many as you need provided you modify some source hise files first to allow for more.

                  Unless things have changed and your using the prebuilt binary the setup may be different.

                  You need to use the plugin version i believe to get 16 otherwise it normally defaults to two in the standalone version.

                  you're also free to use a project i did similar to what you want to achieve here on github if it's of any addition to you:
                  https://github.com/eodowd/sonicdrums

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

                    Yes in the standalone version you will only ever see two outputs (might be more if your audio interface supports it, I don't know). In you compiled plugin you will see however many you have enabled.

                    I have a couple of videos on YouTube and Patreon about mic mixers, which cover some of the stuff you'll want to know.

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

                    A 1 Reply Last reply Reply Quote 0
                    • A
                      alfaholic @d.healey
                      last edited by

                      @d-healey

                      Thanks David, I just watched the video and this is all clear to me, however the problem is that a plugin version of HISE does not have more than 2 channels, my screenshots are made within Reaper.
                      I tested it in Logic as well and it shows only stereo plugin.

                      I understand HISE needs a script to show more outputs in standalone version, however my plugin shows only 2 channels, both VSTi and AU.

                      1 Reply Last reply Reply Quote 0
                      • A
                        alfaholic @ospfeigrp
                        last edited by

                        @ospfeigrp Thanks, it looks very nice. However it still shows only two channels in HISE plugin under Reaper:

                        Screenshot 2023-09-28 at 08.02.49.png

                        What about the kick?

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

                          @alfaholic You can compile HISE with 16 output channels by choosing the "Multichannel" configuration. In Xcode, open HISE.xcodeproject and under Product -> Scheme -> Edit Scheme select this build configuration:

                          5af3181c-81a4-4eb3-9ca6-70a31840bf69-image.png

                          I haven't tested it with the BACKEND_AS_FX flag though, so let me know if there are issues there.

                          A 1 Reply Last reply Reply Quote 1
                          • A
                            alfaholic @Christoph Hart
                            last edited by alfaholic

                            @Christoph-Hart Thanks, but when I open it in Xcode and go to Product / Scheme / Edit Scheme I just get a Mac OS PING sound,

                            But if I open it in Projucer first and then edit the scheme it compiles it, but again it is only stereo.

                            Is there a compiled multichannel plugin to download for us who do not speak Greek?

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

                              @alfaholic no if I would offer precompiled versions of all possible configurations, the build process would take years…

                              A 1 Reply Last reply Reply Quote 1
                              • A
                                alfaholic @Christoph Hart
                                last edited by alfaholic

                                @Christoph-Hart
                                If I change only the profile it creates the debug plugin which is also only stereo.

                                Screenshot 2023-09-28 at 10.47.20.png

                                But if I change the Run as well:

                                Screenshot 2023-09-28 at 10.48.46.png

                                The plugin shows as multichannel, however the DAW crashes every time I want to use the plugin.

                                A 1 Reply Last reply Reply Quote 0
                                • A
                                  alfaholic @alfaholic
                                  last edited by

                                  OK, I just succeeded making the multichannel plugin by changing the PROFILE and also the RUN from Debug to Multichannel Release and it crashes the DAW, Reaper and Logic.

                                  Here is the crash report:

                                  Thread 10 Crashed:: com.apple.audio.IOThread.client
                                  0 libsystem_platform.dylib 0x7ff80adcaacc _platform_memmove$VARIANT$Haswell + 268
                                  1 HISE 16 Out 0x15af5fda3 hise::MainController::processBlockCommon(juce::AudioBuffer&, juce::MidiBuffer&) + 3955
                                  2 HISE 16 Out 0x15ae295aa void juce::JuceVST3Component::processAudio(Steinberg::Vst::ProcessData&, juce::Array<float*, juce::DummyCriticalSection, 0>&) + 2538
                                  3 HISE 16 Out 0x15ae22b72 juce::JuceVST3Component::process(Steinberg::Vst::ProcessData&) + 530
                                  4 REAPER 0x10f92ed11 void VST_HostedPlugin::VST3_Process(float**, float**, int) + 2897
                                  5 REAPER 0x10f74eeb4 VST_HostedPlugin::ProcessSamples(int, double*, int, int, int, double, midi_List*, bool*, double, double, double, bool, bool, int) + 9172
                                  6 REAPER 0x10f761772 FxDsp::processFxDsp(int, double*, int, int, int, int, double, midi_List*, double, bool, double, double, double, double, int) + 2546
                                  7 REAPER 0x10f78e734 FxChain::ProcessChainDsp(FxDsp*, int&, int, int, double*, int, int, midi_List*, double, double, double, double, double, int, double, int, bool, bool, int&, int&, int) + 564
                                  8 REAPER 0x10f78d4a3 FxChain::ProcessChain(int, double*, int, int, int, int, double, midi_List*, double, bool, int) + 1491
                                  9 REAPER 0x10f4ad426 MediaTrack::RenderSamples_nocache(double, long long, double*, int, int, double, MediaTrack* const*, int, int*, bool, int, int, bool*, SyncSMP_Context*) + 27670
                                  10 REAPER 0x10f4a0096 MediaTrack::RenderSamples(double, long long, int, Track_RS_Output*, int, double, MediaTrack* const*, int, midi_List*, int, int, int, int, int, MediaTrack::Track_SendRec*, bool*, SyncSMP_Context*) + 1702
                                  11 REAPER 0x10f4aa063 MediaTrack::RenderSamples_nocache(double, long long, double*, int, int, double, MediaTrack* const*, int, int*, bool, int, int, bool*, SyncSMP_Context*) + 14419
                                  12 REAPER 0x10f529fa2 ProcessProject(ReaProject*, int, int) + 2626
                                  13 REAPER 0x10f528a2d audiostream_onsamples(double**, int, double**, int, int, int) + 4893
                                  14 REAPER 0x10f5a4f8e audioStreamer_CoreAudio::onsamples(AudioBufferList const*, AudioBufferList*) + 574
                                  15 REAPER 0x10f5a5a1f caIOproc(unsigned int, AudioTimeStamp const*, AudioBufferList const*, AudioTimeStamp const*, AudioBufferList*, AudioTimeStamp const*, void*) + 95
                                  16 CoreAudio 0x7ff80cf3950c HALC_ProxyIOContext::IOWorkLoop() + 7734
                                  17 CoreAudio 0x7ff80cf37041 invocation function for block in HALC_ProxyIOContext::HALC_ProxyIOContext(unsigned int, unsigned int) + 80
                                  18 CoreAudio 0x7ff80d0a693e HALB_IOThread::Entry(void*) + 72
                                  19 libsystem_pthread.dylib 0x7ff80ada01d3 _pthread_start + 125
                                  20 libsystem_pthread.dylib 0x7ff80ad9bbd3 thread_start + 15

                                  Then I manually changed the channel count in Reaper from 2 to 32 and the plugin loaded normally, which is usually not needed as Reaper does this automatically.

                                  Just to let others know if they have the same problem with compiling the multichannel plugin.

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

                                  39

                                  Online

                                  1.7k

                                  Users

                                  11.7k

                                  Topics

                                  102.0k

                                  Posts