Udostępnij za pośrednictwem


Obsługa programu Miracast w systemie Windows 8.1

W tym artykule wymieniono aktualizacje DDI dostępne dla sterowników do obsługi wyświetlaczy bezprzewodowych Miracast w systemie Windows 8.1 (WDDM 1.3). Począwszy od systemu Windows 10 (WDDM 2.0), system operacyjny jest dostarczany z wbudowanym stosem Miracast, który może działać na dowolnym procesorze GPU. Deweloperzy sterowników nie powinni już implementować niestandardowego stosu Miracast. Firma Microsoft może usunąć obsługę niestandardowych stosów Miracast w przyszłej wersji systemu Windows.

W poniższych dodatkowych artykułach opisano, jak sterowniki mogą obsługiwać wyświetlacze bezprzewodowe Miracast w systemie Windows 8.1 (WDDM 1.3).

Interfejsy sterowników urządzeń w trybie użytkownika (DDI)

Funkcje zwrotne wyświetlania bezprzewodowego wywoływane przez sterowniki Miracast w trybie użytkownika

W poniższej tabeli wymieniono funkcje trybu użytkownika wyświetlacza bezprzewodowego (Miracast), które implementuje system operacyjny. Tylko sterowniki systemu Windows 8.1 Miracast w trybie użytkownika mogą wywoływać te funkcje. Wskaźniki do funkcji wywołania zwrotnego wyświetlania Miracast są zwracane w strukturze MIRACAST_CALLBACKS .

Funkcja Opis
PFN_GET_NEXT_CHUNK_DATA Zawiera informacje o następnym fragmentie kodu Miracast, który został zgłoszony do podsystemu jądra grafiki DirectX, gdy typ przerwania DXGK_INTERRUPT_TYPE jest DXGK_INTERRUPT_MIRACAST_CHUNK_PROCESSING_COMPLETE.
PFN_MIRACAST_IO_CONTROL Wywoływany przez sterownik wyświetlania trybu użytkownika w celu wysłania synchronicznego żądania sterowania we/wy do sterownika miniportu trybu jądra.
PFN_REGISTER_DATARATE_NOTIFICATIONS Wywoływany przez sterownik trybu użytkownika w celu zarejestrowania się w systemie operacyjnym w celu odbierania powiadomień dotyczących jakości usług (QoS) sieci i bieżącej przepustowości sieci połączenia Miracast.
PFN_REPORT_SESSION_STATUS Wywoływany przez sterownik wyświetlania trybu użytkownika w celu raportowania stanu bieżącej sesji połączonej Miracast.
PFN_REPORT_STATISTIC Wywoływana przez sterownik wyświetlania trybu użytkownika w celu raportowania statystyk linku Miracast do systemu operacyjnego.

Funkcje wyświetlania bezprzewodowego implementowane przez sterowniki systemu Windows 8.1 Miracast w trybie użytkownika

W poniższej tabeli wymieniono funkcje wyświetlania bezprzewodowego (Miracast), które musi zaimplementować sterownik systemu Windows 8.1 Miracast w trybie użytkownika. Ten typ sterownika działa w autonomicznej biblioteki DLL.

W odpowiedzi na wywołanie systemu operacyjnego do funkcji QueryMiracastDriverInterface sterownik trybu użytkownika Miracast musi dostarczyć wskaźniki do tych funkcji w strukturze MIRACAST_DRIVER_INTERFACE . Wyjątek to pfnDataRateNotify, który ma wskaźnik zadeklarowany w registerForDataRateNotifications.

Funkcja Opis
PFN_CREATE_MIRACAST_CONTEXT Wywoływana przez system operacyjny w celu utworzenia kontekstu Miracast w trybie użytkownika.
PFN_DESTROY_MIRACAST_CONTEXT Wywoływana przez system operacyjny w celu zniszczenia kontekstu Miracast w trybie użytkownika.
PFN_HANDLE_KMD_MESSAGE Wywoływana przez system operacyjny do obsługi asynchronicznego komunikatu trybu jądra, który sterownik trybu użytkownika Miracast odbiera, gdy sterownik miniportu wyświetlania wywołuje funkcję DxgkCbMiracastSendMessage .
PFN_DATARATE_NOTIFICATION Wywoływana przez system operacyjny w celu powiadomienia sterownika trybu użytkownika Miracast o zmianie szybkości transmisji bitów łącza sieciowego Miracast. Ta funkcja jest zarejestrowana w systemie operacyjnym, gdy wywoływana jest funkcja RegisterForDataRateNotifications .
ZAPYTANIE_INTERFESU_STEROWNIKA_MIRACAST Wywoływana przez system operacyjny do wykonywania zapytań dotyczących interfejsu sterownika trybu użytkownika Miracast MIRACAST_DRIVER_INTERFACE.
PFN_START_MIRACAST_SESSION Wywoływana przez system operacyjny w celu uruchomienia połączonej sesji Miracast.
PFN_STOP_MIRACAST_SESSION Wywołanie przez system operacyjny w celu uruchomienia połączonej sesji Miracast, która została wcześniej uruchomiona przez wywołanie funkcji StartMiracastSession .

W poniższej tabeli wymieniono struktury i wyliczenia trybu użytkownika, które są używane z interfejsami sterowników urządzeń wyświetlania Miracast systemu Windows 8.1 (DDI).

Struktura/Enum Opis
MIRACAST_CALLBACKS Zawiera wskaźniki do funkcji wywołania zwrotnego dla środowiska uruchomieniowego Miracast, które sterownik trybu użytkownika Miracast może wywołać.
MIRACAST_CHUNK_DATA Zawiera kodowanie danych fragmentów do użycia, gdy sterownik trybu użytkownika wywołuje funkcję GetNextChunkData wyświetlacza bezprzewodowego (Miracast).
MIRACAST_CHUNK_ID Przechowuje informacje identyfikujące fragment kodu wyświetlacza bezprzewodowego (Miracast).
MIRACAST_CHUNK_INFO Zawiera informacje dotyczące określonego fragmentu kodu bezprzewodowego (Miracast).
MIRACAST_CHUNK_TYPE Określa typy informacji o fragmentach wyświetlacza bezprzewodowego (Miracast), które mają być przetwarzane.
MIRACAST_DATARATE_STATS Zawiera informacje używane w bezprzewodowym wyświetlaczu (Miracast) funkcji pfnDataRateNotify o przepustowości kodera audio/wideo oraz nieudanych lub ponawianych ramkach Wi-Fi.
MIRACAST_DRIVER_INTERFACE Zawiera wskaźniki do funkcji wyświetlania bezprzewodowego (Miracast), które implementuje sterownik trybu użytkownika Miracast.
MIRACAST_PROTOCOL_EVENT Określa typy zdarzeń protokołu wyświetlania bezprzewodowego (Miracast), które powinien zgłaszać sterownik wyświetlania w trybie użytkownika.
MIRACAST_SESSION_INFO Zawiera informacje na temat połączonej sesji wyświetlacza bezprzewodowego (Miracast).
MIRACAST_STATISTIC_DATA Zawiera dane statystyczne Miracast zgłaszane przez sterownik wyświetlania w trybie użytkownika do systemu operacyjnego.
MIRACAST_STATISTIC_TYPE Określa typy danych statystyk Miracast generowanych przez sterownik wyświetlania trybu użytkownika.
MIRACAST_STATUS Określa typy stanu używane przez sterownik wyświetlania trybu użytkownika do raportowania stanu połączenia Miracast.
MIRACAST_WFD_CONNECTION_STATS Zawiera informacje o szybkości bitów dla połączenia Wi-Fi Direct.

Następujące struktury i wyliczenia trybu użytkownika obsługują wyświetlacze Miracast i zostały nowe lub zaktualizowane dla systemu Windows 8.1:

Interfejsy DDI trybu jądra

Interfejs wywołania zwrotnego wyświetlacza bezprzewodowego (Miracast)

Interfejs zwrotny wyświetlania Miracast zawiera funkcje, które podsystem grafiki DirectX implementuje w celu obsługi bezprzewodowych wyświetlaczy Miracast w Windows 8.1.

W poniższej tabeli wymieniono te funkcje trybu jądra, które są wywoływane przez sterowniki miniportu wyświetlania WDDM 1.3:

Funkcja Opis
DXGKCB_MIRACAST_SEND_MESSAGE Wysyła komunikat asynchroniczny do sterownika wyświetlania trybu użytkownika.
DXGKCB_MIRACAST_SEND_MESSAGE_CALLBACK Wywoływana w trybie jądra po zakończeniu lub anulowaniu komunikatu wysłanego do sterownika trybu użytkownika z wywołaniem funkcji DxgkCbMiracastSendMessage .
DXGKCB_MIRACAST_REPORT_CHUNK_INFO Wywoływany przez sterownik miniportu wyświetlania w celu raportowania informacji o fragmencie kodu.

Sterownik miniportu wyświetlacza musi uzupełnić wskaźniki do tych funkcji w strukturze DXGK_MIRACAST_DISPLAY_CALLBACKS.

Interfejs wyświetlacza bezprzewodowego (Miracast)

W poniższej tabeli wymieniono funkcje trybu jądra, które wyświetlają sterowniki miniportów implementujące obsługę wyświetlania bezprzewodowego (Miracast) w systemie Windows 8.1. Wskaźniki do funkcji interfejsu Miracast są zwracane w strukturze DXGK_MIRACAST_INTERFACE .

Funkcja Opis
DXGKCB_MIRACAST_SEND_MESSAGE_CALLBACK Wywoływana w trybie jądra po zakończeniu lub anulowaniu komunikatu wysłanego do sterownika trybu użytkownika z wywołaniem funkcji DxgkCbMiracastSendMessage .
DXGKDDI_MIRACAST_CREATE_CONTEXT Tworzy kontekst trybu jądra dla urządzenia Miracast.
DXGKDDI_MIRACAST_DESTROY_CONTEXT Niszczy wystąpienie urządzenia Miracast.
DXGKDDI_MIRACAST_HANDLE_IO_CONTROL Wywoływana przez system operacyjny w celu żądania, aby sterownik miniportu wyświetlania przetwarzał synchroniczne żądanie sterowania we/wy w odpowiedzi na wywołanie sterownika wyświetlania trybu użytkownika do funkcji MiracastIoControl.
DXGKDDI_MIRACAST_QUERY_CAPS Zapytuje o możliwości Miracast obecnego adaptera wyświetlania. System operacyjny wywołuje tę funkcję tylko wtedy, gdy karta wyświetlania jest uruchomiona, a następnie przechowuje zwracane możliwości.

Te struktury i wyliczenia w trybie jądra obsługują wyświetlacze Miracast i zostały wprowadzone jako nowe lub zaktualizowane dla Windows 8.1.