共用方式為


ISampleGrabberCB::BufferCB 方法

[與此頁面 相關的功能 DirectShow是舊版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayerIMFMediaEngine音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議盡可能重寫使用舊版 API 的現有程式碼,以使用新的 API。]

注意

[已被取代。 此 API 可能會從未來的 Windows 版本中移除。]

 

BufferCB方法是回呼方法,可接收範例緩衝區的指標。

語法

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

參數

SampleTime

範例的開始時間,以秒為單位。

pBuffer

包含範例資料的緩衝區指標。 資料的格式取決於範例擷取器輸入釘選的媒體類型。 若要取得媒體類型,請呼叫 ISampleGrabber::GetConnectedMediaType

BufferLen

pBuffer所指向的緩衝區長度,以位元組為單位。

傳回值

如果成功,則傳回S_OK,否則傳回 HRESULT 錯誤碼。

備註

這個回呼方法會接收最近媒體範例中資料的指標。

注意

這個方法會接收原始範例資料的指標,而不是複本。 原始檔案未正確指出 pBuffer 包含資料的複本。

 

若要設定回呼,請呼叫 ISampleGrabber::SetCallback

注意

標頭檔 Qedit.h 與 7 版之後的 Direct3D 標頭不相容。

 

注意

若要取得 Qedit.h,請下載適用于 Windows Vista 的 Microsoft Windows SDK Update 和 .NET Framework 3.0。 Windows 7 和 .NET Framework 3.5 Service Pack 1 Microsoft Windows SDK中無法使用 Qedit.h。

 

規格需求

需求
標頭
Qedit.h
程式庫
Strmiids.lib

另請參閱

錯誤和成功碼

ISampleGrabberCB 介面