IAsyncReader::RequestAllocator 方法 (strmif.h)

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

方法 RequestAllocator 會在針腳連接期間要求配置器。

語法

HRESULT RequestAllocator(
  [in]  IMemAllocator        *pPreferred,
  [in]  ALLOCATOR_PROPERTIES *pProps,
  [out] IMemAllocator        **ppActual
);

參數

[in] pPreferred

輸入針腳慣用配置器或 NULLIMemAllocator 介面的指標。

[in] pProps

指定呼叫端所配置 之ALLOCATOR_PROPERTIES 結構的位址。 呼叫端應該填入輸入針腳所需的任何配置器屬性,並將其餘成員設定為零。

[out] ppActual

接收 IMemAllocator 介面指標的變數位址。

傳回值

傳回 HRESULT 值。 可能的值如下。

傳回碼 Description
E_FAIL
無法初始化配置器。
VFW_E_BADALIGN
指定了無效的對齊方式。
S_OK
配置器已傳回。

備註

下游輸入針腳應該在連線過程中呼叫這個方法。 如果針腳具有慣用配置器,請在 pPreferred 參數中指定。 在 pProps 參數中指定任何緩衝區需求,例如緩衝區大小或對齊方式。 輸出針腳會選擇配置器,並在 ppActual 參數中傳回其指標。

不需要輸出針腳才能接受輸入針腳的要求。 如果輸入針腳有任何絕對需求,它應該在傳回的配置器上呼叫 IMemAllocator::GetProperties 方法。 如果配置器屬性不適合,它可能會失敗。 建立連線之後,輸入針腳必須使用輸出針腳選擇的配置器。

輸入針腳負責認可和取消配置器。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 strmif.h (包含 Dshow.h)
程式庫 Strmiids.lib

另請參閱

錯誤和成功碼

IAsyncReader 介面