How can I change VOIP's settings during Runtime?

Hello,

In UE4.27, I’m working on a multiplayer game based on the steam advanced sessions plugin and I’ve implemented proximity voice chat using VOIP(talker) and now I’m working on adding a walkie-talkie, but no matter how I do it, I can’t change the VOIP’s settings, there’s another forum with the same problem and it has a solution, but the solution isn’t working for me:

I think to solve the problem I need to destroy the VOIP, but I don’t know how to destroy the VOIP, I’ve tried using destroy component, but that’s not working.

Here’s how I initialize the VOIP:

Maybe, I’ve done something wrong while initializing.

I had to restart the Voice Engine using ResetVoiceEngine() after changing settings for them to take effect during runtime. Doing it without the reset didn’t seem to apply anything.

I ended up making a custom subclass of the VOIPTalker to expose the settings I needed. Once that was set up, I could tweak things like attenuation and gain at runtime. telxi actually helped me figure out how to register the new Talker class properly, so make sure to check their response in a related discussion if you’re stuck on that step.

Is there a delay on your end for doing this? I can change settings at runtime that replicate to players, but there’s a significant delay. If you’re talking while the settings are changed, you must stop, wait a few seconds, then start again. I’ve read that this is because VoipTalkers rely on temporary audio components that are destroyed when you stop speaking - unless you reset the VoiceEngine. I’m looking through VoiceModule.h and related header files in search of a way to reset the voice engine - no luck yet.

I searched for Telxi but no luck