Commit Graph

972 Commits

Author SHA1 Message Date
Max Horn
664446f5d8 Fixed some more warnings
svn-id: r28948
2007-09-18 20:48:42 +00:00
Max Horn
4cc9d17c34 Adding various FIXME comments to bogus (non-self-explanatory) existing FIXME comments; and some other related cleanup
svn-id: r28890
2007-09-11 09:20:39 +00:00
Chris Apers
500481c4ec Cleanup: remove obsolete code (PalmOS 68K version not supported anymore)
svn-id: r28803
2007-09-01 19:13:04 +00:00
Filippos Karapetis
99a5545702 Reverted commit #28696, as the cause for it was different and has been fixed with commit #28697
svn-id: r28699
2007-08-22 22:43:47 +00:00
Filippos Karapetis
532c8c4230 Detach the player callback handler when the music is being unloaded. Fixes bug #1734416 - "AUDIO: ITE: Random crashes with the MIDI parser"
svn-id: r28696
2007-08-22 12:20:21 +00:00
Kari Salminen
ef1fca15f0 Removed extra commas from lookup-tables' ends.
svn-id: r28676
2007-08-20 10:43:07 +00:00
Travis Howell
d764dca90f Ooops, fix typo in last commit.
svn-id: r28257
2007-07-28 07:56:58 +00:00
Travis Howell
bb2796c57a Add support for multi-tune Protracker modules used in the Amiga version of Waxworks.
svn-id: r28256
2007-07-28 07:52:24 +00:00
Max Horn
19ad20c201 Don't be so strict about un-pausing sounds which are not paused currently
svn-id: r28163
2007-07-22 11:54:35 +00:00
Max Horn
11b2806741 Removed the old (obsolete) audiostream factories for MP3/Vorbis/FLAC data which took a File pointer and a size (these were only implemented as brain-dead wrapper around the newer factory methods anyway)
svn-id: r28110
2007-07-15 18:29:05 +00:00
Max Horn
19bb631e94 Fix looping effect (at least DrMcCoy says it fixes it somehow, and I trust him in that :)
svn-id: r27835
2007-07-01 19:59:42 +00:00
Max Horn
e1bcd70436 Re-added __attribute__(packed)
svn-id: r27830
2007-07-01 18:18:43 +00:00
Max Horn
f7041f94ce Once again rewrite Paula code (addings lots of comments, doing proper wrap around at the ends of samples and some other tweaks). More to follow
svn-id: r27828
2007-07-01 16:31:26 +00:00
Max Horn
e2ad271bd8 Removing non-ASCII chars from source code
svn-id: r27818
2007-07-01 12:47:07 +00:00
Max Horn
93b1a53c72 Changed semantics of Mixer::pause*() methods -- if you pause n times, you have to unpause n times before the sound resumes (this means pauseAll works correct in engines which selectively pause/resume single sounds)
svn-id: r27798
2007-06-30 21:02:58 +00:00
Max Horn
6290f0b20a Tabs -> spaces
svn-id: r27790
2007-06-30 13:40:52 +00:00
Robin Watts
b9c8c6c868 Update the ARM version of the rate conversion code, in line with Fingolfins
optimisatins of the C version last night. Saves about 5 cycles per sample.

svn-id: r27789
2007-06-30 12:54:07 +00:00
Max Horn
3535eaec20 Tweak LinearRateConverter code so that opos is in the range [0,1[ instead of [-1,0[ when entering the interpolation loop (this allows us to get rid of '& FRAC_LO_MASK')
svn-id: r27780
2007-06-30 00:03:32 +00:00
Max Horn
b62ef0496c Added small explanatory comment
svn-id: r27779
2007-06-29 23:33:16 +00:00
Max Horn
f058edf860 Switched Paula (Amiga MOD) code to use fixed point math instead of doubles (caveat: this only works for samples < 32k right now; if this ever turns out to be a problem, I can fix it, though)
svn-id: r27767
2007-06-28 22:21:32 +00:00
Max Horn
1a3724b59b cleanup
svn-id: r27765
2007-06-28 20:18:56 +00:00
Max Horn
5b75e49182 Fix a bad, bad out-of-bounds write in the Protracker code
svn-id: r27764
2007-06-28 20:15:10 +00:00
Max Horn
21aa642e7a Some optimizations to the Paula sound chip emu code (removing common sub expressions and stuff)
svn-id: r27761
2007-06-28 19:47:47 +00:00
Max Horn
6dfa44dbd5 Moved some fixed point code to its own header file; simplified the LinearRateConverter code a bit; corrected some comments; split makeRateConverter into two funcs (one of them being a template func), for easier maintenance
svn-id: r27760
2007-06-28 19:35:48 +00:00
Max Horn
2249db2c6d Started to refactor the Paula / Amiga MOD code: Made some stuff in class Paula private and added accessor APIs instead
svn-id: r27759
2007-06-28 17:42:57 +00:00
Max Horn
c69fe68112 Minor cleanup
svn-id: r27758
2007-06-28 16:39:04 +00:00
Robin Watts
b53cebe62d Fix for a stupid typo in yesterdays sound fill tweak.
This fixes bug 1743016. Thanks to erictorbjorn and md5 for pointing me at it.

svn-id: r27718
2007-06-25 21:09:08 +00:00
Eugene Sandulenko
22f06325d4 Patch #1742574: "GUI: Unify "Default" options text"
svn-id: r27698
2007-06-25 07:01:13 +00:00
Robin Watts
997253fe6a Small tweak to the readBuffer routines of sound/audiostream.cpp; by counting a
variable down we save 1 cycle per sample copied (at least) on most
architectures.

svn-id: r27693
2007-06-24 17:42:36 +00:00
Max Horn
a106f01d2f Remove useless startPlay override from ProtrackerStream
svn-id: r27692
2007-06-24 12:35:50 +00:00
Max Horn
61af086e8e Mod code cleanup
svn-id: r27690
2007-06-24 11:40:00 +00:00
Max Horn
e01c939229 cleanup
svn-id: r27501
2007-06-16 23:50:57 +00:00
Max Horn
1b28bd4644 cleanup
svn-id: r27500
2007-06-16 23:41:37 +00:00
Max Horn
a435757699 Avoid using the 'st_sample_t out[2]' arrays inside tight loops, as some compilers are bad at optimizing array access due to pointer aliasing
svn-id: r27499
2007-06-16 23:07:25 +00:00
Max Horn
b7412d21fd Tiny changes to help optimizer resolve array aliasing
svn-id: r27471
2007-06-16 17:12:08 +00:00
Max Horn
e44b518c23 Patch #1717419: Optimisation for sound rate conversion code
svn-id: r27470
2007-06-16 17:09:54 +00:00
Eugene Sandulenko
2f127122b3 Fix legal header for new files.
svn-id: r27468
2007-06-16 16:52:52 +00:00
Max Horn
6498d669d0 Patch #1721826: ARM asm versions of sound rate conversion/mixing code
svn-id: r27467
2007-06-16 16:46:13 +00:00
Max Horn
0d77f50d6b Removed dead code
svn-id: r27066
2007-06-03 15:56:14 +00:00
Max Horn
218e132e37 Updated legal headers in source files, based on what Pidgin (the IM client formerly knowns as Gaim) does; added new (incomplete) COPYRIGHT file; updated copyright dates in a few spots
svn-id: r27024
2007-05-30 21:56:52 +00:00
Johannes Schickel
86104e0bf0 Reverted r26922.
svn-id: r26967
2007-05-27 11:40:03 +00:00
Johannes Schickel
8ff17142c5 Simpilified Singleton implementation and usage.
svn-id: r26922
2007-05-22 14:17:44 +00:00
Gregory Montoir
e0159324cc some fixes for the music in Amiga OS Demo
svn-id: r26886
2007-05-20 11:50:06 +00:00
Gregory Montoir
620c8a5647 added Amiga SoundFx module player code, used by Amiga versions of the following Delphine Software games : Future Wars, Operation Stealth, Cruise for a Corpse and Another World
svn-id: r26869
2007-05-19 12:06:51 +00:00
Nicola Mettifogo
008042ac25 Implemented a IFF (Interchange File Format) parser and added subclasses to parse graphics (ILBM, PBM) and audio (8SVX), thus replacing old decoding routines. SAGA and Parallaction have been adjusted to work with the new code.
svn-id: r26719
2007-05-01 15:39:40 +00:00
Max Horn
4958b58622 Added a doxygen comment to makeProtrackerStream -- somebody who knows the code behind this please complete/enhance this
svn-id: r26616
2007-04-27 19:50:45 +00:00
Max Horn
d4660cce55 Removing more semicola
svn-id: r26597
2007-04-26 19:08:53 +00:00
Max Horn
00b9bc7b36 Removing lots of superfluous semicola (see mail by David Weinehall on scummvm-devel)
svn-id: r26594
2007-04-25 19:31:23 +00:00
Max Horn
82d7f4afa9 Patch #1701118: Remove non-english characters from ym2612.cpp
svn-id: r26551
2007-04-19 20:34:33 +00:00
Sven Hesse
e962db5b6d Some more supposedly unitialized variables (see bug #1700986)
svn-id: r26509
2007-04-15 16:30:54 +00:00
Max Horn
2aeb84f12a Got rid of the last traces of DigitalTrackInfo
svn-id: r26477
2007-04-14 18:51:38 +00:00
Max Horn
adb0f89ae3 Rewrote AudioCDManager to not use DigitalTrackInfo instances anymore, but rather create/use track AudioStream instances directly
svn-id: r26476
2007-04-14 18:48:09 +00:00
Max Horn
8f5abc1924 Extended Audio::openStreamFile function with startTime, duration and numLoops parameters, and slightly cleaned up its code
svn-id: r26471
2007-04-14 17:12:43 +00:00
Torbjörn Andersson
c51e87fdac When the appendable audiostream is done with a queued buffer, delete it as
documented.

svn-id: r26444
2007-04-09 19:49:03 +00:00
Torbjörn Andersson
41a5f70d72 I hope this fixes the file headers.
svn-id: r26428
2007-04-09 10:53:17 +00:00
Torbjörn Andersson
2d209264c9 Implemented enough of AIFF to play the music from the Broken Sword 1 demo. At
least as far as I tried it which, admittedly, wasn't very far.

svn-id: r26423
2007-04-09 09:58:41 +00:00
Neil Millstone
dca464b06e Changes to CPU local ram allocation for DS port
svn-id: r26395
2007-04-06 18:35:35 +00:00
Max Horn
f069c5e8ff Changed the MP3 playback code again, this time hopefully fixing the problems in the MI Amiga demo
svn-id: r26392
2007-04-06 17:16:49 +00:00
Max Horn
0df4d74ae6 Fixed looping of MP3 tracks (same problem as with the FLAC tracks)
svn-id: r26389
2007-04-06 13:28:33 +00:00
Max Horn
8a1cf1c2d0 Fix looping for FLAC tracs (looping parts of a file already worked, but looping until the end of data didn't)
svn-id: r26388
2007-04-06 13:16:53 +00:00
Johannes Schickel
013d576417 Added standard fileheader. (oops)
svn-id: r26286
2007-03-24 00:09:08 +00:00
Johannes Schickel
d1645e2fbf Commit of patch #1686414 ("Kyra: FM-Towns music").
svn-id: r26285
2007-03-24 00:04:08 +00:00
Max Horn
ed54ea9155 Moved Event/EventType/keyboard enum from common/system.h (part of class OSystem) to common/events.h (part of namespace Common). Porters may have to make minor changes to their backends to get them to compile again
svn-id: r26180
2007-03-17 19:02:05 +00:00
Max Horn
15d9bc42ea Force all code to use EventManager::pollEvent instead of OSystem::pollEvent
svn-id: r26156
2007-03-17 00:53:21 +00:00
Eugene Sandulenko
06c2976fa0 More fixes for MSVC8 warnings.
svn-id: r26063
2007-03-10 15:04:06 +00:00
Max Horn
69b8d7240a Removed obsolete comment
svn-id: r25956
2007-03-04 00:18:49 +00:00
Max Horn
200bb41bfd Updated comment
svn-id: r25929
2007-03-02 17:49:08 +00:00
Max Horn
029b8c4323 Changed the order of the parameters of makeLinearInputStream to resemble Mixer::playRaw; also made makeLinearInputStream honor FLAG_LOOP (and for this, changed its loop related params slightly)
svn-id: r25926
2007-03-02 15:26:22 +00:00
Max Horn
d8cf10926b Added a warning that the mixer FLAG_ enum should not be messed with, lest iMuseDigital saves will break
svn-id: r25925
2007-03-02 15:22:38 +00:00
Max Horn
c2dbd22692 Added reverseStereo parameter to Mixer::playInputStream; changed Mixer::playRaw to use Mixer::playInputStream
svn-id: r25923
2007-03-02 14:49:07 +00:00
Max Horn
6ee03e91c7 Rephrased a comment a bit
svn-id: r25914
2007-03-01 13:51:04 +00:00
Max Horn
8c8abca6f8 Changed the AppendableAudioStream code to use a queue of buffers, instead of a fixed size wrap-around memory buffer (this reduces memory usage in some cases by 500-700k, while actually being more flexible)
svn-id: r25909
2007-02-28 14:48:26 +00:00
Max Horn
6be027afab cleanup
svn-id: r25906
2007-02-28 12:54:59 +00:00
Max Horn
7f09562d08 Changed AudioStream::openStreamFile to use the modern variant of the audio stream factories (thus, the FLAC/Ogg/MP3 files it opens are not read completely into memory anymore)
svn-id: r25839
2007-02-24 23:53:35 +00:00
Max Horn
8366420474 Remove unneeded #includes
svn-id: r25838
2007-02-24 23:41:20 +00:00
Max Horn
b3931a847d Trying to unify the order in which we try the various audio formats: Prefer FLAC (lossless) over Ogg Vorbis ('free') over MP3 -- the order is admittedly somewhat arbitrary, but at least now it's consistent across all parts of ScummVM
svn-id: r25837
2007-02-24 23:40:28 +00:00
Max Horn
65b30d84a8 Added numLoops parameter to DigitalTrackInfo::play
svn-id: r25836
2007-02-24 23:19:53 +00:00
Max Horn
8052e2ce25 Add looping support to the FLAC decoder
svn-id: r25833
2007-02-24 22:14:48 +00:00
Max Horn
5e5b37534f Replaced variable buffer in the FLAC code by a fixed on
svn-id: r25832
2007-02-24 21:25:46 +00:00
Max Horn
e32d3cafed more FLAC code cleanup
svn-id: r25831
2007-02-24 21:13:30 +00:00
Max Horn
ebfb2c57e1 Removed FlacInputStream::deleteBuffer
svn-id: r25829
2007-02-24 19:54:54 +00:00
Gregory Montoir
11e679845d some fixes and additions for FOTAQ amiga versions
svn-id: r25825
2007-02-24 18:39:08 +00:00
Johannes Schickel
7612aa5ee1 fixed comments.
svn-id: r25797
2007-02-22 20:46:09 +00:00
Max Horn
f695b21d60 FLAC code cleanup
svn-id: r25796
2007-02-22 18:42:03 +00:00
Max Horn
52eebf9192 added yet another #pragma mark to the vorbis code (just for the sake of *my* text editor -- yeah, I'm selfish :-)
svn-id: r25795
2007-02-22 18:38:05 +00:00
Max Horn
4dae49e75a cleanup
svn-id: r25794
2007-02-22 18:35:57 +00:00
Max Horn
82ae8daccf Reduce chance for overflows in VorbisTrackInfo::play
svn-id: r25793
2007-02-22 18:33:01 +00:00
Max Horn
8ce7566c8d Updated FLAC code to match the changes made to the MP3 & Vorbis decoders (e.g. use a SeekableReadStream for input, allow specifying parts of a stream via time-valued parameters, etc.) -- note: looping is not yet implemented, even though it is already present in the API
svn-id: r25792
2007-02-22 18:21:01 +00:00
Max Horn
c3254cde9e If an AudioStream returned a negative number in his readBuffer() method, then CopyRateConverter::flow could have got stuck in a (quasi) endless loop
svn-id: r25790
2007-02-22 16:36:03 +00:00
Max Horn
f16ab37698 Added looping support and an enhanced factory function to the Vorbis code
svn-id: r25789
2007-02-22 14:30:12 +00:00
Max Horn
1c02ed60d0 cleanup
svn-id: r25788
2007-02-22 14:07:12 +00:00
Max Horn
2c1445056d Rewrote Ogg Vorbis code to be more flexible when it comes to seeking; also now playback from arbitrary SeekableReadStream data sources is possible
svn-id: r25784
2007-02-22 10:51:47 +00:00
Gregory Montoir
948630c3b4 added initial support for FOTAQ amiga versions
svn-id: r25769
2007-02-21 20:27:48 +00:00
Max Horn
cb40356a7b Revamed the Ogg Vorbis & FLAC DigitalTrackInfo subclasses to work similar to the MP3 one (i.e. only open the data file when about to play)
svn-id: r25757
2007-02-20 23:40:46 +00:00
Max Horn
42745b188e Added looping to the MP3 streams (currently virtually untested, so watch out)
svn-id: r25756
2007-02-20 22:18:48 +00:00
Max Horn
acdb32d84d Remove some leftover comments I made while writing the new MP3 code; make use of the new ReadStream::readStream() method in makeMP3Stream()
svn-id: r25755
2007-02-20 21:53:22 +00:00
Max Horn
227a080e5b Patch #1663933 (Kill premix channel) with a few tiny additional tweaks by me
svn-id: r25752
2007-02-20 18:50:17 +00:00
Max Horn
91f088bb8b Rewrote MP3InputStream mostly from scratch:
- added support for  proper time-based seeking (for now internally only)
- this should permit VBR encoded MP3 audio CD tracks to be used (not tested)
- Symbian specific hacks were removed, as they hopefully aren't needed anymore
  (not tested))

This change will is likely to introduce regressions, everybody please test all
cases where we allow using MP3 encoded data

svn-id: r25750
2007-02-20 17:57:49 +00:00
Max Horn
35b191bad9 Document AudioCDManager::play
svn-id: r25742
2007-02-20 16:13:45 +00:00
Max Horn
b162e0dc04 Cleaned up AudioCDManager::getCachedTrack (in particular, don't empty a slot in the track cache if we are not going to use it)
svn-id: r25740
2007-02-20 13:50:20 +00:00