Windows 10 provides a seamless wireless projection experience. As you are building your part of the wireless projection solution it is important to understand what that functionality includes.

The Windows 10 Wireless Projection User Interface

First and foremost, Windows provides a native connection experience that allows a user to connect to a wireless receiver. A connection to a wireless receiver can be made in several ways:

  • Through the Action Center. In the Action Center (Figure 1), click the Connect Quick Action.
  • Using a hotkey. Select the Windows logo key+ K (Figure 2).
  • With the Device Picker UI. Windows Apps that support casting contain a device picker UI, such as the Cast to device feature in the Windows Movie & TV App (Figure 3) or the Edge browser.

Windows 10 supports and manages two different methods for creating a wireless projection stream. Both methods are handled behind the scenes by Windows and leverage the exact same UI shown above.

Wireless Projection using Miracast

Support for Miracast has been present since the first Windows 10 version, and since that time Windows investments in Miracast as a projection experience have only increased.

Wireless Projection over Miracast offers several benefits:

  • A simple connection experience that allows a user to find and connect to Miracast receivers.
  • Implementation of the Miracast standard to ensure interoperability with hundreds of millions of Miracast devices.
  • A native RTSP stack fine-tuned to work for Miracast, requiring no additional software is required outside the Windows 10 OS.
  • Support for UIBC (User Input Back Channel), which allows inputs from the Miracast receiver (touch, stylus, mouse, keyboard and gamepad) to control the Miracast sender, if—and only if—the user explicitly allows this.
  • High quality interoperability with industry leading Microsoft Miracast receivers (Microsoft Wireless Display Adapter) as well as leading 3rd party Miracast receivers.
  • Support for the projection of Protected Content (if HDCP keys are present).
  • Support for the use of a PIN based pairing when connecting to a Miracast receiver.
  • Persistent profiles, remembering if you have connected to a specific Miracast receiver in the past. The ability to remember a profile for reconnecting to a Miracast receiver reduces the time it takes to connect on subsequent connections.
  • Support for Miracast extensions that enable additional capabilities, dramatically improving the Miracast experience.

Wireless Projection over an existing Wi-Fi network

It has been observed that in 90% of cases, when a User starts a Wireless Projection stream, the device they are using is already connected to an existing Wi-Fi network, either in a home or a business. In response to this, Microsoft has extended the ability to send a Miracast stream over a local network rather than over a direct wireless link in the Windows 10 Creators Update.

Wireless Projection over an existing Wi-Fi network offers several benefits:

  • This solution leverages an existing connection which can significantly reduce the time it takes to project content.
  • The PC does not need to manage two simultaneous connections (a Wi-Fi connection and a Wi-Fi Direct connection to the receiver), each of which would only get half the maximum bandwidth.
  • Using an existing connection simplifies the work that the wireless device needs to perform, which both increases reliability and provides a very stable stream.
  • The user does not have to change how they connect to a receiver because they use the same UX (as is shown in Figures 2-4).
  • Windows will only choose to project over an existing connection if the connection is trusted, either over an Ethernet or a secure Wi-Fi network.
  • There are no required changes to the wireless drivers or hardware on a PC.
  • This also works well with older wireless hardware that is not optimized for Miracast over Wi-Fi Direct.
  • Windows automatically detects when a receiver supports this functionality and will send the video stream over the existing network path when applicable.