26 #ifndef AUDIO_SOUNDFONT_SYNTHFILE_H 27 #define AUDIO_SOUNDFONT_SYNTHFILE_H 29 #include "common/scummsys.h" 30 #include "common/list.h" 31 #include "common/str.h" 32 #include "common/array.h" 45 no_transform, concave_transform
54 SynthInstr *AddInstr(uint32 bank, uint32 instrNum);
55 SynthWave *AddWave(uint16 formatTag, uint16 channels,
int samplesPerSec,
int aveBytesPerSec,
56 uint16 blockAlign, uint16 bitsPerSample, uint32 waveDataSize,
98 void SetRanges(uint16 keyLow = 0, uint16 keyHigh = 0x7F, uint16 velLow = 0,
99 uint16 velHigh = 0x7F);
100 void SetWaveLinkInfo(uint16 options, uint16 phaseGroup, uint32 theChannel,
101 uint32 theTableIndex);
110 uint16 _usPhaseGroup;
120 SynthArt() : _pan(0.0), _attack_time(0.0), _decay_time(0.0),
121 _sustain_lev(0.0), _sustain_time(0.0), _release_time(0.0),
122 _attack_transform(no_transform), _release_transform(no_transform) {}
125 void AddADSR(
double attack, Transform atk_transform,
double decay,
double sustain_lev,
126 double sustain_time,
double release_time, Transform rls_transform);
127 void AddPan(
double pan);
135 double _sustain_time;
137 double _release_time;
139 Transform _attack_transform;
140 Transform _release_transform;
147 SynthSampInfo() : _usUnityNote(0), _sFineTune(0), _attenuation(0.0),
148 _cSampleLoops(0), _ulLoopStart(0), _ulLoopLength(0) {}
152 void SetPitchInfo(uint16 unityNote, int16 fineTune,
double attenuation);
161 uint32 _ulLoopLength;
166 SynthWave(
void) : _sampinfo(NULL), _data(NULL), _name(
"Untitled Wave") {
167 RiffFile::AlignName(_name);
170 SynthWave(uint16 formatTag, uint16 channels,
int samplesPerSec,
int aveBytesPerSec,
171 uint16 blockAlign, uint16 bitsPerSample, uint32 waveDataSize, uint8 *waveData,
173 : _wFormatTag(formatTag),
174 _wChannels(channels),
175 _dwSamplesPerSec(samplesPerSec),
176 _dwAveBytesPerSec(aveBytesPerSec),
177 _wBlockAlign(blockAlign),
178 _wBitsPerSample(bitsPerSample),
179 _dataSize(waveDataSize),
183 RiffFile::AlignName(_name);
189 void ConvertTo16bitSigned();
196 uint32 _dwSamplesPerSec;
197 uint32 _dwAveBytesPerSec;
199 uint16 _wBitsPerSample;
207 #endif // AUDIO_SOUNDFONT_SYNTHFILE_H Definition: synthfile.h:118
Definition: synthfile.h:164
Definition: synthfile.h:48
Definition: synthfile.h:80
Definition: synthfile.h:65
Definition: synthfile.h:145