ISampleGrabberCB::BufferCB method

[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

Note

[Deprecated. This API may be removed from future releases of Windows.]

 

The BufferCB method is a callback method that receives a pointer to the sample buffer.

Syntax

HRESULT BufferCB(
   double SampleTime,
   BYTE   *pBuffer,
   long   BufferLen
);

Parameters

SampleTime

Starting time of the sample, in seconds.

pBuffer

Pointer to a buffer that contains the sample data. The format of the data depends on the media type of the Sample Grabber's input pin. To get the media type, call ISampleGrabber::GetConnectedMediaType.

BufferLen

Length of the buffer pointed to by pBuffer, in bytes.

Return value

Returns S_OK if successful, or an HRESULT error code otherwise.

Remarks

This callback method receives a pointer to the data in the most recent media sample.

Note

This method receives a pointer to the original sample data, not a copy. The original documentation incorrectly stated that pBuffer contains a copy of the data.

 

To set up the callback, call ISampleGrabber::SetCallback.

Note

The header file Qedit.h is not compatible with Direct3D headers later than version 7.

 

Note

To obtain Qedit.h, download the Microsoft Windows SDK Update for Windows Vista and .NET Framework 3.0. Qedit.h is not available in the Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 Service Pack 1.

 

Requirements

Requirement Value
Header
Qedit.h
Library
Strmiids.lib

See also

Error and Success Codes

ISampleGrabberCB Interface