[xiph-cvs] r6763 - in trunk/oggdsf/src/lib: codecs/flac/libs/libflac/src/libFLAC/Release_dynamic codecs/flac/libs/libflac/src/libFLAC++/Release_dynamic codecs/vorbis/libs/libvorbis/win32/Vorbis_Dynamic_Release core/ogg/libOOOgg core/ogg/libogg/win32/Dynamic_Release

illiminable at xiph.org illiminable at xiph.org
Wed May 26 03:09:31 PDT 2004



Author: illiminable
Date: 2004-05-26 06:09:30 -0400 (Wed, 26 May 2004)
New Revision: 6763

Added:
   trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPageInterleaver.cpp
   trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPageInterleaver.h
Modified:
   trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC++/Release_dynamic/BuildLog.htm
   trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC/Release_dynamic/BuildLog.htm
   trunk/oggdsf/src/lib/codecs/vorbis/libs/libvorbis/win32/Vorbis_Dynamic_Release/BuildLog.htm
   trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMuxStream.cpp
   trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMuxStream.h
   trunk/oggdsf/src/lib/core/ogg/libOOOgg/libOOOgg.vcproj
   trunk/oggdsf/src/lib/core/ogg/libogg/win32/Dynamic_Release/BuildLog.htm
Log:
Underlying multi-stream interleaving of pages added.

Modified: trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC/Release_dynamic/BuildLog.htm
===================================================================
--- trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC/Release_dynamic/BuildLog.htm	2004-05-26 09:30:32 UTC (rev 6762)
+++ trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC/Release_dynamic/BuildLog.htm	2004-05-26 10:09:30 UTC (rev 6763)
@@ -45,12 +45,12 @@
     VSCOMNTOOLS="C:\Program Files\Microsoft Visual Studio .NET\Common7\Tools\"
     windir=C:\WINDOWS
     _ACP_ATLPROV=C:\Program Files\Microsoft Visual Studio .NET\Vc7\bin\ATLPROV.DLL
-    _ACP_INCLUDE="C:\DXSDK\Samples\C++\DirectShow\BaseClasses";C:\DXSDK\Include;..\..\ogg\libOOOgg;..\dsfSeeking;C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
-    _ACP_LIB=C:\DXSDK\Lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\lib;"C:\DXSDK\Samples\C++\DirectShow\BaseClasses";C:\DXSDK\Include;..\..\ogg\libOOOgg;..\dsfSeeking;C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
+    _ACP_INCLUDE=C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
+    _ACP_LIB=C:\DXSDK\Lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\lib;C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
     _ACP_PATH=C:\Program Files\Microsoft Visual Studio .NET\Vc7\bin;C:\Program Files\Microsoft Visual Studio .NET\Common7\Tools\bin\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Common7\Tools\bin;C:\Program Files\Microsoft Visual Studio .NET\Common7\tools;C:\Program Files\Microsoft Visual Studio .NET\Common7\ide;C:\Program Files\HTML Help Workshop\;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\bin;C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\ATI Technologies\ATI Control Panel
 </pre></table><table width=100% bgcolor=#DFDFE5><tr><td><font face=arial size=+2>
 Command Lines
-</font></table><table width=* cellspacing=0 cellpadding=0><tr><td width=0 bgcolor=#EDEDF5> </td><td width=0 bgcolor=#FFFFFF> </td><td width=*><pre>Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\BAT00001A.bat" with contents
+</font></table><table width=* cellspacing=0 cellpadding=0><tr><td width=0 bgcolor=#EDEDF5> </td><td width=0 bgcolor=#FFFFFF> </td><td width=*><pre>Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\BAT00002D.bat" with contents
 [
 @echo off
 echo on
@@ -62,8 +62,8 @@
 exit 1
 :VCEnd
 ]
-Creating command line "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\BAT00001A.bat"
-Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP00001B.rsp" with contents
+Creating command line "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\BAT00002D.bat"
+Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP00002E.rsp" with contents
 [
 /Ox /Og /Ob2 /Oi /Ot /GL /G6 /I ".\include" /I "..\..\include" /D "NDEBUG" /D "FLAC_API_EXPORTS" /D "VERSION=\"1.1.0\"" /D "FLAC__CPU_IA32" /D "FLAC__HAS_NASM" /D "FLAC__USE_3DNOW" /D "_WINDOWS" /D "WIN32" /D "_USRDLL" /D "_WINDLL" /GF /FD /EHsc /MD /Gy /GR /Fp".\Release_dynamic/libFLAC_dynamic.pch" /Fo".\Release_dynamic/" /Fd".\Release_dynamic/" /FR".\Release_dynamic/" /W3 /c /Gd
 stream_encoder_framing.c
@@ -85,8 +85,8 @@
 bitmath.c
 bitbuffer.c
 ]
-Creating command line "cl.exe @C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP00001B.rsp /nologo"
-Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP00001C.rsp" with contents
+Creating command line "cl.exe @C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP00002E.rsp /nologo"
+Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP00002F.rsp" with contents
 [
 /OUT:"..\..\obj\release\bin/libFLAC.dll" /INCREMENTAL:NO /NOLOGO /DLL /PDB:".\..\..\obj\release\lib/libFLAC.pdb" /SUBSYSTEM:WINDOWS /OPT:REF /OPT:ICF /OPT:NOWIN98 /LTCG /IMPLIB:".\..\..\obj\release\lib/libFLAC.lib" /MACHINE:I386 odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib
 Release_dynamic\bitbuffer.obj
@@ -111,7 +111,7 @@
 ia32\fixed_asm.obj
 ia32\lpc_asm.obj
 ]
-Creating command line "link.exe @C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP00001C.rsp"
+Creating command line "link.exe @C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP00002F.rsp"
 </pre></table><table width=100% bgcolor=#DFDFE5><tr><td><font face=arial size=+2>
 Output Window
 </font></table><table width=* cellspacing=0 cellpadding=0><tr><td width=0 bgcolor=#EDEDF5> </td><td width=0 bgcolor=#FFFFFF> </td><td width=*><pre>Performing Custom Build Step

Modified: trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC++/Release_dynamic/BuildLog.htm
===================================================================
--- trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC++/Release_dynamic/BuildLog.htm	2004-05-26 09:30:32 UTC (rev 6762)
+++ trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC++/Release_dynamic/BuildLog.htm	2004-05-26 10:09:30 UTC (rev 6763)
@@ -45,12 +45,12 @@
     VSCOMNTOOLS="C:\Program Files\Microsoft Visual Studio .NET\Common7\Tools\"
     windir=C:\WINDOWS
     _ACP_ATLPROV=C:\Program Files\Microsoft Visual Studio .NET\Vc7\bin\ATLPROV.DLL
-    _ACP_INCLUDE="C:\DXSDK\Samples\C++\DirectShow\BaseClasses";C:\DXSDK\Include;..\..\ogg\libOOOgg;..\dsfSeeking;C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
-    _ACP_LIB=C:\DXSDK\Lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\lib;"C:\DXSDK\Samples\C++\DirectShow\BaseClasses";C:\DXSDK\Include;..\..\ogg\libOOOgg;..\dsfSeeking;C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
+    _ACP_INCLUDE=C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
+    _ACP_LIB=C:\DXSDK\Lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\lib;C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
     _ACP_PATH=C:\Program Files\Microsoft Visual Studio .NET\Vc7\bin;C:\Program Files\Microsoft Visual Studio .NET\Common7\Tools\bin\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Common7\Tools\bin;C:\Program Files\Microsoft Visual Studio .NET\Common7\tools;C:\Program Files\Microsoft Visual Studio .NET\Common7\ide;C:\Program Files\HTML Help Workshop\;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\bin;C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\ATI Technologies\ATI Control Panel
 </pre></table><table width=100% bgcolor=#DFDFE5><tr><td><font face=arial size=+2>
 Command Lines
-</font></table><table width=* cellspacing=0 cellpadding=0><tr><td width=0 bgcolor=#EDEDF5> </td><td width=0 bgcolor=#FFFFFF> </td><td width=*><pre>Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP00001D.rsp" with contents
+</font></table><table width=* cellspacing=0 cellpadding=0><tr><td width=0 bgcolor=#EDEDF5> </td><td width=0 bgcolor=#FFFFFF> </td><td width=*><pre>Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP000034.rsp" with contents
 [
 /OUT:"..\..\obj\release\bin/libFLAC++.dll" /INCREMENTAL:NO /NOLOGO /DLL /PDB:".\..\..\obj\release\lib/libFLAC++.pdb" /SUBSYSTEM:WINDOWS /OPT:REF /OPT:ICF /OPT:NOWIN98 /LTCG /IMPLIB:".\..\..\obj\release\lib/libFLAC++.lib" /MACHINE:I386 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib "\Dev\oggdsf\src\lib\codecs\flac\libs\libflac\obj\release\lib\libFLAC.lib"
 "Release_dynamic\file_decoder.obj"
@@ -61,7 +61,7 @@
 "Release_dynamic\stream_decoder.obj"
 "Release_dynamic\stream_encoder.obj"
 ]
-Creating command line "link.exe @C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP00001D.rsp"
+Creating command line "link.exe @C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP000034.rsp"
 </pre></table><table width=100% bgcolor=#DFDFE5><tr><td><font face=arial size=+2>
 Output Window
 </font></table><table width=* cellspacing=0 cellpadding=0><tr><td width=0 bgcolor=#EDEDF5> </td><td width=0 bgcolor=#FFFFFF> </td><td width=*><pre>Linking...

Modified: trunk/oggdsf/src/lib/codecs/vorbis/libs/libvorbis/win32/Vorbis_Dynamic_Release/BuildLog.htm
===================================================================
--- trunk/oggdsf/src/lib/codecs/vorbis/libs/libvorbis/win32/Vorbis_Dynamic_Release/BuildLog.htm	2004-05-26 09:30:32 UTC (rev 6762)
+++ trunk/oggdsf/src/lib/codecs/vorbis/libs/libvorbis/win32/Vorbis_Dynamic_Release/BuildLog.htm	2004-05-26 10:09:30 UTC (rev 6763)
@@ -45,8 +45,8 @@
     VSCOMNTOOLS="C:\Program Files\Microsoft Visual Studio .NET\Common7\Tools\"
     windir=C:\WINDOWS
     _ACP_ATLPROV=C:\Program Files\Microsoft Visual Studio .NET\Vc7\bin\ATLPROV.DLL
-    _ACP_INCLUDE="C:\DXSDK\Samples\C++\DirectShow\BaseClasses";C:\DXSDK\Include;..\..\ogg\libOOOgg;..\dsfSeeking;C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
-    _ACP_LIB=C:\DXSDK\Lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\lib;"C:\DXSDK\Samples\C++\DirectShow\BaseClasses";C:\DXSDK\Include;..\..\ogg\libOOOgg;..\dsfSeeking;C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
+    _ACP_INCLUDE=C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
+    _ACP_LIB=C:\DXSDK\Lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\lib;C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
     _ACP_PATH=C:\Program Files\Microsoft Visual Studio .NET\Vc7\bin;C:\Program Files\Microsoft Visual Studio .NET\Common7\Tools\bin\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Common7\Tools\bin;C:\Program Files\Microsoft Visual Studio .NET\Common7\tools;C:\Program Files\Microsoft Visual Studio .NET\Common7\ide;C:\Program Files\HTML Help Workshop\;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\bin;C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\ATI Technologies\ATI Control Panel
 </pre></table><table width=100% bgcolor=#DFDFE5><tr><td><font face=arial size=+2>
 Command Lines

Modified: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMuxStream.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMuxStream.cpp	2004-05-26 09:30:32 UTC (rev 6762)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMuxStream.cpp	2004-05-26 10:09:30 UTC (rev 6763)
@@ -48,6 +48,13 @@
         return mIsEOS;
 }
 
+bool OggMuxStream::isProcessable() {
+	if (isEmpty() &&  !isEOS()) {
+		return false;
+	} else {
+		return true;
+	}
+}
 void OggMuxStream::setIsEOS(bool inIsEOS) {
         mIsEOS = inIsEOS;
 }
\ No newline at end of file

Modified: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMuxStream.h
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMuxStream.h	2004-05-26 09:30:32 UTC (rev 6762)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggMuxStream.h	2004-05-26 10:09:30 UTC (rev 6763)
@@ -18,6 +18,7 @@
         virtual __int64 frontTime();
         virtual bool isEmpty();
         virtual bool isEOS();
+	virtual bool isProcessable();
         virtual void setIsEOS(bool inIsEOS);
         
 protected:

Added: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPageInterleaver.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPageInterleaver.cpp	2004-05-26 09:30:32 UTC (rev 6762)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPageInterleaver.cpp	2004-05-26 10:09:30 UTC (rev 6763)
@@ -0,0 +1,100 @@
+#include "StdAfx.h"
+#include "oggpageinterleaver.h"
+
+OggPageInterleaver::OggPageInterleaver(IOggCallback* inFileWriter)
+	:	mFileWriter(inFileWriter)
+{
+
+}
+
+OggPageInterleaver::~OggPageInterleaver(void)
+{
+}
+
+OggMuxStream* OggPageInterleaver::newStream() {
+	OggMuxStream* retStream = new OggMuxStream;
+	mInputStreams.push_back(retStream);
+	return retStream;
+}
+void OggPageInterleaver::processData() {
+	/*
+		IF ALL EOS THEN
+			FINSH UP
+			SIGNAL END OF STREAMS
+		ELSE
+			WHILE IS PROCESSABLE
+				lowestStream = NULL
+				FOR EACH stream in mInputStreams
+					IF NOT stream IS EMPTY THEN
+						IF lowestStream = NULL THEN
+							lowestStream = stream
+						ELSE IF stream.frontTime < lowestStream.frontTime THEN
+							lowestStream = stream
+						END IF
+					END IF
+				NEXT stream
+				IF lowestStream = NULL THEN
+					CURSE LOUDLY
+				ELSE
+					WRITE lowestStream.frontPage
+				END IF
+			WEND
+		END IF
+	*/
+
+	if (isAllEOS()) {
+		//Finish up
+		while (!isAllEmpty()) {
+			writeLowest();
+		}
+	} else {
+		while (isProcessable()) {
+			writeLowest();
+		}
+	}
+
+}
+
+void OggPageInterleaver::writeLowest() {
+		OggMuxStream* locLowestStream = NULL;
+		for (int i = 0; i < mInputStreams.size(); i++) {
+			if (!mInputStreams[i]->isEmpty()) {
+				if (locLowestStream == NULL) {
+					locLowestStream = mInputStreams[i];
+				} else if (mInputStreams[i]->frontTime() < locLowestStream->frontTime()) {
+					locLowestStream = mInputStreams[i];
+				}
+			}
+		}
+		if (locLowestStream == NULL) {
+			throw 0;
+		} else {
+			mFileWriter->acceptOggPage(locLowestStream->popFront());
+		}
+
+}
+bool OggPageInterleaver::isProcessable() {
+	bool retVal = true;
+	//ASSERT(mInputStreams.size() >= 1)
+	for (int i = 0; i < mInputStreams.size(); i++) {
+		retVal = retVal && (mInputStreams[i]->isProcessable());
+	}
+	return retVal;
+}
+bool OggPageInterleaver::isAllEOS() {
+	bool retVal = true;
+	//ASSERT(mInputStreams.size() >= 1)
+	for (int i = 0; i < mInputStreams.size(); i++) {
+		retVal = retVal && (mInputStreams[i]->isEOS());
+	}
+	return retVal;
+}
+
+bool OggPageInterleaver::isAllEmpty() {
+	bool retVal = true;
+	//ASSERT(mInputStreams.size() >= 1)
+	for (int i = 0; i < mInputStreams.size(); i++) {
+		retVal = retVal && (mInputStreams[i]->isEmpty());
+	}
+	return retVal;
+}
\ No newline at end of file

Added: trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPageInterleaver.h
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPageInterleaver.h	2004-05-26 09:30:32 UTC (rev 6762)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/OggPageInterleaver.h	2004-05-26 10:09:30 UTC (rev 6763)
@@ -0,0 +1,24 @@
+#pragma once
+#include "IOggCallback.h"
+#include "OggMuxStream.h"
+#include <vector>
+using namespace std;
+class OggPageInterleaver
+{
+public:
+
+	OggPageInterleaver(IOggCallback* inFileWriter);
+	virtual ~OggPageInterleaver(void);
+
+	virtual OggMuxStream* newStream();
+	virtual bool isProcessable();
+	virtual bool isAllEOS();
+	virtual bool isAllEmpty();
+	virtual void processData();
+
+	virtual void writeLowest();
+
+protected:
+	vector<OggMuxStream*> mInputStreams;
+	IOggCallback* mFileWriter;
+};

Modified: trunk/oggdsf/src/lib/core/ogg/libOOOgg/libOOOgg.vcproj
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOgg/libOOOgg.vcproj	2004-05-26 09:30:32 UTC (rev 6762)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOgg/libOOOgg.vcproj	2004-05-26 10:09:30 UTC (rev 6763)
@@ -157,6 +157,9 @@
                                 RelativePath="OggPageHeader.cpp">
                         </File>
                         <File
+				RelativePath="OggPageInterleaver.cpp">
+			</File>
+			<File
                                 RelativePath="OggPaginator.cpp">
                         </File>
                         <File
@@ -239,6 +242,9 @@
                                 RelativePath="OggPageHeader.h">
                         </File>
                         <File
+				RelativePath="OggPageInterleaver.h">
+			</File>
+			<File
                                 RelativePath="OggPaginator.h">
                         </File>
                         <File

Modified: trunk/oggdsf/src/lib/core/ogg/libogg/win32/Dynamic_Release/BuildLog.htm
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libogg/win32/Dynamic_Release/BuildLog.htm	2004-05-26 09:30:32 UTC (rev 6762)
+++ trunk/oggdsf/src/lib/core/ogg/libogg/win32/Dynamic_Release/BuildLog.htm	2004-05-26 10:09:30 UTC (rev 6763)
@@ -45,8 +45,8 @@
     VSCOMNTOOLS="C:\Program Files\Microsoft Visual Studio .NET\Common7\Tools\"
     windir=C:\WINDOWS
     _ACP_ATLPROV=C:\Program Files\Microsoft Visual Studio .NET\Vc7\bin\ATLPROV.DLL
-    _ACP_INCLUDE="C:\DXSDK\Samples\C++\DirectShow\BaseClasses";C:\DXSDK\Include;..\..\ogg\libOOOgg;..\dsfSeeking;C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
-    _ACP_LIB=C:\DXSDK\Lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\lib;"C:\DXSDK\Samples\C++\DirectShow\BaseClasses";C:\DXSDK\Include;..\..\ogg\libOOOgg;..\dsfSeeking;C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
+    _ACP_INCLUDE=C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
+    _ACP_LIB=C:\DXSDK\Lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\lib;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\lib;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\lib;C:\DXSDK\Include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\atlmfc\include;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Vc7\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\include
     _ACP_PATH=C:\Program Files\Microsoft Visual Studio .NET\Vc7\bin;C:\Program Files\Microsoft Visual Studio .NET\Common7\Tools\bin\prerelease;C:\Program Files\Microsoft Visual Studio .NET\Common7\Tools\bin;C:\Program Files\Microsoft Visual Studio .NET\Common7\tools;C:\Program Files\Microsoft Visual Studio .NET\Common7\ide;C:\Program Files\HTML Help Workshop\;C:\Program Files\Microsoft Visual Studio .NET\FrameworkSDK\bin;C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\ATI Technologies\ATI Control Panel
 </pre></table><table width=100% bgcolor=#DFDFE5><tr><td><font face=arial size=+2>
 Command Lines

--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'cvs-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.



More information about the commits mailing list