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.
Erstellt ein DirectX Video Acceleration (DXVA)-Videoprozessor- oder DXVA-Decoder-Renderziel.
Syntax
HRESULT CreateSurface(
[in] UINT Width,
[in] UINT Height,
[in] UINT BackBuffers,
[in] D3DFORMAT Format,
[in] D3DPOOL Pool,
[in] DWORD Usage,
[in] DWORD DxvaType,
[out] IDirect3DSurface9 **ppSurface,
[in, out] HANDLE *pSharedHandle
);
Parameter
[in] Width
Die Breite der Oberfläche in Pixel.
[in] Height
Die Höhe der Oberfläche in Pixel.
[in] BackBuffers
Die Anzahl der Backpuffer. Die Methode erstellt BackBuffers + 1 Oberflächen.
[in] Format
Das Pixelformat, das als D3DFORMAT-Wert oder FOURCC-Code angegeben wird. Weitere Informationen finden Sie in der Direct3D-Dokumentation.
[in] Pool
Der Speicherpool, in dem die Oberfläche erstellt werden soll, der als D3DPOOL-Wert angegeben wird. Weitere Informationen finden Sie in der Direct3D-Dokumentation. Decoder sollten im Allgemeinen den Wert D3DPOOL_DEFAULT verwenden.
[in] Usage
Reserviert. Legen Sie diesen Wert auf 0 fest.
[in] DxvaType
Der Typ der zu erstellenden Oberfläche. Verwenden Sie einen der folgenden Werte.
Wert | Bedeutung |
---|---|
|
Videodecoder-Renderziel. |
|
Videoprozessor-Renderziel. Wird für IDirectXVideoProcessor::VideoProcessBlt-Vorgänge verwendet. |
|
Softwarerenderziel. Dieser Oberflächentyp ist für die Verwendung mit DXVA-Softwaregeräten vorgesehen. |
[out] ppSurface
Die Adresse eines Arrays von IDirect3DSurface9-Zeigern, die vom Aufrufer zugewiesen wurden. Die Größe des Arrays muss 1 + BackBuffers sein (ausreichend für die Backpuffer plus einen Frontpuffer). Die -Methode füllt das Array mit IDirect3DSurface9-Zeigern . Der Aufrufer muss alle Schnittstellenzeiger freigeben. Darüber hinaus enthält der Frontpuffer eine Verweisanzahl für jeden der Backpuffer. Daher werden die Backpuffer erst gelöscht, wenn der Frontpuffer gelöscht wird.
[in, out] pSharedHandle
Ein Zeiger auf einen Handle, der zum Freigeben der Oberflächen zwischen Direct3D-Geräten verwendet wird. Legen Sie diesen Parameter auf NULL fest.
Rückgabewert
Die Methode gibt ein HRESULT zurück. Mögliches Werte (aber nicht die Einzigen) sind die in der folgenden Tabelle.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Die Methode wurde erfolgreich ausgeführt. |
|
Ungültiger Parameter |
|
Der DirectX-Videobeschleunigungs-Manager wird nicht initialisiert. |
|
NULL-Zeigerargument. |
Hinweise
Wenn die Methode E_FAIL zurückgibt, versuchen Sie, IDirect3DDeviceManager9::ResetDevice aufzurufen, um den DirectX Video Acceleration Manager zurückzusetzen.
Anforderungen
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | dxva2api.h |