[xiph-cvs] r6702 - in trunk/oggdsf/src/lib: codecs/flac/libs/libflac/src/libFLAC/Debug_dynamic codecs/flac/libs/libflac/src/libFLAC++/Debug_dynamic codecs/vorbis/filters/dsfVorbisDecoder codecs/vorbis/libs/libvorbis/win32/Vorbis_Dynamic_Debug core/directshow/dsfAbstractAudioDecoder core/directshow/dsfOggDemux core/directshow/dsfSeeking core/ogg/libOOOggSeek core/ogg/libogg/win32/Dynamic_Debug
illiminable at xiph.org
illiminable at xiph.org
Sun May 16 03:59:23 PDT 2004
Author: illiminable
Date: 2004-05-16 06:59:20 -0400 (Sun, 16 May 2004)
New Revision: 6702
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
trunk/oggdsf/src/lib/codecs/vorbis/filters/dsfVorbisDecoder/VorbisDecodeInputPin.cpp
trunk/oggdsf/src/lib/codecs/vorbis/libs/libvorbis/win32/Vorbis_Dynamic_Debug/BuildLog.htm
trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeFilter.cpp
trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeInputPin.cpp
trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeInputPin.h
trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggDemuxSourceFilter.cpp
trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggStream.cpp
trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggStream.h
trunk/oggdsf/src/lib/core/directshow/dsfSeeking/BasicSeekable.cpp
trunk/oggdsf/src/lib/core/directshow/dsfSeeking/BasicSeekable.h
trunk/oggdsf/src/lib/core/ogg/libOOOggSeek/OggSeekTable.cpp
trunk/oggdsf/src/lib/core/ogg/libOOOggSeek/OggSeekTable.h
trunk/oggdsf/src/lib/core/ogg/libogg/win32/Dynamic_Debug/BuildLog.htm
Log:
Partially fixed seek, though first page after seek gets wild timestamps and it takes one page of audio to kick in... so seeking seems sluggish.
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-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC/Debug_dynamic/BuildLog.htm 2004-05-16 10:59:20 UTC (rev 6702)
@@ -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;..\..\ogg\libOOOggSeek;..\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\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;..\..\ogg\libOOOggSeek;..\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_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\BAT000075.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\BAT0000D6.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\BAT000075.bat"
-Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP000076.rsp" with contents
+Creating command line "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\BAT0000D6.bat"
+Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP0000D7.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
@@ -85,8 +85,8 @@
bitmath.c
bitbuffer.c
]
-Creating command line "cl.exe @C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP000076.rsp /nologo"
-Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP000077.rsp" with contents
+Creating command line "cl.exe @C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP0000D7.rsp /nologo"
+Creating temporary file "C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP0000D8.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
@@ -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\RSP000077.rsp"
+Creating command line "link.exe @C:\DOCUME~1\ILLIMI~1\LOCALS~1\Temp\RSP0000D8.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++/Debug_dynamic/BuildLog.htm
===================================================================
--- trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC++/Debug_dynamic/BuildLog.htm 2004-05-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/codecs/flac/libs/libflac/src/libFLAC++/Debug_dynamic/BuildLog.htm 2004-05-16 10:59:20 UTC (rev 6702)
@@ -45,7 +45,7 @@
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;..\..\ogg\libOOOggSeek;..\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\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;..\..\ogg\libOOOggSeek;..\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_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>
Modified: trunk/oggdsf/src/lib/codecs/vorbis/filters/dsfVorbisDecoder/VorbisDecodeInputPin.cpp
===================================================================
--- trunk/oggdsf/src/lib/codecs/vorbis/filters/dsfVorbisDecoder/VorbisDecodeInputPin.cpp 2004-05-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/codecs/vorbis/filters/dsfVorbisDecoder/VorbisDecodeInputPin.cpp 2004-05-16 10:59:20 UTC (rev 6702)
@@ -109,9 +109,10 @@
//REFERENCE_TIME locFrameStart = locThis->CurrentStartTime() + (((__int64)(locThis->mUptoFrame * UNITS)) / locThis->mSampleRate);
//Start time hacks
- REFERENCE_TIME locTimeBase = (locThis->mLastSeenStartGranPos * UNITS) / locThis->mSampleRate;
+ REFERENCE_TIME locTimeBase = ((locThis->mLastSeenStartGranPos * UNITS) / locThis->mSampleRate) - locThis->mSeekTimeBase;
locThis->debugLog<<"Time Base : " << locTimeBase << endl;
locThis->debugLog<<"FrameCount : " <<locThis->mUptoFrame<<endl;
+ locThis->debugLog<<"Seek TB : " <<locThis->mSeekTimeBase<<endl;
//Temp - this will break seeking
REFERENCE_TIME locFrameStart = locTimeBase + (((__int64)(locThis->mUptoFrame * UNITS)) / locThis->mSampleRate);
Modified: trunk/oggdsf/src/lib/codecs/vorbis/libs/libvorbis/win32/Vorbis_Dynamic_Debug/BuildLog.htm
===================================================================
--- trunk/oggdsf/src/lib/codecs/vorbis/libs/libvorbis/win32/Vorbis_Dynamic_Debug/BuildLog.htm 2004-05-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/codecs/vorbis/libs/libvorbis/win32/Vorbis_Dynamic_Debug/BuildLog.htm 2004-05-16 10:59:20 UTC (rev 6702)
@@ -45,7 +45,7 @@
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;..\..\ogg\libOOOggSeek;..\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\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;..\..\ogg\libOOOggSeek;..\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_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>
Modified: trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeFilter.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeFilter.cpp 2004-05-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeFilter.cpp 2004-05-16 10:59:20 UTC (rev 6702)
@@ -68,6 +68,7 @@
STDMETHODIMP AbstractAudioDecodeFilter::Stop() {
CAutoLock locLock(m_pLock);
mInputPin->ResetFrameCount();
+ mInputPin->ResetTimeBases();
return CBaseFilter::Stop();
}
int AbstractAudioDecodeFilter::GetPinCount(void) {
Modified: trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeInputPin.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeInputPin.cpp 2004-05-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeInputPin.cpp 2004-05-16 10:59:20 UTC (rev 6702)
@@ -84,6 +84,9 @@
mUptoFrame = 0;
}
+void AbstractAudioDecodeInputPin::ResetTimeBases() {
+ mLastSeenStartGranPos = 0;
+}
bool AbstractAudioDecodeInputPin::SetSampleParams(IMediaSample* outMediaSample, unsigned long inDataSize, REFERENCE_TIME* inStartTime, REFERENCE_TIME* inEndTime)
{
outMediaSample->SetTime(inStartTime, inEndTime);
Modified: trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeInputPin.h
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeInputPin.h 2004-05-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeInputPin.h 2004-05-16 10:59:20 UTC (rev 6702)
@@ -75,6 +75,7 @@
virtual HRESULT SetMediaType(const CMediaType* inMediaType) = 0;
virtual void ResetFrameCount();
+ virtual void ResetTimeBases();
virtual STDMETHODIMP EndOfStream(void);
virtual STDMETHODIMP BeginFlush();
Modified: trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggDemuxSourceFilter.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggDemuxSourceFilter.cpp 2004-05-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggDemuxSourceFilter.cpp 2004-05-16 10:59:20 UTC (rev 6702)
@@ -244,6 +244,7 @@
}
mSourceFile.seekg(mSeekTable->getStartPos(*pCurrent), ios_base::beg);
+ //*pCurrent = mSeekTable->getLastRealStartGranPos();
debugLog<<" : Seek complete."<<endl;
@@ -255,6 +256,7 @@
}
for (unsigned long i = 0; i < mStreamMapper->numStreams(); i++) {
mStreamMapper->getOggStream(i)->setSendExcess(locSendExcess);
+ mStreamMapper->getOggStream(i)->setLastEndGranPos(mSeekTable->getLastRealStartGranPos());
}
} else {
return E_NOTIMPL;
Modified: trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggStream.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggStream.cpp 2004-05-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggStream.cpp 2004-05-16 10:59:20 UTC (rev 6702)
@@ -207,6 +207,10 @@
return true;
}
+
+void OggStream::setLastEndGranPos(__int64 inGranPos) {
+ mLastEndGranulePos = inGranPos;
+}
bool OggStream::acceptOggPage(OggPage* inOggPage) {
//FIX::: Add proper error checking.
Modified: trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggStream.h
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggStream.h 2004-05-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggStream.h 2004-05-16 10:59:20 UTC (rev 6702)
@@ -48,6 +48,8 @@
OggStream(OggPage* inBOSPage, OggDemuxSourceFilter* inOwningFilter);
virtual ~OggStream(void);
+ //more hacks
+ virtual void setLastEndGranPos(__int64 inGranPos);
unsigned long serialNo();
//virtual bool IdentifyCodec(OggPacket* inOggPacket) = 0;
virtual bool InitCodec(StampedOggPacket* inOggPacket) = 0;
Modified: trunk/oggdsf/src/lib/core/directshow/dsfSeeking/BasicSeekable.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfSeeking/BasicSeekable.cpp 2004-05-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/core/directshow/dsfSeeking/BasicSeekable.cpp 2004-05-16 10:59:20 UTC (rev 6702)
@@ -5,6 +5,7 @@
//: CUnknown(NAME("Basic Seekable Thing"), NULL, &mHR)
{
mSeekDelegate = inDelegate;
+ mSeekTimeBase = 0;
mSeekingCap = 0;
mSeekingCap = AM_SEEKING_CanSeekAbsolute |
@@ -21,6 +22,7 @@
BasicSeekable::BasicSeekable(void)
//: CUnknown(NAME("Basic Seekable Thing"), NULL, &mHR)
{
+ mSeekTimeBase = 0;
mSeekDelegate = NULL;
mSeekingCap = AM_SEEKING_CanSeekAbsolute |
AM_SEEKING_CanSeekForwards |
@@ -209,7 +211,11 @@
STDMETHODIMP BasicSeekable::SetPositions(LONGLONG* inoutCurrent, DWORD inCurrentFlags, LONGLONG* inStop, DWORD inStopFlags) {
if (mSeekDelegate != NULL) {
seekDebug<<"Set pos : Passed on..."<<endl;
- return mSeekDelegate->SetPositions(inoutCurrent, inCurrentFlags, inStop, inStopFlags);
+ HRESULT locHR = mSeekDelegate->SetPositions(inoutCurrent, inCurrentFlags, inStop, inStopFlags);
+ if (locHR == S_OK) {
+ mSeekTimeBase = *inoutCurrent;
+ }
+ return locHR;
} else {
seekDebug<<"Set pos : NULL Delegate"<<endl;
//This is probably wrong.
Modified: trunk/oggdsf/src/lib/core/directshow/dsfSeeking/BasicSeekable.h
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfSeeking/BasicSeekable.h 2004-05-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/core/directshow/dsfSeeking/BasicSeekable.h 2004-05-16 10:59:20 UTC (rev 6702)
@@ -73,6 +73,7 @@
protected:
IMediaSeeking* mSeekDelegate;
+ REFERENCE_TIME mSeekTimeBase;
HRESULT mHR;
fstream seekDebug;
Modified: trunk/oggdsf/src/lib/core/ogg/libOOOggSeek/OggSeekTable.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOggSeek/OggSeekTable.cpp 2004-05-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOggSeek/OggSeekTable.cpp 2004-05-16 10:59:20 UTC (rev 6702)
@@ -34,6 +34,7 @@
OggSeekTable::OggSeekTable(void)
: mEnabled(true)
+ , mRealStartGranPos(0)
{
mSeekMap.clear();
mSeekMap.empty();
@@ -51,8 +52,15 @@
return true;
}
+
+__int64 OggSeekTable::getLastRealStartGranPos() {
+
+ return mRealStartGranPos;
+
+}
unsigned long OggSeekTable::getStartPos(__int64 inTime) {
pair<__int64, unsigned long> locValue = *(mSeekMap.lower_bound(inTime));
+ mRealStartGranPos = locValue.first;
return locValue.second;
}
Modified: trunk/oggdsf/src/lib/core/ogg/libOOOggSeek/OggSeekTable.h
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libOOOggSeek/OggSeekTable.h 2004-05-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/core/ogg/libOOOggSeek/OggSeekTable.h 2004-05-16 10:59:20 UTC (rev 6702)
@@ -43,6 +43,7 @@
bool addSeekPoint(__int64 inTime, unsigned long mStartPos);
unsigned long getStartPos(__int64 inTime);
+ __int64 getLastRealStartGranPos();
bool enabled();
@@ -50,6 +51,7 @@
typedef map<__int64, unsigned long> tSeekMap;
tSeekMap mSeekMap;
tSeekMap::value_type mSeekValue;
+ __int64 mRealStartGranPos;
bool mEnabled;
};
Modified: trunk/oggdsf/src/lib/core/ogg/libogg/win32/Dynamic_Debug/BuildLog.htm
===================================================================
--- trunk/oggdsf/src/lib/core/ogg/libogg/win32/Dynamic_Debug/BuildLog.htm 2004-05-16 09:29:04 UTC (rev 6701)
+++ trunk/oggdsf/src/lib/core/ogg/libogg/win32/Dynamic_Debug/BuildLog.htm 2004-05-16 10:59:20 UTC (rev 6702)
@@ -45,7 +45,7 @@
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;..\..\ogg\libOOOggSeek;..\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\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;..\..\ogg\libOOOggSeek;..\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_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>
--- >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