Community Q&A

Welcome to Audiokinetic’s community-driven Q&A forum. This is the place where Wwise and Strata users help each other out. For direct help from our team, please use the Support Tickets page. To report a bug, use the Bug Report option in the Audiokinetic Launcher. (Note that Bug Reports submitted to the Q&A forum will be rejected. Using our dedicated Bug Report system ensures your report is seen by the right people and has the best chance of being fixed.)

To get the best answers quickly, follow these tips when posting a question:

  • Be Specific: What are you trying to achieve, or what specific issue are you running into?
  • Include Key Details: Include details like your Wwise and game engine versions, operating system, etc.
  • Explain What You've Tried: Let others know what troubleshooting steps you've already taken.
  • Focus on the Facts: Describe the technical facts of your issue. Focusing on the problem helps others find a solution quickly.

+1 vote

Hi guys, 

I have a game where many different ambient looping sounds are positioned around the game. In order for all of them not to be processed when they are not heard, I was thinking about using the virtual voice settings to send them to virtual voices when below volume threshold (like explained here: https://www.audiokinetic.com/learn/videos/kKQrz5DRg4s/).
But when I made a quick test with many sounds going to virtual voices, I got the error mentioned here https://www.audiokinetic.com/library/edge/?source=Help&id=ErrorCode_VirtualVoiceLimit where it says that it is bad practice, and that "This sound needs to be stopped by an explicit Stop Event". 

So my main question is: is this a bad way to do it, and do I need to make events to start and stop based on triggers instead?

Best, Jakob

in General Discussion by Jakob Hougaard Andersen (180 points)

1 Answer

0 votes

Hi Jakob,

I would consider this bad practice.

Good rule of thumb if you are going to use virtual voices - only use a virtual voice type decision about the state of a sound if the game wouldn't be able to make a better decision.

Your game will have lots of information about the spatial relationship of your listener and these sounds ( how far away they are, if they are audible directly or if a wall blocks them ).

A simple solution might be to define all your ambient sounds as positions in the world and once per frame check if the listener is sufficiently close to maybe hear them. If they are PostEvent, if they are not stop that event!

You can use virtual voices to make the final determination about whether a sound you've deemed potentially audible is actual rendered physically or not once its working with a tiny subset of sounds.

Try to avoid inversion of responsibility from the game to a piece of middleware if at all possible.

> But when I made a quick test with many sounds going to virtual voices, I got the error mentioned here https://www.audiokinetic.com/library/edge/?source=Help&id=ErrorCode_VirtualVoiceLimit where it says that it is bad practice, and that "This sound needs to be stopped by an explicit Stop Event". 

This specific error sounds like you may have chosen the wrong virtual voice behaviour.

Best,

Dan Murray

by Dan M. (2.6k points)
Thanks for your answer, Dan.
I will check out alternatives to virtual voices.
...