método IDXVAHD_Device::GetVideoProcessorOutputFormats (dxvahd.h)
Obtiene una lista de los formatos de salida admitidos por el dispositivo microsoft DirectX Video Acceleration High Definition (DXVA-HD).
Sintaxis
HRESULT GetVideoProcessorOutputFormats(
[in] UINT Count,
[out] D3DFORMAT *pFormats
);
Parámetros
[in] Count
Número de formatos que se van a recuperar. Este parámetro debe ser igual al miembro OutputFormatCount de la estructura DXVAHD_VPDEVCAPS . Llame al método IDXVAHD_Device::GetVideoProcessorDeviceCaps para obtener este valor.
[out] pFormats
Puntero a una matriz de valores D3DFORMAT . El parámetro Count especifica el número de elementos de la matriz. El método rellena la matriz con una lista de formatos de salida.
Valor devuelto
Si este método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.
Comentarios
La lista de formatos puede incluir ambos valores D3DFORMAT , como D3DFMT_X8R8G8B8 y códigos FOURCC, como "NV12". Para obtener más información, consulte Video FOURCC.
Ejemplos
// Checks whether a DXVA-HD device supports a specified output format.
HRESULT CheckOutputFormatSupport(
IDXVAHD_Device *pDXVAHD,
const DXVAHD_VPDEVCAPS& caps,
D3DFORMAT d3dformat
)
{
D3DFORMAT *pFormats = new (std::nothrow) D3DFORMAT[caps.OutputFormatCount];
if (pFormats == NULL)
{
return E_OUTOFMEMORY;
}
HRESULT hr = pDXVAHD->GetVideoProcessorOutputFormats(
caps.OutputFormatCount,
pFormats
);
if (FAILED(hr))
{
goto done;
}
UINT index;
for (index = 0; index < caps.OutputFormatCount; index++)
{
if (pFormats[index] == d3dformat)
{
break;
}
}
if (index == caps.OutputFormatCount)
{
hr = E_FAIL;
}
done:
delete [] pFormats;
return hr;
}
Requisitos
Cliente mínimo compatible | Windows 7 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 R2 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | dxvahd.h |