TheoraDecodeInputPin Class Reference

#include <TheoraDecodeInputPin.h>

Inheritance diagram for TheoraDecodeInputPin:

Inheritance graph
[legend]
Collaboration diagram for TheoraDecodeInputPin:

Collaboration graph
[legend]
List of all members.

Public Types

enum  eAcceptHeaderResult {
  AHR_ALL_HEADERS_RECEIVED, AHR_MORE_HEADERS_TO_COME, AHR_INVALID_HEADER, AHR_UNEXPECTED,
  AHR_NULL_POINTER
}

Public Member Functions

virtual HRESULT BreakConnect ()
virtual STDMETHODIMP CheckCapabilities (DWORD *pCapabilities)
virtual HRESULT CompleteConnect (IPin *inReceivePin)
virtual LOOG_INT64 convertGranuleToTime (LOOG_INT64 inGranule)
virtual STDMETHODIMP ConvertTimeFormat (LONGLONG *pTarget, const GUID *pTargetFormat, LONGLONG Source, const GUID *pSourceFormat)
virtual STDMETHODIMP GetAllocatorRequirements (ALLOCATOR_PROPERTIES *outRequestedProps)
virtual STDMETHODIMP GetAvailable (LONGLONG *pEarliest, LONGLONG *pLatest)
virtual STDMETHODIMP GetCapabilities (DWORD *pCapabilities)
virtual string getCodecIdentString ()
virtual string getCodecShortName ()
virtual STDMETHODIMP GetCurrentPosition (LONGLONG *pCurrent)
virtual STDMETHODIMP GetDuration (LONGLONG *pDuration)
virtual IOggOutputPingetOutputPinInterface ()
virtual STDMETHODIMP GetPositions (LONGLONG *pCurrent, LONGLONG *pStop)
virtual STDMETHODIMP GetPreroll (LONGLONG *pllPreroll)
virtual STDMETHODIMP GetRate (double *dRate)
virtual bool getSentStreamOffset ()
virtual STDMETHODIMP GetStopPosition (LONGLONG *pStop)
virtual STDMETHODIMP GetTimeFormat (GUID *pFormat)
virtual STDMETHODIMP IsFormatSupported (const GUID *pFormat)
virtual STDMETHODIMP IsUsingTimeFormat (const GUID *pFormat)
virtual LOOG_INT64 mustSeekBefore (LOOG_INT64 inGranule)
DECLARE_IUNKNOWN STDMETHODIMP NonDelegatingQueryInterface (REFIID riid, void **ppv)
virtual STDMETHODIMP QueryPreferredFormat (GUID *pFormat)
bool ReleaseDelegate ()
bool SetDelegate (IMediaSeeking *inDelegate)
virtual STDMETHODIMP SetPositions (LONGLONG *pCurrent, DWORD dwCurrentFlags, LONGLONG *pStop, DWORD dwStopFlags)
virtual STDMETHODIMP SetRate (double dRate)
virtual void setSentStreamOffset (bool inSentStreamOffset)
virtual STDMETHODIMP SetTimeFormat (const GUID *pFormat)
virtual IOggDecoder::eAcceptHeaderResult showHeaderPacket (OggPacket *inCodecHeaderPacket)
 TheoraDecodeInputPin (CTransformFilter *inParentFilter, HRESULT *outHR)
virtual ~TheoraDecodeInputPin ()

Protected Types

enum  eTheoraSetupState {
  VSS_SEEN_NOTHING, VSS_SEEN_BOS, VSS_SEEN_COMMENT, VSS_ALL_HEADERS_SEEN,
  VSS_ERROR
}

Protected Attributes

HRESULT mHR
IOggOutputPinmOggOutputPinInterface
IMediaSeeking * mSeekDelegate
DWORD mSeekingCap
bool mSentStreamOffset
eTheoraSetupState mSetupState

Static Protected Attributes

const unsigned long THEORA_NUM_BUFFERS = 50

Member Enumeration Documentation

enum IOggDecoder::eAcceptHeaderResult [inherited]
 

Enumeration values:
AHR_ALL_HEADERS_RECEIVED 
AHR_MORE_HEADERS_TO_COME 
AHR_INVALID_HEADER 
AHR_UNEXPECTED 
AHR_NULL_POINTER 

Definition at line 20 of file IOggDecoder.h.

enum TheoraDecodeInputPin::eTheoraSetupState [protected]
 

Enumeration values:
VSS_SEEN_NOTHING 
VSS_SEEN_BOS 
VSS_SEEN_COMMENT 
VSS_ALL_HEADERS_SEEN 
VSS_ERROR 

Definition at line 78 of file TheoraDecodeInputPin.h.


Constructor & Destructor Documentation

TheoraDecodeInputPin::TheoraDecodeInputPin CTransformFilter *  inParentFilter,
HRESULT *  outHR
 

Definition at line 36 of file TheoraDecodeInputPin.cpp.

References false.

TheoraDecodeInputPin::~TheoraDecodeInputPin  )  [virtual]
 

Definition at line 44 of file TheoraDecodeInputPin.cpp.


Member Function Documentation

HRESULT TheoraDecodeInputPin::BreakConnect  )  [virtual]
 

Definition at line 82 of file TheoraDecodeInputPin.cpp.

References BasicSeekPassThrough::ReleaseDelegate().

Here is the call graph for this function:

STDMETHODIMP BasicSeekPassThrough::CheckCapabilities DWORD *  pCapabilities  )  [virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 125 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

HRESULT TheoraDecodeInputPin::CompleteConnect IPin *  inReceivePin  )  [virtual]
 

Definition at line 89 of file TheoraDecodeInputPin.cpp.

References mOggOutputPinInterface, mSentStreamOffset, and BasicSeekPassThrough::SetDelegate().

Here is the call graph for this function:

LOOG_INT64 TheoraDecodeInputPin::convertGranuleToTime LOOG_INT64  inGranule  )  [virtual]
 

Implements IOggDecoder.

Definition at line 114 of file TheoraDecodeInputPin.cpp.

References sTheoraFormatBlock::frameRateDenominator, sTheoraFormatBlock::frameRateNumerator, TheoraDecodeFilter::getTheoraFormatBlock(), LOOG_INT64, and sTheoraFormatBlock::maxKeyframeInterval.

Referenced by TheoraDecodeFilter::Receive().

Here is the call graph for this function:

STDMETHODIMP BasicSeekPassThrough::ConvertTimeFormat LONGLONG *  pTarget,
const GUID *  pTargetFormat,
LONGLONG  Source,
const GUID *  pSourceFormat
[virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 246 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

HRESULT TheoraDecodeInputPin::GetAllocatorRequirements ALLOCATOR_PROPERTIES *  outRequestedProps  )  [virtual]
 

Definition at line 68 of file TheoraDecodeInputPin.cpp.

References TheoraDecodeFilter::mTheoraFormatInfo, sTheoraFormatBlock::outerFrameHeight, and sTheoraFormatBlock::outerFrameWidth.

STDMETHODIMP BasicSeekPassThrough::GetAvailable LONGLONG *  pEarliest,
LONGLONG *  pLatest
[virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 285 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

STDMETHODIMP BasicSeekPassThrough::GetCapabilities DWORD *  pCapabilities  )  [virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 97 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

string TheoraDecodeInputPin::getCodecIdentString  )  [virtual]
 

Implements IOggDecoder.

Definition at line 214 of file TheoraDecodeInputPin.cpp.

string TheoraDecodeInputPin::getCodecShortName  )  [virtual]
 

Implements IOggDecoder.

Definition at line 210 of file TheoraDecodeInputPin.cpp.

STDMETHODIMP BasicSeekPassThrough::GetCurrentPosition LONGLONG *  pCurrent  )  [virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, OggDemuxPacketSourceFilter, and OggMuxFilter.

Definition at line 234 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

STDMETHODIMP BasicSeekPassThrough::GetDuration LONGLONG *  pDuration  )  [virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 211 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

virtual IOggOutputPin* TheoraDecodeInputPin::getOutputPinInterface  )  [inline, virtual]
 

Definition at line 73 of file TheoraDecodeInputPin.h.

Referenced by TheoraDecodeFilter::Receive().

STDMETHODIMP BasicSeekPassThrough::GetPositions LONGLONG *  pCurrent,
LONGLONG *  pStop
[virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, OggDemuxPacketSourceFilter, and OggMuxFilter.

Definition at line 274 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

Referenced by OggMuxFilter::GetPositions().

STDMETHODIMP BasicSeekPassThrough::GetPreroll LONGLONG *  pllPreroll  )  [virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 316 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

STDMETHODIMP BasicSeekPassThrough::GetRate double *  dRate  )  [virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 306 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

virtual bool TheoraDecodeInputPin::getSentStreamOffset  )  [inline, virtual]
 

Definition at line 74 of file TheoraDecodeInputPin.h.

Referenced by TheoraDecodeFilter::Receive().

STDMETHODIMP BasicSeekPassThrough::GetStopPosition LONGLONG *  pStop  )  [virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 223 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

STDMETHODIMP BasicSeekPassThrough::GetTimeFormat GUID *  pFormat  )  [virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 201 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

STDMETHODIMP BasicSeekPassThrough::IsFormatSupported const GUID *  pFormat  )  [virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 150 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

STDMETHODIMP BasicSeekPassThrough::IsUsingTimeFormat const GUID *  pFormat  )  [virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 326 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

LOOG_INT64 TheoraDecodeInputPin::mustSeekBefore LOOG_INT64  inGranule  )  [virtual]
 

Implements IOggDecoder.

Definition at line 139 of file TheoraDecodeInputPin.cpp.

References TheoraDecodeFilter::getTheoraFormatBlock(), LOOG_INT64, and sTheoraFormatBlock::maxKeyframeInterval.

Here is the call graph for this function:

STDMETHODIMP TheoraDecodeInputPin::NonDelegatingQueryInterface REFIID  riid,
void **  ppv
 

Definition at line 48 of file TheoraDecodeInputPin.cpp.

STDMETHODIMP BasicSeekPassThrough::QueryPreferredFormat GUID *  pFormat  )  [virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 171 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

bool BasicSeekPassThrough::ReleaseDelegate  )  [inherited]
 

Definition at line 75 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

Referenced by AbstractTransformOutputPin::BreakConnect(), AbstractTransformInputPin::BreakConnect(), OggMuxInputPin::BreakConnect(), TheoraDecodeOutputPin::BreakConnect(), BreakConnect(), and AbstractTransformOutputPin::~AbstractTransformOutputPin().

bool BasicSeekPassThrough::SetDelegate IMediaSeeking *  inDelegate  )  [inherited]
 

Definition at line 83 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

Referenced by AnxMuxFilter::AnxMuxFilter(), AbstractTransformOutputPin::CompleteConnect(), AbstractTransformInputPin::CompleteConnect(), OggMuxInputPin::CompleteConnect(), AnxMuxInputPin::CompleteConnect(), TheoraDecodeOutputPin::CompleteConnect(), CompleteConnect(), NativeFLACSourcePin::NativeFLACSourcePin(), OggDemuxPacketSourcePin::OggDemuxPacketSourcePin(), OggDemuxSourcePin::OggDemuxSourcePin(), OggMuxFilter::OggMuxFilter(), NativeFLACSourcePin::~NativeFLACSourcePin(), OggDemuxPacketSourcePin::~OggDemuxPacketSourcePin(), and OggMuxFilter::~OggMuxFilter().

STDMETHODIMP BasicSeekPassThrough::SetPositions LONGLONG *  pCurrent,
DWORD  dwCurrentFlags,
LONGLONG *  pStop,
DWORD  dwStopFlags
[virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 257 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

STDMETHODIMP BasicSeekPassThrough::SetRate double  dRate  )  [virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 295 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

virtual void TheoraDecodeInputPin::setSentStreamOffset bool  inSentStreamOffset  )  [inline, virtual]
 

Definition at line 75 of file TheoraDecodeInputPin.h.

References mSentStreamOffset.

Referenced by TheoraDecodeFilter::Receive().

STDMETHODIMP BasicSeekPassThrough::SetTimeFormat const GUID *  pFormat  )  [virtual, inherited]
 

Reimplemented in OggDemuxSourceFilter, and OggDemuxPacketSourceFilter.

Definition at line 189 of file BasicSeekPassThrough.cpp.

References BasicSeekPassThrough::mSeekDelegate.

IOggDecoder::eAcceptHeaderResult TheoraDecodeInputPin::showHeaderPacket OggPacket inCodecHeaderPacket  )  [virtual]
 

Implements IOggDecoder.

Definition at line 145 of file TheoraDecodeInputPin.cpp.

References TheoraDecoder::decodeTheora(), mSetupState, TheoraDecodeFilter::mTheoraDecoder, OggPacket::packetData(), OggPacket::packetSize(), VSS_ALL_HEADERS_SEEN, VSS_ERROR, VSS_SEEN_BOS, VSS_SEEN_COMMENT, and VSS_SEEN_NOTHING.

Here is the call graph for this function:


Member Data Documentation

HRESULT BasicSeekPassThrough::mHR [protected, inherited]
 

Reimplemented in FLACEncodeInputPin, OggRawAudioInserterInputPin, SpeexEncodeInputPin, TheoraEncodeInputPin, VorbisDecodeInputPin, VorbisEncodeInputPin, OggMuxFilter, AbstractTransformInputPin, and AbstractTransformOutputPin.

Definition at line 76 of file BasicSeekPassThrough.h.

IOggOutputPin* TheoraDecodeInputPin::mOggOutputPinInterface [protected]
 

Definition at line 89 of file TheoraDecodeInputPin.h.

Referenced by CompleteConnect().

IMediaSeeking* BasicSeekPassThrough::mSeekDelegate [protected, inherited]
 

Definition at line 75 of file BasicSeekPassThrough.h.

Referenced by BasicSeekPassThrough::BasicSeekPassThrough(), BasicSeekPassThrough::CheckCapabilities(), BasicSeekPassThrough::ConvertTimeFormat(), BasicSeekPassThrough::GetAvailable(), BasicSeekPassThrough::GetCapabilities(), BasicSeekPassThrough::GetCurrentPosition(), BasicSeekPassThrough::GetDuration(), BasicSeekPassThrough::GetPositions(), BasicSeekPassThrough::GetPreroll(), BasicSeekPassThrough::GetRate(), BasicSeekPassThrough::GetStopPosition(), BasicSeekPassThrough::GetTimeFormat(), BasicSeekPassThrough::IsFormatSupported(), BasicSeekPassThrough::IsUsingTimeFormat(), BasicSeekPassThrough::QueryPreferredFormat(), BasicSeekPassThrough::ReleaseDelegate(), BasicSeekPassThrough::SetDelegate(), BasicSeekPassThrough::SetPositions(), BasicSeekPassThrough::SetRate(), BasicSeekPassThrough::SetTimeFormat(), and BasicSeekPassThrough::~BasicSeekPassThrough().

DWORD BasicSeekPassThrough::mSeekingCap [protected, inherited]
 

Definition at line 77 of file BasicSeekPassThrough.h.

Referenced by BasicSeekPassThrough::BasicSeekPassThrough().

bool TheoraDecodeInputPin::mSentStreamOffset [protected]
 

Definition at line 90 of file TheoraDecodeInputPin.h.

Referenced by CompleteConnect(), and setSentStreamOffset().

eTheoraSetupState TheoraDecodeInputPin::mSetupState [protected]
 

Definition at line 86 of file TheoraDecodeInputPin.h.

Referenced by showHeaderPacket().

const unsigned long TheoraDecodeInputPin::THEORA_NUM_BUFFERS = 50 [static, protected]
 

Definition at line 77 of file TheoraDecodeInputPin.h.


The documentation for this class was generated from the following files:
Generated on Fri Feb 17 00:02:38 2006 for oggdsf by  doxygen 1.3.9