IMemInputPin::ReceiveMultiple
This method returns the next block of data from the stream. This method behaves much like the IMemInputPin::Receive method, but it works with multiple samples.
HRESULT ReceiveMultiple(
IMediaSample** pSamples,
long nSamples,
long* nSamplesProcessed
);
Parameters
- pSamples
[in] Pointer to an array of samples. - nSamples
[in] Number of samples to process. - nSamplesProcessed
[out] Number of samples processed.
Return Values
Returns an HRESULT value that depends on the implementation. HRESULT can be one of the following standard constants, or other values not listed.
Value | Description |
---|---|
E_FAIL | Failure. |
E_POINTER | Null pointer argument. |
E_INVALIDARG | Invalid argument. |
E_NOTIMPL | Method is not supported. |
S_OK or NOERROR | Success. |
Remarks
This method allows a connected output pin to deliver multiple samples at one time. Use it if, like COutputQueue, the output pin batches samples for delivery together. Implement this if your filter can handle batched samples more efficiently than individual samples. The base class implementation of this method simply calls IMemInputPin::Receive repeatedly. Override this implementation if you can do something more efficiently in your derived class.
Requirements
DirectShow applications and DirectShow filters have different include file and link library requirements. See Setting Up the Build Environment for more information.
OS Versions: Windows CE 2.12 and later. Version 2.12 requires DXPAK 1.0 or later.
See Also
Last updated on Wednesday, April 13, 2005
© 2005 Microsoft Corporation. All rights reserved.