16 virtual void Create()
override;
17 virtual void Destroy()
override;
24 void SetPcmData(uint8_t* data, uint32_t size, uint32_t numSamples, uint32_t bitsPerSample, uint32_t numChannels, uint32_t sampleRate);
30 static bool LoadFromMemory(
const uint8_t* data,
size_t size,
const char* formatHint,
SoundWave& out);
32 void SetVolumeMultiplier(
float volume);
33 float GetVolumeMultiplier()
const;
35 void SetPitchMultiplier(
float pitch);
36 float GetPitchMultiplier()
const;
38 void SetAudioClass(int8_t audioClass);
39 int8_t GetAudioClass()
const;
41 uint8_t* GetWaveData()
const;
42 uint32_t GetWaveDataSize()
const;
43 uint32_t GetNumChannels()
const;
44 uint32_t GetBitsPerSample()
const;
45 uint32_t GetSampleRate()
const;
46 uint32_t GetNumSamples()
const;
47 uint32_t GetBlockAlign()
const;
48 uint32_t GetByteRate()
const;
50 float GetDuration()
const;
54 static bool HandlePropChange(
Datum* datum, uint32_t index,
const void* newValue);
56 uint8_t* mWaveData =
nullptr;
57 uint32_t mWaveDataSize = 0;
59 uint8_t* mCompressedData =
nullptr;
60 uint32_t mCompressedSize = 0;
63 float mVolumeMultiplier = 1.0f;
64 float mPitchMultiplier = 1.0f;
65 int8_t mAudioClass = 0;
66 bool mCompress =
false;
67 bool mCompressInternal =
false;
70 uint32_t mNumChannels = 1;
71 uint32_t mBitsPerSample = 8;
72 uint32_t mSampleRate = 22050;
73 uint32_t mNumSamples = 0;
74 uint32_t mBlockAlign = 0;
75 uint32_t mByteRate = 0;