IAMVideoAccelerator::GetVideoAcceleratorGUIDs method

The GetVideoAcceleratorGUIDs method gets a list of DirectX Video Acceleration (DXVA) profiles supported by the display driver.

Syntax

HRESULT GetVideoAcceleratorGUIDs(
  LPDWORD pdwNumGuidsSupported,
  LPGUID  pGuidsSupported
);

Parameters

pdwNumGuidsSupported

On input, specifies the number of elements in the pGuidsSupported array. If pGuidsSupported is NULL, the value of *pdwNumGuidsSupported must be zero.

On output, if pGuidsSupported is NULL, pdwNumGuidsSupported receives the number of restricted-mode DXVA profiles. Otherwise, pdwNumGuidsSupported receives the actual number of GUIDs copied to the pGuidsSupported array.

pGuidsSupported

Address of an array of GUIDs, or NULL. If the value is non-NULL, the array receives a list of GUIDs that specify restricted-mode DXVA profiles. These GUIDs are defined in the header file dxva.h, and are documented in the DXVA 1.0 specification.

Return value

Returns an HRESULT value that depends on the implementation of the interface. HRESULT can include one of the following standard constants, or other values not listed.

Return code Description
E_FAIL
Failure.
E_INVALIDARG
Argument is invalid.
E_NOTIMPL
The method is not supported.
E_POINTER
NULL pointer argument.
S_OK
Success.
VFW_E_WRONG_STATE
Invalid state. The video renderer has not created the Direct3D or DirectDraw device.

Remarks

Call this method twice. On the first call, set pGuidsSupported to NULL. The pdwNumGuidsSupported parameter receives the number of DXVA profile GUIDs. Allocate an array of GUIDs with the required size and call the method again. This time, set pGuidsSupported to the address of the array. The method fills the array with the list of DXVA profile GUIDs.

Requirements

   
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header videoacc.h
Library Strmiids.lib

See also

Error and Success Codes

How Decoders Use IAMVideoAccelerator

IAMVideoAccelerator Interface