Project won't open
-
I was working on a project last night. I've just gone to open it and I'm getting messages about missing modules. So instead I open the XmlBackup I made, it loads fine (with a million audio thread warnings) but when I try to open the interface script I get an instant close :(
-
@d-healey I have the same here.
I was able to close/reopen the XML a few times and it came back to life.
It's almost as if it only partially loads a project file intermittently at the moment -
@dustbro Was that with my project?
-
Sorry guys, I'll take a look at this tomorrow, seems like a rather critical one :)
@d-healey Is this behaviour reproducable with the project you posted?
-
@christoph-hart I only posted the xmlpreset and the .hip file. Do you need the full project?
Edit: Just in case I have the whole project here - https://github.com/davidhealey/librewave_woodwinds and requires my scripting framework submodule - https://github.com/davidhealey/HISE-Scripting-Framework
-
@d-healey it was one of my projects
-
You seem to have a lot of absolute (Linux) paths in your samplemaps, which all are redirected to
/media/dave/Work 1/Xtant Audio/Products/Virtual Instruments/Woodwind/Sofia Woodwinds/Sessions/
. This prevents anyone else from loading your project unless they are named Dave and have the same directory structure :)Resolving these paths make the debug version of HISE go mad. Have you tried redirecting the sample folder (last setting in HISE Settings -> Project Settings)?
-
I disabled sample map loading in order to load your project and it loads fine here. Can you check if that works on your system? Just add a return statement in this method in hi_sampler/sampler/ModulatorSamplerData.cpp:657:
void SampleMap::load(const PoolReference& reference) { LockHelpers::freeToGo(sampler->getMainController()); clear(dontSendNotification); currentPool = getSampler()->getMainController()->getCurrentSampleMapPool(); sampleMapData = currentPool->loadFromReference(reference, PoolHelpers::LoadAndCacheWeak); currentPool->addListener(this); return; // <= skips the sample map loading... if (sampleMapData) { auto v = sampleMapData.getData()->createCopy(); parseValueTree(v); changed = false; } else jassertfalse; sendSampleMapChangeMessage(); }
I can imagine it has something to do with the sample loading interfering on the background thread with something else. If that fixes your problem, I need to get the samples somehow so I can fully reproduce your scenario.
-
@christoph-hart Brilliant, that fixed it. So keeping the samples outside my project folder until I'm ready to monolithasize them is not a good idea!
-
Well, have you checked out the redirect Sample folder option? I added this exactly for your scenario (sample working directory is on another drive).
It basically creates the same link file as the compiled plugin (LinkWindows / LinkOSX / LinkLinux) in the sample folder and resolves all sample references as relative path to the given folder so you end up with these nice
{PROJECT_FOLDER}Sample.wav
references in the sample map even if the samples are not in the actual
Samples
subfolder. -
@christoph-hart Oh I forgot. Just tried it and it seems to have worked :D