aboutsummaryrefslogtreecommitdiff
path: root/audio
AgeCommit message (Collapse)Author
2011-05-17FM-TOWNS AUDIO: Implement some more midi driver codeathrxx
2011-05-17FM-TOWNS AUDIO: Implement some midi driver functionsathrxx
2011-05-17SCUMM: Adapt code to latest FM-TOWNS audio driver changesathrxx
2011-05-17FM-TOWNS AUDIO: Change internal interface layoutathrxx
2011-05-17FM-TOWNS AUDIO: Some more midi driver code for FM-TOWNS monkey2 and indy4athrxx
2011-05-17COMMON: Forbid use of some more symbolsMax Horn
2011-05-17AUDIO: Fix typoMax Horn
2011-05-16AUDIO: Clarify required parameters for mixCallback.Alyssa Milburn
Also, add an assert() to make invalid lengths obvious.
2011-05-13SWORD25: Fix compilation when libvorbis is not presentmd5
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2011-05-10AUDIO: Change byte data tables to type AdLibInstrumentMax Horn
2011-05-02ALL: Mark printf and various other symbols as forbiddenMax Horn
Right now, a few places in the frontend code still use printf and consorts. We mark the affected files with a FIXME for now, and add a dedicated exception for each. To be fixed! Also tweak FORBIDDEN_SYMBOL_REPLACEMENT to hopefully really always enforce a compiler error
2011-05-02AUDIO: Rename clock() -> updateClock() in SID emulatorMax Horn
2011-04-28ARM: Fix compilation really harddhewg
2011-04-28ANDROID: Fix compilation harderdhewg
2011-04-28JANITORIAL: Reduce header dependencies in shared codeOri Avtalion
Some backends may break as I only compiled SDL
2011-04-28JANITORIAL: Format forward declarations to follow conventionOri Avtalion
2011-04-24AUDIO: Cleanup MS IMA handlingMatthew Hoops
- Split The Last Express' ADPCM to the engine. Using the MS IMA routine was really a hack. - Fixed stereo MS IMA ADPCM, the old routine was completely wrong.
2011-04-23ASM: Defines do not get mangleddhewg
2011-04-22AUDIO: Fix Tremolo supportdhewg
Include by used library, not by backend
2011-04-21FM-TOWNS AUDIO: fix memory leakathrxx
2011-04-18Merge pull request "New mixer mute handling."Johannes Schickel
See https://github.com/scummvm/scummvm/pull/12 for more information.
2011-04-16AUDIO: Cleanup sound type settings handling in MixerImpl.Johannes Schickel
2011-04-16AUDIO: Renamed mute related functions in Mixer.Johannes Schickel
This renames setMuteForSoundType to muteSoundType and getMuteForSoundType to isSoundTypeMuted.
2011-04-14AUDIO: Name the ADPCM status struct.Alyssa Milburn
2011-04-14AUDIO: Fix a typoMatthew Hoops
2011-04-14ALL: centre -> centerMax Horn
2011-04-13AUDIO: Add per sound type mute flag setting to Mixer(Impl).Johannes Schickel
This also adapts our default implementation MixerImpl to handle the newly added flags properly. Now we do not need to set the sound volume for all types to 0, in case we want to mute them, but instead just set the mute flag for all types to true. This allows engines to be a bit more agonstic about mute support, when it comes to volume options etc. since they can just setup any volume they like, but are still muted (and thus will not break muting anymore). MIDI sound is of course not affected by this.
2011-04-13AUDIO: Split the Intel DVI ADPCM into its own classMatthew Hoops
IMA is really just the definition on how to decode a sample from a nibble, DVI is just a way for those nibbles to be stored in the stream.
2011-04-13AUDIO: Expose some internal ADPCM data tablesMax Horn
2011-04-13AUDIO: Stop adpcm.h from including common/stream.hMax Horn
2011-04-13TINSEL: Move custom ADPCM decoders to tinsel engineMax Horn
2011-04-13AUDIO: Expose ADPCM decoder internals via a new headerMax Horn
There are tons of ADPCM variants out there, and it is impractical to stuff them all into a single adpcm.cpp file. By exposing the internals, engines can implement their ADPCM decoder variants more easily.
2011-04-12COMMON: Replace MKID_BE by MKTAGMax Horn
MKID_BE relied on unspecified behavior of the C++ compiler, and as such was always a bit unsafe. The new MKTAG macro is slightly less elegant, but does no longer depend on the behavior of the compiler. Inspired by FFmpeg, which has an almost identical macro.
2011-03-28AUDIO: Add Audio::MidiPlayer::createDriver(), let some engines use itMax Horn
2011-03-27ANDROID: Use the midi gain option for EASdhewg
2011-03-26ANDROID: Maybe working support for EAS DLS soundfontsdhewg
2011-03-26ANDROID: Add code to dump the EAS stream to a filedhewg
2011-03-26ANDROID: Fix MIDI packet sizedhewg
Instruments are now not reset to the grand piano due to trailing zeroes. Thanks to waltervn for noticing this.
2011-03-25AUDIO: Document issues with semantics of Audio::MidiPlayer::isPlaying()Max Horn
2011-03-25ANDROID: Experimental MIDI Driverdhewg
Based on the SONiVOX® Embedded Audio Synthesis (EAS™) library, which is part of the base Android OS. CPU stats (Cortex A8 1GHz, monkey1 intro, peak values): MAME OPL: 30% DosBox OPL: 26% EAS: 19%
2011-03-25AUDIO: Move more common code to Audio::MidiPlayerMax Horn
This also should fix some regressions from the previous commits, related to MidiParser's either being leaked, or being deleted and then used again (i.e., crashing). I tested as many games as I had available, but further testing of all affected engines is called for anyway.
2011-03-25AUDIO: Whitespace fixMax Horn
2011-03-25AUDIO: Rename 'channel' to 'ch'Max Horn
2011-03-24AUDIO: Expand MidiPlayer docs / goals a bit, mention deadlock bugMax Horn
2011-03-24AUDIO: Added Audio::MidiPlayer classMax Horn
This code is currently not complete, but contains enough code to allow several engines to switch their pseudo MidiDrivers to be based on this class, greatly reducing code duplication.
2011-03-23AUDIO: Introduce a new MidiDriver_BASE base class.Max Horn
The actual MidiDriver derives from it. MidiDriver_BASE only provides the minimal API necessary for transmitting MIDI data. The idea is that this is all MidiParser needs, thus allowing us to simplify the various MidiPlayer classes in our engines.
2011-03-23AUDIO: Update some comments, remove some obsolete onesMax Horn
2011-03-22AUDIO: Add pure virtual MidiDriver::isOpen() methodMax Horn
This in turn enables modifying MidiDriver_MPU401::close() to allow it to be called on a midi driver that has not yet been opened. The specific issue that triggered me to make these changes was a crash-upon-quit in HUGO, caused by it instantiating a midi driver, then encountering an error (missing hugo.dat) *before* having opened the new midi driver; the general cleanup code then tries to close the (not yet opened) midi driver -> kaboom Also fixed some engines which were leaking MidiDriver instances.
2011-03-22AUDIO: Cleanupdhewg
Is it just me or is overwriting-but-not-marking-as-virtual irritating?