Assertion failed: InputOboeStream != nullptr when changing levels with Android voice enabled
User was able to workaround the issue by replacing Audio::FAudioCaptureAndroidStream::CloseStream() with
bool Audio::FAudioCaptureAndroidStream::CloseStream() { if (!InputOboeStream) { return false; } InputOboeStream->close(); InputOboeStream.Reset(); return true; }
"Audio::FAudioCaptureAndroidStream::CloseStream() is incorrect, and server travel causes CloseStream() to be called when the stream is already closed."
Confirmed in 4.25 MAIN @ CL 10889200
4.23 Sample project attached
and (This may be optional in 4.24 since audio mixer is already enabled now?)
[Audio]
AudioDeviceModuleName=AudioMixerAndroid
to
Android/AndroidEngine.ini
Result: App will crash on servertravel with Error: Assertion failed: InputOboeStream != nullptr
LogPlayLevel: Error: 01-07 16:41:17.891 19230 19247 D UE4 : [2020.01.07-21.41.17:891][626]LogAndroid: Error: === Critical error: ===
LogPlayLevel: Error: 01-07 16:41:17.891 19230 19247 D UE4 : [2020.01.07-21.41.17:891][626]LogAndroid: Error:
LogPlayLevel: Error: 01-07 16:41:17.891 19230 19247 D UE4 : [2020.01.07-21.41.17:891][626]LogAndroid: Error: Assertion failed: InputOboeStream != nullptr [Link Removed] [Line: 50]
LogPlayLevel: Error: 01-07 16:41:17.891 19230 19247 D UE4 : [2020.01.07-21.41.17:891][626]LogAndroid: Error:
LogPlayLevel: Error: 01-07 16:41:17.891 19230 19247 D UE4 : [2020.01.07-21.41.17:891][626]LogAndroid: Error: [Callstack] 0x00000000CFBCAD34 libUE4.so(0x0000000008802D34)!void FDebug::CheckVerifyFailed<char16_t [1]>(char const*, char const*, int, char16_t const (&) [1]) []
LogPlayLevel: Error: 01-07 16:41:17.891 19230 19247 D UE4 : [2020.01.07-21.41.17:891][626]LogAndroid: Error: [Callstack] 0x00000000CF385188 libUE4.so(0x0000000007FBD188)!Audio::FAudioCaptureAndroidStream::CloseStream() []
LogPlayLevel: Error: 01-07 16:41:17.891 19230 19247 D UE4 : [2020.01.07-21.41.17:891][626]LogAndroid: Error: [Callstack] 0x00000000CAFB7A58 libUE4.so(0x0000000003BEFA58)!UAudioCaptureComponent::FinishDestroy() []
LogPlayLevel: Error: 01-07 16:41:17.891 19230 19247 D UE4 : [2020.01.07-21.41.17:891][626]LogAndroid: Error: [Callstack] 0x00000000CB878A0C libUE4.so(0x00000000044B0A0C)!UObject::ConditionalFinishDestroy() []
LogPlayLevel: Error: 01-07 16:41:17.891 19230 19247 D UE4 : [2020.01.07-21.41.17:891][626]LogAndroid: Error: [Callstack] 0x00000000CB80E7C0 libUE4.so(0x00000000044467C0)!IncrementalPurgeGarbage(bool, float) []
LogPlayLevel: Error: 01-07 16:41:17.891 19230 19247 D UE4 : [2020.01.07-21.41.17:891][626]LogAndroid: Error: [Callstack] 0x00000000CB8134A4 libUE4.so(0x000000000444B4A4)!CollectGarbageInternal(EObjectFlags, bool) []
LogPlayLevel: Error: 01-07 16:41:17.891 19230 19247 D UE4 : [2020.01.07-21.41.17:891][626]LogAndroid: Error: [Callstack] 0x00000000CB815694 libUE4.so(0x000000000444D694)!CollectGarbage(EObjectFlags, bool) []
LogPlayLevel: Error: 01-07 16:41:17.891 19230 19247 D UE4 : [2020.01.07-21.41.17:891][626]LogAndroid: Error: [Callstack] 0x00000000CE7EA994 libUE4.so(0x0000000007422994)!UEngine::TrimMemory() []
LogPlayLevel: Error: 01-07 16:41:17.892 19230 19247 D UE4 : [2020.01.07-21.41.17:891][626]LogAndroid: Error: [Callstack] 0x00000000CE7E7730 libUE4.so(0x000000000741F730)!UEngine::LoadMap(FWorldContext&, FURL, UPendingNetGame*, FString&) []
LogPlayLevel: Error: 01-07 16:41:17.892 19230 19247 D UE4 : [2020.01.07-21.41.17:892][626]LogAndroid: Error: [Callstack] 0x00000000CE7E383C libUE4.so(0x000000000741B83C)!UEngine::Browse(FWorldContext&, FURL, FString&) []
LogPlayLevel: Error: 01-07 16:41:17.892 19230 19247 D UE4 : [2020.01.07-21.41.17:892][626]LogAndroid: Error: [Callstack] 0x00000000CE7E5A04 libUE4.so(0x000000000741DA04)!UEngine::TickWorldTravel(FWorldContext&, float) []
LogPlayLevel: Error: 01-07 16:41:17.892 19230 19247 D UE4 : [2020.01.07-21.41.17:892][626]LogAndroid: Error: [Callstack] 0x00000000CDDEA5C0 libUE4.so(0x0000000006A225C0)!UGameEngine::Tick(float, bool) []
LogPlayLevel: Error: 01-07 16:41:17.892 19230 19247 D UE4 : [2020.01.07-21.41.17:892][626]LogAndroid: Error: [Callstack] 0x00000000CAB4DA04 libUE4.so(0x0000000003785A04)!FEngineLoop::Tick() []
LogPlayLevel: Error: 01-07 16:41:17.892 19230 19247 D UE4 : [2020.01.07-21.41.17:892][626]LogAndroid: Error: [Callstack] 0x00000000CAB43A40 libUE4.so(0x000000000377BA40)!AndroidMain(android_app*) []
LogPlayLevel: Error: 01-07 16:41:17.892 19230 19247 D UE4 : [2020.01.07-21.41.17:892][626]LogAndroid: Error: [Callstack] 0x00000000CAB5491C libUE4.so(0x000000000378C91C)!android_main() []
LogPlayLevel: Error: 01-07 16:41:17.892 19230 19247 D UE4 : [2020.01.07-21.41.17:892][626]LogAndroid: Error: [Callstack] 0x00000000CAB7ECE8 libUE4.so(0x00000000037B6CE8)![Unknown]() []
LogPlayLevel: Error: 01-07 16:41:17.892 19230 19247 D UE4 : [2020.01.07-21.41.17:892][626]LogAndroid: Error: [Callstack] 0x00000000EE675D84 libc.so(0x0000000000047D84)![Unknown]() []
LogPlayLevel: Error: 01-07 16:41:17.892 19230 19247 D UE4 : [2020.01.07-21.41.17:892][626]LogAndroid: Error: [Callstack] 0x00000000EE648036 libc.so(0x000000000001A036)![Unknown]() []
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-86373 in the post.
1 |
Component | UE - Audio |
---|---|
Affects Versions | 4.24.1, 4.25 |
Target Fix | 4.25 |
Created | Jan 7, 2020 |
---|---|
Resolved | Jan 8, 2020 |
Updated | Jun 5, 2020 |