HISE Logo Forum
    • Categories
    • Register
    • Login

    Expansion Tutorial

    Scheduled Pinned Locked Moved Blog Entries
    133 Posts 16 Posters 11.3k 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 @d.healey
      last edited by

      @d-healey - I'm not really worried about the presets its the sounds I'm concerned about - a picture may help: this is the "sound browser":

      a89e3a48-b79d-460c-b029-c730edb46b0d-image.png

      So you can see there are 4 voices:

      • and a list of expansions (and the "Factory" - so sounds shipped with the base product)

      I want to be able to select Voice 1, and then load the sample map called Bassica from the Factory sample maps, and it loads and stays there in voice 1.

      Then select Voice 2 and choose to the Substrate expansion from the list on the left, then select a sample map called "BigBadBass" (which is shipped with the Substrate expansion only) and it loads into Voice 2 and stays there.

      I now want to be able to play these sounds AT THE SAME TIME - voice 1 and voice 2

      I can do all the displaying of names and sample maps no problem, but I'm not sure I can use sample maps from different expansions at the same time...

      HISE Development for hire.
      www.channelrobot.com

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

        @Lindon I don't think that's possible. Switching expansions is like loading a different HISE plugin so you only get access to what's in that expansion. We'd need some kind of sub-expansion system for that.

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

        LindonL 1 Reply Last reply Reply Quote 0
        • LindonL
          Lindon @d.healey
          last edited by

          @d-healey damn damn damn damn damn damn.....

          ~@Christoph-Hart !!!! Help!!!

          HISE Development for hire.
          www.channelrobot.com

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

            It might be possible to hack it with the file system API. When the user switches expansion you get the name of the expasion they want, then they select the sounds, which will give you the name of the sounds, and then you load the sample map manually using the File System API. I have no idea if it will work but might be a route to investigate.

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

            LindonL 1 Reply Last reply Reply Quote 0
            • LindonL
              Lindon @d.healey
              last edited by

              @d-healey - yeah I was sorta thinking along the same lines - can I not

              Sampler1.asSampler.loadSampleMap()

              where might be:

              Bassica -- which loads the sample map from the factory shipped set
              {EXP::Substrate}BigBadBass -- which would load a sample map from the expansion...

              • I guess (before I go see if this is possible even) I wanted to check to see if anyone has done this and it works/doesnt work...

              HISE Development for hire.
              www.channelrobot.com

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

                @Lindon I think you're in new territory, let us know if it works :)

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

                LindonL 1 Reply Last reply Reply Quote 0
                • LindonL
                  Lindon @d.healey
                  last edited by

                  @d-healey well currently I cant get any of the expansion commands to work at all:

                  from your video I have

                  HISE_ENABLE_EXPANSIONS=1
                  HI_ENABLE_EXPANSION_EDITING=1

                  but in hi_core

                  there is no HISE_ENABLE_EXPANSIONS

                  so I cant set that, there is however:

                  HISE_USE_CUSTOM_EXPANSION_TYPE

                  -- worryingly for my project the tutorials from Christoph seem to work oK...

                  HISE Development for hire.
                  www.channelrobot.com

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

                    @Lindon Those flags are no longer required. Christoph added a new option in the project preferences that he forgot to tell anyone about until last month :p

                    Set it to FilesOnly - nobody knows what the other choices do.
                    2214abce-f4de-4890-89fb-45cc8959c264-image.png

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

                    LindonL 1 Reply Last reply Reply Quote 0
                    • LindonL
                      Lindon @d.healey
                      last edited by

                      @d-healey Ok cool thanks..

                      HISE Development for hire.
                      www.channelrobot.com

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

                        Success!!!

                        • Yep all you need do is refer to the sample map in the expansion and it will load - even if other samplers in your project are loaded with sample maps from somewhere else...

                        Cool.

                        Forwards!!!

                        HISE Development for hire.
                        www.channelrobot.com

                        ustkU 1 Reply Last reply Reply Quote 5
                        • Y
                          yall
                          last edited by

                          Hello. So I just created 8 expansion which each has about 80 sample maps. I have been working on this project for over a year. so i have about 700 hr1 sample. when switching to the extension, I had to modify the preset files manually (right click, notepad ....) so that each preset correspond to its successful sample map.mission. however I have a few small bugs sometimes. when i load a preset, it will release a sample map which has nothing to do with the preset. I just have to load 2 3 different presets and everything goes back to normal. do you think there may be conflicts somewhere? moreover, since the last scriptnode verison, the next / prev buttons of the presets cause hise to crash.

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

                            @Lindon said in Expansion Tutorial:

                            Success!!!

                            • Yep all you need do is refer to the sample map in the expansion and it will load - even if other samplers in your project are loaded with sample maps from somewhere else...

                            Cool.

                            Forwards!!!

                            I'm exploring this too. So when you say "refer to the sample map in the expansion", do you mean you use the file system API to get them?
                            I have a similar use case to the one you explained above. I just need to provide new samples/samplemaps/presets and use them at the same time as the factory ones.

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

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

                              It's just a different "wildcard" in the reference. So for factory content you use {PROJECT_FOLDER}MySampleMap, and for a sample map in the expansion you just load {EXP::MyExpansion}MySampleMap and the system will detect magically that this is a samplemap from the expansion MyExpansion and search its content for the samplemap. You can load multiple assets from different expansions at the same time as well as mix it with factory content.

                              What might be a little bit confusing is that there is an additional concept of an "active" expansion. That means as soon as you load a user preset from an expansion (or call ExpansionHandler.setCurrentExpansion() manually), the expansion system will set this expansion to be "active" and there can only be one "active" expansion at the same time. This doesn't have any impact on the availability of the content of other expansions, it just gives you the option to do certain stuff like swapping the background image depending on the current expansion.

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

                                @Christoph-Hart Oh that's much clearer, especially about the active expansion thing, I thought it was much more intrusive but it's in fact just a state info.
                                So I imagine importSamples() works with expansions too? Like importing an expansion sample into a factory sample map right?

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

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

                                  Well that won't work unfortunately. A sample outside of the project's sample folder (or the expansion's subfolder) will not be resolved using the wildcard but as absolute path.

                                  I'm afraid your plan of swapping samples inside a samplemap reveal a blind spot in the sample management system which takes samplemaps as somewhat static entities for granted and for the sake of future-proofness I would try to think of a solution that doesn't change samplemaps dynamically.

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

                                    @Christoph-Hart Ouch, that one hurts... So what would be the best solution in my case:
                                    I am using sample maps with 4 RRgroups (with group XFade)
                                    I need to replace any of the samples in a RRgroup with any other sample (factory or expansion)
                                    Of course, I need the user to be able to save all of that in presets...

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

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

                                      @Christoph-Hart Oh I might have explained badly since I don't want to import user samples from anywhere, but only from expansion/factory sample maps... That'll work using the corresponding wildcards right?

                                      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 can only load samples from one expansion + factory at a time.

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

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

                                          @d-healey But Christoph said:

                                          You can load multiple assets from different expansions at the same time as well as mix it with factory content.

                                          So everything's accessible apparently

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

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

                                            Yes that kind of layout is the most difficult to achieve because it‘s directly in the middle of loop players and samplers. I would suggest 4 samplers instead of 4 RR groups.

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

                                            25

                                            Online

                                            1.7k

                                            Users

                                            11.9k

                                            Topics

                                            103.4k

                                            Posts