다음을 통해 공유


IMFDXGIDeviceManager::GetVideoService 메서드(mfobjects.h)

Microsoft Direct3D 디바이스에서 인터페이스를 쿼리합니다.

구문

HRESULT GetVideoService(
  [in]  HANDLE hDevice,
  [in]  REFIID riid,
  [out] void   **ppService
);

매개 변수

[in] hDevice

Direct3D 디바이스에 대한 핸들입니다. 디바이스 핸들을 얻으려면 IMFDXGIDeviceManager::OpenDeviceHandle을 호출합니다.

[in] riid

요청된 인터페이스의 IID(인터페이스 식별자)입니다. Direct3D 디바이스는 다음 인터페이스를 지원합니다.

  • ID3D11Device. Direct3D11 디바이스에 대한 포인터를 얻으려면 IID_ID3D11Deviceriid로 사용합니다.
  • ID3D11VideoDevice. Direct3D11 비디오 디바이스에 대한 포인터를 얻으려면 IID_ID3D11VideoDeviceriid로 사용합니다.

[out] ppService

요청된 인터페이스에 대한 포인터를 받습니다. 호출자는 인터페이스를 해제해야 합니다.

반환 값

이 메서드는 이러한 값 중 하나를 반환할 수 있습니다.

반환 코드 Description
S_OK
성공.
E_HANDLE
지정된 핸들이 Direct3D 디바이스 핸들이 아닙니다.
MF_E_DXGI_DEVICE_NOT_INITIALIZED
DXGI 장치 관리자 초기화되지 않았습니다. 디바이스 소유자는 IMFDXGIDeviceManager::ResetDevice를 호출해야 합니다.
MF_E_DXGI_NEW_VIDEO_DEVICE
디바이스 핸들이 잘못되었습니다.
E_NOINTERFACE
ID3D11VideoDevice가 지정되고 생성된 D3D 디바이스가 참조 래스터라이저 또는 WARP를 사용하는 경우 또는 하드웨어 디바이스이며 Microsoft 기본 디스플레이 어댑터를 사용하고 있습니다.

설명

메서드가 MF_E_DXGI_NEW_VIDEO_DEVICE 반환하는 경우 IMFDXGIDeviceManager::CloseDeviceHandle 을 호출하여 핸들을 닫은 다음 OpenDeviceHandle 을 다시 호출하여 새 핸들을 가져옵니다. IMFDXGIDeviceManager::ResetDevice 메서드는 열려 있는 모든 디바이스 핸들을 무효화합니다.

자세한 내용은 Media Foundation에서 Direct3D 11 비디오 디코딩 지원을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8 [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2012 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 mfobjects.h(Mfidl.h 포함)

추가 정보

IMFDXGIDeviceManager