CBaseControlVideo.GetImageSize 方法

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

方法 GetImageSize 會擷取視訊影像大小資訊。

語法

HRESULT GetImageSize(
   VIDEOINFOHEADER *pVideoInfo,
   long            *pBufferSize,
   RECT            *pSourceRect
);

參數

pVideoInfo

要填入之 VIDEOINFOHEADER 結構的指標。

pBufferSize

視訊緩衝區大小的指標。

pSourceRect

來源視訊矩形維度的指標。

傳回值

傳回相依于實作的 HRESULT 值;可以是下列其中一個值,或是未列出的其他值。

傳回碼 Description
E_FAIL
失敗。
E_INVALIDARG
無效引數。 資料格式不相容。
E_UNEXPECTED
發生未預期的錯誤。 一或多個引數為 Null
NOERROR
成功。

備註

這個成員函式是協助程式函式,用來建立 DIB 影像的記憶體影像轉譯。 當NullpVideoImage參數傳遞至該成員函式時,它會從CBaseControlVideo::GetCurrentImage的基類實作呼叫。 因此,此成員函式會使用pBufferSizepSourceRect中的資訊建構並傳回VIDEOINFOHEADER結構。

規格需求

需求
標頭
Ctlutil.h (包含 Streams.h)
程式庫
Strmbase.lib (零售組建) ;
Strmbasd.lib (偵錯組建)

另請參閱

CBaseControlVideo 類別