Imported user samples in Audio Loop Player are not saved in the preset
-
After restarting vst3, vst2 or standalone, all files (wav/flac) imported by the "user" in the AudioLooper have disappeared.
The file names are still displayed, but the samples are not loaded.
Do I have to activate something here?
Or does this have to be built in via script? -
@Xearox73 I take it you are using an AudioWaveform component to load files?
When the file name is displayed but there's no sample, it typically means the file can't be found in the expected location. If you open a preset in a text editor, you should have a line something like this:
<Control type="ScriptAudioWaveform" id="UserWave1" value="0.0" data="/Location/of/your/sample.wav"
Is the path in your preset correct?
-
The path is correct
The path in HISE itself and also the path in the user preset
I checked both preset files
In HISE the samples are also reloaded directly, but not in the vst version.
The waveform window remains empty -
@Xearox73 Are you calling
Engine.loadAudioFilesIntoPool()
inon init
? I think this is actually only needed for files in the AudioFiles folder, but it might solve this problem too. -
@d-healey
I have already done this for samples and irs
// SAMPLES
Engine.loadAudioFilesIntoPool();
// SAMPLES END
// IR REVERB
const var ConvolutionReverb1 = Synth.getAudioSampleProcessor("Convolution Reverb1");
//preload all audio files into hise
const irs = Engine.loadAudioFilesIntoPool();The preset file content:
User Preset
type="ScriptAudioWaveform" id="ScriptAudioWaveform1" value="0.0"
data="C:\Users\username\AppData\Roaming\PlugIn\pluginname\AudioFiles\files1\IMP_MONO_V1.flac"
HISE Preset
type="ScriptAudioWaveform" id="ScriptAudioWaveform1" value="0.0"
data="{SAMPLE_FOLDER}files1/IMP_MONO_V1.flac" -
You only need to call it once, it doesn't affect samples, it's only for files in the AudioFiles folder.
More info here - https://docs.hise.dev/working-with-hise/project-management/projects-folders/audio-files.html
-
I know, that was an attempt, but I have a problem here
what can I do so that the folder with the samples does not appear in the ComboBox of the reverb? -
@Xearox73 How are you populating the combo box?
-
const LoadIR = Content.getComponent("LoadIR");
inline function onLoadIRControl(component, value)
{
if (value > 0)
ConvolutionReverb1.setFile(irs[value - 1]);
};Content.getComponent("LoadIR").setControlCallback(onLoadIRControl);
LoadIR.set("items", "");
for (x in irs)
LoadIR.addItem(x.replace("{PROJECT_FOLDER}").replace(".wav", " (IR by)").replace("VINYL.flac").replace(".flac")); -
@Xearox73 This looks like it will populate the combobox with the list of files from the AudioFiles folder, your samples shouldn't be in that folder, they should go in the Samples folder.
-
this is exactly where the problem lies
as soon as the “files1” folder is in the sample folder
it does not load the samples
I have already tried everything I could think of
HISE runs fine, but if the vst3 saves this in the preset, but the next time it is started, everything is gone again -
as an end-user myself, would i like to be able to simply drag and drop my samples from anywhere and save them?
-
@Xearox73 said in Imported user samples in Audio Loop Player are not saved in the preset:
as soon as the “files1” folder is in the sample folder
What does files1 contain? Is it samples, loops, impulse responses?
You could use wav rather than flac - I'm not sure if it will make a difference but it might.
-
samples
I'll try that with the wav files
is worth a try .....
however, importing FLAC is of little use to the user if it does not work -
whoaaa, what a mess
at 1st i definitely need both of them
Engine.loadAudioFilesIntoPool(); and const irs = Engine.loadAudioFilesIntoPool();
but, I have the solution
when i open the vst, i have to re-reference all samples and then save them with the vst again.
If i do this only in HISE the compiled vst does not load the samples.
if i remove "Engine.loadAudioFilesIntoPool();" from the script
the vst does not load the files from the sample folder, only the irs
if i remove "const irs = Engine.loadAudioFilesIntoPool();" from the script
all audio files are displayed in the ComboBox .... crazy
is a bit annoying now, but the problem seems to be solved, at least for the time being -
@Xearox73 said in Imported user samples in Audio Loop Player are not saved in the preset:
Engine.loadAudioFilesIntoPool(); and const irs = Engine.loadAudioFilesIntoPool();
You only need this once, running it twice will make no difference. And it won't affect anything in the Samples folder, it's only for the AudioFiles - if you add a pool tables window in HISE it will show you which files have been loaded.
There is probably something else going in on in your project that is causing the issues, hard to say without seeing it.
-
Just by the way
is there actually a way to display an editable info panel for each preset
where the user can also enter his information? -
with over 5200 lines, troubleshooting is a little complicated
but i think i have it why i need both
i set
"const irs = Engine.loadAudioFilesIntoPool();"
to
"// const irs = Engine.loadAudioFilesIntoPool();"
and .....for (x in irs)
LoadIR.addItem(x.replace("{PROJECT_FOLDER}").replace(".wav", " (IR by ZIA)").replace("VINYL.flac").replace(".flac"));shows:
! Line 38, column 14: no iterable type
and the ComboBox is empty -
somehow it seems as if the one doesn't want the other as soon as i set a specific filter like
for (x in irs)
LoadIR.addItem(x.replace("{PROJECT_FOLDER}") -
@Xearox73 said in Imported user samples in Audio Loop Player are not saved in the preset:
Just by the way
is there actually a way to display an editable info panel for each preset
where the user can also enter his information?There is a note box in the preset browser which you can enable. I haven't used it though so I'm not sure how useful it is.
By the way, if you use code tags (3 back ticks) when posting code it will format it nicely. You can also use this button in the toolbar:
@Xearox73 said in Imported user samples in Audio Loop Player are not saved in the preset:
but i think i have it why i need both
i set
"const irs = Engine.loadAudioFilesIntoPool();"
to
"// const irs = Engine.loadAudioFilesIntoPool();"
and .....Yes that's because you need to populate your irs array. It's the other call to this function that you don't need.
@Xearox73 said in Imported user samples in Audio Loop Player are not saved in the preset:
with over 5200 lines, troubleshooting is a little complicated
I think your code could use some structural changes to make it easier to manage.