HISE Logo Forum
    • Categories
    • Register
    • Login

    Multichannel Routing issue

    Scheduled Pinned Locked Moved Bug Reports
    25 Posts 5 Posters 4.9k 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.
    • staiffS
      staiff
      last edited by

      i tried the multichannel example and work fine.
      for 1 of my project i just increased the output to 8 stereo outputs and delete the "ok, error" functions (don't need it)

      if i'm right the first 2 images are sampler 1 and sampler 2 ?
      so the last is the global container ...

      i didn't do like you. I put Hise out 1 & 2 to both 1,2,3,4,5,6,7,8

      as is it in the example, if outputs are differents than 1/2 (3/4, 5/6, etc... ) and host has no multi out: all outputs goes by default to 1/2

      but your last pic show that only 1/2 are linked together, 2/4 same thing, etc ....

      my global:
      0_1520687179289_global.jpg
      my sampler 1:
      0_1520687207319_sampler 1.jpg
      my sampler2:
      0_1520687225089_sampler 2.jpg

      etc. ...

      Excuse me i'm French.

      Dan KorneffD 1 Reply Last reply Reply Quote 0
      • Dan KorneffD
        Dan Korneff @staiff
        last edited by

        @staiff your above example is in the standalone version. That routing appears to work. I'm using the multichannel plugin version.

        Dan Korneff - Producer / Mixer / Audio Nerd

        1 Reply Last reply Reply Quote 0
        • Dan KorneffD
          Dan Korneff @Christoph Hart
          last edited by

          @christoph-hart thanks for the info! Currently researching debugging.
          On another note, did you try the test I recreated on your rig?

          • Make new project
          • add 2 samplers
          • route one to 1+2 master chain , and the other to 3+4 master chain
          • in master container, set number of channels to 4
          • route container master chains 1-4 to HISE out 1-4

          In HISE it functions as expected. Once it's exported to VST, both samplers play out of 1-2

          Dan Korneff - Producer / Mixer / Audio Nerd

          1 Reply Last reply Reply Quote 0
          • Dan KorneffD
            Dan Korneff
            last edited by

            @Christoph-Hart Here's what I got in the output window of Visual Studio:

            Loading embedded instrument data
            Loading embedded image data
            Loading embedded impulse responses
            Loading embedded other data
            Creating Frontend Processor
            Initialising MainController
            Checking license
            Load images
            Restoring main container
            Compiling all scripts
            Adding plugin parameters
            Restoring global settings
            Samples are validated. Skipping reference check
            Loading samples
            Initialising VST: BACK TO SCHOOL_Debug_x64 (0.1.0.0)
            The thread 0x36e8 has exited with code 0 (0x0).
            The thread 0x3508 has exited with code 0 (0x0).
            The thread 0x32d4 has exited with code 0 (0x0).
            The thread 0x2c78 has exited with code 0 (0x0).
            The thread 0x1048 has exited with code 0 (0x0).
            

            And then the JUCE VST plugin host crashes.

            Dan Korneff - Producer / Mixer / Audio Nerd

            1 Reply Last reply Reply Quote 0
            • Dan KorneffD
              Dan Korneff
              last edited by

              I also forgot to mention that when I compile the plugin, I get an error:

              c:\users\studio a\desktop\hise-master 3-7-18\hi_core\hi_core\MainController.cpp(268): warning C4101: 'errorMessage': un
              referenced local variable (compiling source file ..\..\JuceLibraryCode\include_hi_core.cpp) [F:\BACK TO SCHOOL VST\Bina
              ries\Builds\VisualStudio2017\BACK TO SCHOOL_SharedCode.vcxproj]
              c:\users\studio a\desktop\hise-master 3-7-18\hi_modules\effects/fx/Analyser.cpp(411): warning C4244: 'argument': conver
              sion from 'float' to 'int', possible loss of data (compiling source file ..\..\JuceLibraryCode\include_hi_modules.cpp)
              [F:\BACK TO SCHOOL VST\Binaries\Builds\VisualStudio2017\BACK TO SCHOOL_SharedCode.vcxproj]

              Dan Korneff - Producer / Mixer / Audio Nerd

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

                the pictures shown is inside the HISE standalone, yes.

                but compiled this as VST is the same thing.
                so tomorrow i will show you the result as VST.

                But maybe you will work with the standalone HISE, instead of vst one to create. VST one is for me for creating a player and load libraries in it. but maybe i'm wrong.
                but maybe my standalone HISE and compiled VST works ... maybe ...

                see it tommorrow ( French time clock). tonight is for my family.

                Christoph example works. my project (and pictures above) works. it's just to help you.

                for finish: don't matter yellow lines in compiling. No matter. RED lines are another story. 100 % of time a wrong project/settings.

                try standalone HISE instead of VST; because first you don't have to open DAW or something else to work. Just HISE.

                Quicker, simplier. Never worked with other thing than standalone one.

                "On another note, did you try the test I recreated on your rig?

                Make new project
                add 2 samplers
                route one to 1+2 master chain , and the other to 3+4 master chain
                in master container, set number of channels to 4
                route container master chains 1-4 to HISE out 1-4
                In HISE it functions as expected. Once it's exported to VST, both samplers play out of 1-2"

                what daw do you use ?
                i use a lot of daws (reaper, bitwig, sonar, live and studio one)
                but i prfer studio one (for multichannels) it's easy to know if it works or not.

                tomorrow i will make a tuto to show this (HISE standalone, compiling, testing in S1) to see what wrong in your case

                Excuse me i'm French.

                Dan KorneffD 1 Reply Last reply Reply Quote 0
                • Dan KorneffD
                  Dan Korneff @staiff
                  last edited by

                  @staiff Thanks for checking it out. AFAIK the HISE plugin is the only multichannel version available. I can't create VSTi's that have multiple outputs on the standalone version.

                  what daw do you use ?
                  i use a lot of daws (reaper, bitwig, sonar, live and studio one)
                  but i prfer studio one (for multichannels) it's easy to know if it works or not.
                  

                  I'm using Cubase and Reaper over here.

                  try standalone HISE instead of VST; because first you don't have to open DAW or something else to work. Just HISE.
                  

                  I'd love to! @Christoph-Hart Hurry up and get multichannel in standalone HISE ;)

                  Dan Korneff - Producer / Mixer / Audio Nerd

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

                    the pics i put above is made with standalone. so it's possible via standalone. Think it's possible to test it in reaper, but honesty i just use reaper to test the plugin because if reaper reject it, your plugin never works ! Reaper is powerful for that: a best tester for plugin stability. but for puting FX in bus, testing multichannel i really don't know how ... for me studio One is easier .... but because i use a lot S1 for composing.

                    maybe have no time tomorrow ( but will have the time). in the worse case i'll make it Monday morning. As you live in NY, i will make tuto when you sleep and will be available at your wake up, for coffee + tuto ;)

                    For info i actually working on a drum rompler (Simmons) with multi sampler (as seen on pics) separates kick, snare, hat, etc. ... and multi-out for each samplers.

                    all in HISE SA. speedy compiled in VST 64 windows tonight and it works.

                    Excuse me i'm French.

                    Dan KorneffD 2 Replies Last reply Reply Quote 1
                    • Dan KorneffD
                      Dan Korneff @staiff
                      last edited by

                      @staiff said in Multichannel Routing issue:

                      the pics i put above is made with standalone. so it's possible via standalone.

                      I think maybe there's miscommunication on the term "multichannel"? The standalone version doesn't allow more than 2 physical outputs from HISE in your main container.
                      Am I not understanding that correctly?
                      And HISE multichannel (only available in plugin format) allows up to 16 physical output in the main container.

                      I can't wait to check out the VST you're designing! Sounds awesome

                      Dan Korneff - Producer / Mixer / Audio Nerd

                      1 Reply Last reply Reply Quote 0
                      • Dan KorneffD
                        Dan Korneff @staiff
                        last edited by

                        @staiff said in Multichannel Routing issue:

                        separates kick, snare, hat, etc. ... and multi-out for each samplers.

                        I think that's the difference. I'm not using multiple outputs from each sampler, I'm using physical outputs from HISE.

                        Dan Korneff - Producer / Mixer / Audio Nerd

                        1 Reply Last reply Reply Quote 0
                        • Dan KorneffD
                          Dan Korneff
                          last edited by

                          I'm circling the wagons around the issue causing my plugin to fail. It has something to do with:

                          • amount of samplers in a container
                          • multiple samples with different velocity ranges in a single sampler

                          Almost figured it out

                          Dan Korneff - Producer / Mixer / Audio Nerd

                          1 Reply Last reply Reply Quote 0
                          • Dan KorneffD
                            Dan Korneff
                            last edited by

                            @Christoph-Hart I think I got it. I can't have more than 1 midi note occupied with RR samples in a single sampler. The second that I have 2 RR instruments in the same sampler, I get a crash.

                            alt text

                            Dan Korneff - Producer / Mixer / Audio Nerd

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

                              That is weird. Can you send me the patch and the samples so I can try to reproduce it?

                              1 Reply Last reply Reply Quote 0
                              • Dan KorneffD
                                Dan Korneff
                                last edited by

                                unfortunately, It's not the only cure... still having issues which might be container related.
                                Sending you the patch now

                                Dan Korneff - Producer / Mixer / Audio Nerd

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

                                  @dustbro said in Multichannel Routing issue:

                                  I think maybe there's miscommunication on the term "multichannel"? The standalone version doesn't allow more than 2 physical outputs from HISE in your main container.
                                  Am I not understanding that correctly?
                                  And HISE multichannel (only available in plugin format) allows up to 16 physical output in the main container.
                                  I can't wait to check out the VST you're designing! Sounds awesome

                                  oooooooooooooookaaaaaaaaaaaaaaaayyyyyyyyyyyyyyyyyyy ! :D
                                  miscommunication for sure !

                                  as Christoph already said =
                                  HISE Standalone (and maybe VST, i don't know, i'm not using it) has only 2 ouputs (1+2) !

                                  So when i create multi out project in Hise, of course i only have a single stereo output !
                                  i must compile it (as VST or Standalone or else) for testing the multi-out.

                                  during the Hise process you can't really test it. But as i know the Christoph's code/example works well i create without doubt in HISE.
                                  after that when compiling it and test it as WIN VSTi 64bits and put it in Studio One plugin = i have multi output !

                                  That's why Christoph put in the example the "ok, error" part of code = just to show you that when you don't have multi outputs (like in HISE) = it says "error" and put all multi out in the single 1+2 (stereo main) outputs ! :D

                                  alaways need a video tuto now ? ;)

                                  Excuse me i'm French.

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

                                    tuto here:
                                    https://drive.google.com/open?id=1aRP3aDFHTEybOb_U20-QrkZnzw2kPU4X
                                    ;)

                                    Excuse me i'm French.

                                    chrisC 1 Reply Last reply Reply Quote 3
                                    • Dan KorneffD
                                      Dan Korneff
                                      last edited by Dan Korneff

                                      @Christoph-Hart After testing, it appears random what compiles properly and what doesn't. The only consistent thing is compiling any project containing more than one sampler is like rolling the dice.
                                      Could this be an issue with Visual Studio 2017?? or something else...
                                      I should also add that this is for compiling VST. Sandalone works properly.

                                      Dan Korneff - Producer / Mixer / Audio Nerd

                                      1 Reply Last reply Reply Quote 0
                                      • Dan KorneffD
                                        Dan Korneff
                                        last edited by Dan Korneff

                                        @Christoph-Hart I've been tinkering with this all morning. I can isolate the problem 100% to the audio files. I compiled a VST of my project, moved it to another computer (without the samples) and it loaded fine! The second that I locate the sample folder in the plug, it crashes all hosts. if I remove the sample folder, it opens fine again. I've gone thru each of the sample audio files, and I can't find anything wrong with them.

                                        Dan Korneff - Producer / Mixer / Audio Nerd

                                        1 Reply Last reply Reply Quote 0
                                        • Dan KorneffD
                                          Dan Korneff @Christoph Hart
                                          last edited by Dan Korneff

                                          Debugging in Visual Studio. I'm getting somewhere I think.
                                          PluginHost throws an exception on jassertfalse;

                                          #ifndef MODULATORSAMPLER_H_INCLUDED
                                          #define MODULATORSAMPLER_H_INCLUDED
                                          
                                          namespace hise { using namespace juce;
                                          
                                          class SampleEditHandler;
                                          
                                          /** The main sampler class.
                                          *	@ingroup sampler
                                          *
                                          *	A ModulatorSampler is a synthesiser which allows playback of samples.
                                          *
                                          *	Features:
                                          *
                                          *	- Disk Streaming with fast MemoryMappedFile reading
                                          *	- Looping with crossfades & sample start modulation
                                          *	- Round-Robin groups
                                          *	- Resampling (using linear interpolation for now, but can be extended to a complexer algorithm)
                                          *	- Application-wide sample pool with reference counting to ensure minimal memory usage.
                                          *	- Different playback modes (pitch tracking / one shot, etc.)
                                          *
                                          *	Current limitations:
                                          *
                                          *	- supported file format is stereo wave.
                                          */
                                          class ModulatorSampler: public ModulatorSynth,
                                          						public ExternalFileProcessor,
                                          						public LookupTableProcessor
                                          {
                                          public:
                                          
                                          	/** A small helper tool that iterates over the sound array in a thread-safe way.
                                          	*
                                          	*/
                                          	class SoundIterator
                                          	{
                                          	public:
                                          
                                          		using SharedPointer = ReferenceCountedObjectPtr<ModulatorSamplerSound>;
                                          
                                          		/** This iterates over all sounds and locks the sound lock if desired. */
                                          		SoundIterator(ModulatorSampler* s_, bool lock_=true):
                                          			s(s_),
                                          			lock(lock_)
                                          		{
                                          			if (s->getNumSounds() == 0)
                                          			{
                                          				lock = false;
                                          			}
                                          			else
                                          			{
                                          				if (lock)
                                          				{
                                          					lock = s->getMainController()->getSampleManager().getSamplerSoundLock().tryEnter();
                                          
                                          					if (!lock)
                                          						jassertfalse;
                                          
                                          					//s->getMainController()->getSampleManager().getSamplerSoundLock().enter();
                                          				}
                                          					
                                          			}
                                          		}
                                          

                                          Once I skip past that breakpoint, the debug version of the plugin loads

                                          Dan Korneff - Producer / Mixer / Audio Nerd

                                          1 Reply Last reply Reply Quote 0
                                          • chrisC
                                            chris @staiff
                                            last edited by

                                            @staiff

                                            thanks for they nice Video staiff.

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

                                            17

                                            Online

                                            1.7k

                                            Users

                                            11.8k

                                            Topics

                                            102.4k

                                            Posts