IDirect3DDeviceManager9::GetVideoService-Methode (dxva2api.h)
Ruft eine DxVA-Dienstschnittstelle (DirectX Video Acceleration) ab.
Syntax
HRESULT GetVideoService(
[in] HANDLE hDevice,
[in] REFIID riid,
[out] void **ppService
);
Parameter
[in] hDevice
Ein Handle für ein Direct3D-Gerät. Um ein Gerätehandle abzurufen, rufen Sie IDirect3DDeviceManager9::OpenDeviceHandle auf.
[in] riid
Der Schnittstellenbezeichner (Interface Identifier, IID) der angeforderten Schnittstelle. Das Direct3D-Gerät unterstützt möglicherweise die folgenden DXVA-Dienstschnittstellen:
[out] ppService
Empfängt einen Zeiger auf die angeforderte Schnittstelle. Der Aufrufer muss die Schnittstelle freigeben.
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. |
|
Das Gerätehandle ist ungültig. |
|
Das Direct3D-Gerät unterstützt keine Videobeschleunigung. |
|
Der Direct3D-Geräte-Manager wurde nicht initialisiert. Der Besitzer des Geräts muss IDirect3DDeviceManager9::ResetDevice aufrufen. |
|
Der angegebene Handle ist kein Direct3D-Gerätehandle. |
Hinweise
Wenn die Methode DXVA2_E_NEW_VIDEO_DEVICE zurückgibt, rufen Sie IDirect3DDeviceManager9::CloseDeviceHandle auf, um das Handle zu schließen, und rufen Sie dann OpenDeviceHandle erneut auf, um ein neues Handle abzurufen. Mit der IDirect3DDeviceManager9::ResetDevice-Methode werden alle geöffneten Gerätehandles ungültig.
Beispiele
HRESULT GetVideoProcessorService(
IDirect3DDeviceManager9 *pDeviceManager,
IDirectXVideoProcessorService **ppVPService
)
{
*ppVPService = NULL;
HANDLE hDevice;
HRESULT hr = pDeviceManager->OpenDeviceHandle(&hDevice);
if (SUCCEEDED(hr))
{
// Get the video processor service
HRESULT hr2 = pDeviceManager->GetVideoService(
hDevice,
IID_PPV_ARGS(ppVPService)
);
// Close the device handle.
hr = pDeviceManager->CloseDeviceHandle(hDevice);
if (FAILED(hr2))
{
hr = hr2;
}
}
if (FAILED(hr))
{
SafeRelease(ppVPService);
}
return hr;
}
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 |