ScummVM API documentation
Scumm::Sound Class Reference
Inheritance diagram for Scumm::Sound:
Common::Serializable Scumm::SoundHE

Public Types

enum  SoundMode { kVOCMode, kMP3Mode, kVorbisMode, kFLACMode }
 

Public Member Functions

 Sound (ScummEngine *parent, Audio::Mixer *mixer, bool useReplacementAudioTracks)
 
virtual void startSound (int sound, int heOffset=0, int heChannel=0, int heFlags=0, int heFreq=0, int hePan=0, int heVol=0)
 
virtual void addSoundToQueue (int sound, int heOffset=0, int heChannel=0, int heFlags=0, int heFreq=0, int hePan=0, int heVol=0)
 
void processSound ()
 
virtual void modifySound (int sound, int offset, int frequencyShift, int pan, int volume, int flags)
 
void triggerSound (int soundID)
 
void startTalkSound (uint32 offset, uint32 b, int mode, Audio::SoundHandle *handle=NULL)
 
void stopTalkSound ()
 
bool isMouthSyncOff (uint pos)
 
virtual int isSoundRunning (int sound) const
 
virtual bool isSoundInUse (int sound) const
 
virtual void stopSound (int sound)
 
virtual void stopAllSounds ()
 
void soundKludge (int *list, int num)
 
void talkSound (uint32 offset, uint32 length, int mode, int channel=0)
 
virtual void setupSound ()
 
virtual void pauseSounds (bool pause)
 
bool isSfxFileCompressed ()
 
bool hasSfxFile () const
 
ScummFilerestoreDiMUSESpeechFile (const char *fileName)
 
void extractSyncsFromDiMUSEMarker (const char *marker)
 
void incrementSpeechTimer ()
 
void resetSpeechTimer ()
 
void startSpeechTimer ()
 
void stopSpeechTimer ()
 
void startCDTimer ()
 
void stopCDTimer ()
 
void playCDTrack (int track, int numLoops, int startFrame, int duration)
 
void playCDTrackInternal (int track, int numLoops, int startFrame, int duration)
 
void stopCD ()
 
int pollCD () const
 
void updateCD ()
 
AudioCDManager::Status getCDStatus ()
 
int getCurrentCDSound () const
 
int getCDTrackIdFromSoundId (int soundId, int &loops, int &start)
 
bool isRolandLoom () const
 
bool useReplacementAudio () const
 
void updateMusicTimer ()
 
int getMusicTimer () const
 
int getCDMusicTimer () const
 
void saveLoadWithSerializer (Common::Serializer &ser) override
 
void restoreAfterLoad ()
 
bool isAudioDisabled ()
 

Public Attributes

Audio::SoundHandle_talkChannelHandle
 
bool _soundsPaused
 
byte _digiSndMode
 
uint _lastSound
 
uint32 _cdMusicTimerMod
 
uint32 _cdMusicTimer
 
uint32 _speechTimerMod
 
MidiDriverFlags _musicType
 
int16 sound
 
int32 offset
 
int16 channel
 
int16 flags
 
int16 freq
 
int16 pan
 
int16 vol
 

Protected Member Functions

void setupSfxFile ()
 
bool isSfxFinished () const
 
void processSfxQueues ()
 
bool isSoundInQueue (int sound) const
 
virtual void processSoundQueues ()
 
int getReplacementAudioTrack (int soundID)
 

Protected Attributes

ScummEngine_vm
 
Audio::Mixer_mixer
 
int16 _midiQueuePos
 
int16 _midiQueue [0x100]
 
int16 _soundQueuePos
 
struct {
   int16   sound
 
   int32   offset
 
   int16   channel
 
   int16   flags
 
   int16   freq
 
   int16   pan
 
   int16   vol
 
_soundQueue [10]
 
Common::String _sfxFilename
 
byte _sfxFileEncByte
 
SoundMode _soundMode
 
MP3OffsetTable * _offsetTable
 
int _numSoundEffects
 
uint32 _queuedSfxOffset
 
uint32 _queuedTalkieOffset
 
uint32 _queuedSfxLen
 
uint32 _queuedTalkieLen
 
byte _queuedSoundMode
 
byte _queuedSfxChannel
 
bool _mouthSyncMode
 
bool _endOfMouthSync
 
uint16 _mouthSyncTimes [64]
 
uint _curSoundPos
 
int16 _currentCDSound
 
int16 _currentMusic
 
Audio::SoundHandle_loomSteamCDAudioHandle
 
bool _isLoomSteam
 
AudioCDManager::Status _loomSteamCD
 
bool _useReplacementAudioTracks
 
int _musicTimer
 
int _loomOvertureTransition
 
uint32 _replacementTrackStartTime
 

The documentation for this class was generated from the following file: