[Scummvm-cvs-logs] CVS: scummvm/sword1 music.cpp,1.18,1.19 music.h,1.9,1.10
Torbj?rn Andersson
eriktorbjorn at users.sourceforge.net
Thu Jan 8 05:06:00 CET 2004
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/sword2/driver d_draw.cpp,1.54,1.55
- Next message: [Scummvm-cvs-logs] CVS: scummvm/scumm player_v2.h,2.25,2.26 player_v1.cpp,1.18,1.19 player_v2.cpp,2.44,2.45 player_v2a.cpp,2.18,2.19
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Update of /cvsroot/scummvm/scummvm/sword1
In directory sc8-pr-cvs1:/tmp/cvs-serv24543
Modified Files:
music.cpp music.h
Log Message:
Merged read() and readBuffer(), like in BS2.
Index: music.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sword1/music.cpp,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -d -r1.18 -r1.19
--- music.cpp 7 Jan 2004 17:47:46 -0000 1.18
+++ music.cpp 8 Jan 2004 13:05:32 -0000 1.19
@@ -52,38 +52,32 @@
}
int SwordMusicHandle::readBuffer(int16 *buffer, const int numSamples) {
- // TODO: merge the read() code into readBuffer(), for higher efficency;
- // we then can remove read() (as it isn't needed for anything anymore).
int samples;
- for (samples = 0; samples < numSamples && !endOfData(); samples++)
- *buffer++ = read();
- return samples;
-}
-
-int16 SwordMusicHandle::read() {
- if (!streaming())
- return 0;
- int16 sample = _file.readUint16LE();
- if (_file.ioFailed()) {
- if (!_looping) {
- stop();
- return 0;
+ for (samples = 0; samples < numSamples && !endOfData(); samples++) {
+ int16 sample = _file.readUint16LE();
+ if (_file.ioFailed()) {
+ if (!_looping) {
+ stop();
+ sample = 0;
+ } else {
+ _file.clearIOFailed();
+ _file.seek(WAVEHEADERSIZE);
+ sample = _file.readUint16LE();
+ }
}
- _file.clearIOFailed();
- _file.seek(WAVEHEADERSIZE);
- sample = _file.readUint16LE();
- }
- if (_fading > 0) {
- if (--_fading == 0) {
- _looping = false;
- _file.close();
+ if (_fading > 0) {
+ if (--_fading == 0) {
+ _looping = false;
+ _file.close();
+ }
+ sample = (sample * _fading) / _fadeSamples;
+ } else if (_fading < 0) {
+ _fading++;
+ sample = (sample * (_fadeSamples + _fading)) / _fadeSamples;
}
- sample = (sample * _fading) / _fadeSamples;
- } else if (_fading < 0) {
- _fading++;
- sample = (sample * (_fadeSamples + _fading)) / _fadeSamples;
+ *buffer++ = sample;
}
- return sample;
+ return samples;
}
bool SwordMusicHandle::play(const char *filename, bool loop) {
Index: music.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sword1/music.h,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- music.h 7 Jan 2004 17:47:46 -0000 1.9
+++ music.h 8 Jan 2004 13:05:32 -0000 1.10
@@ -45,7 +45,6 @@
public:
SwordMusicHandle() : _looping(false), _fading(0) {}
virtual int readBuffer(int16 *buffer, const int numSamples);
- int16 read();
bool play(const char *filename, bool loop);
void stop();
void fadeUp();
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/sword2/driver d_draw.cpp,1.54,1.55
- Next message: [Scummvm-cvs-logs] CVS: scummvm/scumm player_v2.h,2.25,2.26 player_v1.cpp,1.18,1.19 player_v2.cpp,2.44,2.45 player_v2a.cpp,2.18,2.19
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Scummvm-git-logs
mailing list