aboutsummaryrefslogtreecommitdiff
path: root/sound/mixer.h
AgeCommit message (Collapse)Author
2003-12-21o Make use of the new LinearMemoryStream feature which allows auto-disposing ↵Max Horn
the sound data o This allows us to get rid of the ChannelRaw class o Removed the sound index return value from several methods o Removed all methods dealing with sound indices (i.e. stopChannel and pauseChannel) svn-id: r11801
2003-12-19o Moved MP3 and Vorbis input streams to mp3.* resp. vorbis.*Max Horn
o Added SoundMixer::playInputStream and made some of the other play* methods use it o Added ProcInputStream stub (not working yet) which one day may allow us to replace the premix code, and allow other fancy stuff o Remove AudioInputStream::readBuffer default implementation (subclasses should always provide it for max. performance) o Some minor cleanup svn-id: r11754
2003-12-16cleanupMax Horn
svn-id: r11686
2003-12-16added mixer flag for little endian samplesRobert Göffringmann
svn-id: r11665
2003-11-08cleanup whitespacesPaweł Kołodziejski
svn-id: r11221
2003-10-25whateverJoost Peters
svn-id: r10959
2003-10-24added extra flag to mixer so we don't use free() on new'd pointersJoost Peters
svn-id: r10958
2003-10-05clarification: premixer must use native endianessMax Horn
svn-id: r10621
2003-09-18changed & documented the premixer semanticsMax Horn
svn-id: r10294
2003-09-07new header file for VOC specific stuffMax Horn
svn-id: r10072
2003-09-06removed pauseMixer method from mixer, and renamed stop to stopChannelMax Horn
svn-id: r10042
2003-09-05moved the sound ID param in playRaw before volume/panMax Horn
svn-id: r10023
2003-09-05added default volume/pan valuesMax Horn
svn-id: r10019
2003-09-05cleaned up sound/mixer.h a bit; renamed some mixer methods for consistencyMax Horn
svn-id: r10018
2003-09-05fixes for uninitialized pan and volumePaweł Kołodziejski
svn-id: r9998
2003-09-02Added per-channel pausing. Maybe I should have named the pauseChannel()Torbjörn Andersson
function simply pause() to be consistent with stop(), but there already is a pause() function and I don't want to have two functions with the same name doing different things. (The current pause() function pauses all channels.) svn-id: r9968
2003-09-01forgot thisPaweł Kołodziejski
svn-id: r9957
2003-08-31added comments:Paweł Kołodziejski
volume: 0 - 127 pan: (-127 <-> 0 <-> 127) (left <-> center <-> right) svn-id: r9945
2003-08-31added mixer features: volume and pan control per channelPaweł Kołodziejski
svn-id: r9944
2003-08-30Made PlayingSoundHandle unsigned again, since the mixer change wasTorbjörn Andersson
reverted. svn-id: r9930
2003-08-30If -1 is going to be a valid value for a PlayingSoundHandle, the data typeTorbjörn Andersson
had better be signed... svn-id: r9925
2003-08-30added func isChannelActive for mixer, and fixed handling numbers of channel 0Paweł Kołodziejski
svn-id: r9924
2003-08-09added SoundMixer::pauseChannels for pausing SFX and keeping adlib music ↵Robert Göffringmann
running (needed by BASS when menu bar drops down) svn-id: r9607
2003-08-05some cleanup; added Channel::getVolume, once somebody tells me what exactly ↵Max Horn
is needed, I can add per-channel volume, and also per-channel panning svn-id: r9525
2003-08-01implemented raw sound looping; some debug output enabled temporarilyMax Horn
svn-id: r9360
2003-08-01#include cleanup (explicityl specify the location for headers from common/, ↵Max Horn
so that we at some point can get rid of -Icommon; exception is made for stdafx.h, since a) we might want to rename it and b) might want to move it to the top level) svn-id: r9359
2003-07-31revamped MP3/Vorbis CD 'emulation' code to use a PlayingSoundHandle -> this ↵Max Horn
allows to finally get rid of the hackish isChannelActive/isChannelUsed methods in SoundMixer svn-id: r9346
2003-07-29cleanupMax Horn
svn-id: r9281
2003-07-25lots of mixer changes: replaced _volumeTable by _globalVolume (applying ↵Max Horn
volume after resampling is more accurate); made more member vars of SoundMixer protected (and thus added some new getter methods); added (untested) support for a second (stereo) channel when playing MP3 svn-id: r9184
2003-07-24whitespaceMax Horn
svn-id: r9181
2003-07-14removed whitespaces at line ends; added stopHandleMax Horn
svn-id: r9022
2003-07-06mix() is really a private method, only to be called by the audio thread; ↵Max Horn
cover setupPremix by the mutex, too (that helps preventing race conditions upon exit) svn-id: r8809
2003-07-06now that we mutex-protect everything properly, we can get rid of ↵Max Horn
_toBeDestroyed; also, instead of keeping a global _handles array in the mixer, let each Channel manage its own handle svn-id: r8808
2003-07-06cleanup to the mixer helper proc interface and to ChannelStreamMax Horn
svn-id: r8785
2003-07-05updated code to use type MutexRef; added class StackLock (from sdl backend, ↵Max Horn
now in util.*) svn-id: r8777
2003-06-22Change names of the stream API in the mixer; added endStream method (stop() ↵Max Horn
halts stream immediately; endStream() lets it first finish playing) svn-id: r8603
2003-06-22renamed SoundMixer::hasActiveChannel->hasActiveSFXChannel, and fixed the ↵Max Horn
regression in it caused by removing _beginSlots (I hope); added isActiveChannel method used by scumm/sound.cpp (this allowed me to move the Channel class from mixer.h into mixer.cpp); replaced Channel::soundFinished method by isActive svn-id: r8597
2003-06-22remove the realDestroy methods and instead use destructors; renamed insertAt ↵Max Horn
to insertChannel and simplified/unified its usage; delete the mutex when exiting; cleanup svn-id: r8596
2003-06-21lots of mixer cleanup / refactoring / reengineeringMax Horn
svn-id: r8594
2003-06-21modified & cleaned up the playStream/append code a bit; but this API really ↵Max Horn
could stand some refinement svn-id: r8592
2003-06-21cleanupMax Horn
svn-id: r8584
2003-06-18Use stdafx.h instead of manually including system headers.Marcus Comstedt
svn-id: r8541
2003-06-15more cleanupMax Horn
svn-id: r8497
2003-05-18HAVE_CONFIG_HJonathan Gray
svn-id: r7632
2003-03-18cleanup; add stopID method to stop a currently playing sound via its IDMax Horn
svn-id: r6835
2003-03-06updated copyrights headersPaweł Kołodziejski
svn-id: r6726
2003-03-06and more cleanup ....Paweł Kołodziejski
svn-id: r6719
2002-12-25fix -pedantic warningsMax Horn
svn-id: r6108
2002-11-10added looping support to playRawOliver Kiehl
svn-id: r5501
2002-10-28Fix using MAD -without- Vorbis, and remove COMPRESSED_SOUND_FILE define.James Brown
Please keep in mind that if you put an 'else' statement in an if clause, keep in mind that if the code it's supposed to 'else' is in another define.... and that isn't set... the NEXT statement of code will be used as the 'if..else' condition. svn-id: r5344