[Scummvm-cvs-logs] SF.net SVN: scummvm: [25309] scummvm/trunk/engines/gob/sound.cpp

drmccoy at users.sourceforge.net drmccoy at users.sourceforge.net
Wed Jan 31 15:53:46 CET 2007


Revision: 25309
          http://scummvm.svn.sourceforge.net/scummvm/?rev=25309&view=rev
Author:   drmccoy
Date:     2007-01-31 06:53:46 -0800 (Wed, 31 Jan 2007)

Log Message:
-----------
Minor sound playing correction

Modified Paths:
--------------
    scummvm/trunk/engines/gob/sound.cpp

Modified: scummvm/trunk/engines/gob/sound.cpp
===================================================================
--- scummvm/trunk/engines/gob/sound.cpp	2007-01-31 13:43:16 UTC (rev 25308)
+++ scummvm/trunk/engines/gob/sound.cpp	2007-01-31 14:53:46 UTC (rev 25309)
@@ -199,8 +199,8 @@
 	_ratio = ((double) _freq) / _rate;
 	_offset = 0.0;
 	_frac = 0;
-	_cur = 0;
-	_last = 0;
+	_last = _cur;
+	_cur = _data[0];
 	_repCount = repCount;
 	_end = false;
 	_playingSound = 1;
@@ -236,6 +236,7 @@
 		nextCompositionPos();
 	else if ((_repCount == -1) || (--_repCount > 0)) {
 		_offset = 0.0;
+		_frac = 0.0;
 		_end = false;
 		_playingSound = 1;
 	} else {
@@ -259,6 +260,7 @@
 
 		*buffer++ = (int16) ((_last + (_cur - _last) * _frac) * _fadeVol);
 		_frac += _ratio;
+		_offset += _ratio;
 		while (_frac > 1) {
 			_frac -= 1;
 			_last = _cur;
@@ -279,8 +281,6 @@
 				}
 			}
 		}
-
-		_offset += _ratio;
 	}
 	return numSamples;
 }


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list