wit-ai / voicesdk-unreal

The Voice SDK for the Unreal engine.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Plugin sometimes works, sometimes doesn't

SaiaCh opened this issue · comments

commented

Hello,

I'm using the plugin for the Oculus UE 5.1.1 branch for Meta Quest Pro. Most times when testing my app I will get the output log flooded with the following warning message and voice won't work. Sometimes when I first completely remove the app and test it via the Platforms - Quick Launch - Meta Quest Pro menu I won' get any warnings and the plugin works like expected.

The Project Settings also have the permissions for audio recording checked and if I look for the Permission settings of my app on the Meta Quest Pro, audio recording permissions are enabled.

image

I'm confused that it (apparently detecting permissions?) sometimes works and then just stops working.


LogPlayLevel: UAT: 07-25 18:30:53.223  9364  9955 D UE      : [2023.07.25-16.30.53:223][130]LogTcpMessaging: Started Connection to '127.0.0.1:49155'
LogPlayLevel: UAT: 07-25 18:30:53.223  9364  9955 D UE      : [2023.07.25-16.30.53:223][130]LogTcpMessaging: Discovered node '08330D3A4E12471DF37341A01B3E59AD' on connection '127.0.0.1:49155'...
LogPlayLevel: UAT: 07-25 18:30:54.136  9364  9490 D UE      : [2023.07.25-16.30.54:136][194]LogWit: Display: VoiceCapture - Init: init start - available (0)
LogPlayLevel: UAT: 07-25 18:30:54.136  9364  9490 D UE      : [2023.07.25-16.30.54:136][194]LogAndroidPermission: UAndroidPermissionFunctionLibrary::CheckPermission android.permission.RECORD_AUDIO (Android)
LogPlayLevel: UAT: 07-25 18:30:54.138  9364  9490 D UE      : [2023.07.25-16.30.54:138][194]LogWit: Display: VoiceCapture - Init: record permission already granted
LogPlayLevel: Warning: UAT: 07-25 18:30:54.138  9364  9490 D UE      : [2023.07.25-16.30.54:138][194]LogWit: Warning: VoiceCapture - CreateVoiceCapture: voice module is not available - trying to load
LogPlayLevel: Warning: UAT: 07-25 18:30:54.138  9364  9490 D UE      : [2023.07.25-16.30.54:138][194]LogWit: Warning: VoiceCapture - CreateVoiceCapture: voice module is still not available
LogPlayLevel: UAT: 07-25 18:30:54.138  9364  9490 D UE      : [2023.07.25-16.30.54:138][194]LogWit: Display: VoiceCapture - Init: could not create platform voice capture - using emulation instead
LogPlayLevel: Warning: UAT: 07-25 18:30:54.138  9364  9490 D UE      : [2023.07.25-16.30.54:138][194]LogWit: Warning: ActivateVoiceInput: cannot activate voice input because capture is not available
LogPlayLevel: UAT: 07-25 18:30:54.192  9364  9490 D UE      : [2023.07.25-16.30.54:191][198]LogWit: Display: VoiceCapture - Init: init start - available (0)
LogPlayLevel: UAT: 07-25 18:30:54.192  9364  9490 D UE      : [2023.07.25-16.30.54:192][198]LogAndroidPermission: UAndroidPermissionFunctionLibrary::CheckPermission android.permission.RECORD_AUDIO (Android)
LogPlayLevel: UAT: 07-25 18:30:54.193  9364  9490 D UE      : [2023.07.25-16.30.54:193][198]LogWit: Display: VoiceCapture - Init: record permission already granted

Thank you for any help

Hi there, thanks for reporting this. Can we check which version of the Unreal Voice SDK are you using? A similar issue was fixed a while back wit-ai/wit-unreal@98442f3.

commented

Hello, thanks for the response.
I'm using version 49.0.1.

image

Could you please upgrade to the latest version (v51) and let us know if there is still an issue?

commented

Is the latetst v51 or v53?
Also I'm using the Oculus branch of 5.1.1. The plugin is not installed from the marketplace, it's included. I'm not too familiar how not to break things here. Would the easiest way to pull the plugin from the folder of the regular 5.1 plugin install and replace it in Engine/Plugins/Runtime/OculusXR/VoiceSDK of the Oculus branch of 5.1.1, then rebuild? I noticed that the plugin from the source code is called Wit.uplugin and not VoiceSDK.uplugin.

I think you can follow this manual installation step here https://github.com/wit-ai/voicesdk-unreal#option-4-manual-installation

Checking in if this is solved. @SaiaCh?

commented

@rokeyge The installation worked, the error disappeared, but the voice commands stopped working despite the config being correct and fetching the right data. I'm not sure if just the error message disappeared, but the issue is still the same. Hopefully I have time today to look into it.

commented

@rokeyge After rebuilding it works now, thank you :)

Tho when testing via Platforms - Quick Launch - Meta Quest Pro menu, the app crashes during the first seconds and I have to restart it via the app menu. Then it works perfectly. I'm not sure if this is a new issue.

LogPlayLevel: UAT: 08-01 21:10:53.852 22091 22202 D UE      : [2023.08.01-19.10.53:852][149]LogWit: Display: VoiceCapture - Init: init start - available (0)
LogPlayLevel: UAT: 08-01 21:10:53.852 22091 22202 D UE      : [2023.08.01-19.10.53:852][149]LogAndroidPermission: UAndroidPermissionFunctionLibrary::CheckPermission android.permission.RECORD_AUDIO (Android)
LogPlayLevel: UAT: 08-01 21:10:53.854 22091 22202 D UE      : [2023.08.01-19.10.53:854][149]LogWit: Display: VoiceCapture - Init: record permission already granted
LogPlayLevel: Warning: UAT: 08-01 21:10:53.854 22091 22202 D UE      : [2023.08.01-19.10.53:854][149]LogWit: Warning: VoiceCapture - CreateVoiceCapture: voice module is not available - trying to load
LogPlayLevel: Warning: UAT: 08-01 21:10:53.854 22091 22202 D UE      : [2023.08.01-19.10.53:854][149]LogOutputDevice: Warning:
LogPlayLevel: UAT: 08-01 21:10:53.854 22091 22202 D UE      :
LogPlayLevel: UAT: 08-01 21:10:53.854 22091 22202 D UE      : Script Stack (2 frames) :
LogPlayLevel: UAT: 08-01 21:10:53.854 22091 22202 D UE      : /Game/Taek/Voice/BP_AppVoiceExperience.BP_AppVoiceExperience_C.ExecuteUbergraph_BP_AppVoiceExperience
LogPlayLevel: UAT: 08-01 21:10:53.854 22091 22202 D UE      : /Game/Taek/Voice/BP_AppVoiceExperience.BP_AppVoiceExperience_C.StartVoiceHandling
LogPlayLevel: UAT: 08-01 21:10:53.854 22091 22202 D UE      :
LogPlayLevel: UAT: 08-01 21:10:53.970 22091 22202 D UE      : Assertion failed: (!ModuleInfo->bWasUnloadedAtShutdown) [File:C:/HomeO_temp/Taek/UE_Oculus_51/Engine/Source/Runtime/Core/Private/Modules/ModuleManager.cpp] [Line: 468]
LogPlayLevel: UAT: 08-01 21:10:53.970 22091 22202 D UE      : Attempted to load module 'Voice' that was already unloaded at shutdown.  FModuleManager::LoadModule() was called to load a module that was previously loaded, and was unloaded at shutdown time.  If this assert goes off, you're trying to load a module during the shutdown phase that was already cleaned up.  The easiest way to fix this is to change your code to query for an already-loaded module instead of trying to load it directly.
LogPlayLevel: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]Assertion failed: (!ModuleInfo->bWasUnloadedAtShutdown) [File:C:/HomeO_temp/Taek/UE_Oculus_51/Engine/Source/Runtime/Core/Private/Modules/ModuleManager.cpp] [Line: 468]
LogPlayLevel: UAT: 08-01 21:10:53.978 22091 22202 D UE      : Attempted to load module 'Voice' that was already unloaded at shutdown.  FModuleManager::LoadModule() was called to load a module that was previously loaded, and was unloaded at shutdown time.  If this assert goes off, you're trying to load a module during the shutdown phase that was already cleaned up.  The easiest way to fix this is to change your code to query for an already-loaded module instead of trying to load it directly.
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: === Critical error: ===
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error:
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: Assertion failed: (!ModuleInfo->bWasUnloadedAtShutdown) [File:C:/HomeO_temp/Taek/UE_Oculus_51/Engine/Source/Runtime/Core/Private/Modules/ModuleManager.cpp] [Line: 468]
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: Attempted to load module 'Voice' that was already unloaded at shutdown.  FModuleManager::LoadModule() was called to load a module that was previously loaded, and was unloaded at shutdown time.  If this assert goes off, you're trying to load a module during the shutdown phase that was already cleaned up.  The easiest way to fix this is to change your code to query for an already-loaded module instead of trying to load it directly.
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: [Callstack] 0x000000773F2856D4 libUnreal.so(0x000000000D6776D4)!FModuleManager::LoadModuleWithFailureReason(FName, EModuleLoadResult&, ELoadModuleFlags)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: [Callstack] 0x000000773F284B1C libUnreal.so(0x000000000D676B1C)!FModuleManager::LoadModule(FName, ELoadModuleFlags)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: [Callstack] 0x000000773C8C87E4 libUnreal.so(0x000000000ACBA7E4)!UVoiceCaptureSubsystem::CreateVoiceCapture()  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: [Callstack] 0x000000773C8C8398 libUnreal.so(0x000000000ACBA398)!UVoiceCaptureSubsystem::Startup()  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: [Callstack] 0x000000773C8E9CE8 libUnreal.so(0x000000000ACDBCE8)!UWitVoiceService::ActivateVoiceInput()  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: [Callstack] 0x000000773C8B3904 libUnreal.so(0x000000000ACA5904)!AVoiceExperience::execActivateVoiceInput(UObject*, FFrame&, void*)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: [Callstack] 0x000000773F7982D8 libUnreal.so(0x000000000DB8A2D8)!UFunction::Invoke(UObject*, FFrame&, void*)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: [Callstack] 0x000000773FA1F0CC libUnreal.so(0x000000000DE110CC)!UObject::CallFunction(FFrame&, void*, UFunction*)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: [Callstack] 0x000000773FA2C290 libUnreal.so(0x000000000DE1E290)!UObject::execLetBool(UObject*, FFrame&, void*)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: [Callstack] 0x000000773FA203D4 libUnreal.so(0x000000000DE123D4)!ProcessLocalScriptFunction(UObject*, FFrame&, void*)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: [Callstack] 0x000000773FA1F8A4 libUnreal.so(0x000000000DE118A4)!void ProcessScriptFunction<void (*)(UObject*, FFrame&, void*)>(UObject*, UFunction*, FFrame&, void*, void (*)(UObject*, FFrame&, void*))  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: [Callstack] 0x000000773FA21680 libUnreal.so(0x000000000DE13680)!ProcessLocalFunction(UObject*, UFunction*, FFrame&, void*)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.978 22091 22202 D UE      : [2023.08.01-19.10.53:978][149]LogAndroid: Error: [Callstack] 0x000000773FA203D4 libUnreal.so(0x000000000DE123D4)!ProcessLocalScriptFunction(UObject*, FFrame&, void*)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x000000773FA1FF64 libUnreal.so(0x000000000DE11F64)!UObject::ProcessInternal(UObject*, FFrame&, void*)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x000000773F7982D8 libUnreal.so(0x000000000DB8A2D8)!UFunction::Invoke(UObject*, FFrame&, void*)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x000000773FA25DE8 libUnreal.so(0x000000000DE17DE8)!UObject::ProcessEvent(UFunction*, void*)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x00000077436A4EF8 libUnreal.so(0x0000000011A96EF8)!AActor::ProcessEvent(UFunction*, void*)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x000000773C48DE38 libUnreal.so(0x000000000A87FE38)!void TScriptDelegate<FWeakObjectPtr>::ProcessDelegate<UObject>(void*) const  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x0000007744BF63E0 libUnreal.so(0x0000000012FE83E0)!FTimerUnifiedDelegate::Execute()  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x0000007744BF4FB0 libUnreal.so(0x0000000012FE6FB0)!FTimerManager::Tick(float)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x00000077441C1994 libUnreal.so(0x00000000125B3994)!UWorld::Tick(ELevelTick, float)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x0000007743EE2584 libUnreal.so(0x00000000122D4584)!UGameEngine::Tick(float, bool)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x000000773C405510 libUnreal.so(0x000000000A7F7510)!FEngineLoop::Tick()  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x000000773C3FDEFC libUnreal.so(0x000000000A7EFEFC)!AndroidMain(android_app*)  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x000000773C40C448 libUnreal.so(0x000000000A7FE448)!android_main()  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x000000773C443380 libUnreal.so(0x000000000A835380)![Unknown]()  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x000000784E9B1DF0 libc.so(0x00000000000DDDF0)![Unknown]()  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error: [Callstack] 0x000000784E95E030 libc.so(0x000000000008A030)![Unknown]()  []
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error:
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error:
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error:
LogPlayLevel: Error: UAT: 08-01 21:10:53.979 22091 22202 D UE      : [2023.08.01-19.10.53:979][149]LogAndroid: Error:
LogPlayLevel: UAT: 08-01 21:10:53.988 22091 22202 D UE      : [2023.08.01-19.10.53:988][149]LogExit: Executing StaticShutdownAfterError
LogPlayLevel: UAT: 08-01 21:10:53.989 22091 22202 D UE      : [2023.08.01-19.10.53:989][149]LogAndroid: FAndroidMisc::RequestExit(1)

Good to know. Not clear from the log what's causing the shutdown when launching from there. We have not been able to reproduce it, sorry!