[ue5-main] Crash: Assertion failed CookInputs->CompressedDataGuid.IsValid() from AudioDerivedData.cpp - due to FMOD?

Hi there, I build ue5 from source, on ue5-main. This has been fine throughout Early Access, and any code discrepancies with FMOD I try to resolve myself (it’s usually just the case of a deprecated function in the FMOD source or renamed variable etc, easily spotted and usually an error during build). It’s usually clear if it’s an issue with FMOD but this time I’m not too sure so I’d like to check in case the UE5 team might be more knowledgeable. I’m also checking with the FMOD team.
This could just be a bad commit for ue5-main, but would like to check anyway!

After pulling on April 10th (my last pull being around March 30th) I’m able to build the engine and my project’s c++ no problem. However, I get an assertion failed crash at 95% loading (postloading objects). The log isn’t extremely helpful to find out what’s causing the crash, and the crash reporter doesn’t launch either. This is the assertion failed:

assertionfailed

This is the function in AudioDerivedData that the assertion failed is referencing, I put a comment above line 1549 for you:

FString FDerivedAudioDataCompressor::GetPluginSpecificCacheKeySuffix() const
{
	int32 FormatVersion = 0xffff; // if the compressor is NULL, this will be used as the version...and in that case we expect everything to fail anyway
	if (CookInputs->Compressor)
	{
		FormatVersion = (int32)CookInputs->Compressor->GetVersion(CookInputs->BaseFormat);
	}
//line 1549:
	check(CookInputs->CompressedDataGuid.IsValid());
	FString FormatHash = CookInputs->HashedFormat.ToString().ToUpper();
	return FString::Printf(TEXT("%s_%04X_%s"), *FormatHash, FormatVersion, *CookInputs->CompressedDataGuid.ToString());
}

So my question is, could this be related to FMOD? It seems to have to do with audio plugins, and I don’t use any other audio whatsoever that isn’t FMOD. As I said, I’m aware this could just be a strange bug with the current commit on ue5-main.

If this is an error with the FMOD plugin, is there any course of action I could take to patchwork this assertionfailed out of the way so I can at least launch my project?

I upgraded to FMOD version 2.02.06 for UE5.00 from the FMOD Downloads page to see if that would resolve the error, so that’s what version of FMOD I’m on now (fresh, now without any of my patchwork changes I’ve been making to 2.02.02 for the entirety of the UE5EA.)

Here’s my crash log:
HAS_master.log (75.3 KB)

I tried running debug via VS2022, here’s the callstack at the breakpoint. I don’t know if this might help…

More curiously is the Autos (I’m not super knowledgeable about VS debugging, but I do recognize this “Sane Audio” thing, as it’s a variable name in that actor that I made. This is possible an UNSET fmod event variable? A placeholder if you will.)

Wow. Immediately after noticing that in the Autos, I removed the actor UASSET file with that empty soundwave variable and then tried booting up my project again. Success! I added the actor back and removed the offending variable. It wasn’t an FMOD event after all.

Sorry for any trouble caused! Hopefully this helps in some way though as a bug/crash report!