Wave Dictionary
The RenderWare Audio Wave Dictionary container format is used to store a collection of audio files. It uses the file extension .awd
.
Layout
Template:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRow Template:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRowTemplate:MemoryLocationTableRowOffset | Name | Type | Value | Description |
---|---|---|---|---|
Header | ||||
Wave Dictionary | ||||
RwaWave
Each wave is of type RwaWave
and is stored in a RwLLNode
in an RwLinkList
.
class RwaWave
{
RwaUniqueID uniqueID;
RwaWaveDef* waveDef; // Pointer to location in system memory.
RwaWaveFormat format;
RwaWaveFormat targetFormat; // Usually identical to format.
RwUInt32 uncompressedLength;
void* data;
void* state;
RwUInt32 flags;
RwaObj* obj;
};
RwaUniqueID
struct RwaUniqueID {
union {
RwaUUID* uuid;
RwaUUID* copyUUID;
}
struct name {
char* uniqueName;
char* copyName;
}
};
RwaWaveFormat
struct RwaWaveFormat {
uint32_t sampleRate;
RwaUUID* dataType;
uint32_t length;
uint8_t bitDepth;
uint8_t noChannels;
// uint8_t pad[2];
void* miscData;
uint8_t miscDataSize;
uint8_t flags;
uint8_t reserved;
};