Supporto della visualizzazione wireless Miracast
Il supporto per lo standard di visualizzazione wireless Miracast è stato introdotto in Windows 8.1 (WDDM 1.3).
Supporto di Miracast a partire da Windows 10
A partire da Windows 10 (WDDM 2.0), il sistema operativo viene fornito con uno stack Miracast predefinito che può funzionare su qualsiasi GPU. Per informazioni sullo stack Microsoft Miracast e sui requisiti dei driver e dell'hardware per supportare le visualizzazioni Miracast a partire da Windows 10, vedere la documentazione seguente:
Creazione di soluzioni di proiezione wireless di alta qualità con Windows 10
Documentazione di WHLK pertinente in Device.Graphics.WDDM13.DisplayRender.WirelessDisplay
Gli sviluppatori di driver non devono più implementare uno stack Miracast personalizzato. Microsoft potrebbe rimuovere il supporto per gli stack Miracast personalizzati in una versione futura di Windows.
Supporto di Miracast in Windows 8.1
I driver WDDM 1.3 potrebbero facoltativamente supportare Miracast tramite le DDI Miracast fornite in Windows 8.1. Il resto di questo articolo e gli articoli correlati descrivono come fornire tale supporto.
Interfacce del driver di dispositivo in modalità utente (DDI)
Funzioni di callback di visualizzazione wireless chiamate dai driver in modalità utente Miracast
Nella tabella seguente sono elencate le funzioni in modalità utente Miracast (Wireless Display) implementate dal sistema operativo. Solo i driver in modalità utente miracast di Windows 8.1 possono chiamare queste funzioni. I puntatori alle funzioni di callback di visualizzazione Miracast vengono restituiti in una struttura MIRACAST_CALLBACKS .
Funzione | Descrizione |
---|---|
PFN_GET_NEXT_CHUNK_DATA | Fornisce informazioni sul successivo blocco di codifica Miracast segnalato al sottosistema kernel della grafica DirectX quando il tipo di interrupt DXGK_INTERRUPT_TYPE è DXGK_INTERRUPT_MIRACAST_CHUNK_PROCESSING_COMPLETE. |
PFN_MIRACAST_IO_CONTROL | Chiamato dal driver di visualizzazione in modalità utente per inviare il driver miniport in modalità kernel a una richiesta di controllo I/O sincrono. |
PFN_REGISTER_DATARATE_NOTIFICATIONS | Chiamato dal driver in modalità utente per registrarsi con il sistema operativo per ricevere notifiche di qualità del servizio (QoS) di rete e la larghezza di banda di rete corrente della connessione Miracast. |
PFN_REPORT_SESSION_STATUS | Chiamato dal driver di visualizzazione in modalità utente per segnalare lo stato della sessione connessa Miracast corrente. |
PFN_REPORT_STATISTIC | Chiamato dal driver di visualizzazione in modalità utente per segnalare le statistiche del collegamento Miracast al sistema operativo. |
Funzioni di visualizzazione wireless implementate dai driver in modalità utente Miracast di Windows 8.1
Nella tabella seguente sono elencate le funzioni di visualizzazione wireless (Miracast) che devono essere implementate da un driver miracast in modalità utente di Windows 8.1. Questo tipo di driver viene eseguito in una DLL autonoma.
In risposta a una chiamata del sistema operativo alla funzione QueryMiracastDriverInterface , il driver miracast in modalità utente deve fornire puntatori a queste funzioni nella struttura MIRACAST_DRIVER_INTERFACE . L'eccezione è pfnDataRateNotify, che ha un puntatore dichiarato in RegisterForDataRateNotifications.
Funzione | Descrizione |
---|---|
PFN_CREATE_MIRACAST_CONTEXT | Chiamato dal sistema operativo per creare un contesto Miracast in modalità utente. |
PFN_DESTROY_MIRACAST_CONTEXT | Chiamato dal sistema operativo per distruggere un contesto Miracast in modalità utente. |
PFN_HANDLE_KMD_MESSAGE | Chiamato dal sistema operativo per gestire il messaggio asincrono in modalità kernel che il driver miracast in modalità utente riceve quando il driver miniport di visualizzazione chiama la funzione DxgkCbMiracastSendMessage . |
PFN_DATARATE_NOTIFICATION | Chiamato dal sistema operativo per notificare al driver miracast in modalità utente che la velocità in bit del collegamento di rete Miracast è cambiata. Questa funzione viene registrata nel sistema operativo quando viene chiamata la funzione RegisterForDataRateNotifications . |
QUERY_MIRACAST_DRIVER_INTERFACE | Chiamato dal sistema operativo per eseguire una query sull'interfaccia del driver miracast in modalità utente, MIRACAST_DRIVER_INTERFACE. |
PFN_START_MIRACAST_SESSION | Chiamato dal sistema operativo per avviare una sessione connessa Miracast. |
PFN_STOP_MIRACAST_SESSION | Chiamato dal sistema operativo per avviare una sessione connessa Miracast avviata in precedenza da una chiamata alla funzione StartMiracastSession . |
Strutture ed enumerazioni correlate
Nella tabella seguente sono elencate le strutture e le enumerazioni in modalità utente usate con le interfacce del driver di dispositivo di visualizzazione Miracast di Windows 8.1.
Struct/Enumerazione | Descrizione |
---|---|
MIRACAST_CALLBACKS | Contiene puntatori alle funzioni di callback di runtime Miracast (Wireless Display) che il driver miracast in modalità utente può chiamare. |
MIRACAST_CHUNK_DATA | Contiene dati di blocco di codifica da usare quando un driver in modalità utente chiama la funzione GetNextChunkData (Display Wireless) (Miracast). |
MIRACAST_CHUNK_ID | Archivia le informazioni che identificano un blocco di codifica Miracast (Wireless Display). |
MIRACAST_CHUNK_INFO | Contiene informazioni su un blocco di codifica Miracast (Wireless Display) specificato. |
MIRACAST_CHUNK_TYPE | Specifica i tipi di informazioni di blocco di visualizzazione wireless (Miracast) da elaborare. |
MIRACAST_DATARATE_STATS | Contiene informazioni usate nella funzione pfnDataRateNotify (Miracast) sulla velocità di bit del codificatore audio/video e sui fotogrammi Wi-Fi non riusciti o ripetuti. |
MIRACAST_DRIVER_INTERFACE | Contiene puntatori alle funzioni di visualizzazione wireless (Miracast) implementate dal driver in modalità utente Miracast. |
MIRACAST_PROTOCOL_EVENT | Specifica i tipi di evento di protocollo Miracast (Wireless Display) che il driver di visualizzazione in modalità utente deve segnalare. |
MIRACAST_SESSION_INFO | Contiene informazioni su una sessione connessa Miracast (Wireless Display). |
MIRACAST_STATISTIC_DATA | Contiene i dati delle statistiche Miracast segnalati dal driver in modalità utente al sistema operativo.Contains Miracast statistics data that the user-mode display driver reports to the operating system. |
MIRACAST_STATISTIC_TYPE | Specifica i tipi di dati delle statistiche Miracast generati dal driver di visualizzazione in modalità utente. |
MIRACAST_STATUS | Specifica i tipi di stato usati dal driver di visualizzazione in modalità utente per segnalare lo stato della connessione Miracast. |
MIRACAST_WFD_CONNECTION_STATS | Contiene informazioni sulla velocità in bit sulla connessione Wi-Fi Diretta. |
Le strutture e le enumerazioni in modalità utente seguenti supportano le visualizzazioni Miracast e sono state nuove o aggiornate per Windows 8.1:
- DISPLAYCONFIG_TARGET_BASE_TYPE (nuovo)
- DISPLAYCONFIG_VIDEO_SIGNAL_INFO (struttura figlio AdditionalSignalInfo aggiunta)
- DISPLAYCONFIG_DEVICE_INFO_TYPE (costante DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_BASE_TYPE aggiunta)
- D3DKMDT_VIDEO_SIGNAL_INFO (aggiunta della struttura figlio AdditionalSignalInfo)
- DISPLAYCONFIG_DEVICE_INFO_TYPE (costante DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_BASE_TYPE aggiunta)
DDI in modalità kernel
Interfaccia di callback dello schermo wireless (Miracast)
L'interfaccia di callback di visualizzazione Miracast contiene funzioni implementate dal sottosistema kernel della grafica DirectX per supportare la visualizzazione wireless (Miracast) in Windows 8.1.
La tabella seguente elenca queste funzioni in modalità kernel, chiamate dai driver miniport WDDM 1.3:
Funzione | Descrizione |
---|---|
DXGKCB_MIRACAST_SEND_MESSAGE | Invia un messaggio asincrono al driver di visualizzazione in modalità utente. |
DXGKCB_MIRACAST_SEND_MESSAGE_CALLBACK | Chiamato in modalità kernel quando il messaggio inviato al driver in modalità utente con una chiamata alla funzione DxgkCbMiracastSendMessage viene completato o annullato. |
DXGKCB_MIRACAST_REPORT_CHUNK_INFO | Chiamato dal driver miniport di visualizzazione per segnalare informazioni su un blocco di codifica. |
Il driver miniport di visualizzazione deve compilare puntatori a queste funzioni nella struttura DXGK_MIRACAST_DISPLAY_CALLBACKS .
Interfaccia di visualizzazione wireless (Miracast)
La tabella seguente elenca le funzioni in modalità kernel che visualizzano i driver miniport implementati per supportare la visualizzazione wireless (Miracast) in Windows 8.1. I puntatori alle funzioni di interfaccia Miracast vengono restituiti in una struttura DXGK_MIRACAST_INTERFACE .
Funzione | Descrizione |
---|---|
DXGKCB_MIRACAST_SEND_MESSAGE_CALLBACK | Chiamato in modalità kernel quando il messaggio inviato al driver in modalità utente con una chiamata alla funzione DxgkCbMiracastSendMessage viene completato o annullato. |
DXGKDDI_MIRACAST_CREATE_CONTEXT | Crea un contesto in modalità kernel per un dispositivo Miracast. |
DXGKDDI_MIRACAST_DESTROY_CONTEXT | Elimina definitivamente un'istanza di un dispositivo Miracast. |
DXGKDDI_MIRACAST_HANDLE_IO_CONTROL | Chiamato dal sistema operativo per richiedere che il driver miniport di visualizzazione elabori una richiesta di controllo I/O sincrona in risposta a una chiamata del driver di visualizzazione in modalità utente alla funzione MiracastIoControl. |
DXGKDDI_MIRACAST_QUERY_CAPS | Esegue una query sulle funzionalità Miracast della scheda di visualizzazione corrente. Il sistema operativo chiama questa funzione solo quando la scheda di visualizzazione viene avviata per la prima volta e quindi archivia le funzionalità restituite. |
Queste strutture in modalità kernel e le enumerazioni supportano le visualizzazioni Miracast e sono state nuove o aggiornate per Windows 8.1:
- DXGK_MIRACAST_CAPS
- D3DKMDT_VIDEO_OUTPUT_TECHNOLOGY (D3DKMDT_VOT_MIRACAST costante aggiunta)
- D3DKMDT_VIDEO_SIGNAL_INFO (aggiunta della struttura figlio AdditionalSignalInfo)
- DXGK_CHILD_STATUS (struttura figlio Miracast aggiunta)
- DXGK_CHILD_STATUS_TYPE (costante StatusMiracast aggiunta)
- DXGKARGCB_NOTIFY_INTERRUPT_DATA (aggiunta della struttura figlio MiracastEncodeChunkCompleted)
Articoli correlati per i driver Miracast di Windows 8.1
- WDDM 1.3 visualizza le attività del driver miniport per supportare i display wireless Miracast
- Attività driver in modalità utente WDDM 1.3 Miracast per supportare le visualizzazioni wireless Miracast
- Creazione di report di blocchi e statistiche di codifica Miracast
- Chiamata di funzioni DisplayConfig per una destinazione Miracast