External Sources are a special type of audio source that you can put in a Sound object in Wwise. It indicates that the real sound data will be provided at runtime. This is very useful when managing a large amount of dialogue lines that would otherwise need a Sound and an Event for each, which would then need to be included in SoundBanks. It is also very useful if the dialogue lines are already managed through another system such as an AI-driven speech generator.
Depending on how you manage the dialogue in the project, there may be additional runtime memory savings because the External Source plug-in allows you to play dialogue without having to load many voice assets into memory at any given time.
The External Source plug-in works as follows:
A Sound Voice 'template' is created in Wwise using the External Source plug-in. This template represents a series of audio files with common properties.
The External Source plug-in can take full advantage of the power and flexibility of the project hierarchy, by placing it within containers, Actor-Mixers, applying states, RTPCs, effects, and so on.
A play event is created that calls the external source.
The location and conversion settings of the pool of external audio assets that can be used by the External Source plug-in are defined in the External Sources List file. This file is a very simple XML file that contains the location of the external audio assets that need to be converted along with the conversion settings you want to use. The location of this file is defined in the Project Settings dialog box in Wwise.
At runtime, the game calls the External Source and then associates the template with one of the external audio files. The actual audio file that is played is left entirely up to the programmer. It is important to note that the management of the source audio files is done external to the Wwise sound engine. While this involves more work, it also gives you more flexibility.
Most of the work related to this feature is performed by the audio programmer within the SDK. For more information, refer the Wwise SDK documentation.