User input back channel for wireless displays
First Claim
Patent Images
1. A method of transmitting user input data from a wireless sink device to a wireless source device, the method comprising:
- outputting, by the wireless sink device and for display, video data received from the wireless source device;
obtaining, by the wireless sink device and from an external device, user input data captured while a particular frame of the video data is displayed;
generating, by the wireless sink device, a data packet header for a data packet, wherein the data packet header includes;
a three-bit version field that indicates a version of a communication protocol;
an eight-bit reserved field;
a four-bit input category field;
a sixteen-bit length field that indicates a length of the data packet; and
a timestamp flag that indicates whether or not the data packet header includes a sixteen-bit timestamp field;
including, by the wireless sink device and where the timestamp flag indicates that the data packet header includes the timestamp field, a representation of a timestamp of the particular frame of video data in the timestamp field of the data packet header;
generating, by the wireless sink device, payload data comprising the user input data;
generating, by the wireless sink device, the data packet comprising the data packet header and the payload data; and
transmitting, by the wireless sink device, the data packet to the wireless source device.
1 Assignment
0 Petitions
Accused Products
Abstract
As part of a communication session, a wireless source device can transmit audio and video data to a wireless sink device, and the wireless sink device can transmit user input data received at the wireless sink device back to the wireless source device. In this manner, a user of the wireless sink device can control the wireless source device and control the content that is being transmitted from the wireless source device to the wireless sink device. The user input data transmitted by the wireless sink device can be input data obtained at a third party device and forwarded to the wireless source device.
-
Citations
57 Claims
-
1. A method of transmitting user input data from a wireless sink device to a wireless source device, the method comprising:
-
outputting, by the wireless sink device and for display, video data received from the wireless source device; obtaining, by the wireless sink device and from an external device, user input data captured while a particular frame of the video data is displayed; generating, by the wireless sink device, a data packet header for a data packet, wherein the data packet header includes; a three-bit version field that indicates a version of a communication protocol; an eight-bit reserved field; a four-bit input category field; a sixteen-bit length field that indicates a length of the data packet; and a timestamp flag that indicates whether or not the data packet header includes a sixteen-bit timestamp field; including, by the wireless sink device and where the timestamp flag indicates that the data packet header includes the timestamp field, a representation of a timestamp of the particular frame of video data in the timestamp field of the data packet header; generating, by the wireless sink device, payload data comprising the user input data; generating, by the wireless sink device, the data packet comprising the data packet header and the payload data; and transmitting, by the wireless sink device, the data packet to the wireless source device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A wireless sink device configured to transmit user input data to a wireless source device, the wireless sink device comprising:
-
a memory; one or more processors; and
at least one module executable by the one or more processors to;output, for display, video data received from the wireless source device; obtain, from an external device, user input data captured while a particular frame of the video data is displayed; generate a data packet header for a data packet, wherein the data packet header includes; a three-bit version field that indicates a version of a communication protocol; an eight-bit reserved field; a four-bit input category field; a sixteen-bit length field that indicates a length of the data packet; and a timestamp flag that indicates whether or not the data packet header includes a sixteen-bit timestamp field; include, where the timestamp flag indicates that the data packet header includes the timestamp field, a representation of a timestamp of the particular frame of video data in the timestamp field of the data packet header; generate payload data comprising the user input data; generate the data packet comprising the data packet header and the payload data; and transmit, to the wireless source device, the data packet. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A non-transitory computer-readable storage medium storing instructions that upon execution by one or more processors cause the one or more processors to perform a method of transmitting user input data from a wireless sink device to a wireless source device, the method comprising:
-
outputting, for display, video data received from the wireless source device; obtaining, from an external device, user input data captured while a particular frame of the video data is displayed; generating a data packet header for a data packet, wherein the data packet header includes; a three-bit version field that indicates a version of a communication protocol; an eight-bit reserved field; a four-bit input category field; a sixteen-bit length field that indicates a length of the data packet; and a timestamp flag that indicates whether or not the data packet header includes a sixteen-bit timestamp field; including, where the timestamp flag indicates that the data packet header includes the timestamp field, a representation of a timestamp of the particular frame of video data in the timestamp field of the data packet header; generating payload data comprising the user input data; generating the data packet comprising the data packet header and the payload data; and transmitting the data packet to the wireless source device.
-
-
31. A wireless sink device configured to transmit user input data to a wireless source device, the wireless sink device comprising:
-
means for outputting, for display, video data received from the wireless source device; means for obtaining, from an external device, user input data captured while a particular frame of the video data is displayed; means for generating a data packet header, wherein the data packet header includes; a three-bit version field that indicates a version of a communication protocol; an eight-bit reserved field; a four-bit input category field; a sixteen-bit length field that indicates a length of the data packet; and a timestamp flag that indicates whether or not the data packet header includes a sixteen-bit timestamp field; means for including a representation of a timestamp of the particular frame of video data in the timestamp field of the data packet header in response to the timestamp flag indicating that the data packet header includes the timestamp field; means for generating payload data comprising the user input data; means for generating the data packet comprising the data packet header and the payload data; and means for transmitting the data packet to the wireless source device.
-
-
32. A method of receiving user input data from a wireless sink device at a wireless source device, the method comprising:
-
outputting, by the wireless source device and to the wireless sink device, video data; receiving, by the wireless source device, a data packet comprising a data packet header and payload data from the wireless sink device; parsing the data packet header for; a three-bit version field that indicates a version of a communication protocol; a four-bit input category field that identifies an input category of a user input command represented by the payload data; a sixteen-bit length field that indicates a length of the data packet; and a timestamp flag that indicates whether or not the data packet header includes a timestamp field; in response to the timestamp flag indicating that the data packet header does include the timestamp field, parsing the data packet header to identify, based on a representation of a timestamp included in the timestamp field, a frame of the video data that was displayed while the user input command was captured, wherein the data packet header includes an eight-bit reserved field; and processing the payload data based on the identified frame of the video data. - View Dependent Claims (33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43)
-
-
44. A wireless source device configured to receive user input data from a wireless sink device, the wireless source device comprising:
-
a transport unit configured to receive a data packet comprising a data packet header and payload data from a wireless sink device; a memory; one or more processors;
at least one module executable by the one or more processors to;output, to a wireless sink device, video data; receive, from wireless sink device, a data packet comprising a data packet header and payload data; parse the data packet header for; a three-bit version field that indicates a version of a communication protocol; a four-bit input category field that identifies an input category of a user input command represented by the payload data; a sixteen-bit length field that indicates a length of the data packet; and a timestamp flag that indicates whether or not the data packet header includes a timestamp field; in response to the timestamp flag indicating that the data packet header does include the timestamp field, parse the data packet header to identify, based on a representation of a timestamp included in the timestamp field, a frame of the video data that was displayed while the user input command was captured, wherein the data packet header includes an eight-bit reserved field; and process the payload data based on the identified frame of the video data. - View Dependent Claims (45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55)
-
-
56. A non-transitory computer-readable storage medium storing instructions that upon execution by one or more processors cause the one or more processors to perform a method of receiving user input data from a wireless sink device at a wireless source device, the method comprising:
-
outputting, to the wireless sink device, video data; receiving, from the wireless sink device, a data packet comprising a data packet header and payload data; parsing the data packet header for; a three-bit version field that indicates a version of a communication protocol; a four-bit input category field that identifies an input category of a user input command represented by the payload data; a sixteen-bit length field that indicates a length of the data packet; and a timestamp flag that indicates whether or not the data packet header includes a timestamp field; in response to the timestamp flag indicating that the data packet header does include the timestamp field, parsing the data packet header to identify, based on a representation of a timestamp included in the timestamp field, a frame of the video data that was displayed while the user input command was captured, wherein the data packet header includes an eight-bit reserved field; and processing the payload data based on the identified frame of the video data.
-
-
57. A wireless source device configured to receive user input data from a wireless sink device, the wireless source device comprising:
-
means for outputting, by the wireless source device and to the wireless sink device, video data; means for receiving, from the wireless sink device, a data packet comprising a data packet header and payload data; means for parsing the data packet header for; a three-bit version field that indicates a version of a communication protocol; a four-bit input category field that identifies an input category of a user input command represented by the payload data; a sixteen-bit length field that indicates a length of the data packet; and a timestamp flag that indicates whether or not the data packet header includes a timestamp field; means for parsing, in response to the timestamp flag indicating that the data packet header does include the timestamp field, the data packet header to identify, based on a representation of a timestamp included in the timestamp field, a frame of the video data that was displayed while the user input command was captured, wherein the data packet header includes an eight-bit reserved field; and means for processing the payload data based on the identified frame of the video data.
-
Specification