IDXVAHD_Device::GetVideoProcessorInputFormats, méthode (dxvahd.h)
Obtient la liste des formats d’entrée pris en charge par l’appareil Microsoft DirectX Video Acceleration High Definition (DXVA-HD).
Syntaxe
HRESULT GetVideoProcessorInputFormats(
[in] UINT Count,
[out] D3DFORMAT *pFormats
);
Paramètres
[in] Count
Nombre de formats à récupérer. Ce paramètre doit être égal au membre InputFormatCount de la structure DXVAHD_VPDEVCAPS . Appelez la méthode IDXVAHD_Device::GetVideoProcessorDeviceCaps pour obtenir cette valeur.
[out] pFormats
Pointeur vers un tableau de valeurs D3DFORMAT . Le paramètre Count spécifie le nombre d’éléments dans le tableau. La méthode remplit le tableau avec une liste de formats d’entrée.
Valeur retournée
Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Notes
La liste des formats peut inclure à la fois des valeurs D3DFORMAT , telles que D3DFMT_X8R8G8B8, et des codes FOURCC, tels que « NV12 ». Pour plus d’informations, consultez Vidéo FOURCC.
Exemples
// Checks whether a DXVA-HD device supports a specified input format.
HRESULT CheckInputFormatSupport(
IDXVAHD_Device *pDXVAHD,
const DXVAHD_VPDEVCAPS& caps,
D3DFORMAT d3dformat
)
{
D3DFORMAT *pFormats = new (std::nothrow) D3DFORMAT[ caps.InputFormatCount ];
if (pFormats == NULL)
{
return E_OUTOFMEMORY;
}
HRESULT hr = pDXVAHD->GetVideoProcessorInputFormats(
caps.InputFormatCount,
pFormats
);
if (FAILED(hr))
{
goto done;
}
UINT index;
for (index = 0; index < caps.InputFormatCount; index++)
{
if (pFormats[index] == d3dformat)
{
break;
}
}
if (index == caps.InputFormatCount)
{
hr = E_FAIL;
}
done:
delete [] pFormats;
return hr;
}
Spécifications
Client minimal pris en charge | Windows 7 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 R2 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | dxvahd.h |