
Public Member Functions | |
| CapturePin (vlc_object_t *_p_input, access_sys_t *p_sys, CaptureFilter *_p_filter, AM_MEDIA_TYPE *mt, size_t mt_count) | |
| virtual | ~CapturePin () |
| STDMETHODIMP | QueryInterface (REFIID riid, void **ppv) |
| STDMETHODIMP_ (ULONG) AddRef() | |
| STDMETHODIMP_ (ULONG) Release() | |
| STDMETHODIMP | Connect (IPin *pReceivePin, const AM_MEDIA_TYPE *pmt) |
| STDMETHODIMP | ReceiveConnection (IPin *pConnector, const AM_MEDIA_TYPE *pmt) |
| STDMETHODIMP | Disconnect () |
| STDMETHODIMP | ConnectedTo (IPin **pPin) |
| STDMETHODIMP | ConnectionMediaType (AM_MEDIA_TYPE *pmt) |
| STDMETHODIMP | QueryPinInfo (PIN_INFO *pInfo) |
| STDMETHODIMP | QueryDirection (PIN_DIRECTION *pPinDir) |
| STDMETHODIMP | QueryId (LPWSTR *Id) |
| STDMETHODIMP | QueryAccept (const AM_MEDIA_TYPE *pmt) |
| STDMETHODIMP | EnumMediaTypes (IEnumMediaTypes **ppEnum) |
| STDMETHODIMP | QueryInternalConnections (IPin **apPin, ULONG *nPin) |
| STDMETHODIMP | EndOfStream (void) |
| STDMETHODIMP | BeginFlush (void) |
| STDMETHODIMP | EndFlush (void) |
| STDMETHODIMP | NewSegment (REFERENCE_TIME tStart, REFERENCE_TIME tStop, double dRate) |
| STDMETHODIMP | GetAllocator (IMemAllocator **ppAllocator) |
| STDMETHODIMP | NotifyAllocator (IMemAllocator *pAllocator, BOOL bReadOnly) |
| STDMETHODIMP | GetAllocatorRequirements (ALLOCATOR_PROPERTIES *pProps) |
| STDMETHODIMP | Receive (IMediaSample *pSample) |
| STDMETHODIMP | ReceiveMultiple (IMediaSample **pSamples, long nSamples, long *nSamplesProcessed) |
| STDMETHODIMP | ReceiveCanBlock (void) |
| HRESULT | CustomGetSample (VLCMediaSample *) |
| Returns a sample from its sample queue. | |
| HRESULT | CustomGetSamples (deque< VLCMediaSample > &external_queue) |
| Returns the complete queue of samples that have been received so far. | |
| AM_MEDIA_TYPE & | CustomGetMediaType () |
Friends | |
| class | CaptureEnumMediaTypes |
| CapturePin::CapturePin | ( | vlc_object_t * | _p_input, | |
| access_sys_t * | p_sys, | |||
| CaptureFilter * | _p_filter, | |||
| AM_MEDIA_TYPE * | mt, | |||
| size_t | mt_count | |||
| ) |
References p_sys.
| CapturePin::~CapturePin | ( | ) | [virtual] |
References c, FreeMediaType(), and msg_Dbg.
| STDMETHODIMP CapturePin::QueryInterface | ( | REFIID | riid, | |
| void ** | ppv | |||
| ) |
| CapturePin::STDMETHODIMP_ | ( | ULONG | ) |
| CapturePin::STDMETHODIMP_ | ( | ULONG | ) |
| STDMETHODIMP CapturePin::Connect | ( | IPin * | pReceivePin, | |
| const AM_MEDIA_TYPE * | pmt | |||
| ) |
References GetFourCCFromMediaType(), msg_Dbg, and CaptureFilter::state.
| STDMETHODIMP CapturePin::ReceiveConnection | ( | IPin * | pConnector, | |
| const AM_MEDIA_TYPE * | pmt | |||
| ) |
References CopyMediaType(), FreeMediaType(), msg_Dbg, QueryAccept(), and CaptureFilter::state.
| STDMETHODIMP CapturePin::Disconnect | ( | ) |
References msg_Dbg.
| STDMETHODIMP CapturePin::ConnectedTo | ( | IPin ** | pPin | ) |
References msg_Dbg.
| STDMETHODIMP CapturePin::ConnectionMediaType | ( | AM_MEDIA_TYPE * | pmt | ) |
References CopyMediaType(), and msg_Dbg.
| STDMETHODIMP CapturePin::QueryDirection | ( | PIN_DIRECTION * | pPinDir | ) |
References msg_Dbg.
| STDMETHODIMP CapturePin::QueryId | ( | LPWSTR * | Id | ) |
References msg_Dbg.
| STDMETHODIMP CapturePin::QueryAccept | ( | const AM_MEDIA_TYPE * | pmt | ) |
References CopyMediaType(), FreeMediaType(), GetFourCCFromMediaType(), i_fourcc, msg_Dbg, and CaptureFilter::state.
Referenced by ReceiveConnection().
| STDMETHODIMP CapturePin::EnumMediaTypes | ( | IEnumMediaTypes ** | ppEnum | ) |
References CaptureEnumMediaTypes, and msg_Dbg.
| STDMETHODIMP CapturePin::QueryInternalConnections | ( | IPin ** | apPin, | |
| ULONG * | nPin | |||
| ) |
References msg_Dbg.
| STDMETHODIMP CapturePin::EndOfStream | ( | void | ) |
References msg_Dbg.
| STDMETHODIMP CapturePin::BeginFlush | ( | void | ) |
References msg_Dbg.
| STDMETHODIMP CapturePin::EndFlush | ( | void | ) |
References access_sys_t::lock, msg_Dbg, VLCMediaSample::p_sample, vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by CaptureFilter::Stop().
| STDMETHODIMP CapturePin::NewSegment | ( | REFERENCE_TIME | tStart, | |
| REFERENCE_TIME | tStop, | |||
| double | dRate | |||
| ) |
References msg_Dbg.
| STDMETHODIMP CapturePin::GetAllocator | ( | IMemAllocator ** | ppAllocator | ) |
References msg_Dbg.
| STDMETHODIMP CapturePin::NotifyAllocator | ( | IMemAllocator * | pAllocator, | |
| BOOL | bReadOnly | |||
| ) |
References msg_Dbg.
| STDMETHODIMP CapturePin::GetAllocatorRequirements | ( | ALLOCATOR_PROPERTIES * | pProps | ) |
References msg_Dbg.
| STDMETHODIMP CapturePin::Receive | ( | IMediaSample * | pSample | ) |
References access_sys_t::lock, mdate(), msg_Dbg, VLCMediaSample::p_sample, vlc_cond_signal(), vlc_mutex_lock(), vlc_mutex_unlock(), and access_sys_t::wait.
Referenced by ReceiveMultiple().
| STDMETHODIMP CapturePin::ReceiveMultiple | ( | IMediaSample ** | pSamples, | |
| long | nSamples, | |||
| long * | nSamplesProcessed | |||
| ) |
References Receive().
| STDMETHODIMP CapturePin::ReceiveCanBlock | ( | void | ) |
References msg_Dbg.
| HRESULT CapturePin::CustomGetSample | ( | VLCMediaSample * | vlc_sample | ) |
Returns a sample from its sample queue.
Proper locking must be done prior to this call. Current dshow code protects the access to any sample queue (audio and video) with the p_sys->lock
| vlc_sample | [out] Address of a sample if sucessfull. Undefined otherwise. |
References msg_Dbg.
Referenced by ReadCompressed().
| HRESULT CapturePin::CustomGetSamples | ( | deque< VLCMediaSample > & | external_queue | ) |
Returns the complete queue of samples that have been received so far.
Lock the p_sys->lock before calling this function.
| samples_queue | [out] Empty queue that will get all elements from the pin queue. |
References msg_Dbg.
Referenced by Demux().
| AM_MEDIA_TYPE & CapturePin::CustomGetMediaType | ( | ) |
Referenced by ConnectFilters(), and OpenDevice().
friend class CaptureEnumMediaTypes [friend] |
Referenced by EnumMediaTypes().
1.5.6