1.7 Versioning and Capability Negotiation
Supported Transports: This protocol is be implemented on top of TCP/UDP as specified in the Miracast v1.1 specification [WF-DTS1.1].
Capability Negotiation: This extension performs explicit capability negation in the M3 capabilities message as defined in the Miracast protocol.
A new optional RTSP parameter 'microsoft_cursor' is used to query for hardware cursor support and capabilities. The following is the ABNF format for the response from the sink to the microsoft_cursor using the GET_PARAMETER command as specified in [WF-DTS1.1] section 6.2.2.
microsoft-cursor = "none" / sink-cursor-caps ; "none" means the sink does not support this hardware cursor extension ; otherwise it is assumed that the sink can support per pixel 8bit ; alpha blending of hardware cursor. sink-cursor-caps = xor-support SP x-max SP y-max SP port xor-support = "none" / "full" ; "none" means the sink does not support XOR blending operations at ; all, "full" indicates the sink can perform the XOR blending ; operations. x-max = 4HEXDIG ; the maximum width of the cursor the sink supports in pixels, the sink ; supports this width for all cursor formats. y-max = 4HEXDIG ; the maximum height of the cursor the sink supports in pixels, the ; sink supports this height for all cursor formats. port = 4HEXDIG ; this is the UDP port to which the source sends the mouse cursor ; position and shape changes.
In the case that a device supports Intel Fast Cursor as well, the following information also applies. A new optional RTSP parameter 'intel_fast_cursor' is used to query for Intel Fast Cursor support and capabilities. The following is the ABNF format for the response from the sink to the intel_fast_cursor using the GET_PARAMTETER command, as specified in [WF-DTS1.1] section 6.2.2.
intel-fast-cursor = "intel_fast_cursor:" SP "port=" fast-cursor-port fast-cursor-port = IPPORT
Fast cursor ports are a value from the port range (49152 to 65535) with the exception of older Intel WiDi devices that can only support fast cursor messages on port 1232.
Note that a sink that supports the Intel Fast Cursor extension ignores a fast cursor message if: (1) it does not conform to the ABNF rules; (2) the x parameter is equal to or greater than the width parameter; (3) the y parameter is equal to or greater than the height parameter; or (4) the sink has transmitted a UIBC packet within the previous 100ms. If a sink receives a fast cursor message containing the current-position ABNF rule, the sink displays a locally rendered cursor at the indicated location. If a sink receives a fast cursor message containing the hidden ABNF rule (see section 2.2.2), the sink does not display any locally rendered cursors. If it has been more than 100ms since a fast cursor message was received, a sink does not display any locally rendered cursors.