Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

TheoraEncodeInputPin Class Reference

#include <TheoraEncodeInputPin.h>

Inherits AbstractVideoEncodeInputPin.

Inheritance diagram for TheoraEncodeInputPin:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 TheoraEncodeInputPin (AbstractVideoEncodeFilter *inFilter, CCritSec *inFilterLock, AbstractVideoEncodeOutputPin *inOutputPin)
virtual ~TheoraEncodeInputPin (void)
virtual long encodeData (unsigned char *inBuf, long inNumBytes)
virtual bool ConstructCodec ()
virtual void DestroyCodec ()
virtual HRESULT SetMediaType (const CMediaType *inMediaType)
theora_infotheoraInfo ()
DECLARE_IUNKNOWN STDMETHODIMP NonDelegatingQueryInterface (REFIID riid, void **ppv)
virtual HRESULT CompleteConnect (IPin *inReceivePin)
STDMETHODIMP Receive (IMediaSample *pSample)
virtual HRESULT CheckMediaType (const CMediaType *inMediaType)
virtual HRESULT GetMediaType (int inPosition, CMediaType *outMediaType)
virtual void ResetFrameCount ()
virtual STDMETHODIMP EndOfStream (void)
virtual STDMETHODIMP BeginFlush ()
virtual STDMETHODIMP EndFlush ()
virtual STDMETHODIMP NewSegment (REFERENCE_TIME tStart, REFERENCE_TIME tStop, double dRate)
bool SetDelegate (IMediaSeeking *inDelegate)
bool ReleaseDelegate ()
virtual STDMETHODIMP GetCapabilities (DWORD *pCapabilities)
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 GetDuration (LONGLONG *pDuration)
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)

Static Public Attributes

const short SIZE_16_BITS = 2
const unsigned long HUNDRED_NANOS = 10000000
const signed short SINT_MAX = 32767
const signed short SINT_MIN = -32768

Protected Member Functions

HRESULT deliverData (LONGLONG inStart, LONGLONG inEnd, unsigned char *inBuf, unsigned long inNumBytes)
long encodeYV12ToYV12 (unsigned char *inBuf, long inNumBytes)
long encodeYUY2ToYV12 (unsigned char *inBuf, long inNumBytes)
long encodeAYUVtoYV12 (unsigned char *inBuf, long inNumBytes)
long encodeRGB24toYV12 (unsigned char *inBuf, long inNumBytes)
long encodeRGB32toYV12 (unsigned char *inBuf, long inNumBytes)
long encodeUYVYToYV12 (unsigned char *inBuf, long inNumBytes)
long encodeYVYUToYV12 (unsigned char *inBuf, long inNumBytes)
long encodeIYUVToYV12 (unsigned char *inBuf, long inNumBytes)
virtual bool SetSampleParams (IMediaSample *outMediaSample, unsigned long inDataSize, REFERENCE_TIME *inStartTime, REFERENCE_TIME *inEndTime)

Protected Attributes

HRESULT mHR
TheoraEncoder mTheoraEncoder
theora_info mTheoraInfo
yuv_buffer mYUV
unsigned long mXOffset
unsigned long mYOffset
bool mBegun
AbstractVideoEncodeOutputPinmOutputPin
__int64 mUptoFrame
AbstractVideoEncodeFiltermParentFilter
CMediaType mPinInputType
VIDEOINFOHEADER * mVideoFormat
long mHeight
long mWidth
IMediaSeeking * mSeekDelegate
DWORD mSeekingCap

Constructor & Destructor Documentation

TheoraEncodeInputPin::TheoraEncodeInputPin AbstractVideoEncodeFilter inFilter,
CCritSec *  inFilterLock,
AbstractVideoEncodeOutputPin inOutputPin
 

TheoraEncodeInputPin::~TheoraEncodeInputPin void   )  [virtual]
 


Member Function Documentation

STDMETHODIMP AbstractVideoEncodeInputPin::BeginFlush  )  [virtual, inherited]
 

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

Reimplemented in OggDemuxSourceFilter.

HRESULT AbstractVideoEncodeInputPin::CheckMediaType const CMediaType *  inMediaType  )  [virtual, inherited]
 

HRESULT AbstractVideoEncodeInputPin::CompleteConnect IPin *  inReceivePin  )  [virtual, inherited]
 

bool TheoraEncodeInputPin::ConstructCodec  )  [virtual]
 

Implements AbstractVideoEncodeInputPin.

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

Reimplemented in OggDemuxSourceFilter.

HRESULT TheoraEncodeInputPin::deliverData LONGLONG  inStart,
LONGLONG  inEnd,
unsigned char *  inBuf,
unsigned long  inNumBytes
[protected]
 

void TheoraEncodeInputPin::DestroyCodec  )  [virtual]
 

Implements AbstractVideoEncodeInputPin.

long TheoraEncodeInputPin::encodeAYUVtoYV12 unsigned char *  inBuf,
long  inNumBytes
[protected]
 

long TheoraEncodeInputPin::encodeData unsigned char *  inBuf,
long  inNumBytes
[virtual]
 

Implements AbstractVideoEncodeInputPin.

long TheoraEncodeInputPin::encodeIYUVToYV12 unsigned char *  inBuf,
long  inNumBytes
[protected]
 

long TheoraEncodeInputPin::encodeRGB24toYV12 unsigned char *  inBuf,
long  inNumBytes
[protected]
 

long TheoraEncodeInputPin::encodeRGB32toYV12 unsigned char *  inBuf,
long  inNumBytes
[protected]
 

long TheoraEncodeInputPin::encodeUYVYToYV12 unsigned char *  inBuf,
long  inNumBytes
[protected]
 

long TheoraEncodeInputPin::encodeYUY2ToYV12 unsigned char *  inBuf,
long  inNumBytes
[protected]
 

long TheoraEncodeInputPin::encodeYV12ToYV12 unsigned char *  inBuf,
long  inNumBytes
[protected]
 

long TheoraEncodeInputPin::encodeYVYUToYV12 unsigned char *  inBuf,
long  inNumBytes
[protected]
 

STDMETHODIMP AbstractVideoEncodeInputPin::EndFlush  )  [virtual, inherited]
 

STDMETHODIMP AbstractVideoEncodeInputPin::EndOfStream void   )  [virtual, inherited]
 

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

Reimplemented in OggDemuxSourceFilter.

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

Reimplemented in OggDemuxSourceFilter.

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

Reimplemented in OggDemuxSourceFilter.

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

Reimplemented in OggDemuxSourceFilter.

HRESULT AbstractVideoEncodeInputPin::GetMediaType int  inPosition,
CMediaType *  outMediaType
[virtual, inherited]
 

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

Reimplemented in OggDemuxSourceFilter.

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

Reimplemented in OggDemuxSourceFilter.

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

Reimplemented in OggDemuxSourceFilter.

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

Reimplemented in OggDemuxSourceFilter.

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

Reimplemented in OggDemuxSourceFilter.

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

Reimplemented in OggDemuxSourceFilter.

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

Reimplemented in OggDemuxSourceFilter.

STDMETHODIMP AbstractVideoEncodeInputPin::NewSegment REFERENCE_TIME  tStart,
REFERENCE_TIME  tStop,
double  dRate
[virtual, inherited]
 

STDMETHODIMP AbstractVideoEncodeInputPin::NonDelegatingQueryInterface REFIID  riid,
void **  ppv
[inherited]
 

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

Reimplemented in OggDemuxSourceFilter.

STDMETHODIMP AbstractVideoEncodeInputPin::Receive IMediaSample *  pSample  )  [inherited]
 

bool BasicSeekable::ReleaseDelegate  )  [inherited]
 

void AbstractVideoEncodeInputPin::ResetFrameCount  )  [virtual, inherited]
 

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

HRESULT TheoraEncodeInputPin::SetMediaType const CMediaType *  inMediaType  )  [virtual]
 

Reimplemented from AbstractVideoEncodeInputPin.

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

Reimplemented in OggDemuxSourceFilter.

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

Reimplemented in OggDemuxSourceFilter.

bool AbstractVideoEncodeInputPin::SetSampleParams IMediaSample *  outMediaSample,
unsigned long  inDataSize,
REFERENCE_TIME *  inStartTime,
REFERENCE_TIME *  inEndTime
[protected, virtual, inherited]
 

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

Reimplemented in OggDemuxSourceFilter.

theora_info * TheoraEncodeInputPin::theoraInfo  ) 
 


Member Data Documentation

const unsigned long AbstractVideoEncodeInputPin::HUNDRED_NANOS = 10000000 [static, inherited]
 

bool AbstractVideoEncodeInputPin::mBegun [protected, inherited]
 

long AbstractVideoEncodeInputPin::mHeight [protected, inherited]
 

HRESULT TheoraEncodeInputPin::mHR [protected]
 

Reimplemented from AbstractVideoEncodeInputPin.

AbstractVideoEncodeOutputPin* AbstractVideoEncodeInputPin::mOutputPin [protected, inherited]
 

AbstractVideoEncodeFilter* AbstractVideoEncodeInputPin::mParentFilter [protected, inherited]
 

CMediaType AbstractVideoEncodeInputPin::mPinInputType [protected, inherited]
 

IMediaSeeking* BasicSeekable::mSeekDelegate [protected, inherited]
 

DWORD BasicSeekable::mSeekingCap [protected, inherited]
 

TheoraEncoder TheoraEncodeInputPin::mTheoraEncoder [protected]
 

theora_info TheoraEncodeInputPin::mTheoraInfo [protected]
 

__int64 AbstractVideoEncodeInputPin::mUptoFrame [protected, inherited]
 

VIDEOINFOHEADER* AbstractVideoEncodeInputPin::mVideoFormat [protected, inherited]
 

long AbstractVideoEncodeInputPin::mWidth [protected, inherited]
 

unsigned long TheoraEncodeInputPin::mXOffset [protected]
 

unsigned long TheoraEncodeInputPin::mYOffset [protected]
 

yuv_buffer TheoraEncodeInputPin::mYUV [protected]
 

const signed short AbstractVideoEncodeInputPin::SINT_MAX = 32767 [static, inherited]
 

const signed short AbstractVideoEncodeInputPin::SINT_MIN = -32768 [static, inherited]
 

const short AbstractVideoEncodeInputPin::SIZE_16_BITS = 2 [static, inherited]
 


The documentation for this class was generated from the following files:
Generated on Fri Nov 5 22:34:32 2004 for oggdsf by  doxygen 1.3.9