DB/SoundProviderPreferences

From wowdev
Revision as of 15:33, 5 June 2016 by Schlumpf (talk | contribs)
Jump to navigation Jump to search

World of Warcraft uses the FMod Sound Library by Firelite Technologies ("http://www.fmod.org/"). The data stored in this table corresponds with the struct FMOD_REVERB_PROPERTIES in the FMod API.

For more indepth descriptions of these properties under win32, you'll need to check the EAX2 and EAX3 documentation at "http://developer.creative.com/" under the 'downloads' section.

However, chances are you will not need to ever touch anything in this DBC.

0.5.3.3368

struct SoundProviderPreferencesRec {
  uint32_t m_ID;
  stringref m_Description;
  uint32_t m_Flags;
  uint32_t m_EAXEnvironmentSelection;
  float m_EAXEffectVolume;
  float m_EAXDecayTime;
  float m_EAXDamping;
  float m_EAX2EnvironmentSize;
  float m_EAX2EnvironmentDiffusion;
  uint32_t m_EAX2Room;
  uint32_t m_EAX2RoomHF;
  float m_EAX2DecayHFRatio;
  uint32_t m_EAX2Reflections;
  float m_EAX2ReflectionsDelay;
  uint32_t m_EAX2Reverb;
  float m_EAX2ReverbDelay;
  float m_EAX2RoomRolloff;
  float m_EAX2AirAbsorption;
  uint32_t m_EAX3RoomLF;
  float m_EAX3DecayLFRatio;
  float m_EAX3EchoTime;
  float m_EAX3EchoDepth;
  float m_EAX3ModulationTime;
  float m_EAX3ModulationDepth;
  float m_EAX3HFReference;
  float m_EAX3LFReference;
};

Structure

struct SoundProviderPreferencesEntry // sizeof(0x60)
{
   m_ID; // +0x0, size 0x4, type 0
   m_Description; // +0x4, size 0x4, type 2
   m_Flags; // +0x8, size 0x4, type 0
   m_EAXEnvironmentSelection; // +0xC, size 0x4, type 0
   m_EAXDecayTime; // +0x10, size 0x4, type 3
   m_EAX2EnvironmentSize; // +0x14, size 0x4, type 3
   m_EAX2EnvironmentDiffusion; // +0x18, size 0x4, type 3
   m_EAX2Room; // +0x1C, size 0x4, type 0
   m_EAX2RoomHF; // +0x20, size 0x4, type 0
   m_EAX2DecayHFRatio; // +0x24, size 0x4, type 3
   m_EAX2Reflections; // +0x28, size 0x4, type 0
   m_EAX2ReflectionsDelay; // +0x2C, size 0x4, type 3
   m_EAX2Reverb; // +0x30, size 0x4, type 0
   m_EAX2ReverbDelay; // +0x34, size 0x4, type 3
   m_EAX2RoomRolloff; // +0x38, size 0x4, type 3
   m_EAX2AirAbsorption; // +0x3C, size 0x4, type 3
   m_EAX3RoomLF; // +0x40, size 0x4, type 0
   m_EAX3DecayLFRatio; // +0x44, size 0x4, type 3
   m_EAX3EchoTime; // +0x48, size 0x4, type 3
   m_EAX3EchoDepth; // +0x4C, size 0x4, type 3
   m_EAX3ModulationTime; // +0x50, size 0x4, type 3
   m_EAX3ModulationDepth; // +0x54, size 0x4, type 3
   m_EAX3HFReference; // +0x58, size 0x4, type 3
   m_EAX3LFReference; // +0x5C, size 0x4, type 3
};

6.0.1.18179

struct SoundProviderPreferencesRec {
  uint32_t m_ID;
  stringref m_Description;
  uint32_t m_Flags;
  uint32_t m_EAXEnvironmentSelection;
  float m_EAXDecayTime;
  float m_EAX2EnvironmentSize;
  float m_EAX2EnvironmentDiffusion;
  uint32_t m_EAX2Room;
  uint32_t m_EAX2RoomHF;
  float m_EAX2DecayHFRatio;
  uint32_t m_EAX2Reflections;
  float m_EAX2ReflectionsDelay;
  uint32_t m_EAX2Reverb;
  float m_EAX2ReverbDelay;
  float m_EAX2RoomRolloff;
  float m_EAX2AirAbsorption;
  uint32_t m_EAX3RoomLF;
  float m_EAX3DecayLFRatio;
  float m_EAX3EchoTime;
  float m_EAX3EchoDepth;
  float m_EAX3ModulationTime;
  float m_EAX3ModulationDepth;
  float m_EAX3HFReference;
  float m_EAX3LFReference;
};