Crash on Oculus Go and Quest

When running on Oculus Go or Oculus Quest, am getting this fatal error.
This log is from the Oculus device itself. Build seems to show no errors.
Seems to be while loading banks. I’ve check the non-asset dir settings, reloaded banks, rebuilt the project… everything short of calling 911 for what may have been a panic attack disguised as a heart attack when nearing a deadline.

This is with UE4.23 btw. The app works perfectly fine without audio if i remove all traces of FMod. Also, the starting map does NOT trigger a sound at any point. I see a black screen (while it caches) and then back to Home Screen without any reasons or popups.

[2019.09.15-10.54.52:205][ 0]LogFMOD: Default sample rate = 24000
[2019.09.15-10.54.52:205][ 0]LogFMOD: System sample rate = 48000
[2019.09.15-10.54.52:205][ 0]LogFMOD: Warning: …/…/src/fmod_systemi.cpp(2808) - Output requires a sample rate of 48000Hz, resampling will occur.

[2019.09.15-10.54.52:205][ 0]LogFMOD: Loading Banks
[2019.09.15-10.54.52:205][ 0]LogAndroid: Error: === Critical error: ===
[2019.09.15-10.54.52:205][ 0]LogAndroid: Error:
[2019.09.15-10.54.52:205][ 0]LogAndroid: Error: Assertion failed: IsValid() [File:D:/Unreal Engine/Source/UnrealEngine_GIT_4.23/Engine/Source/Runtime/Core/Public\Templates/SharedPointer.h] [Line: 840]
[2019.09.15-10.54.52:205][ 0]LogAndroid: Error:
[2019.09.15-10.54.52:205][ 0]LogAndroid: Error: [Callstack] 0x00000000C560A34C!FDebug::CheckVerifyFailedImpl(char const*, char const*, int, char16_t const*, …) []
[2019.09.15-10.54.52:205][ 0]LogAndroid: Error: [Callstack] 0x00000000C5440F48!FAndroidPlatformFile::OpenRead(char16_t const*, bool, bool) []
[2019.09.15-10.54.52:205][ 0]LogAndroid: Error: [Callstack] 0x00000000C7706668!FPakPlatformFile::OpenRead(char16_t const*, bool) []
[2019.09.15-10.54.52:206][ 0]LogAndroid: Error: [Callstack] 0x00000000C549F424!FFileManagerGeneric::CreateFileReaderInternal(char16_t const*, unsigned int, unsigned int) []
[2019.09.15-10.54.52:206][ 0]LogAndroid: Error: [Callstack] 0x00000000C505DFF8!FFMODFileSystem::OpenInternal(char const*, unsigned int*, void**) []
[2019.09.15-10.54.52:206][ 0]LogAndroid: Error: [Callstack] 0x00000000C505E8E0!FFMODFileSystem::Run() []
[2019.09.15-10.54.52:206][ 0]LogAndroid: Error: [Callstack] 0x00000000C54EA454!FRunnableThreadPThread::Run() []
[2019.09.15-10.54.52:206][ 0]LogAndroid: Error: [Callstack] 0x00000000C54481DC!FRunnableThreadPThread::_ThreadProc(void*) []
[2019.09.15-10.54.52:206][ 0]LogAndroid: Error: [Callstack] 0x00000000E796A8D4 []
[2019.09.15-10.54.52:206][ 0]LogAndroid: Error: [Callstack] 0x00000000E793CFE6 []
[2019.09.15-10.54.52:206][ 0]LogAndroid: Error:
[2019.09.15-10.54.52:206][ 0]LogAndroid: Error:
[2019.09.15-10.54.52:206][ 0]LogAndroid: Error:
[2019.09.15-10.54.52:206][ 0]LogAndroid: Error:


It seems odd for it to be failing at that point, we can only speculate but it looks like it might be failing to create a shared pointer due to running out of memory.

Would you be able to supply us with a project that reproduces the issue?
You can upload it to your profile:

Hi raahikulshreshtha, we’ve found the cause of this issue and a fix will be included in the next release of the FMOD Studio UE4 Integration.

The fix has already been pushed to GitHub ( so it can be grabbed from there immediately.

It’s also possible to work around the issue by enabling separate asset banks in your FMOD Studio project. Change the “Built bank file separation” setting to either “Build metadata and assets to separate banks” or “Build metadata, non-streaming assets, and streaming assets to separate banks”.