共用方式為


CBaseAllocator.SetNotify 方法

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

[SetNotify 可能會在後續版本中改變或無法使用。]

方法 SetNotify 會設定或移除配置器上的回呼。 配置器會在呼叫配置器的 IMemAllocator::ReleaseBuffer 方法時呼叫回呼方法。

語法

HRESULT SetNotify(
   IMemAllocatorNotifyCallbackTemp *pNotify
);

參數

pNotify

將用於回呼之 IMemAllocatorNotifyCallbackTemp 介面的指標。 呼叫端必須實作 介面。 使用 Null 值來移除回呼。

傳回值

傳回S_OK。

備註

這個方法會實作 IMemAllocatorCallbackTemp::SetNotify 方法。 配置器不會公開IMemAllocatorCallbackTemp介面,除非cBaseAllocator建構函式中的fEnableReleaseCallback旗標設定為TRUE

這個方法會設定 CBaseAllocator::m_pNotify 成員變數等於 pNotify ,並遞增介面上的參考計數。 如果 m_pNotify 為非Null,配置器的 ReleaseBuffer 方法會呼叫 IMemAllocatorNotifyCallbackTemp::NotifyRelease。 如需實作回呼的相關資訊,請參閱該方法中的一節。

規格需求

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

另請參閱

CBaseAllocator 類別