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

Consulte también

DXVA-HD

IDXVAHD_Device