[xiph-commits] r8749 -
trunk/oggdsf/src/lib/core/directshow/dsfOggMux
illiminable at motherfish-iii.xiph.org
illiminable at motherfish-iii.xiph.org
Wed Jan 12 00:15:50 PST 2005
Author: illiminable
Date: 2005-01-12 00:15:49 -0800 (Wed, 12 Jan 2005)
New Revision: 8749
Modified:
trunk/oggdsf/src/lib/core/directshow/dsfOggMux/OggMuxFilter.h
trunk/oggdsf/src/lib/core/directshow/dsfOggMux/OggMuxInputPin.cpp
Log:
* Added a lock for the eos message
Modified: trunk/oggdsf/src/lib/core/directshow/dsfOggMux/OggMuxFilter.h
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfOggMux/OggMuxFilter.h 2005-01-12 06:25:45 UTC (rev 8748)
+++ trunk/oggdsf/src/lib/core/directshow/dsfOggMux/OggMuxFilter.h 2005-01-12 08:15:49 UTC (rev 8749)
@@ -66,7 +66,11 @@
STDMETHODIMP NonDelegatingQueryInterface(REFIID riid, void **ppv);
static CUnknown * WINAPI CreateInstance(LPUNKNOWN pUnk, HRESULT *pHr);
- //IAMFilterMiscFlags Implementation
+ // *********************************************
+ // ***** IAMFilterMiscFlags Implementation *****
+ // *********************************************
+
+ /// Allows the filter to return a flag to tell the graph it's a renderer.
ULONG STDMETHODCALLTYPE GetMiscFlags(void);
// ***************************************
@@ -109,6 +113,17 @@
/// Called when the graph stops
STDMETHODIMP Stop(void);
+ // ******************************************
+ // ***** IOggMuxProgress Implementation *****
+ // ******************************************
+
+ /// Returns the time in 100 nanosecond units of the last page that was written.
+ virtual STDMETHODIMP_(LONGLONG) getProgressTime();
+
+ /// Returns the number of bytes written so far.
+ virtual STDMETHODIMP_(LONGLONG) getBytesWritten();
+
+
//Helpers
virtual HRESULT addAnotherPin();
virtual void NotifyComplete();
@@ -116,12 +131,6 @@
//IMediaSeeking Override to give progress. - This is unreliable !!
virtual STDMETHODIMP GetPositions(LONGLONG *pCurrent, LONGLONG *pStop);
virtual STDMETHODIMP GetCurrentPosition(LONGLONG *pCurrent);
-
- //IOggMuxProgress Implementation
- virtual STDMETHODIMP_(LONGLONG) getProgressTime();
- virtual STDMETHODIMP_(LONGLONG) getBytesWritten();
-
-
protected:
bool SetupOutput();
Modified: trunk/oggdsf/src/lib/core/directshow/dsfOggMux/OggMuxInputPin.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfOggMux/OggMuxInputPin.cpp 2005-01-12 06:25:45 UTC (rev 8748)
+++ trunk/oggdsf/src/lib/core/directshow/dsfOggMux/OggMuxInputPin.cpp 2005-01-12 08:15:49 UTC (rev 8749)
@@ -310,7 +310,7 @@
STDMETHODIMP OggMuxInputPin::EndOfStream(void) {
-
+ CAutoLock locLock(mParentFilter->mStreamLock);
mPaginator.finishStream();
mMuxStream->setIsEOS(true);
More information about the commits
mailing list