Commit Graph

455 Commits

Author SHA1 Message Date
Max Horn
9e88df9e16 some (untested!) support for backends which require unsigned audio samples
svn-id: r10183
2003-09-11 22:57:06 +00:00
Max Horn
c0e2d2be66 fixed module.mk
svn-id: r10155
2003-09-10 12:41:14 +00:00
Max Horn
eae239394c moved declaration of error/warning/debug from engine.h to util.h; added voc.cpp
svn-id: r10150
2003-09-10 12:19:57 +00:00
Travis Howell
123c9035cf Up debug level of this warning, since it floods output in loom
svn-id: r10131
2003-09-09 13:23:09 +00:00
Max Horn
555dae9fee map 0xA5 to 11025 Hz, too
svn-id: r10129
2003-09-09 12:36:41 +00:00
Max Horn
2c67f7b32f map 0xD3 in VOC headers to 22050 Hz, too
svn-id: r10128
2003-09-09 12:34:13 +00:00
Max Horn
ef373fe2e8 start to use code from the original resample codebase, since it uses fixed point math instead of float; however, the code is not at all complete right now, I just commit this to get it off my HD (neither the old nor the new code in resample.cpp work anyway)
svn-id: r10089
2003-09-08 15:32:37 +00:00
Max Horn
ea461dfc3c new header file for VOC specific stuff
svn-id: r10072
2003-09-07 20:23:38 +00:00
Max Horn
0be0196013 removed pauseMixer method from mixer, and renamed stop to stopChannel
svn-id: r10042
2003-09-06 10:47:30 +00:00
Max Horn
eac128f011 optimized channel volume/pan handling
svn-id: r10028
2003-09-05 23:27:11 +00:00
Max Horn
3aa8454efa moved the sound ID param in playRaw before volume/pan
svn-id: r10023
2003-09-05 22:09:56 +00:00
Max Horn
caf8e8f5fc oops
svn-id: r10021
2003-09-05 21:18:44 +00:00
Max Horn
06b6ff9a44 added default volume/pan values
svn-id: r10019
2003-09-05 21:06:32 +00:00
Max Horn
11193b0746 cleaned up sound/mixer.h a bit; renamed some mixer methods for consistency
svn-id: r10018
2003-09-05 20:48:32 +00:00
Paweł Kołodziejski
7bc63a0ce3 fixes for uninitialized pan and volume
svn-id: r9998
2003-09-05 06:22:10 +00:00
Jonathan Gray
e17a451ac5 remove shadow'd var by using variable name from prototype
svn-id: r9979
2003-09-02 22:38:53 +00:00
Paweł Kołodziejski
7c4e678a87 moved volume and pan control into flow func
svn-id: r9976
2003-09-02 20:34:22 +00:00
Torbjörn Andersson
4b49daf3ff Fixed compiler warning that I introduced earlier.
svn-id: r9974
2003-09-02 16:51:51 +00:00
Torbjörn Andersson
f486997822 Added per-channel pausing. Maybe I should have named the pauseChannel()
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-02 13:48:20 +00:00
Paweł Kołodziejski
db18d4657c forgot this
svn-id: r9957
2003-09-01 14:02:45 +00:00
Chris Apers
e6a0261c7e The channel could be destroyed so changeVolumeAndPan can't access it in that case
svn-id: r9955
2003-09-01 10:12:28 +00:00
Paweł Kołodziejski
82fea49671 added comments:
volume: 0 - 127
pan: (-127 <-> 0 <-> 127) (left <-> center <-> right)

svn-id: r9945
2003-08-31 20:36:53 +00:00
Paweł Kołodziejski
2533b23a60 added mixer features: volume and pan control per channel
svn-id: r9944
2003-08-31 20:26:21 +00:00
Torbjörn Andersson
f72681b10a Made PlayingSoundHandle unsigned again, since the mixer change was
reverted.

svn-id: r9930
2003-08-30 20:36:44 +00:00
Paweł Kołodziejski
c684a076ee revert id handle stuff
svn-id: r9927
2003-08-30 20:25:07 +00:00
Torbjörn Andersson
bfee72f757 If -1 is going to be a valid value for a PlayingSoundHandle, the data type
had better be signed...

svn-id: r9925
2003-08-30 20:07:09 +00:00
Paweł Kołodziejski
9c05d44d00 added func isChannelActive for mixer, and fixed handling numbers of channel 0
svn-id: r9924
2003-08-30 18:12:49 +00:00
Max Horn
57493197e8 small cleanup for the Ogg playback code
svn-id: r9852
2003-08-24 21:54:46 +00:00
Jamieson Christian
d7fae3d1cb More corrections to the VAR_MUSIC_TIMER
computations, mostly to produce the
exptected output with AD resources.

svn-id: r9730
2003-08-16 17:08:22 +00:00
Jamieson Christian
121b00a6f7 Corrected timing mechanism for RO music streams.
RO streams have built-in timer markers (the
unknown 0xA0 mentioned in FR [742249]) that
override automated methods of updating
VAR_MUSIC_TIMER. Since these timer markers
do not seem to be present in AD resources, the
old mechanism is used if MD_ADLIB is the current
MidiDriver.

svn-id: r9720
2003-08-16 09:34:19 +00:00
Jamieson Christian
17be1ad7d5 Removed incorrect acknowledgements (copy/paste error)
svn-id: r9680
2003-08-14 05:07:31 +00:00
Bertrand Augereau
0d54ac09c1 ZeroInputStream::readBuffer didn't have the same signature as the base class version, making VC.NET 2K3 complain
svn-id: r9668
2003-08-13 22:01:34 +00:00
Jamieson Christian
fb62ba61ca Added PC Speaker and PCjr command line options,
in preparation for Kirben's addition of WA support
for games that already have AD tracks.

svn-id: r9656
2003-08-13 14:08:21 +00:00
Robert Göffringmann
7f7b0af613 added SoundMixer::pauseChannels for pausing SFX and keeping adlib music running (needed by BASS when menu bar drops down)
svn-id: r9607
2003-08-09 19:19:27 +00:00
Jamieson Christian
154e872d5a Added generic send() option to MidiChannel.
This circumvents problems doing generic send()
calls to MidiDrivers that support more than
16 MIDI channels (i.e. Adlib). Because of the
way it interacts with MidiDriver, Simon could
have run into a problem if it tried to
allocate more than 15 Adlib music channels
(though this would only happen in very, VERY
rare circumstances).

Also fixed a problem with the channel
numbering scheme used by MidiDriver_Adlib,
in particular the percussion channel number.

svn-id: r9604
2003-08-08 11:54:24 +00:00
Jamieson Christian
4353f4531c Send All Notes Off to every channel on close
svn-id: r9593
2003-08-08 07:23:11 +00:00
Max Horn
ac6bd10c59 my code was actually right. Rather the calling code is evil, it passes us odd buffer sizes for 16 bit audio data, which of course made no sense -> I added some asserts against this
svn-id: r9590
2003-08-07 23:54:39 +00:00
Jamieson Christian
93c90f4674 Fix for Bug [780924] IMUSE: Pitchbend isn't reset when changing tracks
When scanning (not jumping) to a target location
in a different track, the current track is first
scanned to the end to update the player state
before starting into the new track.

Miscellaneous scan-related cleanup is included.

svn-id: r9589
2003-08-07 23:42:15 +00:00
Max Horn
f67b126f1d replace code in readBuffer by slightly less efficient but hopefully working code (at least it fixes an endless loop in COMI for me). I did fix the originaly bug in my optimization, and right now I clueless as to why that code isn't working as it should <sigh>. Need sleep
svn-id: r9588
2003-08-07 22:19:55 +00:00
Jamieson Christian
d8464534a5 Added comment to new macro
svn-id: r9581
2003-08-06 20:44:42 +00:00
Jamieson Christian
99716fc38e Changed readSample template function
to Fingolfin's new READSAMPLE macro.
Circumvents buggy template function
handling in MSVC6. Props to Fingolfin
for tracking this bug down by remote.

svn-id: r9580
2003-08-06 20:41:05 +00:00
Max Horn
69ee268e7f some cleanup
svn-id: r9575
2003-08-06 17:13:04 +00:00
Chris Apers
1a0d308e04 Fixed type mismatch error compiling palmos port
svn-id: r9552
2003-08-06 11:53:18 +00:00
Max Horn
75db41750e getting rid of g_mixer; removing lots of whitespace
svn-id: r9527
2003-08-05 23:58:24 +00:00
Max Horn
48d1739e0a some cleanup; added Channel::getVolume, once somebody tells me what exactly is needed, I can add per-channel volume, and also per-channel panning
svn-id: r9525
2003-08-05 23:03:42 +00:00
Max Horn
d618ace0c0 begone, old mixer code
svn-id: r9521
2003-08-05 21:46:56 +00:00
Max Horn
7ff88ea392 more cleanup
svn-id: r9513
2003-08-05 18:17:26 +00:00
Max Horn
79fd7ee441 cleanup
svn-id: r9512
2003-08-05 18:12:59 +00:00
Max Horn
4c4aa4e957 fix bug #783423
svn-id: r9484
2003-08-05 11:30:13 +00:00
Max Horn
1eaf41eda4 more cleanup (like the previous two, I just moved around code, to clearly separate the old and the new mixer code)
svn-id: r9479
2003-08-05 02:05:37 +00:00