Share via


Miracast 무선 디스플레이 지원

Miracast 무선 디스플레이 표준에 대한 지원은 Windows 8.1(WDDM 1.3)에 도입되었습니다.

Windows 10 시작하는 Miracast 지원

Windows 10(WDDM 2.0)부터 운영 체제는 모든 GPU에서 작동할 수 있는 기본 제공 Miracast 스택과 함께 제공됩니다. microsoft Miracast 스택 및 Windows 10 Miracast 디스플레이를 지원하기 위한 드라이버 및 하드웨어의 요구 사항에 대한 자세한 내용은 다음 설명서를 참조하세요.

드라이버 개발자는 더 이상 사용자 지정 Miracast 스택을 구현하지 않아야 합니다. Microsoft는 이후 버전의 Windows에서 사용자 지정 Miracast 스택에 대한 지원을 제거할 수 있습니다.

Windows 8.1 Miracast 지원

WDDM 1.3 드라이버는 필요에 따라 해당 릴리스에 제공된 Miracast DDI를 통해 Miracast를 지원할 수 있습니다. 이 문서의 나머지 부분과 관련 문서에서는 해당 지원을 제공하는 방법을 설명합니다.

DDI(사용자 모드 디바이스 드라이버 인터페이스)

Miracast 사용자 모드 드라이버에서 호출하는 무선 디스플레이 콜백 함수

다음 표에서는 운영 체제에서 구현하는 무선 디스플레이(Miracast) 사용자 모드 함수를 나열합니다. Windows 8.1 Miracast 사용자 모드 드라이버만 이러한 함수를 호출할 수 있습니다. Miracast 표시 콜백 함수에 대한 포인터는 MIRACAST_CALLBACKS 구조로 반환됩니다.

함수 Description
PFN_GET_NEXT_CHUNK_DATA DXGK_INTERRUPT_TYPE 인터럽트 형식이 DXGK_INTERRUPT_MIRACAST_CHUNK_PROCESSING_COMPLETE 때 DirectX 그래픽 커널 하위 시스템에 보고된 다음 Miracast 인코딩 청크에 대한 정보를 제공합니다.
PFN_MIRACAST_IO_CONTROL 커널 모드 디스플레이 미니포트 드라이버에 동기 I/O 컨트롤 요청을 보내기 위해 사용자 모드 디스플레이 드라이버에서 호출됩니다.
PFN_REGISTER_DATARATE_NOTIFICATIONS 사용자 모드 드라이버가 운영 체제에 등록하여 QoS(네트워크 서비스 품질) 알림 및 Miracast 연결의 현재 네트워크 대역폭을 수신하도록 호출됩니다.
PFN_REPORT_SESSION_STATUS 현재 Miracast 연결된 세션의 상태 보고하기 위해 사용자 모드 표시 드라이버에서 호출됩니다.
PFN_REPORT_STATISTIC 운영 체제에 대한 Miracast 링크의 통계를 보고하기 위해 사용자 모드 표시 드라이버에서 호출됩니다.

Windows 8.1 Miracast 사용자 모드 드라이버에 의해 구현된 무선 디스플레이 함수

다음 표에서는 Windows 8.1 Miracast 사용자 모드 드라이버가 구현해야 하는 무선 디스플레이(Miracast) 함수를 나열합니다. 이 유형의 드라이버는 독립 실행형 DLL에서 실행됩니다.

QueryMiracastDriverInterface 함수에 대한 운영 체제 호출에 대한 응답으로 Miracast 사용자 모드 드라이버는 MIRACAST_DRIVER_INTERFACE 구조에서 이러한 함수에 대한 포인터를 제공해야 합니다. 예외는 registerForDataRateNotifications에 선언된 포인터가 있는 pfnDataRateNotify입니다.

함수 Description
PFN_CREATE_MIRACAST_CONTEXT 사용자 모드 Miracast 컨텍스트를 만들기 위해 운영 체제에서 호출됩니다.
PFN_DESTROY_MIRACAST_CONTEXT 사용자 모드 Miracast 컨텍스트를 삭제하기 위해 운영 체제에서 호출됩니다.
PFN_HANDLE_KMD_MESSAGE 디스플레이 미니포트 드라이버가 DxgkCbMiracastSendMessage 함수를 호출할 때 Miracast 사용자 모드 드라이버가 받는 비동기 커널 모드 메시지를 처리하기 위해 운영 체제에서 호출됩니다.
PFN_DATARATE_NOTIFICATION Miracast 네트워크 링크의 비트 속도가 변경되었음을 Miracast 사용자 모드 드라이버에 알리기 위해 운영 체제에서 호출합니다. 이 함수는 RegisterForDataRateNotifications 함수가 호출될 때 운영 체제에 등록됩니다.
QUERY_MIRACAST_DRIVER_INTERFACE 운영 체제에서 Miracast 사용자 모드 드라이버 인터페이스를 쿼리하기 위해 호출된 MIRACAST_DRIVER_INTERFACE.
PFN_START_MIRACAST_SESSION 운영 체제에서 Miracast 연결된 세션을 시작하도록 호출됩니다.
PFN_STOP_MIRACAST_SESSION 운영 체제에서 이전에 StartMiracastSession 함수를 호출하여 시작한 Miracast 연결된 세션을 시작하도록 호출됩니다.

다음 표에서는 Windows 8.1 Miracast 디스플레이 DDI(디바이스 드라이버 인터페이스)와 함께 사용되는 사용자 모드 구조 및 열거형을 나열합니다.

구조체/열거형 Description
MIRACAST_CALLBACKS Miracast 사용자 모드 드라이버가 호출할 수 있는 무선 디스플레이(Miracast) 런타임 콜백 함수에 대한 포인터를 포함합니다.
MIRACAST_CHUNK_DATA 사용자 모드 드라이버가 무선 디스플레이(Miracast) GetNextChunkData 함수를 호출할 때 사용되는 인코딩 청크 데이터를 포함합니다.
MIRACAST_CHUNK_ID 무선 디스플레이(Miracast) 인코딩 청크를 식별하는 정보를 저장합니다.
MIRACAST_CHUNK_INFO 지정된 무선 디스플레이(Miracast) 인코딩 청크에 대한 정보를 포함합니다.
MIRACAST_CHUNK_TYPE 처리할 무선 디스플레이(Miracast) 청크 정보의 유형을 지정합니다.
MIRACAST_DATARATE_STATS 무선 디스플레이(Miracast) pfnDataRateNotify 함수에서 오디오/비디오 인코더 비트 속도 및 실패한 또는 다시 시도된 Wi-Fi 프레임에 대한 정보를 포함합니다.
MIRACAST_DRIVER_INTERFACE Miracast 사용자 모드 드라이버가 구현하는 무선 디스플레이(Miracast) 함수에 대한 포인터를 포함합니다.
MIRACAST_PROTOCOL_EVENT 사용자 모드 표시 드라이버가 보고해야 하는 무선 디스플레이(Miracast) 프로토콜 이벤트의 유형을 지정합니다.
MIRACAST_SESSION_INFO 무선 디스플레이(Miracast) 연결 세션에 대한 정보를 포함합니다.
MIRACAST_STATISTIC_DATA 사용자 모드 표시 드라이버가 운영 체제에 보고하는 Miracast 통계 데이터를 포함합니다.
MIRACAST_STATISTIC_TYPE 사용자 모드 표시 드라이버가 생성하는 Miracast 통계 데이터의 형식을 지정합니다.
MIRACAST_STATUS 사용자 모드 표시 드라이버가 Miracast 연결 상태 보고하는 데 사용하는 상태 형식을 지정합니다.
MIRACAST_WFD_CONNECTION_STATS Wi-Fi 직접 연결에 대한 비트 속도 정보를 포함합니다.

다음 사용자 모드 구조 및 열거형은 Miracast 디스플레이를 지원하며 Windows 8.1 대해 새 기능 또는 업데이트되었습니다.

커널 모드 DDI

무선 디스플레이(Miracast) 디스플레이 콜백 인터페이스

Miracast 디스플레이 콜백 인터페이스에는 DirectX 그래픽 커널 하위 시스템이 Windows 8.1 무선(Miracast)을 지원하기 위해 구현하는 함수가 포함되어 있습니다.

다음 표에서는 WDDM 1.3 디스플레이 미니포트 드라이버에서 호출되는 이러한 커널 모드 함수를 나열합니다.

함수 Description
DXGKCB_MIRACAST_SEND_MESSAGE 사용자 모드 표시 드라이버에 비동기 메시지를 보냅니다.
DXGKCB_MIRACAST_SEND_MESSAGE_CALLBACK DxgkCbMiracastSendMessage 함수를 호출하여 사용자 모드 드라이버에 보낸 메시지가 완료되었거나 취소된 경우 커널 모드에서 호출됩니다.
DXGKCB_MIRACAST_REPORT_CHUNK_INFO 인코딩 청크에 대한 정보를 보고하기 위해 디스플레이 미니포트 드라이버에서 호출됩니다.

디스플레이 미니포트 드라이버는 DXGK_MIRACAST_DISPLAY_CALLBACKS 구조에서 이러한 함수에 대한 포인터를 채워야 합니다.

무선 디스플레이(Miracast) 인터페이스

다음 표에는 Windows 8.1 무선(Miracast) 디스플레이를 지원하기 위해 구현하는 미니포트 드라이버를 표시하는 커널 모드 함수가 나와 있습니다. Miracast 인터페이스 함수에 대한 포인터는 DXGK_MIRACAST_INTERFACE 구조로 반환됩니다.

함수 Description
DXGKCB_MIRACAST_SEND_MESSAGE_CALLBACK DxgkCbMiracastSendMessage 함수를 호출하여 사용자 모드 드라이버에 보낸 메시지가 완료되었거나 취소된 경우 커널 모드에서 호출됩니다.
DXGKDDI_MIRACAST_CREATE_CONTEXT Miracast 디바이스에 대한 커널 모드 컨텍스트를 만듭니다.
DXGKDDI_MIRACAST_DESTROY_CONTEXT Miracast 디바이스의 instance 삭제합니다.
DXGKDDI_MIRACAST_HANDLE_IO_CONTROL MiracastIoControl 함수에 대한 사용자 모드 디스플레이 드라이버 호출에 대한 응답으로 디스플레이 미니포트 드라이버가 동기 I/O 컨트롤 요청을 처리하도록 요청하기 위해 운영 체제에서 호출됩니다.
DXGKDDI_MIRACAST_QUERY_CAPS 현재 디스플레이 어댑터의 Miracast 기능을 쿼리합니다. 운영 체제는 디스플레이 어댑터가 처음 시작된 후에 반환되는 기능을 저장하는 경우에만 이 함수를 호출합니다.

이러한 커널 모드 구조 및 열거형은 Miracast 디스플레이를 지원하며 Windows 8.1 대해 새 기능 또는 업데이트되었습니다.