DXVA_VideoProcessCaps-Enumeration (dxva.h)
Die DXVA_VideoProcessCaps-Enumeration identifiziert Vorgänge, die gleichzeitig mit der angeforderten Deinterlace ausgeführt werden können.
Syntax
typedef enum _DXVA_VideoProcessCaps {
DXVA_VideoProcess_None,
DXVA_VideoProcess_YUV2RGB,
DXVA_VideoProcess_StretchX,
DXVA_VideoProcess_StretchY,
DXVA_VideoProcess_AlphaBlend,
DXVA_VideoProcess_SubRects,
DXVA_VideoProcess_SubStreams,
DXVA_VideoProcess_SubStreamsExtended,
DXVA_VideoProcess_YUV2RGBExtended,
DXVA_VideoProcess_AlphaBlendExtended
} DXVA_VideoProcessCaps;
Konstanten
DXVA_VideoProcess_None Gibt an, dass die Deinterlacehardware nur grundlegende Deinterlacevorgänge ausführen kann. Das heißt, Deinterlacevorgänge, die nicht mit anderen Vorgängen kombiniert werden, z. B. Konvertierung mit ähnlichen Farben, Alphamischung, Stretch, Unterabschnitt oder Unterstream. |
DXVA_VideoProcess_YUV2RGB Gibt an, dass die Deinterlace-Hardware Videos aus dem YUV-Farbraum in den RGB-Farbraum konvertieren kann. Das RGB-Format weist für jede Farbkomponente eine Genauigkeit von mindestens 8 Bit auf. Wenn möglich, kann eine Pufferkopie innerhalb der VMR vermieden werden. Alle Treiber sollten diesen Vorgang für den Bob-Deinterlace-Modus unterstützen können. Wird nicht mit der DeinterlaceBltEx-Funktion verwendet. |
DXVA_VideoProcess_StretchX Gibt an, dass die Seitenverhältniskorrektur gleichzeitig durchgeführt werden kann, wenn das Video deinterlaced wird, wenn der Deinterlacer horizontal gestreckt oder verkleinert werden kann. Der Enumerator sollte für den Bob-Deinterlace-Modus unterstützt werden. Muss mit der DeinterlaceBltEx-Funktion verwendet werden. |
DXVA_VideoProcess_StretchY Gibt an, dass die Anpassung des Seitenverhältnisses mit einem allgemeinen Vorgang zum Ändern der Bildgröße kombiniert wird, um das Videobild zu skalieren. Muss mit der DeinterlaceBltEx-Funktion verwendet werden. |
DXVA_VideoProcess_AlphaBlend Gibt an, dass der VMR keine Pufferkopie ausführt, wenn ein Alphawert geändert wird. Es kommt selten vor, dass Anwendungen den konstanten Alphawert ändern, der dem Videostream zugeordnet ist, sodass dies ein Feature mit niedriger Priorität ist. Der Enumerator sollte für den Bob-Deinterlace-Modus unterstützt werden. Wird nicht mit der DeinterlaceBltEx-Funktion verwendet. |
DXVA_VideoProcess_SubRects Gibt an, dass die Deinterlacehardware nur einen Teilbereich des Videobilds an die angegebene Zielposition deinterlacen kann. Dies ist nützlich, wenn das Videobild vor der weiteren Verarbeitung zugeschnitten werden muss, da die Größe des Ausgaberahmens reduziert wird. |
DXVA_VideoProcess_SubStreams Nur Windows Server 2003 SP1 und höher sowie Windows XP SP2 und höhere Versionen. Gibt an, dass die Deinterlacehardware Video-Substreams mit dem Videostream kombinieren kann. Muss mit der DeinterlaceBltEx-Funktion verwendet werden. |
DXVA_VideoProcess_SubStreamsExtended Nur Windows Server 2003 SP1 und höher sowie Windows XP SP2 und höhere Versionen. Gibt an, dass die erforderlichen Farbanpassungen an den Quellvideostreams und Substreams vorgenommen werden können. Diese Anpassungen werden in den erweiterten Farbdaten angegeben, da das Video deinterlaced, mit den Teilstreams zusammengesetzt und auf die Zieloberfläche geschrieben wird. Muss mit der DeinterlaceBltEx-Funktion verwendet werden. |
DXVA_VideoProcess_YUV2RGBExtended Nur Windows Server 2003 SP1 und höher sowie Windows XP SP2 und höhere Versionen. Gibt an, dass ein Farbraumkonvertierungsvorgang ausgeführt werden kann, wenn die deinterlacierten und zusammengesetzten Pixel unter Verwendung der erweiterten Farbinformationen, die für die Quell- und Zieloberflächen angegeben sind, auf die Zieloberfläche geschrieben werden. Muss mit der DeinterlaceBltEx-Funktion verwendet werden. |
DXVA_VideoProcess_AlphaBlendExtended Nur Windows Server 2003 SP1 und höher sowie Windows XP SP2 und höhere Versionen. Gibt an, dass ein Alpha-Blend-Vorgang mit der Zieloberfläche ausgeführt werden kann, wenn die deinterlacierten und zusammengesetzten Pixel auf die Zieloberfläche geschrieben werden. Der Treiber muss die Hintergrundfarbe basierend auf dem Alphawert des Alpha-Elements der DXVA_DeinterlaceBltEx Struktur verarbeiten. Wenn der Alphawert 1.0f ist, wird die Hintergrundfarbe undurchsichtig (ohne Transparenz) gezeichnet. Wenn der Alphawert 0,0f ist, sollte der Hintergrund nicht (transparent) gezeichnet werden. Muss mit der DeinterlaceBltEx-Funktion verwendet werden. |
Hinweise
Gelegentlich wird die von DXVA_VideoProcess_AlphaBlend vorgenommene Anpassung des Seitenverhältnisses mit einem allgemeinen Bildanpassungsvorgang kombiniert, um das Videobild in einem anwendungsdefiniertem Kompositionsbereich zu skalieren, was selten und kein wesentliches Feature ist. Es ist am besten, wenn die Skalierung, die für die Anpassung der Größe des Videos in das Anwendungsfenster erforderlich ist, gleichzeitig mit der Skalierung durchgeführt werden kann, die für die Deinterlacing erforderlich ist, wodurch kumulative Artefakte vermieden werden.
Die von DXVA_VideoProcess_YUV2RGB durchgeführte Farbraumkonvertierung ist innerhalb der VMR besonders nützlich, wenn sie mit einem (und idealerweise allen) der folgenden Enumeratoren kombiniert wird: DXVA_VideoProcess_StretchX, DXVA_VideoProcess_StretchY und DXVA_VideoProcess_AlphaBlend. Es ist nicht erforderlich, aus dem RGB-Farbraum in den YUV-Farbraum zu konvertieren.
Anforderungen
Anforderung | Wert |
---|---|
Header | dxva.h (einschließlich Dxva.h) |