Compartilhar via


Método IDXVAHD_Device::GetVideoProcessorOutputFormats (dxvahd.h)

Obtém uma lista dos formatos de saída compatíveis com o dispositivo de Alta Definição de Aceleração de Vídeo (DXVA-HD) do Microsoft DirectX.

Sintaxe

HRESULT GetVideoProcessorOutputFormats(
  [in]  UINT      Count,
  [out] D3DFORMAT *pFormats
);

Parâmetros

[in] Count

O número de formatos a serem recuperados. Esse parâmetro deve ser igual ao membro OutputFormatCount da estrutura DXVAHD_VPDEVCAPS . Chame o método IDXVAHD_Device::GetVideoProcessorDeviceCaps para obter esse valor.

[out] pFormats

Um ponteiro para uma matriz de valores D3DFORMAT . O parâmetro Count especifica o número de elementos na matriz. O método preenche a matriz com uma lista de formatos de saída.

Retornar valor

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

A lista de formatos pode incluir valores D3DFORMAT , como D3DFMT_X8R8G8B8 e códigos FOURCC, como 'NV12'. Para obter mais informações, consulte Video FOURCCs.

Exemplos

// 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 com suporte Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho dxvahd.h

Confira também

DXVA-HD

IDXVAHD_Device