[Scummvm-cvs-logs] CVS: scummvm/sound voc.cpp,1.13,1.14 voc.h,1.10,1.11

Pawel Kolodziejski aquadran at users.sourceforge.net
Sat Feb 14 07:22:00 CET 2004


Update of /cvsroot/scummvm/scummvm/sound
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29781/sound

Modified Files:
	voc.cpp voc.h 
Log Message:
fixed bug #892426 - improved FT sound loops

Index: voc.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sound/voc.cpp,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -d -r1.13 -r1.14
--- voc.cpp	3 Feb 2004 08:53:13 -0000	1.13
+++ voc.cpp	14 Feb 2004 15:14:30 -0000	1.14
@@ -41,7 +41,7 @@
 	}
 }
 
-byte *readVOCFromMemory(byte *ptr, int &size, int &rate, int &loops) {
+byte *readVOCFromMemory(byte *ptr, int &size, int &rate, int &loops, int &begin_loop, int &end_loop) {
 	
 	assert(memcmp(ptr, "Creative Voice File\x1A", 20) == 0);
 	int32 offset = READ_LE_UINT16(ptr + 20);
@@ -53,6 +53,8 @@
 	bool quit = false;
 	byte *ret_sound = 0;
 	size = 0;
+	begin_loop = 0;
+	end_loop = 0;
 
 	while (!quit) {
 		int len = READ_LE_UINT32(ptr + offset);
@@ -76,7 +78,9 @@
 					ret_sound = (byte *)malloc(len);
 				}
 				memcpy(ret_sound + size, ptr + offset, len);
+				begin_loop = size;
 				size += len;
+				end_loop = size;
 			} else {
 				warning("VOC file packing %d unsupported", packing);
 			}
@@ -153,8 +157,8 @@
 }
 
 AudioStream *makeVOCStream(byte *ptr) {
-	int size, rate, loops;
-	byte *data = readVOCFromMemory(ptr, size, rate, loops);
+	int size, rate, loops, begin_loop, end_loop;
+	byte *data = readVOCFromMemory(ptr, size, rate, loops, begin_loop, end_loop);
 
 	if (!data)
 		return 0;

Index: voc.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sound/voc.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- voc.h	6 Jan 2004 12:45:33 -0000	1.10
+++ voc.h	14 Feb 2004 15:14:30 -0000	1.11
@@ -57,7 +57,7 @@
  */
 extern int getSampleRateFromVOCRate(int vocSR);
 
-extern byte *readVOCFromMemory(byte *ptr, int &size, int &rate, int &loops);
+extern byte *readVOCFromMemory(byte *ptr, int &size, int &rate, int &loops, int &begin_loop, int &end_loop);
 extern byte *loadVOCFile(File *file, int &size, int &rate);
 
 AudioStream *makeVOCStream(byte *ptr);





More information about the Scummvm-git-logs mailing list