The SetCallback method specifies a callback method to call on incoming samples.
Pointer to an ISampleGrabberCB interface containing the callback method, or NULL to cancel the callback.
Index specifying the callback method. Must be one of the following values.
Value Description 0 The Sample Grabber filter calls the ISampleGrabberCB::SampleCB method. This method receives an IMediaSample pointer. 1 The Sample Grabber filter calls the ISampleGrabberCB::BufferCB method. This method receives a pointer to the buffer that is contained in the media sample.
If this method succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code.
The data processing thread blocks until the callback method returns. If the callback does not return quickly, it can interfere with playback.
The filter does not invoke the callback function for preroll samples, or for samples in which the dwStreamId member of the AM_SAMPLE2_PROPERTIES structure is anything other than AM_STREAM_MEDIA.