estrutura KSALLOCATOR_FRAMING_EX (ks.h)
A estrutura KSALLOCATOR_FRAMING_EX é a substituição de AVStream para KSALLOCATOR_FRAMING. KSALLOCATOR_FRAMING_EX define os requisitos do alocador em um pino em um filtro de nível de kernel.
Sintaxe
typedef struct {
ULONG CountItems;
ULONG PinFlags;
KS_COMPRESSION OutputCompression;
ULONG PinWeight;
KS_FRAMING_ITEM FramingItem[1];
} KSALLOCATOR_FRAMING_EX, *PKSALLOCATOR_FRAMING_EX;
Membros
CountItems
Especifica o número de itens de enquadramento presentes na matriz FramingItem .
PinFlags
Reservado, definido como zero.
OutputCompression
Aponta para uma estrutura do tipo KS_COMPRESSION que define a taxa de quadros para transformações que alteram o tamanho de um quadro.
PinWeight
O grafo de peso desse enquadramento de pino em todo o gráfico. Reservado, definido como zero.
FramingItem[1]
Uma matriz de estruturas KS_FRAMING_ITEM especificando os itens de enquadramento reais.
Comentários
Um minidriver também pode usar DECLARE_SIMPLE_FRAMING_EX para declarar uma estrutura de enquadramento estendida de acordo com a estrutura original. Essa macro é definida em Ks.h da seguinte maneira:
#define DECLARE_SIMPLE_FRAMING_EX(FramingExName, MemoryType, Flags, Frames, Alignment, MinFrameSize, MaxFrameSize) const KSALLOCATOR_FRAMING_EX FramingExName
DECLARE_SIMPLE_FRAMING_EX declara uma estrutura KSALLOCATOR_FRAMING_EX chamada FramingExName com o tipo de memória especificado (geralmente STATIC_KS_TYPE_DONT_CARE ou um dos GUIDs paginados ou nãopagados do kernel). Os campos Quadros e Alinhamento da macro correspondem ao KSALLOCATOR_FRAMING. MinFrameSize e MaxFrameSize garantem que os quadros estejam dentro de um intervalo de tamanho específico. Os sinalizadores correspondem a OptionsFlags e RequirementsFlags no KSALLOCATOR_FRAMING.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | ks.h (inclua Ks.h) |