[xiph-cvs] r6736 - in trunk/oggdsf/src/lib: codecs/flac/libs/libflac/src/libFLAC/Debug_dynamic codecs/speex/filters/dsfSpeexDecoder core/directshow/dsfOggDemux

illiminable at xiph.org illiminable at xiph.org
Fri May 21 00:00:37 PDT 2004



Author: illiminable
Date: 2004-05-21 03:00:37 -0400 (Fri, 21 May 2004)
New Revision: 6736

Modified:
   trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC/Debug_dynamic/BuildLog.htm
   trunk/oggdsf/src/lib/codecs/speex/filters/dsfSpeexDecoder/SpeexDecodeInputPin.cpp
   trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/SpeexStream.cpp
   trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/SpeexStream.h
Log:
New timestamping mechanism now in Speex.

Modified: trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC/Debug_dynamic/BuildLog.htm
===================================================================
--- trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC/Debug_dynamic/BuildLog.htm	2004-05-21 06:06:09 UTC (rev 6735)
+++ trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC/Debug_dynamic/BuildLog.htm	2004-05-21 07:00:37 UTC (rev 6736)
@@ -51,7 +51,7 @@
     _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\BAT000054.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\BAT000070.bat" with contents
 [
 @echo off
 echo on
@@ -63,8 +63,8 @@
 exit 1
 :VCEnd
 ]
-Creating command line "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\BAT000054.bat"
-Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP000055.rsp" with contents
+Creating command line "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\BAT000070.bat"
+Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP000071.rsp" with contents
 [
 /Od /I ".\include" /I "..\..\include" /D "_DEBUG" /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" /FD /EHsc /MDd /GR /Fp".\Debug_dynamic/libFLAC_dynamic.pch" /Fo".\Debug_dynamic/" /Fd".\Debug_dynamic/" /FR".\Debug_dynamic/" /W3 /c /ZI /Gd
 stream_encoder_framing.c
@@ -86,8 +86,8 @@
 bitmath.c
 bitbuffer.c
 ]
-Creating command line "cl.exe @C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP000055.rsp /nologo"
-Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP000056.rsp" with contents
+Creating command line "cl.exe @C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP000071.rsp /nologo"
+Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP000072.rsp" with contents
 [
 /OUT:"..\..\obj\debug\bin/libFLAC.dll" /INCREMENTAL /NOLOGO /DLL /DEBUG /PDB:".\..\..\obj\debug\lib/libFLAC.pdb" /SUBSYSTEM:WINDOWS /IMPLIB:".\..\..\obj\debug\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
 Debug_dynamic\bitbuffer.obj
@@ -112,7 +112,7 @@
 ia32\fixed_asm.obj
 ia32\lpc_asm.obj
 ]
-Creating command line "link.exe @C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP000056.rsp"
+Creating command line "link.exe @C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP000072.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/speex/filters/dsfSpeexDecoder/SpeexDecodeInputPin.cpp
===================================================================
--- trunk/oggdsf/src/lib/codecs/speex/filters/dsfSpeexDecoder/SpeexDecodeInputPin.cpp	2004-05-21 06:06:09 UTC (rev 6735)
+++ trunk/oggdsf/src/lib/codecs/speex/filters/dsfSpeexDecoder/SpeexDecodeInputPin.cpp	2004-05-21 07:00:37 UTC (rev 6736)
@@ -92,6 +92,36 @@
 
         }
 
+
+	//************************ OLD WAY
+	//REFERENCE_TIME locFrameStart = locThis->CurrentStartTime() + (((__int64)(locThis->mUptoFrame * HUNDRED_NANOS)) / locThis->mSampleRate);
+	//REFERENCE_TIME locFrameStart = (((__int64)(locThis->mUptoFrame * UNITS)) / locThis->mSampleRate);
+	////Increment the frame counter
+	//locThis->mUptoFrame += inFrames;
+	////Make the end frame counter
+	////REFERENCE_TIME locFrameEnd = locThis->CurrentStartTime() + (((__int64)(locThis->mUptoFrame * HUNDRED_NANOS)) / locThis->mSampleRate);
+	//REFERENCE_TIME locFrameEnd = (((__int64)(locThis->mUptoFrame * UNITS)) / locThis->mSampleRate);
+	//***********************************************
+
+		//Start time hacks
+	REFERENCE_TIME locTimeBase = ((locThis->mLastSeenStartGranPos * UNITS) / locThis->mSampleRate) - locThis->mSeekTimeBase;
+
+	//Temp - this will break seeking
+	REFERENCE_TIME locFrameStart = locTimeBase + (((__int64)(locThis->mUptoFrame * UNITS)) / locThis->mSampleRate);
+	//Increment the frame counter
+	locThis->mUptoFrame += inFrames;
+	//Make the end frame counter
+
+	//REFERENCE_TIME locFrameEnd = locThis->CurrentStartTime() + (((__int64)(locThis->mUptoFrame * UNITS)) / locThis->mSampleRate);
+	REFERENCE_TIME locFrameEnd = locTimeBase + (((__int64)(locThis->mUptoFrame * UNITS)) / locThis->mSampleRate);
+
+
+	locThis->aadDebug<<"Last Seen  : " <<locThis->mLastSeenStartGranPos<<endl;
+	locThis->aadDebug<<"Last Seen  : " << locThis->mLastSeenStartGranPos<<endl;
+	locThis->aadDebug<<"Time Base  : " << locTimeBase << endl;
+	locThis->aadDebug<<"FrameCount : " <<locThis->mUptoFrame<<endl;
+	locThis->aadDebug<<"Seek TB    : " <<locThis->mSeekTimeBase<<endl;
+
         //TO DO::: Move this somewhere else
         unsigned long locActualSize = inFrames * locThis->mFrameSize;
         unsigned long locTotalFrameCount = inFrames * locThis->mNumChannels;
@@ -99,13 +129,7 @@
         //Make the start timestamp
         //FIX:::Abstract this calculation
 
-	//REFERENCE_TIME locFrameStart = locThis->CurrentStartTime() + (((__int64)(locThis->mUptoFrame * HUNDRED_NANOS)) / locThis->mSampleRate);
-	REFERENCE_TIME locFrameStart = (((__int64)(locThis->mUptoFrame * UNITS)) / locThis->mSampleRate);
-	//Increment the frame counter
-	locThis->mUptoFrame += inFrames;
-	//Make the end frame counter
-	//REFERENCE_TIME locFrameEnd = locThis->CurrentStartTime() + (((__int64)(locThis->mUptoFrame * HUNDRED_NANOS)) / locThis->mSampleRate);
-	REFERENCE_TIME locFrameEnd = (((__int64)(locThis->mUptoFrame * UNITS)) / locThis->mSampleRate);
+	
 
         IMediaSample* locSample;
         HRESULT locHR = locThis->mOutputPin->GetDeliveryBuffer(&locSample, &locFrameStart, &locFrameEnd, NULL);

Modified: trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/SpeexStream.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/SpeexStream.cpp	2004-05-21 06:06:09 UTC (rev 6735)
+++ trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/SpeexStream.cpp	2004-05-21 07:00:37 UTC (rev 6736)
@@ -72,6 +72,12 @@
 
 
 }
+
+void SpeexStream::setLastEndGranPos(__int64 inPos) {
+	
+	mLastEndGranulePos = (inPos * (__int64)mSpeexFormatBlock->samplesPerSec)/ UNITS;
+	osDebug<<"Speex sets End Gran : "<<mLastEndGranulePos<<endl;
+}
 unsigned long SpeexStream::getFormatBlockSize() {
         //Do something
         return sizeof(sSpeexFormatBlock);

Modified: trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/SpeexStream.h
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/SpeexStream.h	2004-05-21 06:06:09 UTC (rev 6735)
+++ trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/SpeexStream.h	2004-05-21 07:00:37 UTC (rev 6736)
@@ -52,6 +52,8 @@
         virtual GUID getMajorTypeGUID();
         virtual LONGLONG getCurrentPos();
 
+	virtual void setLastEndGranPos(__int64 inPos);
+
 protected:
         sSpeexFormatBlock* mSpeexFormatBlock;
 };

--- >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