IDXVAHD_Device::GetVideoProcessorInputFormats 메서드(dxvahd.h)
Microsoft DXVA-HD(DirectX Video Acceleration High Definition) 디바이스에서 지원하는 입력 형식 목록을 가져옵니다.
구문
HRESULT GetVideoProcessorInputFormats(
[in] UINT Count,
[out] D3DFORMAT *pFormats
);
매개 변수
[in] Count
검색할 형식의 수입니다. 이 매개 변수는 DXVAHD_VPDEVCAPS 구조체의 InputFormatCount 멤버와 같아야 합니다. 이 값을 얻으려면 IDXVAHD_Device::GetVideoProcessorDeviceCaps 메서드를 호출합니다.
[out] pFormats
D3DFORMAT 값 배열에 대한 포인터입니다. Count 매개 변수는 배열의 요소 수를 지정합니다. 메서드는 입력 형식 목록으로 배열을 채웁니다.
반환 값
메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.
설명
형식 목록에는 D3DFMT_X8R8G8B8 같은 D3DFORMAT 값과 'NV12'와 같은 FOURCC 코드가 모두 포함될 수 있습니다. 자세한 내용은 비디오 FOURC를 참조하세요.
예제
// 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;
}
요구 사항
지원되는 최소 클라이언트 | Windows 7 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 R2 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | dxvahd.h |