#include <OggDemuxSourceFilter.h>
Inheritance diagram for OggDemuxSourceFilter:
Public Types | |
enum | eThreadCommands { THREAD_EXIT = 0, THREAD_PAUSE = 1, THREAD_RUN = 2 } |
Public Member Functions | |
DECLARE_IUNKNOWN STDMETHODIMP | NonDelegatingQueryInterface (REFIID riid, void **ppv) |
OggDemuxSourceFilter () | |
OggDemuxSourceFilter (REFCLSID inFilterGUID) | |
virtual | ~OggDemuxSourceFilter (void) |
ULONG STDMETHODCALLTYPE | GetMiscFlags (void) |
virtual STDMETHODIMP | GetCurFile (LPOLESTR *outFileName, AM_MEDIA_TYPE *outMediaType) |
virtual STDMETHODIMP | Load (LPCOLESTR inFileName, const AM_MEDIA_TYPE *inMediaType) |
virtual int | GetPinCount () |
virtual CBasePin * | GetPin (int inPinNo) |
virtual bool | acceptOggPage (OggPage *inOggPage) |
virtual STDMETHODIMP | GetPages (CAUUID *outPropPages) |
STDMETHODIMP | Run (REFERENCE_TIME tStart) |
STDMETHODIMP | Pause (void) |
STDMETHODIMP | Stop (void) |
virtual STDMETHODIMP | GetDuration (LONGLONG *outDuration) |
virtual STDMETHODIMP | GetCapabilities (DWORD *inCapabilities) |
virtual STDMETHODIMP | CheckCapabilities (DWORD *pCapabilities) |
virtual STDMETHODIMP | IsFormatSupported (const GUID *pFormat) |
virtual STDMETHODIMP | QueryPreferredFormat (GUID *pFormat) |
virtual STDMETHODIMP | SetTimeFormat (const GUID *pFormat) |
virtual STDMETHODIMP | GetTimeFormat (GUID *pFormat) |
virtual STDMETHODIMP | GetStopPosition (LONGLONG *pStop) |
virtual STDMETHODIMP | GetCurrentPosition (LONGLONG *pCurrent) |
virtual STDMETHODIMP | ConvertTimeFormat (LONGLONG *pTarget, const GUID *pTargetFormat, LONGLONG Source, const GUID *pSourceFormat) |
virtual STDMETHODIMP | SetPositions (LONGLONG *pCurrent, DWORD dwCurrentFlags, LONGLONG *pStop, DWORD dwStopFlags) |
virtual STDMETHODIMP | GetPositions (LONGLONG *pCurrent, LONGLONG *pStop) |
virtual STDMETHODIMP | GetAvailable (LONGLONG *pEarliest, LONGLONG *pLatest) |
virtual STDMETHODIMP | SetRate (double dRate) |
virtual STDMETHODIMP | GetRate (double *dRate) |
virtual STDMETHODIMP | GetPreroll (LONGLONG *pllPreroll) |
virtual STDMETHODIMP | IsUsingTimeFormat (const GUID *pFormat) |
virtual STDMETHODIMP | get_AuthorName (BSTR *outAuthorName) |
virtual STDMETHODIMP | get_Title (BSTR *outTitle) |
virtual STDMETHODIMP | get_Rating (BSTR *outRating) |
virtual STDMETHODIMP | get_Description (BSTR *outDescription) |
virtual STDMETHODIMP | get_Copyright (BSTR *outCopyright) |
virtual STDMETHODIMP | get_BaseURL (BSTR *outBaseURL) |
virtual STDMETHODIMP | get_LogoURL (BSTR *outLogoURL) |
virtual STDMETHODIMP | get_LogoIconURL (BSTR *outLogoIconURL) |
virtual STDMETHODIMP | get_WatermarkURL (BSTR *outWatermarkURL) |
virtual STDMETHODIMP | get_MoreInfoURL (BSTR *outMoreInfoURL) |
virtual STDMETHODIMP | get_MoreInfoBannerImage (BSTR *outMoreInfoBannerImage) |
virtual STDMETHODIMP | get_MoreInfoBannerURL (BSTR *outMoreInfoBannerURL) |
virtual STDMETHODIMP | get_MoreInfoText (BSTR *outMoreInfoText) |
virtual STDMETHODIMP | GetTypeInfoCount (unsigned int FAR *pctinfo) |
virtual STDMETHODIMP | GetIDsOfNames (REFIID riid, OLECHAR FAR *FAR *rgszNames, unsigned int cNames, LCID lcid, DISPID FAR *rgDispId) |
virtual STDMETHODIMP | GetTypeInfo (unsigned int iTInfo, LCID lcid, ITypeInfo FAR *FAR *ppTInfo) |
virtual STDMETHODIMP | Invoke (DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS FAR *pDispParams, VARIANT FAR *pVarResult, EXCEPINFO FAR *pExcepInfo, unsigned int FAR *puArgErr) |
CCritSec * | theLock () |
virtual DWORD | ThreadProc (void) |
bool | SetDelegate (IMediaSeeking *inDelegate) |
bool | ReleaseDelegate () |
Static Public Member Functions | |
CUnknown *WINAPI | CreateInstance (LPUNKNOWN pUnk, HRESULT *pHr) |
Public Attributes | |
CCritSec * | mStreamLock |
REFERENCE_TIME | mSeekTimeBase |
Static Public Attributes | |
const unsigned long | RAW_BUFFER_SIZE = 24 |
Protected Member Functions | |
void | resetStream () |
void | DeliverEOS () |
void | DeliverBeginFlush () |
void | DeliverEndFlush () |
void | DeliverNewSegment (REFERENCE_TIME tStart, REFERENCE_TIME tStop, double dRate) |
virtual HRESULT | DataProcessLoop () |
virtual HRESULT | SetUpPins () |
Protected Attributes | |
CCritSec * | mSourceFileLock |
CCritSec * | mDemuxLock |
AutoOggSeekTable * | mSeekTable |
wstring | mFileName |
OggDataBuffer | mOggBuffer |
bool | mJustReset |
bool | mSetIgnorePackets |
IFilterDataSource * | mDataSource |
OggStreamMapper * | mStreamMapper |
fstream | debugLog |
IMediaSeeking * | mSeekDelegate |
HRESULT | mHR |
DWORD | mSeekingCap |
Friends | |
class | OggStream |
|
Definition at line 69 of file OggDemuxSourceFilter.h. |
|
Definition at line 104 of file OggDemuxSourceFilter.cpp. References debugLog, mDemuxLock, mSourceFileLock, mStreamLock, mStreamMapper, and true. Referenced by CreateInstance(). |
|
Definition at line 126 of file OggDemuxSourceFilter.cpp. References debugLog, mDemuxLock, mSourceFileLock, mStreamLock, and true. |
|
Definition at line 147 of file OggDemuxSourceFilter.cpp. References IFilterDataSource::close(), debugLog, mDataSource, mSeekTable, and mStreamMapper. |
Here is the call graph for this function:
|
All callers to acceptOggPage give away their pointer to this function. All methods implementing this interface are responsible for deleting this page. All callers should NULL their pointer immediately after calling to avoid reusing them. Implements IOggCallback. Definition at line 656 of file OggDemuxSourceFilter.cpp. References OggStreamMapper::acceptOggPage(), and mStreamMapper. |
Here is the call graph for this function:
|
Reimplemented from BasicSeekPassThrough. Definition at line 256 of file OggDemuxSourceFilter.cpp. |
|
Reimplemented from BasicSeekPassThrough. Definition at line 305 of file OggDemuxSourceFilter.cpp. |
|
Reimplemented in AnxDemuxSourceFilter. Definition at line 62 of file OggDemuxSourceFilter.cpp. References OggDemuxSourceFilter(). |
Here is the call graph for this function:
|
Definition at line 553 of file OggDemuxSourceFilter.cpp. References DeliverEOS(), OggDataBuffer::feed(), IFilterDataSource::isEOF(), mDataSource, mDemuxLock, mJustReset, mOggBuffer, mSourceFileLock, and IFilterDataSource::read(). Referenced by ThreadProc(). |
Here is the call graph for this function:
|
Definition at line 496 of file OggDemuxSourceFilter.cpp. References debugLog, OggDemuxSourcePin::DeliverBeginFlush(), OggStreamMapper::getOggStream(), OggStream::getPin(), mStreamMapper, OggStreamMapper::numStreams(), and resetStream(). Referenced by SetPositions(), and Stop(). |
Here is the call graph for this function:
|
Definition at line 512 of file OggDemuxSourceFilter.cpp. References debugLog, OggDemuxSourcePin::DeliverEndFlush(), OggStream::flush(), OggStreamMapper::getOggStream(), OggStream::getPin(), mSetIgnorePackets, mStreamMapper, OggStreamMapper::numStreams(), and OggStreamMapper::toStartOfData(). Referenced by SetPositions(), and Stop(). |
Here is the call graph for this function:
|
Definition at line 532 of file OggDemuxSourceFilter.cpp. References debugLog, OggDemuxSourcePin::DeliverEndOfStream(), OggStreamMapper::getOggStream(), OggStream::getPin(), mStreamMapper, OggStreamMapper::numStreams(), resetStream(), and OggStreamMapper::toStartOfData(). Referenced by DataProcessLoop(). |
Here is the call graph for this function:
|
Definition at line 545 of file OggDemuxSourceFilter.cpp. References debugLog, OggDemuxSourcePin::DeliverNewSegment(), OggStreamMapper::getOggStream(), OggStream::getPin(), mStreamMapper, and OggStreamMapper::numStreams(). Referenced by SetPositions(). |
Here is the call graph for this function:
|
Definition at line 710 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 726 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 723 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 720 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 732 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 729 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 741 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 744 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 747 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 738 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 717 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 713 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 735 of file OggDemuxSourceFilter.cpp. |
|
Reimplemented from BasicSeekPassThrough. Definition at line 374 of file OggDemuxSourceFilter.cpp. References OggSeekTable::enabled(), AutoOggSeekTable::fileDuration(), and mSeekTable. |
Here is the call graph for this function:
|
Reimplemented from BasicSeekPassThrough. Definition at line 232 of file OggDemuxSourceFilter.cpp. References OggSeekTable::enabled(), and mSeekTable. |
Here is the call graph for this function:
|
Definition at line 207 of file OggDemuxSourceFilter.cpp. References mFileName, and outFileName. |
|
Reimplemented from BasicSeekPassThrough. Definition at line 298 of file OggDemuxSourceFilter.cpp. |
|
Reimplemented from BasicSeekPassThrough. Definition at line 244 of file OggDemuxSourceFilter.cpp. References OggSeekTable::enabled(), AutoOggSeekTable::fileDuration(), and mSeekTable. |
Here is the call graph for this function:
|
Definition at line 756 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 182 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 187 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 420 of file OggDemuxSourceFilter.cpp. References OggStreamMapper::getOggStream(), OggStream::getPin(), mStreamMapper, and OggStreamMapper::numStreams(). |
Here is the call graph for this function:
|
Definition at line 416 of file OggDemuxSourceFilter.cpp. References mStreamMapper, and OggStreamMapper::numStreams(). |
Here is the call graph for this function:
|
Reimplemented from BasicSeekPassThrough. Definition at line 368 of file OggDemuxSourceFilter.cpp. |
|
Reimplemented from BasicSeekPassThrough. Definition at line 397 of file OggDemuxSourceFilter.cpp. |
|
Reimplemented from BasicSeekPassThrough. Definition at line 391 of file OggDemuxSourceFilter.cpp. |
|
Reimplemented from BasicSeekPassThrough. Definition at line 287 of file OggDemuxSourceFilter.cpp. References OggSeekTable::enabled(), AutoOggSeekTable::fileDuration(), and mSeekTable. |
Here is the call graph for this function:
|
Reimplemented from BasicSeekPassThrough. Definition at line 283 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 763 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 752 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 768 of file OggDemuxSourceFilter.cpp. |
|
Reimplemented from BasicSeekPassThrough. Definition at line 261 of file OggDemuxSourceFilter.cpp. |
|
Reimplemented from BasicSeekPassThrough. Definition at line 404 of file OggDemuxSourceFilter.cpp. |
|
Reimplemented in AnxDemuxSourceFilter. Definition at line 217 of file OggDemuxSourceFilter.cpp. References AutoOggSeekTable::buildTable(), mFileName, mSeekTable, and SetUpPins(). |
Here is the call graph for this function:
|
Definition at line 72 of file OggDemuxSourceFilter.cpp. |
|
Definition at line 672 of file OggDemuxSourceFilter.cpp. References debugLog, and THREAD_RUN. |
|
Reimplemented from BasicSeekPassThrough. Definition at line 274 of file OggDemuxSourceFilter.cpp. |
|
|
Here is the call graph for this function:
|
Definition at line 662 of file OggDemuxSourceFilter.cpp. References debugLog. |
|
|
Here is the call graph for this function:
|
Reimplemented from BasicSeekPassThrough. Definition at line 386 of file OggDemuxSourceFilter.cpp. |
|
Reimplemented from BasicSeekPassThrough. Definition at line 279 of file OggDemuxSourceFilter.cpp. |
|
Here is the call graph for this function:
|
Definition at line 690 of file OggDemuxSourceFilter.cpp. References debugLog, DeliverBeginFlush(), DeliverEndFlush(), mSetIgnorePackets, and THREAD_EXIT. |
Here is the call graph for this function:
|
Definition at line 703 of file OggDemuxSourceFilter.cpp. Referenced by CMMLStream::AddPin(). |
|
Definition at line 432 of file OggDemuxSourceFilter.cpp. References DataProcessLoop(), THREAD_EXIT, and THREAD_RUN. |
Here is the call graph for this function:
|
Definition at line 62 of file OggDemuxSourceFilter.h. |
|
Definition at line 201 of file OggDemuxSourceFilter.h. Referenced by DeliverBeginFlush(), DeliverEndFlush(), DeliverEOS(), DeliverNewSegment(), OggDemuxSourceFilter(), Pause(), resetStream(), Run(), Stop(), and ~OggDemuxSourceFilter(). |
|
Definition at line 196 of file OggDemuxSourceFilter.h. Referenced by DataProcessLoop(), resetStream(), SetPositions(), SetUpPins(), and ~OggDemuxSourceFilter(). |
|
Definition at line 183 of file OggDemuxSourceFilter.h. Referenced by DataProcessLoop(), OggDemuxSourceFilter(), resetStream(), and SetUpPins(). |
|
Definition at line 185 of file OggDemuxSourceFilter.h. Referenced by GetCurFile(), Load(), resetStream(), and SetUpPins(). |
|
Reimplemented in FLACEncodeInputPin, SpeexEncodeInputPin, TheoraEncodeInputPin, VorbisDecodeInputPin, VorbisEncodeInputPin, OggMuxFilter, AbstractTransformInputPin, and AbstractTransformOutputPin. Definition at line 76 of file BasicSeekPassThrough.h. |
|
Definition at line 189 of file OggDemuxSourceFilter.h. Referenced by DataProcessLoop(), and resetStream(). |
|
Definition at line 187 of file OggDemuxSourceFilter.h. Referenced by DataProcessLoop(), resetStream(), and SetUpPins(). |
|
|
Definition at line 77 of file BasicSeekPassThrough.h. Referenced by BasicSeekPassThrough::BasicSeekPassThrough(). |
|
Definition at line 184 of file OggDemuxSourceFilter.h. Referenced by GetAvailable(), GetCapabilities(), GetDuration(), GetStopPosition(), Load(), SetPositions(), and ~OggDemuxSourceFilter(). |
|
Definition at line 167 of file OggDemuxSourceFilter.h. Referenced by OggStream::acceptOggPage(), OggDemuxSourcePin::deliverOggPacket(), CMMLSourcePin::deliverOggPacket(), and SetPositions(). |
|
Definition at line 191 of file OggDemuxSourceFilter.h. Referenced by DeliverEndFlush(), SetPositions(), and Stop(). |
|
Definition at line 182 of file OggDemuxSourceFilter.h. Referenced by DataProcessLoop(), OggDemuxSourceFilter(), resetStream(), SetPositions(), and SetUpPins(). |
|
Definition at line 165 of file OggDemuxSourceFilter.h. Referenced by OggDemuxSourcePin::deliverOggPacket(), CMMLSourcePin::deliverOggPacket(), and OggDemuxSourceFilter(). |
|
Definition at line 198 of file OggDemuxSourceFilter.h. Referenced by acceptOggPage(), DeliverBeginFlush(), DeliverEndFlush(), DeliverEOS(), DeliverNewSegment(), GetPin(), GetPinCount(), OggDemuxSourceFilter(), resetStream(), SetPositions(), SetUpPins(), and ~OggDemuxSourceFilter(). |
|
Definition at line 63 of file OggDemuxSourceFilter.h. Referenced by SetUpPins(). |