CImageAllocator 類別
[與此頁面相關的功能 DirectShow是舊版功能。 它已被 MediaPlayer、 IMFMediaEngine和 Media Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayer、 IMFMediaEngine 和 音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式碼盡可能重寫為使用新的 API。
類別 CImageAllocator
會實作配置器,以管理 GDI 裝置獨立點陣圖 (DIB) 。 這個類別衍生自 CBaseAllocator 類別。 它會建立使用 CImageSample 類別實作的媒體範例。
配置器是由兩個連接的針腳共用,但一律由連線中的其中一個篩選所擁有。 使用 CImageAllocator
的篩選準則必須追蹤配置器本身或由其他篩選準則提供。 如果配置器本身提供配置器,則擁有篩選準則可以依賴配置器中的所有媒體樣本都是 CImageSample 物件的事實。 因此,它可以使用 CImageSample 物件來取得 DIB 的相關資訊,其儲存在 DIBDATA 結構中。
每當媒體類型變更時,擁有篩選器應該呼叫 NotifyMediaType 。
受保護的成員變數 | Description |
---|---|
m_pFilter | 擁有篩選準則的指標。 |
m_pMediaType | 目前媒體類型的指標。 |
保護方法 | Description |
Alloc | 為緩衝區配置記憶體。 |
CheckSizes | 根據目前的媒體類型檢查配置器屬性。 |
CreateDIB | 建立 DIB。 |
CreateImageSample | 建立媒體範例。 虛擬。 |
免費 | 釋放所有緩衝區記憶體。 |
公用方法 | Description |
CImageAllocator | 建構函式方法。 |
NotifyMediaType | 通知目前媒體類型的物件。 |
IMemAllocator 方法 | Description |
SetProperties | 指定要配置的緩衝區數目,以及每個緩衝區的大小。 |
規格需求
需求 | 值 |
---|---|
標頭 |
|
程式庫 |
|