Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Enthält Daten pro Stream für die IDXVAHD_VideoProcessor::VideoProcessBltHD-Methode .
Syntax
typedef struct _DXVAHD_STREAM_DATA {
BOOL Enable;
UINT OutputIndex;
UINT InputFrameOrField;
UINT PastFrames;
UINT FutureFrames;
IDirect3DSurface9 **ppPastSurfaces;
IDirect3DSurface9 *pInputSurface;
IDirect3DSurface9 **ppFutureSurfaces;
} DXVAHD_STREAM_DATA;
Member
Enable
Gibt an, ob dieser Eingabedatenstrom aktiviert ist. Wenn der Wert TRUE ist, durchgibt die VideoProcessBltHD-Methode diesen Stream auf die Ausgabeoberfläche. Andernfalls wird der Stream nicht blitted. Die maximale Anzahl von Streams, die gleichzeitig aktiviert werden können, wird im MaxInputStreams-Element der DXVAHD_VPDEVCAPS-Struktur angegeben.
OutputIndex
Die nullbasierte Indexnummer des Ausgabeframes. Siehe Hinweise.
InputFrameOrField
Die nullbasierte Indexnummer des Eingaberahmens oder -felds. Siehe Hinweise.
PastFrames
Die Anzahl vergangener Referenzframes. Dieser Wert muss kleiner oder gleich dem Wert des PastFrames-Elements der DXVAHD_VPCAPS-Struktur sein.
FutureFrames
Die Anzahl der zukünftigen Referenzrahmen. Dieser Wert muss kleiner oder gleich dem Wert des FutureFrames-Elements der DXVAHD_VPCAPS-Struktur sein.
ppPastSurfaces
Ein Zeiger auf ein Array von IDirect3DSurface9-Zeigern , die vom Aufrufer zugeordnet werden. Dieses Array enthält die vergangenen Referenzframes für den Videoverarbeitungsvorgang. Die Anzahl der Elemente im Array entspricht dem Wert des PastFrames-Elements .
pInputSurface
Ein Zeiger auf die IDirect3DSurface9-Schnittstelle einer Microsoft Direct3D-Oberfläche, die den aktuellen Eingabeframe enthält.
ppFutureSurfaces
Ein Zeiger auf ein Array von IDirect3DSurface9-Zeigern , die vom Aufrufer zugeordnet werden. Dieses Array enthält die zukünftigen Referenzframes für den Videoverarbeitungsvorgang. Die Anzahl der Elemente im Array entspricht dem Wert des FutureFrames-Elements .
Hinweise
Eingabeoberflächen
Die Direct3D-Oberflächen müssen im Speicherpool zugeordnet werden, der vom InputPool-Member der DXVAHD_VPDEVCAPS-Struktur angegeben wird. Die folgenden Oberflächentypen können verwendet werden:- Eine Videooberfläche vom Typ DXVAHD_SURFACE_TYPE_VIDEO_INPUT oder DXVAHD_SURFACE_TYPE_VIDEO_INPUT_PRIVATE. Siehe IDXVAHD_Device::CreateVideoSurface.
- Eine Decoder-Renderzieloberfläche vom Typ DXVA2_VideoDecoderRenderTarget. Siehe IDirectXVideoAccelerationService::CreateSurface.
- Eine einfache Oberfläche außerhalb des Bildschirms.
- ppPastSurfaces: { ..., T-3, T-2, T-1 }
- ppInputSurface: T
- ppFutureSurfaces: { T+1, T+2, T+3, ... }
- Am Anfang oder Ende der Videosequenz
- Mit progressiver Eingabe
- Während eines Übergangs zwischen progressiver und interlaced-Eingabe
- Für einen Teilstrom, der keine hohe Deinterlacingqualität erfordert
- Beim Löschen von Frames
Eingabe- und Ausgabeindizes
Die Member OutputIndex und InputFrameOrField werden verwendet, um Eingabeframes oder Felder mit Ausgabeframes zu korrelieren. Der Wert des OutputIndex-Elements ist zyklischer Wert und wird nach jedem Zyklus auf null zurückgesetzt.Hier sind einige Beispielmuster:
- Progressives Video mit normaler Rate. Jeder Eingabeframe erzeugt einen Ausgabeframe.
- Ausgabeindex: 0, 0, 0, 0, ...
- Eingabeindex: 0, 1, 2, 3, ...
- Interlaced video at normal rate. Jeder Interlaced-Frame (zwei Felder) erzeugt zwei Ausgabeframes.
- Ausgabeindex: 0, 1, 0, 1, ...
- Eingabeindex: 0, 1, 2, 3, ...
- Progressives Video mit einer Ausgaberate von 2/1. Jeder Eingabeframe erzeugt einen Ausgabeframe.
- Ausgabeindex: 0, 1, 0, 1, ...
- Eingabeindex: 0, 1, 2, 3, ...
- Interlaced video at 1/2 output rate( Interlaced video at 1/2 output rate). Jeder Interlacedframe erzeugt einen Ausgabeframe. (Die beiden Felder werden gemischt, um einen Frame zu erstellen.)
- Ausgabeindex: 0, 0, 0, 0, ...
- Eingabeindex: 0, 2, 4, 6, ...
Anforderungen
Unterstützte Mindestversion (Client) | Windows 7 [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2 [nur Desktop-Apps] |
Kopfzeile | dxvahd.h |