PFND3D11_1DDI_CREATEVIDEODECODER 콜백 함수(d3d10umddi.h)

비디오 디코더 개체를 만듭니다.

구문

PFND3D11_1DDI_CREATEVIDEODECODER Pfnd3d111DdiCreatevideodecoder;

HRESULT Pfnd3d111DdiCreatevideodecoder(
  D3D10DDI_HDEVICE unnamedParam1,
  const D3D11_1DDIARG_CREATEVIDEODECODER *unnamedParam2,
  D3D11_1DDI_HDECODE unnamedParam3,
  D3D11_1DDI_HRTDECODE unnamedParam4
)
{...}

매개 변수

unnamedParam1

hDevice [in]

디스플레이 디바이스(그래픽 컨텍스트)에 대한 핸들입니다.

unnamedParam2

pCreateData [in]

D3D11_1DDIARG_CREATEVIDEODECODER 구조체에 대한 포인터입니다. 이 구조체는 만들 비디오 디코더 개체의 특성을 지정합니다.

unnamedParam3

hDecode [in]

비디오 디코더 개체에 대한 드라이버의 개인 데이터에 대한 핸들입니다.

unnamedParam4

hRTDecode [in]

드라이버가 런타임으로 다시 호출할 때 사용해야 하는 비디오 디코더 개체에 대한 핸들입니다.

반환 값

CreateVideoDecoder는 다음 값 중 하나를 반환합니다.

반환 코드 설명
S_OK 비디오 디코더 개체가 성공적으로 만들어졌습니다.
D3DDDIERR_DEVICEREMOVED 그래픽 어댑터가 제거되었습니다.
E_OUTOFMEMORY 메모리를 사용하여 작업을 완료할 수 없습니다.

설명

Microsoft Direct3D 런타임은 드라이버의 CalcPrivateVideoDecoderSize를 호출한 후 CreateVideoDecoder를 호출하여 드라이버가 비디오 디코더 개체에 필요한 프라이빗 데이터의 크기(바이트)를 확인합니다. 런타임은 드라이버에 대해 이 프라이빗 데이터에 대한 메모리를 할당합니다. 드라이버는 이 메모리를 사용하여 비디오 디코더 개체와 관련된 개인 데이터를 저장합니다.

런타임이 CreateVideoDecoder를 호출하면 hDecoder 매개 변수의 프라이빗 데이터 메모리에 핸들을 전달합니다. 이 핸들은 실제로 메모리에 대한 포인터입니다.

드라이버는 암호화 세션을 만드는 데 사용된 디스플레이 디바이스에 대한 핸들을 추적해야 합니다. 해당 호출에 지정된 표시 디바이스가 비디오 디코더를 만드는 데 사용된 디스플레이 디바이스와 다른 경우 드라이버는 VideoDecoderBeginFrame과 같이 이 만든 암호화 세션을 사용하는 모든 후속 호출에 실패해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8
지원되는 최소 서버 Windows Server 2012
대상 플랫폼 데스크톱
머리글 d3d10umddi.h(D3d10umddi.h 포함)

추가 정보

CalcPrivateVideoDecoderSize

D3D11_1DDIARG_CREATEVIDEODECODER

NegotiateCryptoSessionKeyExchange

VideoDecoderBeginFrame