@mehmethand Thankyou, I will give this a go at the weekend and see how I get on
Posts
-
RE: Searching across all expansions
-
RE: Searching across all expansions
@d-healey said in Searching across all expansions:
@rzrsharpeprod You'd need to modify the HISE source code for this
That sounds like fun...!!
-
RE: Searching across all expansions
@d-healey I thought that might be the case. I'll try the solution above first to see if can do it without the need to modify the source code
-
Searching across all expansions
Hi all,
I am presuming this isn't possible but I am asking just in case as it would be a nice feature for the end users to have.
Is it possible to get the search function in the preset browser to search across all of the currently installed expansions rather than just the currently selected one?For example, If I had 5 expansions installed and each of them had some bell presets in. Can I make it so that I can type the word 'Bell' into the search box and it show all presets with the word 'Bell' in them across those 5 expansions rather than just the presets with the word 'Bell' in the currently selected expansion?
Thanks in advance
-
RE: Label to show current expansion
@d-healey Got it working, thankyou.
Obviously it has to go in the part of the code where the change happens...for whatever reason that basic concept had escaped me. Thanks again
-
RE: Label to show current expansion
@d-healey said in Label to show current expansion:
By changing these to const vars and having them above the code to populate the label, I can get it to work but it only works for the initial expansion. It doesn't change when I switch expansions unless I recompile.
I have done this as you suggested
const var currentExpansion = expHandler.getCurrentExpansion(); const var expansionProperties = currentExpansion.getProperties(); const var expansionName = expansionProperties.Name;
and this is in the else clause of my label populate script
Content.getComponent("ExpName").set("text", expansionProperties.Name);
but it doesn't change without recompiling. What am I missing?
-
RE: Label to show current expansion
The array that contains the expansion names is called expansionNames in my project
What do I need to put after this part to call the expansionNames current name please?Content.getComponent("ExpName").set("text",
I looked through the API and am struggling to see what I need to use.
I have triedContent.getComponent("ExpName").set("text", expansionsNames.push(p.Name));
and
Content.getComponent("ExpName").set("text", expansionsNames.getProperties().Name);
but am getting errors as it clearly isn't right. I can usually find examples or something to help me figure out the syntax but I am struggling when it comes to expansions as there doesn't seem to be too much out there other than your 2 tutorials and a little in the API.
-
Label to show current expansion
I am trying to create a label to show the currently selected expansion but I can only get it to show the object name not the actual name of the expansion.
I have used this code to do the same for the preset name and it works fine
Content.getComponent("PresetName").set("text", Engine.getCurrentUserPresetName());
but when I use this code for the expansion name using this (ExpName is just the label)
Content.getComponent("ExpName").set("text", expHandler.getCurrentExpansion());
I get the object name instead as well as a warning in the console saying
! You must specify the unique component name, not the object itself
How can I get the expansion text name and then apply that to the label please?
-
RE: Expansions sample maps
@d-healey ah ok strange.
Thankyou for your help as I now have it working properly and selecting the correct samplemaps.
I've also got the expansion load working in daw as well so I can progress with my project which is great news.
Thanks again, your help is always invaluable
-
RE: Expansions sample maps
Ah I see, so it was there just collapsed inside the function as it was created inside a function?
-
RE: Expansions sample maps
@d-healey Ok thankyou. I have created a minimal project and sent it to you via DM
-
RE: Expansions sample maps
@d-healey it should be I think as the cmbExpansion value is changing correctly which is the value that the if/else is looking at
If I choose the first entry in the combobox it looks like this
and it changes accordingly if I choose another entry further down the list
That being said cx still doesn't show up in the scriptwatchtable if it is a local var in the else clause, should it?
Would it be easier if I made a minimal snippet or very light version on the project as I feel I have probably set something up fundamentally wrong and you won't be able to spot it from my poorly explained snippets of code above
-
RE: Expansions sample maps
@d-healey I have moved cx to const var outside of the function or else it doesn't show up at all in the scriptwatchtable. Now that I have moved it it exists but is blank
As a result the combobox is now completely empty and I have these errors in the console
So I guess the question is how do I get the var cx to populate correctly?
-
RE: Expansions sample maps
@d-healey In the combobox itself just the factory/non expansion samplemaps populating the list and a seemingly random one is chosen - presumably it is actually in the same position number as the one I want it to load in the expansion.
The sampler itself looks like the screenshot so there is a disparity between what is in the combo box and what is in the sampler at this point which is not the case for the non expansion samplemaps
-
RE: Expansions sample maps
This is terrible coding I am aware but I am on about my 10th iteration of trying to get it to do something and ghot myself in a bit of a muddle.
inline function oncmbSampleControl(component, value) { local expansionToLoad = component.getItemText(); if(cmbExpansions.getValue() < 2) //1 is factory all expansions are 2 or higher { SampleMapSwitch.set("items", sampleMaps.join("\n")); Sampler1.asSampler().loadSampleMap(sampleMaps[value-1]); } else { local cx = expHandler.getCurrentExpansion(); local xs = cx.getSampleMapList(); SampleMapSwitch.set("items", xs.join("\n")); Sampler1.asSampler().loadSampleMap(xs[value]); } }; Content.getComponent("cmbSample").setControlCallback(oncmbSampleControl);
This will not give the unknown function error but it also won't select the correct sample map.
What it does do is take one from the same position in the factory list (I think) and loads that instead of an expansion samplemap.
As an aside, it appears to load the expansion and shows the rest of the samplemaps from the expansion in the sampler, but it won't select them via the preset browser and they aren't listed in the samplemapswitch combo box, they only appear in the sampler itself as shown below
Hopefully it is something very silly I have done and you can point it out as I am at a loss with it at the moment.
-
RE: Expansions sample maps
In another inline function trying to call the current expansion using getCurrentExpansion (I'm not at my pc right now so I think it was that function)
Do I need to replicate these vars from the expansions code I posted but for the sample maps?
const var expansions = Engine.getExpansionList();
const var expansionNames = [];As you can probably tell I'm a little lost after trying various combinations over the past week and getting mixed results.
-
RE: Expansions sample maps
@rzrsharpeprod said in Expansions sample maps:
I have searched the forum as well as watching both of David's videos on expansions but I can't figure out what I need to do so hoping somebody can help me on here.
I have a project and have added a couple of expansions to it, I followed David's video to setup a combo box selection for the expansion as well as editing the laf of the preset browser, all that works correctly but what I can't do is get the samplemaps to populate correctly in a combo box. By extension I also can't get the samplemap to be selected in the sampler.
I have never really dabbled with expansions before and am finding it a little challenging. If somebody help me that would be great as I've been trying to figure this out for most of the week and have had varying degrees of success and failure.
To try and explain myself a bit better (as I was sitting in A&E in the early hours of this morning and didn't have access to any code)
here is the code used to populate the expansions combobox//Expansions const var expHandler = Engine.createExpansionHandler(); const var expansions = Engine.getExpansionList(); const var expansionNames = []; for(e in expansions) { var p = e.getProperties(); expansionNames.push(p.Name); } const var cmbExpansions = Content.getComponent("cmbExpansions"); cmbExpansions.set("items", expansionNames.join("\n")); inline function oncmbExpansionsControl(component, value) { expHandler.setCurrentExpansion(component.getItemText()); }; Content.getComponent("cmbExpansions").setControlCallback(oncmbExpansionsControl);
How can I do something similar but for the samplemaps that are inside the expansion so that I can build presets with them?
In the API there is
Expansion.getSampleMapList
but this give me an unknown function error and I can't see anything in the expansionHandler section relating to samplemaps so I am not sure how to call/reference them?
What I would like to do is populate the 'regular samplemap' combo box with the factory samplemaps if no expansion is selected and then populate it with the expansion samplemaps if an expansion is loaded so I can build presets using them. I can do this via an if statement once I can call the expansion samplemaps but I am falling at that previous step.
Unless I am being overly complicated and there is a much simpler solution that I am missing?
Any advice & help is appreciated as my project has ground to a halt until I can solve this issue.
-
Expansions sample maps
I have searched the forum as well as watching both of David's videos on expansions but I can't figure out what I need to do so hoping somebody can help me on here.
I have a project and have added a couple of expansions to it, I followed David's video to setup a combo box selection for the expansion as well as editing the laf of the preset browser, all that works correctly but what I can't do is get the samplemaps to populate correctly in a combo box. By extension I also can't get the samplemap to be selected in the sampler.
I have never really dabbled with expansions before and am finding it a little challenging. If somebody help me that would be great as I've been trying to figure this out for most of the week and have had varying degrees of success and failure.
-
2 random audio loop player questions
I have just updated to Hise 4.0 and imported my project from 3.62 but I am now having an issue with loading audio files into the loop player.
Previously I could either right click to load or drag and drop a file onto the audio waveform in the UI to load a file.
Since I have updated, I can still right click to load a file but it won't let me drag and drop anymore, I get the circle with a diagonal line through it, I can see that there are some newer features on the loop player in 4.0 such as left click to load etc but I can't seem to find a setting to allow drag and drop. Previously it was on by default.The 2nd question is about this symbol
I have 2 loop players & 2 audio waveforms that are set up the same parameter wise but one has this symbol in the top left hand corner and the other one doesn't and I can't figure out why.
I'm happy to either have it on for both or off for both (as long as it doesn't affect any functionality) but I can't figure out where it can be turned on/off.Thanks in advance
-
RE: Granulator audio file
@Lindon I just found this thread which seems to be exactly what I am looking for.
https://forum.hise.audio/topic/7812/audioloop-player-granulator-file-handling/4?_=1722250501048
I shall try this out when I get home but from reading it through it looks like it should give me enough to get to where I need to get to and build from there.