共用方式為


KS_FRAMING_ITEM結構 (ks.h)

KS_FRAMING_ITEM 結構可用來在內核模式針腳上宣告配置器需求。

語法

typedef struct {
  GUID                      MemoryType;
  GUID                      BusType;
  ULONG                     MemoryFlags;
  ULONG                     BusFlags;
  ULONG                     Flags;
  ULONG                     Frames;
  union {
    ULONG FileAlignment;
    LONG  FramePitch;
  };
  ULONG                     MemoryTypeWeight;
  KS_FRAMING_RANGE          PhysicalRange;
  KS_FRAMING_RANGE_WEIGHTED FramingRange;
} KS_FRAMING_ITEM, *PKS_FRAMING_ITEM;

成員

MemoryType

指定用於緩衝區和數據框架的記憶體類型。 此成員與 KSALLOCATOR_FRAMING 結構中的 PoolType 成員之間有部分對應。 這兩個成員不同,PoolType 只允許分頁或非分頁集區。 MemoryType 可以有下表所列的任何值。

價值 描述
KSMEMORY_TYPE_WILDCARD/ KSMEMORY_TYPE_DONT_CARE / KSTYPE_DONT_CARE 表示記憶體配置可以是任何類型的記憶體。
KSMEMORY_TYPE_SYSTEM 表示記憶體配置必須是系統記憶體。
KSMEMORY_TYPE_USER 表示記憶體配置必須是使用者模式記憶體。
KSMEMORY_TYPE_KERNEL_PAGED 表示記憶體配置必須是核心分頁記憶體。 這會對應至設定為 pagedPool KSALLOCATOR_FRAMING 結構的 PoolType 成員,以及設定 為 SYSTEM_MEMORY 之此結構 成員的 RequirementsFlags 成員。
KSMEMORY_TYPE_KERNEL_NONPAGED 表示記憶體配置必須是核心非分頁記憶體。 這會對應至設定 為 nonPagedPoolKSALLOCATOR_FRAMING 結構的 PoolType 成員,以及此結構 成員設定為 SYSTEM_MEMORY。
KSMEMORY_TYPE_DEVICE_UNKNOWN 表示未指定裝置記憶體配置類型。

BusType

指定存取 MemoryType所指定之物理記憶體的實體總線。 使用此欄位根據用於連接媒體的總線來判斷相容的記憶體類型。 當針腳根據連線媒體公開不同的記憶體類型時,這項區別非常重要。 BusType 可以有下表所列的任何值。

類型 描述
GUID_BUS_TYPE_PCI 周邊元件互連總線。
GUID_BUS_TYPE_USB 通用序列總線。
GUID_BUS_TYPE_1394 IEEE 1394 序列總線。
GUID_BUS_TYPE_AVC 音訊/視訊控制總線。
GUID_61883_CLASS 61883 通訊協定總線。

MemoryFlags

指定連接點負責畫面配置。 應設定為 KSALLOCATOR_REQUIREMENTF_MUST_ALLOCATE。

BusFlags

未使用。

Flags

類似於 KSALLOCATOR_FRAMING 結構中的 OptionsFlagsRequirementsFlags 等位,加上新增管道支援的旗標。

Frames

指定允許的未完成畫面格總數。 對應至 KSALLOCATOR_FRAMING 結構的 框架 成員。

FileAlignment

框架對齊的需求。 對應至 KSALLOCATOR_FRAMING 結構的 FileAlignment 成員。

FramePitch

定義 LONG 成員 FramePitch

MemoryTypeWeight

類型為 ULONG 的值,指定此記憶體類型的針腳寬度權數。

PhysicalRange

類型為 KS_FRAMING_RANGE 的結構,指定框架大小的實體限制。

FramingRange

類型為 KS_FRAMING_RANGE_WEIGHTED 的結構,指定畫面大小的最佳範圍。

言論

請勿將 KSALLOCATOR_FLAG_CAN_ALLOCATE 設定為表示記憶體尋址功能。 篩選條件可透過裝置特定總線存取裝置特定記憶體,方法是參考此總線上的記憶體位址,但尚不支援通訊協定來配置此裝置特定記憶體。

每個 KSALLOCATOR_FRAMING_EX 實例都包含一或多個框架專案。

要求

要求 價值
標頭 ks.h (包括 Ks.h)

另請參閱

KSALLOCATOR_FRAMING

KSALLOCATOR_FRAMING_EX

KS_COMPRESSION

KS_FRAMING_RANGE

KS_FRAMING_RANGE_WEIGHTED