DXVA2_VideoProcessorCaps-Struktur (dxva2api.h)

Beschreibt die Funktionen eines Videoprozessormodus für die DirectX-Videobeschleunigung (DVXA).

Syntax

typedef struct _DXVA2_VideoProcessorCaps {
  UINT    DeviceCaps;
  D3DPOOL InputPool;
  UINT    NumForwardRefSamples;
  UINT    NumBackwardRefSamples;
  UINT    Reserved;
  UINT    DeinterlaceTechnology;
  UINT    ProcAmpControlCaps;
  UINT    VideoProcessorOperations;
  UINT    NoiseFilterTechnology;
  UINT    DetailFilterTechnology;
} DXVA2_VideoProcessorCaps;

Member

DeviceCaps

Gibt den Gerätetyp an. Die folgenden Werte werden definiert.

Wert Bedeutung
DXVA2_VPDev_EmulatedDXVA1
Die DXVA 2.0-Videoverarbeitung wird mithilfe von DXVA 1.0 emuliert. Einem emulierten Gerät fehlen möglicherweise erhebliche Verarbeitungsfunktionen und haben eine geringere Bildqualität und Leistung.
DXVA2_VPDev_HardwareDevice
Hardwaregerät.
DXVA2_VPDev_SoftwareDevice
Softwaregerät.

InputPool

Der vom Gerät verwendete Direct3D-Arbeitsspeicherpool.

NumForwardRefSamples

Anzahl der Vorwärtsverweisbeispiele, die das Gerät zum Deinterlacing benötigt. Für Bob-, Progressive Scan- und Softwaregeräte ist der Wert 0 (null).

NumBackwardRefSamples

Anzahl der Rückwärtsverweisbeispiele, die das Gerät zum Deinterlacing ausführen muss. Für Bob-, Progressive Scan- und Softwaregeräte ist der Wert 0 (null).

Reserved

Reserviert. Muss Null sein.

DeinterlaceTechnology

Gibt die deinterlacing-Technik an, die vom Gerät verwendet wird. Dieser Wert ist ein bitweises OR eines oder mehrerer der folgenden Flags.

Wert Bedeutung
DXVA2_DeinterlaceTech_Unknown
Der Algorithmus ist unbekannt oder proprietär.
DXVA2_DeinterlaceTech_BOBLineReplicate
Der Algorithmus erstellt fehlende Zeilen, indem die Zeile entweder oberhalb oder unterhalb der fehlenden Zeile wiederholt wird. Dieser Algorithmus erzeugt ein gezacktes Bild und wird nicht empfohlen.
DXVA2_DeinterlaceTech_BOBVerticalStretch
Der Algorithmus erstellt fehlende Zeilen, indem er zwei 5 Zeilen ergibt. Es werden geringfügige vertikale Anpassungen vorgenommen, damit das resultierende Bild nicht nach oben und unten abfällt.
DXVA2_DeinterlaceTech_BOBVerticalStretch4Tap
Der Algorithmus erstellt fehlende Zeilen, indem ein [−1, 9, 9, −1]/16-Filter auf vier Zeilen angewendet wird. Es werden geringfügige vertikale Anpassungen vorgenommen, damit das resultierende Bild nicht nach oben und unten abfällt.
DXVA2_DeinterlaceTech_MedianFiltering
Der Algorithmus verwendet die Medianfilterung, um die Pixel in den fehlenden Zeilen neu zu erstellen.
DXVA2_DeinterlaceTech_EdgeFiltering
Der Algorithmus verwendet einen Edgefilter, um die fehlenden Zeilen zu erstellen. In diesem Prozess werden räumliche Direktionalfilter angewendet, um die Ausrichtung von Kanten im Bildinhalt zu bestimmen. Fehlende Pixel werden erstellt, indem die erkannten Kanten entlang (statt quer) gefiltert werden.
DXVA2_DeinterlaceTech_FieldAdaptive
Der Algorithmus verwendet räumliche oder temporale Interpolation und wechselt je nach Bewegungsumfang feldweise zwischen beiden.
DXVA2_DeinterlaceTech_PixelAdaptive
Der Algorithmus verwendet räumliche oder temporale Interpolation und wechselt pixelweise zwischen den beiden, je nach Bewegungsumfang.
DXVA2_DeinterlaceTech_MotionVectorSteered
Der Algorithmus identifiziert Objekte innerhalb einer Sequenz von Videofeldern. Bevor die fehlenden Pixel neu erstellt werden, richtet er die Bewegungsachsen der einzelnen Objekte in der Szene so aus, dass sie parallel zur Zeitachse angeordnet werden.
DXVA2_DeinterlaceTech_InverseTelecine
Das Gerät kann den 3:2-Pulldownprozess rückgängigmachen, der in Telecine verwendet wird.

ProcAmpControlCaps

Gibt die verfügbaren Videoprozessorvorgänge (ProcAmp) an. Der Wert ist ein bitweises OR der ProcAmp-Einstellungskonstanten .

VideoProcessorOperations

Gibt Vorgänge an, die das Gerät gleichzeitig mit dem Vorgang IDirectXVideoProcessor::VideoProcessBlt ausführen kann. Der Wert ist ein bitweises OR der folgenden Flags.

Wert Bedeutung
DXVA2_VideoProcess_YUV2RGB
Das Gerät kann das Video aus dem YUV-Farbraum in den RGB-Farbraum konvertieren, mit einer Genauigkeit von mindestens 8 Bit für jede RGB-Komponente.
DXVA2_VideoProcess_StretchX
Das Gerät kann das Video horizontal strecken oder verkleinern. Wenn diese Funktion vorhanden ist, kann die Korrektur des Seitenverhältnisses gleichzeitig mit dem Deinterlacing durchgeführt werden.
DXVA2_VideoProcess_StretchY
Das Gerät kann das Video vertikal strecken oder verkleinern. Wenn diese Funktion vorhanden ist, können Bildgrößenänderung und Seitenverhältniskorrektur gleichzeitig durchgeführt werden.
DXVA2_VideoProcess_AlphaBlend
Das Gerät kann das Video mit Alpha mischen.
DXVA2_VideoProcess_SubRects
Das Gerät kann mit einem Subrectangle des Videoframes betrieben werden. Wenn diese Funktion vorhanden ist, können Quellbilder zugeschnitten werden, bevor die weitere Verarbeitung erfolgt.
DXVA2_VideoProcess_SubStreams
Das Gerät kann neben dem primären Videostream Auch Substreams akzeptieren und diese zusammenfügen.
DXVA2_VideoProcess_SubStreamsExtended
Das Gerät kann Farbanpassungen für den primären Videodatenstrom und die Teilstreams durchführen, während das Video deinterlact und die Teilstreams zusammengesetzt werden. Der Zielfarbraum wird im DestFormat-Element der DXVA2_VideoProcessBltParams-Struktur definiert. Der Quellfarbraum für jeden Stream wird im SampleFormat-Element der DXVA2_VideoSample-Struktur definiert.
DXVA2_VideoProcess_YUV2RGBExtended
Das Gerät kann das Video von YUV in RGB-Farbraum konvertieren, wenn es die deinterlaced und zusammengesetzten Pixel auf die Zieloberfläche schreibt.

Eine RGB-Zieloberfläche kann eine Off-Screen-Oberfläche, Textur, Direct3D-Renderziel oder kombinierte Textur-/Renderzieloberfläche sein. Eine RGB-Zieloberfläche muss für jeden Farbkanal mindestens 8 Bits verwenden.

DXVA2_VideoProcess_AlphaBlendExtended
Das Gerät kann einen Alphamischungsvorgang mit der Zieloberfläche ausführen, wenn es die deinterlaced und composited Pixel auf die Zieloberfläche schreibt.
DXVA2_VideoProcess_Constriction
Das Gerät kann den Ausgaberahmen herabstempeln, wie durch den ConstrictionSize-Member der DXVA2_VideoProcessBltParams-Struktur angegeben.
DXVA2_VideoProcess_NoiseFilter
Das Gerät kann eine Rauschfilterung durchführen.
DXVA2_VideoProcess_DetailFilter
Das Gerät kann eine Detailfilterung durchführen.
DXVA2_VideoProcess_PlanarAlpha
Das Gerät kann eine konstante Alphamischung mit dem gesamten Videostream durchführen, wenn es den Videostream und die Teilstreams kombiniert.
DXVA2_VideoProcess_LinearScaling
Das Gerät kann eine genaue lineare RGB-Skalierung durchführen, anstatt sie im nichtlinearen Gammabereich auszuführen.
DXVA2_VideoProcess_GammaCompensated
Das Gerät kann das Bild korrigieren, um Artefakte zu kompensieren, die beim Skalieren im nichtlinearen Gammabereich eingeführt werden.
DXVA2_VideoProcess_MaintainsOriginalFieldData
Der Deinterlacingalgorithmus behält die ursprünglichen Feldlinien aus dem Interlaced-Feldbild bei, es sei denn, die Skalierung wird ebenfalls angewendet.

Beispielsweise kopiert das Gerät bei Deinterlacingalgorithmen wie bob- und Medianfilterung das ursprüngliche Feld in jede andere Scanzeile und wendet dann einen Filter an, um die fehlenden Scanzeilen zu rekonstruieren. Daher kann das ursprüngliche Feld wiederhergestellt werden, indem die scan-Zeilen verworfen werden, die interpoliert wurden.

Wenn das Bild jedoch vertikal skaliert wird, können die ursprünglichen Feldlinien nicht wiederhergestellt werden. Wenn das Bild horizontal (aber nicht vertikal) skaliert wird, entsprechen die resultierenden Feldlinien dem Skalieren des ursprünglichen Feldbilds. (Anders ausgedrückt: Das Verwerfen der interpolierten Scanlinien führt zu demselben Ergebnis wie das Strecken des originalen Bilds ohne Deinterlacing.)

NoiseFilterTechnology

Gibt die unterstützten Rauschfilter an. Der Wert ist ein bitweises OR der folgenden Flags.

Wert Bedeutung
DXVA2_NoiseFilterTech_Unsupported
Die Rauschfilterung wird nicht unterstützt.
DXVA2_NoiseFilterTech_Unknown
Unbekannter oder proprietärer Filter.
DXVA2_NoiseFilterTech_Median
Medianfilter.
DXVA2_NoiseFilterTech_Temporal
Temporaler Filter.
DXVA2_NoiseFilterTech_BlockNoise
Rauschfilter blockieren.
DXVA2_NoiseFilterTech_MosquitoNoise
Moskito-Rauschfilter.

DetailFilterTechnology

Gibt die unterstützten Detailfilter an. Der Wert ist ein bitweises OR der folgenden Flags.

Wert Bedeutung
DXVA2_DetailFilterTech_Unsupported
Die Detailfilterung wird nicht unterstützt.
DXVA2_DetailFilterTech_Unknown
Unbekannter oder proprietärer Filter.
DXVA2_DetailFilterTech_Edge
Edgefilter.
DXVA2_DetailFilterTech_Sharpening
Filter schärfen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Kopfzeile dxva2api.h

Weitere Informationen

IDirectXVideoProcessor::GetVideoProcessorCaps

IDirectXVideoProcessorService::GetVideoProcessorCaps

IMFVideoProcessor::GetVideoProcessorCaps

Media Foundation-Strukturen