aboutsummaryrefslogtreecommitdiff
path: root/audio
AgeCommit message (Collapse)Author
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?
2011-03-19ALL: s/PI/M_PI/dhewg
Tip of the day: git grep -w PI
2011-03-19AUDIO: Changed several places that use PI to use M_PI insteadmd5
2011-03-11AUDIO: Fix some whitespacesdhewg
2011-03-11AUDIO: Work around ARM code volume limitsdhewg
The ARM specific rate converters work with 8bit volume vars. Limit volumes to 0xff to prevent crackling.
2011-03-01AUDIO: Removed comment about MDT_PREFER_MT32 and the MT-32 emulatormd5
2011-03-01MIDI: Updated documentation on MDT_PREFER_MT32 and MDT_PREFER_GMmd5
2011-02-27AUDIO: Make mixCallback return the sample countdhewg
The RateConverter::flow result was never used, pipe it through Channel::mix to MixerImpl::mixCallback, so backends can decide if they want to waste cpu cycles while playing empty buffers.
2011-02-14MT32: Adapt to setPalette RGBA->RGB change.Johannes Schickel
2011-02-13AUDIO: Fix assertion triggered by SubSeekableAudioStream constructor.Johannes Schickel
This assertion was introduced with 633b8ed27784. I change the code to first convert all parameters to the audio stream's framerate to avoid a possible use of operator- on two AudioTimestamps with different framerates.
2011-02-09AUDIO: Rename sound/ dir to audio/Max Horn
svn-id: r55850