Freigeben über


DXVADDI_VIDEOPROCESSORCAPS-Struktur (d3dumddi.h)

Die DXVADDI_VIDEOPROCESSORCAPS-Struktur beschreibt die Videoverarbeitungsfunktionen eines bestimmten Deinterlacemodus.

Syntax

typedef struct _DXVADDI_VIDEOPROCESSORCAPS {
  [out] D3DDDI_POOL  InputPool;
  [out] UINT         NumForwardRefSamples;
  [out] UINT         NumBackwardRefSamples;
  [out] D3DDDIFORMAT OutputFormat;
  [out] UINT         DeinterlaceTechnology;
  [out] UINT         ProcAmpControlCaps;
  [out] UINT         VideoProcessorOperations;
  [out] UINT         NoiseFilterTechnology;
  [out] UINT         DetailFilterTechnology;
} DXVADDI_VIDEOPROCESSORCAPS;

Member

[out] InputPool

Ein D3DDDI_POOL typisierter Wert, der den Speicherpool angibt, aus dem die Quelloberflächen mit Interlacs zugeordnet werden sollen.

[out] NumForwardRefSamples

Die erforderliche Anzahl von Vorwärtsverweisbeispielen für den definierten Deinterlace-Modus. Die Beispiele befinden sich in nachfolgenden Feldern. Dieser Wert ist null für die Bob- und Linienmischung und kann andere Werte (z. B. 1, 2 oder 3) für die adaptive Deinterlacing- und Frameratekonvertierung sein.

[out] NumBackwardRefSamples

Die erforderlichen Abwärtsverweisbeispiele für den definierten Deinterlace-Modus. Die Stichproben befinden sich in früheren Feldern. Dieser Wert ist null für bob, 1 für Linienmischung und kann andere Werte (z. B. 1, 2 oder 3) für adaptive Deinterlacing- und Frameratekonvertierung sein.

[out] OutputFormat

Ein D3DDDIFORMAT typisierter Wert, der das Pixelformat der unkomprimierten Ausgabeframes angibt. In der Regel gibt ein Deinterlace-Algorithmus Frames in einem Pixelformat aus, das dem Eingabebeispielformat entspricht. Dieser Member stellt sicher, dass der Video Mixing Renderer (VMR) oder ein anderer Videorenderer die richtigen Ausgabeframeoberflächen für die Deinterlacinghardware bereitstellen kann.

Wenn der DXVADDI_VIDEOPROCESS_YUV2RGB Wert im VideoProcessorOperations-Member zurückgegeben wird, bestimmt die VMR, dass von diesem Member gültige Ausgabeformate sowie ein D3DFMT_X8R8G8B8-Format angegeben werden.

[out] DeinterlaceTechnology

Ein bitweises OR der folgenden Werte, um die zugrunde liegende Deinterlacing-Technologie anzugeben, die zum Implementieren des Deinterlacingalgorithmus verwendet wird. Die Werte können nach Bedarf kombiniert werden, um der Implementierung des Algorithmus am ehesten zu entsprechen.

Wert Bedeutung
DXVADDI_DEINTERLACETECH_UNKNOWN Die Deinterlacing-Technologie ist unbekannt.
DXVADDI_DEINTERLACETECH_BOBLINEREPLICATE Der Deinterlace-Algorithmus erstellt fehlende Zeilen, indem die Zeile entweder über oder unter einer fehlenden Zeile wiederholt wird. Diese Methode sieht gezackt aus und wird nicht empfohlen.
DXVADDI_DEINTERLACETECH_BOBVERTICALSTRETCH Ein Deinterlace-Algorithmus, der fehlende Linien erstellt, indem jedes Videofeld vertikal um den Faktor 2 gestreckt wird, indem zwei 5 Zeilen gedeutet werden. Es werden geringfügige vertikale Anpassungen vorgenommen, um sicherzustellen, dass sich das resultierende Bild nicht nach oben und unten bewegt.
DXVADDI_DEINTERLACETECH_BOBVERTICALSTRETCH4TAP Ein Deinterlace-Algorithmus, der fehlende Linien erstellt, indem jedes Videofeld vertikal um den Faktor 2 gestreckt wird, indem ein [-1, 9, 9, -1] / 16-Filter über vier Zeilen hinweg verwendet wird. Es werden geringfügige vertikale Anpassungen vorgenommen, um sicherzustellen, dass sich das resultierende Bild nicht nach oben und unten bewegt.
DXVADDI_DEINTERLACETECH_MEDIANFILTERING Die Pixel in der fehlenden Zeile werden durch einen Medianfiltervorgang neu erstellt.
DXVADDI_DEINTERLACETECH_EDGEFILTERING Pixel in der fehlenden Zeile werden durch einen Kantenfilter neu erstellt. In diesem Prozess werden räumliche direktionale Filter angewendet, um die Ausrichtung von Kanten im Bildinhalt zu bestimmen, und fehlende Pixel werden erstellt, indem die erkannten Kanten entlang (anstatt über) gefiltert werden.
DXVADDI_DEINTERLACETECH_FIELDADAPTIVE Pixel in der fehlenden Linie werden neu erstellt, indem je nach Bewegungsumfang Feld für Feld zwischen räumlicher oder temporaler Interpolation gewechselt wird.
DXVADDI_DEINTERLACETECH_PIXELADAPTIVE Pixel in der fehlenden Linie werden neu erstellt, indem pixelweise zwischen räumlicher oder temporaler Interpolation gewechselt wird, je nach Bewegungsumfang.
DXVADDI_DEINTERLACETECH_MOTIONVECTORSTEERED Objekte in einer Sequenz von Videofeldern. Die fehlenden Pixel werden nach dem ersten Ausrichten der Bewegungsachse der einzelnen Objekte in der Szene neu erstellt, um sie parallel zur Zeitachse zu machen.
DXVADDI_DEINTERLACETECH_INVERSETELECINE Ein Deinterlace-Algorithmus, der den 3:2-Pulldownprozess rückgängig macht, der zum Anzeigen von 24Hz-Inhalten auf 60Hz-Displays, 25Hz-Inhalten auf 50Hz-Displays oder so weiter verwendet wird.

[out] ProcAmpControlCaps

Ein bitweises OR der folgenden Werte, um die ProcAmp-Vorgänge anzugeben, die von der Hardware unterstützt werden.

Wert Bedeutung
DXVADDI_PROCAMP_NONE Die Hardware unterstützt keine ProcAmp-Vorgänge.
DXVADDI_PROCAMP_BRIGHTNESS Helligkeitsanpassungen am Videobild sind zulässig.
DXVADDI_PROCAMP_CONTRAST Kontrastanpassungen am Videobild sind zulässig.
DXVADDI_PROCAMP_HUE Farbtonanpassungen am Videobild sind zulässig.
DXVADDI_PROCAMP_SATURATION Sättigungsanpassungen am Videobild sind zulässig.

[out] VideoProcessorOperations

Ein bitweises OR der folgenden Werte, um anzugeben, welche zusätzlichen Videoverarbeitungsvorgänge die Hardware gleichzeitig mit dem angeforderten VideoProcessBlt-Vorgang ausführen kann.

Wert Bedeutung
DXVADDI_VIDEOPROCESS_NONE Die Hardware kann keine weiteren Videoverarbeitungsvorgänge ausführen.
DXVADDI_VIDEOPROCESS_YUV2RGB Die Videokonvertierung vom YUV-Farbraum in den RGB-Farbraum ist zulässig. Das verwendete RGB-Format weist für jede Farbkomponente eine Genauigkeit von mindestens 8 Bit auf. Wenn dieser Vorgang möglich ist, kann eine Pufferkopie innerhalb der VMR vermieden werden. Beachten Sie, dass eine Konvertierung vom RGB-Farbraum in den YUV-Farbraum nicht erforderlich ist.
DXVADDI_VIDEOPROCESS_STRETCHX Die Korrektur des Seitenverhältnisses kann gleichzeitig mit der ProcAmp-Anpassung des Videos durchgeführt werden, wenn die Hardware horizontal gestreckt oder verkleinern kann.
DXVADDI_VIDEOPROCESS_STRETCHY Die Anpassung des Seitenverhältnisses wird mit einem allgemeinen Bildänderungsvorgang kombiniert, um das Videobild in einem von der Anwendung definierten Kompositionsbereich zu skalieren. Dieser Vorgang ist selten und kein wesentliches Feature. Es ist am besten, wenn die Skalierung, die erforderlich ist, um die Größe des Videos so zu ändern, dass es in das Anwendungsfenster passt, gleichzeitig mit der skalierung erfolgen kann, die für die ProcAmp-Anpassung erforderlich ist. Dieser Vorgangstyp vermeidet kumulative Artefakte.
DXVADDI_VIDEOPROCESS_ALPHABLEND Die VMR führt keine Pufferkopie durch, wenn ein Alphawert geändert wird. Anwendungen ändern selten den konstanten Alphawert, der dem Videostream zugeordnet ist, daher ist dieser Vorgang ein Feature mit niedriger Priorität.
DXVADDI_VIDEOPROCESS_SUBRECTS Das Videoverarbeitungsgerät kann mit einem Teilbereich des Videobilds betrieben werden. Dieser Vorgang ist nützlich, wenn das Videobild zugeschnitten werden muss, bevor es weiter verarbeitet wird, da die Größe des Ausgabeframes reduziert wird.
DXVADDI_VIDEOPROCESS_SUBSTREAMS Das Videoverarbeitungsgerät kann Videounterstreams mit dem Videostream kombinieren.
DXVADDI_VIDEOPROCESS_SUBSTREAMSEXTENDED Erforderliche Farbanpassungen können an den Quellvideostreams und Teilstreams vorgenommen werden. Diese Anpassungen werden in den erweiterten Farbdaten angegeben, da das Video deinterlaced, mit den Teilstreams zusammengesetzt und auf die Zieloberfläche geschrieben wird.
DXVADDI_VIDEOPROCESS_YUV2RGBEXTENDED Ein Farbraumkonvertierungsvorgang kann ausgeführt werden, wenn die deinterlacierten und zusammengesetzten Pixel auf die Zieloberfläche geschrieben werden, indem die erweiterten Farbinformationen verwendet werden, die für die Quell- und Zieloberflächen angegeben sind.
DXVADDI_VIDEOPROCESS_ALPHABLENDEXTENDED Ein Alphamischungsvorgang kann mit der Zieloberfläche ausgeführt werden, 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 D3DDDIARG_VIDEOPROCESSBLT Struktur verarbeiten. Wenn der Alphawert 1,0 ist, wird die Hintergrundfarbe undurchsichtig (ohne Transparenz) gezeichnet. Wenn der Alphawert 0,0 ist, sollte der Hintergrund nicht gezeichnet werden (transparent).
DXVADDI_VIDEOPROCESS_CONSTRICTION Das Videoverarbeitungsgerät kann den Ausgabeframe vorübergehend auf eine Größe reduzieren, die der ConstrictionSize-Member der D3DDDIARG_VIDEOPROCESSBLT-Struktur angibt.
DXVADDI_VIDEOPROCESS_NOISEFILTER Das Videoverarbeitungsgerät kann Rauschfiltervorgänge für den Videodatenstrom ausführen.
DXVADDI_VIDEOPROCESS_DETAILFILTER Das Videoverarbeitungsgerät kann Detailfiltervorgänge für den Videodatenstrom ausführen.
DXVADDI_VIDEOPROCESS_PLANARALPHA Das Videoverarbeitungsgerät kann eine konstante Alphamischung auf den gesamten Videodatenstrom (Ebene) anwenden, während es den Videodatenstrom und die Teilstreams kombiniert. Der Alpha-Member von D3DDDIARG_VIDEOPROCESSBLT gibt den Alphawert an.
DXVADDI_VIDEOPROCESS_LINEARSCALING Das Videoverarbeitungsgerät kann den Videodatenstrom linear skalieren.
DXVADDI_VIDEOPROCESS_GAMMACOMPENSATED Das Videoverarbeitungsgerät kann eine Gammakonvertierung für den Videodatenstrom durchführen.
DXVADDI_VIDEOPROCESS_MAINTAINSORIGINALFIELDDATA Das Videoverarbeitungsgerät kann die ursprünglichen Felddaten verwalten.

[out] NoiseFilterTechnology

Ein bitweises OR der folgenden Werte, um die zugrunde liegende Technologie anzugeben, die zum Implementieren der Rauschfilterung verwendet wird. Die Werte können nach Bedarf kombiniert werden, um der Rauschfilterimplementierung am ehesten zu entsprechen.

Wert Bedeutung
DXVADDI_NOISEFILTERTECH_UNSUPPORTED Es wird keine Rauschfiltertechnologie unterstützt.
DXVADDI_NOISEFILTERTECH_UNKNOWN Die Rauschfiltertechnologie ist unbekannt.
DXVADDI_NOISEFILTERTECH_MEDIAN Das Videoverarbeitungsgerät verwendet die Median-Rauschfilterung.
DXVADDI_NOISEFILTERTECH_TEMPORAL Das Videoverarbeitungsgerät verwendet die temporale Rauschfilterung.
DXVADDI_NOISEFILTERTECH_BLOCKNOISE Das Videoverarbeitungsgerät verwendet die Blockrauschfilterung.
DXVADDI_NOISEFILTERTECH_MOSQUITONOISE Das Videoverarbeitungsgerät verwendet die Moskitorauschenfilterung.

[out] DetailFilterTechnology

Ein bitweises OR der folgenden Werte, um die zugrunde liegende Technologie anzugeben, die zum Implementieren der Detailfilterung verwendet wird. Die Werte können nach Bedarf kombiniert werden, um der Implementierung des Detailfilters am ehesten zu entsprechen.

Wert Bedeutung
DXVADDI_DETAILFILTERTECH_UNSUPPORTED Es wird keine Detailfiltertechnologie unterstützt.
DXVADDI_DETAILFILTERTECH_UNKNOWN Die Detailfiltertechnologie ist unbekannt.
DXVADDI_DETAILFILTERTECH_EDGE Das Videoverarbeitungsgerät verwendet die Edge-Detailfilterung.
DXVADDI_DETAILFILTERTECH_SHARPENING Das Videoverarbeitungsgerät verwendet schärfende Detailfilterung.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme.
Kopfzeile d3dumddi.h (include D3dumddi.h)

Weitere Informationen

D3DDDIARG_GETCAPS

D3DDDIARG_VIDEOPROCESSBLT

D3DDDICAPS_TYPE

D3DDDIFORMAT

D3DDDI_POOL

DXVADDI_VIDEOPROCESSORINPUT

GetCaps