Plug-in ID signification
Wwise Plug-ins are identified, by a Company ID and Plug-in ID. Those IDs are defined in the Plug-ins XML file. The Company ID (attribute CompanyID on tags EffectPlugin, SourcePlugin, ConversionPlugin, etc in the XML file) is a 12 bit unsigned integer, with 0 being reserved for Audiokinetic.
The Plug-in ID (attribute PluginID on tags EffectPlugin, SourcePlugin, ConversionPlugin, etc in the XML file) is a 16 bit unsigned integer in the range 0-65535. It is used to uniquely identify a particular Plug-in for the specified Company ID.
The combination of the Company ID and Plug-in ID must be unique on a given machine.
(Plug-in Type, Company IDs, Plug-in IDs) == Packed 32 bit Class ID.Within Wwise and the Sound Engine, the Company ID and Plug-in ID are combined with a 4-bit Plug-in Type value to form a 32 bit unique identifier. Note that the 4-bit type does not "help" the IDs to be different: The Plug-in Manager (in Wwise) makes sure that there's no duplicate Company ID / Plug-in ID combination, regardless of the Plug-in type.
The Plug-in type values are defined in the AkPluginType enum (IAkEffect.h) as follows:
- AkPluginTypeNone = 0, used internally by Audiokinetic
- AkPluginTypeCodec = 1, conversion Plug-ins
- AkPluginTypeSource = 2, source Plug-ins
- AkPluginTypeEffect = 3, effect Plug-ins
Audiokinetic Company IDs and Plug-in IDs
The Company ID used for all AK Plug-ins (Conversion, Source and Effect Plug-ins) is 0, as defined by AKCOMPANYID_AUDIOKINETIC in AkTypes.h.
Here are tables of all current Plug-in IDs:
Conversion Plug-ins
| Name | Plug-in Type | Company ID | Plug-in ID | Packed 32-bit Class ID |
| PCM | 1 |
0 |
1 |
0x00010001 |
| ADPCM |
1 |
0 |
2 |
0x00020001 |
| XMA |
1 |
0 |
3 |
0x00030001 |
| Vorbis |
1 |
0 |
4 |
0x00040001 |
| Wii ADPCM |
1 |
0 |
5 |
0x00050001 |
Source Plug-ins
| Name | Plug-in Type | Company ID | Plug-in ID | Packed 32-bit Class ID |
| Sine |
2 |
0 |
100 |
0x00640002 |
| Wwise Silence |
2 |
0 |
101 |
0x00650002 |
| Tone Generator |
2 |
0 |
102 |
0x00660002 |
| SoundSeed Air Wind | 2 | 0 | 119 | 0x00770002 |
| SoundSeed Air Woosh | 2 | 0 | 120 | 0x00780002 |
Effect Plug-ins
| Name | Plug-in Type | Company ID | Plug-in ID | Packed 32-bit Class ID |
| Wwise Reverb (deprecated) |
3 | 0 | 103 | 0x00670003 |
| Wwise Reverb Lite (deprecated) |
3 | 0 | 104 | 0x00680003 |
| Wwise Parametric EQ | 3 | 0 | 105 | 0x00690003 |
| Delay | 3 | 0 | 106 | 0x006A0003 |
| Wwise Environmental FX | 3 | 0 | 107 | 0x006B0003 |
| Wwise Compressor | 3 | 0 | 108 | 0x006C0003 |
| Wwise Expander | 3 | 0 | 109 | 0x006D0003 |
| Wwise Peak Limiter | 3 | 0 | 110 | 0x006E0003 |
| Wii High-Quality Reverb | 3 | 0 | 111 | 0x006F0003 |
| Wii Standard Reverb | 3 | 0 | 112 | 0x00700003 |
| Wii Chorus | 3 | 0 | 113 | 0x00710003 |
| Wii Delay | 3 | 0 | 114 | 0x00720003 |
| Matrix Reverb | 3 | 0 | 115 | 0x00730003 |
| SoundSeed Impact | 3 | 0 | 116 | 0x00740003 |
| Wwise RoomVerb | 3 | 0 | 118 | 0x00760003 |
| McDSP ML1 | 3 | 66 | 103 | 0x00670423 |
| McDSP FutzBox | 3 | 66 | 110 | 0x006E0423 |
Feedback Devices
| Name | Plugin Type |
Company ID |
Plugin ID |
Packed 32-bit Class ID |
| D-Box Device |
4 | 0 | 401 | 0x01910004 |
| Rumble Device |
4 | 0 | 406 | 0x01960004 |
Feedback Source Plugins
| Name | Plugin Type |
Company ID |
Plugin ID |
Packed 32-bit Class ID |
| D-Box Wav File Import | 5 | 0 | 402 | 0x01920005 |
| Feedback Tone Generator | 5 | 0 | 403 | 0x01930005 |
| Feedback Silence | 5 | 0 | 404 | 0x01940005 |
| Feedback Generator | 5 | 0 | 405 | 0x01950005 |
Macros
Macros let you easily create a "packed" 32-bit Class ID, and decompose such an ID into Plug-in type, Company ID and Plug-in ID:
AKMAKECLASSID: To build a packed Class ID from the Plug-in type, Company ID and Plug-in ID
AKGETPLUGINTYPEFROMCLASSID: To get the Plug-in type (4 bits) from a packed 32-bit Class ID
AKGETCOMPANYIDFROMCLASSID: To get the Company ID (12 bits) from a packed 32-bit Class ID
AKGETPLUGINIDFROMCLASSID: To get the Plug-in ID (16 bits) type from a packed 32-bit Class ID
These macros are defined in IPlugin.h.