[xiph-commits] r7774 - in trunk/oggdsf: sln/oggdsf_all
src/lib/codecs/theora/filters/dsfTheoraDecoder
src/lib/core/directshow/dsfAbstractAudioDecoder
src/lib/core/directshow/dsfOggDemux
illiminable at motherfish-iii.xiph.org
illiminable at motherfish-iii.xiph.org
Fri Sep 17 07:19:28 PDT 2004
Author: illiminable
Date: 2004-09-17 07:19:28 -0700 (Fri, 17 Sep 2004)
New Revision: 7774
Modified:
trunk/oggdsf/sln/oggdsf_all/oggdsf_all.sln
trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeInputPin.cpp
trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeInputPin.h
trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeOutputPin.cpp
trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeOutputPin.h
trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeFilter.cpp
trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeInputPin.cpp
trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggDemuxSourceFilter.cpp
Log:
* Fixed a bug when WMP activeX control is scripted in IE or other players. The code was redundant anyway. Thanks to Gernot Ziegler for reporting this and sending me some html to test it with.
Modified: trunk/oggdsf/sln/oggdsf_all/oggdsf_all.sln
===================================================================
--- trunk/oggdsf/sln/oggdsf_all/oggdsf_all.sln 2004-09-16 17:31:32 UTC (rev 7773)
+++ trunk/oggdsf/sln/oggdsf_all/oggdsf_all.sln 2004-09-17 14:19:28 UTC (rev 7774)
@@ -151,7 +151,6 @@
{A882A968-3013-4A27-B653-E18CF5C791FE} = {A882A968-3013-4A27-B653-E18CF5C791FE}
{4CBC0173-27E6-4218-AE06-5EFDCA7B2547} = {4CBC0173-27E6-4218-AE06-5EFDCA7B2547}
{6B20BD7A-644B-4087-9CAC-71B2D68D0231} = {6B20BD7A-644B-4087-9CAC-71B2D68D0231}
- {053D669F-E874-44C6-9705-8A1DEF40C4E9} = {053D669F-E874-44C6-9705-8A1DEF40C4E9}
{2DA569EC-3E22-4BC9-A242-C7A56EB9C6F4} = {2DA569EC-3E22-4BC9-A242-C7A56EB9C6F4}
EndProjectSection
EndProject
Modified: trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeInputPin.cpp
===================================================================
--- trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeInputPin.cpp 2004-09-16 17:31:32 UTC (rev 7773)
+++ trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeInputPin.cpp 2004-09-17 14:19:28 UTC (rev 7774)
@@ -36,44 +36,44 @@
TheoraDecodeInputPin::TheoraDecodeInputPin(CTransformFilter* inParentFilter, HRESULT* outHR)
: CTransformInputPin(NAME("Theora Input Pin"), inParentFilter, outHR, L"Theora In")
{
- //debugLog.open("G:\\logs\\theoinput.log", ios_base::out);
+ debugLog.open("G:\\logs\\theoinput.log", ios_base::out);
}
TheoraDecodeInputPin::~TheoraDecodeInputPin() {
- //debugLog.close();
+ debugLog.close();
}
-//STDMETHODIMP TheoraDecodeInputPin::NonDelegatingQueryInterface(REFIID riid, void **ppv) {
-// debugLog<<"Querying interface"<<endl;
-// if (riid == IID_IMediaSeeking) {
-// debugLog<<"Got Seeker"<<endl;
-// *ppv = (IMediaSeeking*)this;
-// ((IUnknown*)*ppv)->AddRef();
-//
-// return NOERROR;
-// }
-//
-// return CTransformInputPin::NonDelegatingQueryInterface(riid, ppv);
-//}
+STDMETHODIMP TheoraDecodeInputPin::NonDelegatingQueryInterface(REFIID riid, void **ppv) {
+ debugLog<<"Querying interface"<<endl;
+ if (riid == IID_IMediaSeeking) {
+ debugLog<<"Got Seeker"<<endl;
+ *ppv = (IMediaSeeking*)this;
+ ((IUnknown*)*ppv)->AddRef();
+
+ return NOERROR;
+ }
-//HRESULT TheoraDecodeInputPin::BreakConnect() {
-// CAutoLock locLock(m_pLock);
-// debugLog<<"Break conenct"<<endl;
-// //Need a lock ??
-// ReleaseDelegate();
-// return CTransformInputPin::BreakConnect();
-//}
-//HRESULT TheoraDecodeInputPin::CompleteConnect (IPin *inReceivePin) {
-// CAutoLock locLock(m_pLock);
-// debugLog<<"Complete conenct"<<endl;
-// IMediaSeeking* locSeeker = NULL;
-// inReceivePin->QueryInterface(IID_IMediaSeeking, (void**)&locSeeker);
-// if (locSeeker == NULL) {
-// debugLog<<"Seeker is null"<<endl;
-// }
-// SetDelegate(locSeeker);
-// return CTransformInputPin::CompleteConnect(inReceivePin);
-//}
+ return CTransformInputPin::NonDelegatingQueryInterface(riid, ppv);
+}
+HRESULT TheoraDecodeInputPin::BreakConnect() {
+ CAutoLock locLock(m_pLock);
+ debugLog<<"Break conenct"<<endl;
+ //Need a lock ??
+ ReleaseDelegate();
+ return CTransformInputPin::BreakConnect();
+}
+HRESULT TheoraDecodeInputPin::CompleteConnect (IPin *inReceivePin) {
+ CAutoLock locLock(m_pLock);
+ debugLog<<"Complete conenct"<<endl;
+ IMediaSeeking* locSeeker = NULL;
+ inReceivePin->QueryInterface(IID_IMediaSeeking, (void**)&locSeeker);
+ if (locSeeker == NULL) {
+ debugLog<<"Seeker is null"<<endl;
+ }
+ SetDelegate(locSeeker);
+ return CTransformInputPin::CompleteConnect(inReceivePin);
+}
+
//----------------------
//OLD IMPLEMENTATION
//----------------------
Modified: trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeInputPin.h
===================================================================
--- trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeInputPin.h 2004-09-16 17:31:32 UTC (rev 7773)
+++ trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeInputPin.h 2004-09-17 14:19:28 UTC (rev 7774)
@@ -37,7 +37,7 @@
using namespace std;
class TheoraDecodeInputPin
: public CTransformInputPin
- //, public BasicSeekable
+ , public BasicSeekable
{
public:
@@ -45,14 +45,14 @@
virtual ~TheoraDecodeInputPin();
//COM Guff
- //DECLARE_IUNKNOWN
- //STDMETHODIMP NonDelegatingQueryInterface(REFIID riid, void **ppv);
+ DECLARE_IUNKNOWN
+ STDMETHODIMP NonDelegatingQueryInterface(REFIID riid, void **ppv);
//Overrides
- //virtual HRESULT BreakConnect();
- //virtual HRESULT CompleteConnect (IPin *inReceivePin);
+ virtual HRESULT BreakConnect();
+ virtual HRESULT CompleteConnect (IPin *inReceivePin);
- //fstream debugLog;
+ fstream debugLog;
};
//----------------------
//OLD IMPLEMENTATION
Modified: trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeOutputPin.cpp
===================================================================
--- trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeOutputPin.cpp 2004-09-16 17:31:32 UTC (rev 7773)
+++ trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeOutputPin.cpp 2004-09-17 14:19:28 UTC (rev 7774)
@@ -37,45 +37,45 @@
TheoraDecodeOutputPin::TheoraDecodeOutputPin(CTransformFilter* inParentFilter, HRESULT* outHR)
: CTransformOutputPin(NAME("Theora Output Pin"), inParentFilter, outHR, L"YV12 Out")
{
- //debugLog.open("G:\\logs\\theooutput.log", ios_base::out);
+ debugLog.open("G:\\logs\\theooutput.log", ios_base::out);
}
TheoraDecodeOutputPin::~TheoraDecodeOutputPin() {
- //debugLog.close();
+ debugLog.close();
}
-//STDMETHODIMP TheoraDecodeOutputPin::NonDelegatingQueryInterface(REFIID riid, void **ppv) {
-// debugLog<<"Querying interface"<<endl;
-// if (riid == IID_IMediaSeeking) {
-// debugLog<<"Got seekeer"<<endl;
-// *ppv = (IMediaSeeking*)this;
-// ((IUnknown*)*ppv)->AddRef();
-//
-// return NOERROR;
-// }
-//
-// return CTransformOutputPin::NonDelegatingQueryInterface(riid, ppv);
-//}
+STDMETHODIMP TheoraDecodeOutputPin::NonDelegatingQueryInterface(REFIID riid, void **ppv) {
+ debugLog<<"Querying interface"<<endl;
+ if (riid == IID_IMediaSeeking) {
+ debugLog<<"Got seekeer"<<endl;
+ *ppv = (IMediaSeeking*)this;
+ ((IUnknown*)*ppv)->AddRef();
+
+ return NOERROR;
+ }
-//HRESULT TheoraDecodeOutputPin::BreakConnect() {
-// CAutoLock locLock(m_pLock);
-// //Need a lock ??
-// ReleaseDelegate();
-// debugLog<<"Break connect"<<endl;
-// return CTransformOutputPin::BreakConnect();
-//}
-//HRESULT TheoraDecodeOutputPin::CompleteConnect (IPin *inReceivePin) {
-// CAutoLock locLock(m_pLock);
-// debugLog<<"Complete connect"<<endl;
-// IMediaSeeking* locSeeker = NULL;
-//
-// m_pFilter->GetPin(0)->QueryInterface(IID_IMediaSeeking, (void**)&locSeeker);
-//
-// if (locSeeker == NULL) {
-// debugLog<<"Seeker was NULL"<<endl;
-// }
-// SetDelegate(locSeeker);
-// return CTransformOutputPin::CompleteConnect(inReceivePin);
-//}
+ return CTransformOutputPin::NonDelegatingQueryInterface(riid, ppv);
+}
+
+HRESULT TheoraDecodeOutputPin::BreakConnect() {
+ CAutoLock locLock(m_pLock);
+ //Need a lock ??
+ ReleaseDelegate();
+ debugLog<<"Break connect"<<endl;
+ return CTransformOutputPin::BreakConnect();
+}
+HRESULT TheoraDecodeOutputPin::CompleteConnect (IPin *inReceivePin) {
+ CAutoLock locLock(m_pLock);
+ debugLog<<"Complete connect"<<endl;
+ IMediaSeeking* locSeeker = NULL;
+
+ m_pFilter->GetPin(0)->QueryInterface(IID_IMediaSeeking, (void**)&locSeeker);
+
+ if (locSeeker == NULL) {
+ debugLog<<"Seeker was NULL"<<endl;
+ }
+ SetDelegate(locSeeker);
+ return CTransformOutputPin::CompleteConnect(inReceivePin);
+}
//----------------------
//OLD IMPLEMENTATION
//----------------------
Modified: trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeOutputPin.h
===================================================================
--- trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeOutputPin.h 2004-09-16 17:31:32 UTC (rev 7773)
+++ trunk/oggdsf/src/lib/codecs/theora/filters/dsfTheoraDecoder/TheoraDecodeOutputPin.h 2004-09-17 14:19:28 UTC (rev 7774)
@@ -37,7 +37,7 @@
using namespace std;
class TheoraDecodeOutputPin
: public CTransformOutputPin
- //, public BasicSeekable
+ , public BasicSeekable
{
public:
//COnstructors
@@ -45,14 +45,14 @@
virtual ~TheoraDecodeOutputPin();
//COM Guff
- //DECLARE_IUNKNOWN
- //STDMETHODIMP NonDelegatingQueryInterface(REFIID riid, void **ppv);
+ DECLARE_IUNKNOWN
+ STDMETHODIMP NonDelegatingQueryInterface(REFIID riid, void **ppv);
//Overrides
- //virtual HRESULT BreakConnect();
- //virtual HRESULT CompleteConnect (IPin *inReceivePin);
+ virtual HRESULT BreakConnect();
+ virtual HRESULT CompleteConnect (IPin *inReceivePin);
- //fstream debugLog;
+ fstream debugLog;
};
//----------------------
//OLD IMPLEMENTATION
Modified: trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeFilter.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeFilter.cpp 2004-09-16 17:31:32 UTC (rev 7773)
+++ trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeFilter.cpp 2004-09-17 14:19:28 UTC (rev 7774)
@@ -83,11 +83,11 @@
}
void AbstractAudioDecodeFilter::SetStartToNow() {
- IReferenceClock* locRefClock = NULL;
- HRESULT locHR = GetSyncSource(&locRefClock);
- LONGLONG locCurrentTime;
- locRefClock->GetTime(&locCurrentTime);
- locRefClock->Release();
+ //IReferenceClock* locRefClock = NULL;
+ //HRESULT locHR = GetSyncSource(&locRefClock);
+ //LONGLONG locCurrentTime;
+ //locRefClock->GetTime(&locCurrentTime);
+ //locRefClock->Release();
- m_tStart = locCurrentTime;
+ //m_tStart = locCurrentTime;
}
\ No newline at end of file
Modified: trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeInputPin.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeInputPin.cpp 2004-09-16 17:31:32 UTC (rev 7773)
+++ trunk/oggdsf/src/lib/core/directshow/dsfAbstractAudioDecoder/AbstractAudioDecodeInputPin.cpp 2004-09-17 14:19:28 UTC (rev 7774)
@@ -222,7 +222,7 @@
STDMETHODIMP AbstractAudioDecodeInputPin::NewSegment(REFERENCE_TIME tStart, REFERENCE_TIME tStop, double dRate) {
CAutoLock locLock(mStreamLock);
ResetFrameCount();
- mParentFilter->SetStartToNow();
+ //mParentFilter->SetStartToNow();
CBasePin::NewSegment(tStart, tStop, dRate);
return mParentFilter->mOutputPin->DeliverNewSegment(tStart, tStop, dRate);
}
Modified: trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggDemuxSourceFilter.cpp
===================================================================
--- trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggDemuxSourceFilter.cpp 2004-09-16 17:31:32 UTC (rev 7773)
+++ trunk/oggdsf/src/lib/core/directshow/dsfOggDemux/OggDemuxSourceFilter.cpp 2004-09-17 14:19:28 UTC (rev 7774)
@@ -322,7 +322,7 @@
mStreamMapper->getOggStream(i)->setLastEndGranPos(*pCurrent);
}
{
-// CAutoLock locStreamLock(mStreamLock);
+ // CAutoLock locStreamLock(mStreamLock);
//debugLog<<" : Delivering End Flush..."<<endl;
DeliverEndFlush();
//debugLog<<" : End flush Delviered."<<endl;
@@ -537,13 +537,15 @@
//debugLog<<"DeliverNewSegment : Delivering start = "<<tStart<<" end = "<< tStop<<"rate = "<<dRate<<endl;
- IReferenceClock* locRefClock = NULL;
- HRESULT locHR = GetSyncSource(&locRefClock);
- LONGLONG locCurrentTime;
- locRefClock->GetTime(&locCurrentTime);
+ //Testing
+ //IReferenceClock* locRefClock = NULL;
+ //HRESULT locHR = GetSyncSource(&locRefClock);
+ //LONGLONG locCurrentTime;
+ //locRefClock->GetTime(&locCurrentTime);
- m_tStart = locCurrentTime;
+ //m_tStart = locCurrentTime;
+ //end testing... uncomment lines after test.
for (unsigned long i = 0; i < mStreamMapper->numStreams(); i++) {
mStreamMapper->getOggStream(i)->getPin()->DeliverNewSegment(tStart, tStop, dRate);
More information about the commits
mailing list