Abstract: A wireless computer that pairs with a remote audio video presentation device such as a television. As a result of the pairing a communication channel is established for the computer to transmit audio video content for presentation through that device. Additionally as part of the pairing the computer and remote device select a side channel for communication of user commands. The wireless computer may display a user interface through which a user may input commands that control the manner in which the remote audio video device presents the content. As a result a user may use the wireless computer as a remote control for the audio video device controlling both the content presented and the manner in which it is presented. The side channel may use different frequencies than the channel used to communicate audio video content and may use very low power at frequencies in the digital TV spectrum.
DIRECT CONNECTION WITH SIDE CHANNEL CONTROL
BACKGROUND
[0001] Many computers today have radios to support wireless communication.
Wireless communications are used, for example, to connect to access points. By
associating with the access point, a wireless computer can access a network, such as the
Internet, to which the access point is coupled. As a result, the wireless computer can
access any device that is also connected to the network.
[0002] To enable computers to be configured for association with an access point,
it is common for the access points to operate according to a standard. A common standard
for devices that connect to access points is called Wi-Fi. There are multiple versions of
this standard, but any of them can be used to support connections through access points.
[0003] Wireless communications may also be used to form connections directly
to other devices without using an access point. These connections are sometimes called
"peer-to-peer" connections and may be used, for example, to allow a computer to
wirelessly connect to a mouse or keyboard. Wireless communications for these direct
connections also have been standardized. A common standard for such wireless
communications is called BLUETOOTH®.
[0004] In some instances, a wireless computer may concurrently connect to other
devices through an access point and as part of a group engaging in peer-to-peer
communications. In fact, some computers have multiple radios to support such concurrent
communication. More recently a standard has been proposed, called Wi-Fi Direct Access,
that would enable both an infrastructure connection and communication as part of a peerto-
peer group. This standard, published by the Wi-Fi Alliance, extends the popular Wi-Fi
communications standard for infrastructure-based communications to support direct
connections.
[0005] Equipping computing devices to support direct connections is expected to
expand the scenarios in which a wireless computing device can connect to other wireless
devices. For example, computer users working together may more readily form a group
that allows the users to share data. Similarly, a computer may more readily connect
wirelessly to a printer or devices providing other desired services.
SUMMARY
[0006] An enhanced experience for a user of a wireless computing device is
provided by equipping the computing device to, with minimal user interaction, use a
remote audio-video presentation device as an output source for the computing device. For
example, a computing device may use a wireless television as display to present the
desktop of the computing device, a movie or other audio-video content available on the
computing device.
[0007] To use the remote presentation device, the computing device may form
two wireless connections with the remote presentation device. One connection may serve
as an audio-video channel, supporting the streaming of audio-video content to the display
device. A second channel may act as a side channel, transmitting commands to the remote
presentation device that control the presentation of the audio-video content. The audiovideo
content may be generated by a component on the computing device, such as a media
control application or a utility of the operating system. That component, or other suitable
component, may receive user inputs and generate commands to control presentation of the
audio-video content on the audio-video presentation device. These commands may
control aspects of the audio-video device, such as the volume of the audio portion or the
size and positioning of a video portion of the audio-video content.
[0008] Any suitable transports may be used to form these connections. In some
embodiments, the audio-video channel may be implemented as a direct wireless
connection using a protocol as is known in the art for peer-to-peer communication
between a computing device a remote device. The connection for the side channel may be
formed over the same or different transport. For example, the side channel may be formed
as a wireless connection through an access point that establishes a local network to which
both the computing device and remote display device are connected. Though, an infrared
link or other transport providing near field communication may be used.
[0009] In some embodiments, the side channel may be formed using low power
transmission in a licensed spectrum, such as the digital TV spectrum. The power of the
transmissions may be low enough to avoid causing interference with receivers that may be
in the vicinity of the computing device. Signal processing techniques may be used to
enhance the effective signal level of signals in the side channel. For example, the signal
may be transmitted at a low bit rate, with a low error control coding rate and/or with
spread spectrum modulation.
[0010] In operation, the computing device and the remote presentation device
may exchange communications that allow mutual identification of the same transport for
the side channel and possibly values of other parameters used to set up the audio-video
channel and side channel. This setup information may be stored such that, in response to
user input, the appropriate connections can be quickly re-established.
[0011] The foregoing is a non-limiting summary of the invention, which is
defined by the attached claims.
BRIEF DESCRIPTION OF DRAWINGS
[0012] The accompanying drawings are not intended to be drawn to scale. In the
drawings, each identical or nearly identical component that is illustrated in various figures
is represented by a like numeral. For purposes of clarity, not every component may be
labeled in every drawing. In the drawings:
[0013] FIG. 1 is a sketch representing an exemplary environment in which
embodiments of the invention may operate;
[0014] FIG. 2 is a simplified block diagram of a computing device according to
some exemplary embodiments of the invention;
[0015] FIG. 3 is a sketch of a graphical user interface provided by an application
executing on the computing device of FIG. 2;
[0016] FIG. 4 is a sketch of a further graphical user interface that may be
presented by the computing device of FIG. 2;
[0017] FIG. 5 is a sketch of an environment in which an alternative embodiment
of the invention may operation;
[0018] FIG. 6 is a flow chart of an exemplary method of operating a computing
device according to some embodiments of the invention;
[0019] FIG. 7 is a flow chart of an alternative method of operation of a
computing device;
[0020] FIG. 8 is a sketch of an environment in which a further alternative
embodiment of the invention may operate;
[0021] FIG. 9 is a sketch representing signals within the digital TV spectrum
according to some exemplary embodiments of the invention; and
[0022] FIG. 10 is a functional block diagram of a computing device that may be
used in implementing some embodiments of the invention.
DETAILED DESCRIPTION
[0023] The inventors have recognized and appreciated that an enhanced user
experience for a user of a wireless computing device may be provided by equipping the
computing device to use available presentation devices for the presentation of audio-video
content. To support such use, the computing device may be configured to form a first
wireless link with an appropriate remote presentation device that can be used to carry data
representing audio-video content. A second link may be used as a control channel to send
presentation commands. Such commands may control aspects of the presentation of the
audio-video content.
[0024] This audio-video content may be any suitable content and may be
obtained from any suitable source. For example, the audio-video content may be audio
only, representing music or a reading of a book. Alternatively, the audio-video content
may be visual only, representing photographs, a presentation or images of a desktop of the
computing device. Though, the audio-video content may be multi-media content,
containing both audio and video components. For example, the content may represent a
movie or a television program.
[0025] The computing device may be configured in any suitable way to obtain
and provide a stream of data and commands relating to the presentation of the audio-video
content. One or more other components may control the generation of a stream of data
representing audio-video content. These components may also interface with the user to
obtain inputs representing commands and generate data for transmission representing the
commands. These components may be user mode components, such as a media control
application. Though, the components may be within the operating system. A component
in the operating system may be controlled to transmit to the remote presentation device
content representing the desktop of the computing device, or some part of it, such as an
active window, regardless of the application or applications that generated the content.
[0026] The computing device may contain components within the operating
system that control one or more radios of the computing device to form links for the
audio-video channel and the side channel. Any suitable transport or transports may be
used to form the channel and side channel.
[0027] In some embodiments, a computing device and a presentation device may
each support multiple transports. The devices may perform a discovery and negotiation
process to select a mutually supported transport and ensure that the devices can
communicate effectively. Though, in some embodiments, set up information may be
stored for a pair of devices such that the devices can quickly establish an audio-video
channel and a side channel.
[0028] In some embodiments, the audio-video channel may be formed using a
Wi-Fi Direct Access peer-to-peer connection, or other suitable peer-to-peer connection.
The side channel may be formed using Wi-Fi Direct access if the computing device
supports such a connection. Though, other transports may be used for the side channel.
For example, the side channel may be formed over a BLUETOOTH® link or a link in
other suitable peer-to-peer protocol. Other embodiments may alternatively or additionally
support communication over an IR link or other link using near field communication. The
digital TV spectrum may also be used, with transmission limited to white spaces in the
spectrum or done at such a lower power level that interference is avoided. Though, these
are just examples of transports that may be used and any suitable transport may be used.
[0029] These capabilities may enhance the user experience by supporting many
desirable user experiences. For example, a user may enter a room and show a movie on
television in the room without any advance setup.
[0030] FIG. 1 illustrates an environment in which a computing device may be
used to control presentation of audio-video information on a presentation device. In the
example of FIG. 1, the computing device is represented as computing device 120, which in
this example has a slate form factor. Computing device 120 is being operated by a user
122. Computing device 120 is configured to control the presentation of audio-video
information through a presentation device, which in this example is represented by
television 130.
[0031] Computing device 120 may be configured with an application that streams
audio-video content data through a first channel, here represented as audio-video channel
132. An application on computing device 120 may additionally transmit commands to
television 130 through a side channel 134. The audio-video content data may be a movie
or other multi media content. Though, the specific audio-video content streamed to
television 130 is not critical to the invention.
[0032] Command data transmitted over side channel 134 also may be in any
suitable form. The command data, for example, may control the volume or other audio
characteristic of the presentation of the audio-video content data. Alternatively or
additionally, the commands transmitted through side channel 134 may control one or more
visual characteristics of the presentation of the audio-video data, such as the brightness of
the display on TV 130. Though, it should be appreciated that the specific commands
transmitted through side channel 134 may depend on the types of commands that
television 130 is configured to process. For example, if television 130 is configured to
respond to a command that freezes the display, such a command may be transmitted in
side channel 134.
[0033] The specific frequencies used for audio-video channel 132 and side
channel 134 are not critical to the invention. Similarly, the protocols and other parameters
of communication in the audio-video channel 132 and side channel 134 are not critical to
the invention. Though, in some embodiments, the side channel 134 may be formed over a
different frequency spectrum and may use a different protocol and other transmission
parameters than audio-video channel 132. As a specific example, audio-video channel
132 may be a channel formed in the industrial, scientific and medical (ISM) radio band or
in the unlicensed national information infrastructure (UNII) band.
[0034] As a specific example, audio-video channel 132 may transmit over
frequencies specified in a Wi-Fi standard. In this example, computing device 120 may
form a direct connection, using the Wi-Fi direct protocol. In such a scenario, computing
device 120 may be configured as a group owner in accordance with the Wi-Fi direct
standard and television 130 may be equipped with a wireless receiver and associated
controller that forms a Wi-Fi direct group as a client of computing device 120. Such a
controller within television 130 may then receive audio-video content over audio-video
channel 132 and pass that data to the components within television 130 that present the
audio-video content on a screen of the television and through speakers coupled to
television 130.
[0035] As an example of a suitable frequency spectrum and suitable protocol for
side channel 134, if computing device 120 is equipped with an infrared transmitter, side
channel 134 may be formed using infrared frequencies. In such a scenario, television 130
may be equipped with an IR receiver, such as is known in the art for receiving signals
from remote control devices. In such a scenario, communications over side channel 134
may be formatted using protocols as are known in the art for remote control devices for
televisions.
Though, it should be appreciated that other frequencies and other protocols may
alternatively or additionally be employed. For example, many computing devices are
equipped with a BLUETOOTH ® radio. If television 130 is similarly equipped with a
BLUETOOTH ®radio, side channel 134 may be formed as a BLUETOOTH ® peer-to-peer
connection. As a further example of a possible alternative, low power communications
may be used to form the side channel. As illustrated in FIG. 1, control of television 130
may be performed while computing device 120 is in the same room 110 as television 130.
Accordingly, the distance between computing device 120 and television 130 may be
relatively small. The data rate of communications between computing device 120 and
television 130 for commands may be relatively low, such as 56K bits per second or less.
In some embodiments, the data rate may be 32K bits per second or less. Consequently,
error control coding with a very low coding rate may be used such that very low power
may be used for transmission in side channel 134. As a result, even low power
transmission techniques, such as proximity technologies including NFC, Transfer Jet and
Felica may be used.
[0036] Moreover, frequency spectra used for purposes other than peer-to-peer
communication, because the requirement for transmit power may be relatively low, may
also be used without creating unacceptable interference for other devices using those
frequencies. As a specific example, side channel 134 may be formed in the digital TV
spectrum. Such transmission may be made at low power to avoid causing interference.
[0037] Though, it is not a requirement that very low power transmissions be used
for forming side channel 134. As an alternative, side channel 134 may be formed using
the same frequency spectrum used to form audio-video channel 132. In the example of
FIG. 1 in which audio-video channel 132 is formed in a spectrum ranging from
approximately 2.4 GHz to 5 GHz, side channel 134 may be similarly based on
transmissions in that frequency range.
[0038] Given the range of possible transports for forming side channel 134, in
some embodiments, computing device 120 and/or television 130 may support multiple
transports that may be used to form side channel 134. In such a scenario, computing
device 120 and television 130 may exchange communications to negotiate a specific
transport, such as a frequency and/or protocol for forming side channel 134. In the
embodiment in which audio-video channel 132 is formed using a peer-to-peer protocol
that involves a pairing ceremony, parameters defining side channel 134 may be negotiated
as part of that pairing ceremony.
[0039] Though, regardless of the specific mechanism by which audio-video
channel 132 and side channel 134 are formed, once formed, user 122 may control both the
content and presentation parameters of television 130 through a user interface on
computing device 120. The specific audio-video content streamed from computing device
120 may therefore be selected by user 122 interacting with computing device 120. The
specific audio-video content selected and the source of that content is not critical to the
invention. However, FIG. 1 illustrates that computing device 120 may also be connected
through access point 140 to a broader network, such as the Internet 150. In this example,
the connection between computing device 120 and Internet 150 is a wireless connection
142. Wireless connection 142 may be formed with the same or different radio within
computing device 120 that is used to form audio-video channel 132 and/or side channel
134. Connection 142, for example, may be in accordance with a Wi-Fi infrastructure
mode protocol while audio-video channel 132 may be formed using a Wi-Fi Direct Access
protocol.
[0040] Regardless of how connection 142 is formed, user 122 may use
connection 142 to access audio-video content available over the Internet 150. Though any
other suitable technique for obtaining audio-video content may alternatively or
additionally be used, and it should be appreciated that connection 142 is illustrated only as
an example of audio-video content that may be obtained by computing device 120 and
streamed through audio-video channel 132 for presentation on a device, such as television
130.
[0041] Computing device 120 may have any suitable architecture to support
functions such as obtaining audio-video content, receiving user input to control the
presentation of that content on a device and interacting with the presentation device to
cause the audio-video content to be presented with the appropriate format. FIG. 2
provides an example of such an architecture.
[0042] FIG. 2 illustrates, at a high level, an architecture for computing device 210
that may be operated to transmit information in at least two channels - one for transmitting
audio-video content and one for transmitting commands. In the example of FIG. 2,
computing device 210 includes two radios, radio 250 and radio 254. Each of the radios
may be adapted to send and receive wireless communications. Radio 250, for example,
may be used for wireless communication over a first channel and may be adapted for
transmission of audio-video content. Radio 254, for example, may be used for wireless
communication over a second channel and may be adapted for transmission of commands.
Though, it should be appreciated that, in some embodiments a single radio may be used to
support concurrent communication in multiple channels.
In the example of FIG. 2, an application 220 is illustrated. Application 220 may generate
information for wireless transmission or may process information received wirelessly. In
the embodiment illustrated, that information may be an audio-video stream, which may
contain information representing audio content and/or video content, and possible other
information, such as control information. As a specific example, application 220 may be a
media control application, configuring computing device 210 to provide a user interface
through which a user may select audio-video content to be streamed to a display device,
such as a television or stereo. Media Control applications are known. For example, many
computers are configured with the WINDOWS® MEDIA CENTER® application.
Techniques similar to those used to create such applications may be used to create
application 220. Though, in addition to presenting content on a display associated directly
with computing device 210, application 220 may be programmed to present such
information on a remote device through transmission over channels such as channels 132
and 134.
[0043] Though the architecture of the remote presentation device is not shown, a
device receiving and presenting an audio-video stream may have a similar architecture. In
such an embodiment, application 220, may not receive user inputs directly. However, it
may be computer-executable components that receive and render the audio-video stream
on a display and respond to user commends received over channels 132 and 134.
[0044] In the example of FIG. 2, application 220 interfaces with operating system
230. In some embodiments, operating system 230 may be a general purpose operating
system, such as the WINDOWS® operating system. Such a configuration may be
desirable when computing device 210 executes applications other than application 220.
Though, in embodiments in which computing device 210 is configured specifically for
presentation of audio-video information, operating system 230 may have more limited
functionality.
[0045] Regardless of whether operating system 230 is a special purpose or
general purpose operating system, in the embodiment illustrated, a function of operating
system 230 is to provide services that facilitate wireless transmission and reception of
information processed by application 220. For transmission, operating system 230 may
receive a request from application 220 to establish a connection with a nearby device.
Thereafter, operating system 230 may receive from application 220 a stream of
information representing audio-video content to be transmitted over that connection.
Operating system 230 may then cause that data to be transmitted. In this example,
transmission is by radio 250, thereby implementing a data channel such as channel 132.
[0046] In embodiments in which computing device 210 is receiving and
presenting audio-video information from another device, operating system 230 may
respond to a request, received wirelessly, from another device to establish a connection.
Operating system 230 may then provide data received over that connection to application
220 for processing, which may include presentation of the data in an audible and/or visual
format.
[0047] Such a connection may be formed using techniques as are known in the
art. In the illustrated example, that connection may be a direct, device-to-device
connection. As a specific example, that connection may be formed using frequencies and
a protocol specified as Wi-Fi Direct. Operating system 230 may then make that
connection available to application 220 by presenting a network adapter, or other suitable
interface through which application 220 may access the connection. Though any suitable
technique may be used.
[0048] Application 220 also may receive user input representing commands to
control the external device. For example, those commands may represent commands to
change the volume with which audio information is presented or to change visual
characteristics of a display, such as brightness. Though, it should be appreciated that these
specific commands are illustrative and not limiting such that any suitable commands may
be supported.
[0049] Operating system 230 may receive these commands from application 220
and route them for transmission. In this example, the commands may be routed for
transmission through radio 254. Such transmission may be over a connection formed by
operating system 230 to implement a side channel, such as a side channel 134. Access to
the side channel also may be made through a network adapter created by the operating
system 230. Through the use of network adapters, operating system 230 can provide a
mechanism for application 220 to request transmission of audio-video content and
commands in a way that does not depend on the specific transport used to create the
channels. In this way, application 220 may function without regard to the specific
transports to be dynamically selected.
[0050] To support processing of communications for transmission over different
transports, a transport control layer 260 may be included within operating system 230.
Transport control layer 260 may process multiple requests from application 220 for
transmission of data and route that data as appropriate for transmission. Data representing
an audio-video stream, for example, may be formatted for transmission through radio 250.
Data representing a command may be formatted for transmission through radio 254.
[0051] Additional transport specific processing may be performed within
transport control layer 260. For example, in some embodiments, commands will be
transmitted over a low power side channel. Such information may be transmitted with a
relatively low bit rate and/or with a relatively large amount of error control coding.
Transport control layer 260 may appropriately process the commands for transmission
and/or control radio 254 to transmit that data with the desired power level or error control
coding, which may not similarly occur if another transport is used.
[0052] The specific processing performed within transport control layer 260 may
depend on the specific transport used to implement the first channel to carry audio-video
data and the specific transport used to carry commands. For example, a wireless link
established in either a UNII or ISM domain may be used as a transport for audio-video
data and that transmission may be in accordance with a known protocol for computer to
device communication. In such an embodiment, conventional processing for audio-video
data may be used in transport control layer 260.
[0053] Different processing may be used for commands. The commands may be
sent using a transport such as IR or BLUETOOTH®. In such embodiments, conventional
processing may be used to format the command data for transmission, though that
processing may be different than the processing performed on the audio-video content
data.
[0054] Alternatively, a wireless link established in a licensed domain, such as
Digital TV may be used as a transport for command data. When such a transport is used,
processing within transport control layer 260 may entail setting appropriate gain,
modulation, error control encoding or other parameters of radio 254. Though, it should be
appreciated that, instead of setting parameters of a radio to perform desired processing,
transport control layer 260 may directly perform some or all of the processing. For
example, error control encoding and possibly other functions may be performed by
software components executing on a processor core in computing device 210.
Accordingly, it should be appreciated that, though FIG. 2 may suggest a specific
architecture, that architecture is exemplary and not limiting.
[0055] Transport control layer 260 may also respond to received information.
That received information may request a connection requested by another device.
Received information may also represent data for presentation or other types of
information.
[0056] To send and receive data, transport control layer 260 may interact with
one or more radios, of which radios 250 and 254 are illustrated. Radio 250 may be
controlled through software, represented as driver 240 in FIG. 2. Here, driver 240
includes an interface 242 through which operating system 230 may issue commands to
driver 240 and through which driver 240 may report status and notify operating system
230 of received data. Interface 242 may be implemented in any suitable way, including
according to a known standard. An example of such a known standard is called NDIS, but
that standard is not critical to the invention.
[0057] Interface 242 may support a number of commands in a format that does
not depend on the construction of radio 250. These commands may include commands to
configure radio 250 for transmission at certain frequencies or to use certain modulation
schemes or error control coding for symbols to be transmitted. Additionally, through
interface 242, driver 240 may receive data for transmission by radio 250. Accordingly,
interface 242 provides a mechanism through which transport control layer 260 may
control radio 250 to transmit data representing a stream of audio-video data. Radio 250
may also use interface 242 to provide data and status message to operating system 230.
[0058] Regardless of the specific commands, driver 240 may translate the
commands, in the standardized format of interface 242, into specific control signals that
are applied to radio 250. Additionally, driver 240 may be programmed to perform certain
low level functions associated with a wireless connection. For example, upon receipt of a
packet, driver 240 may check that the packet is properly formatted. If the packet is
properly formatted, driver 240 may control radio 250 to generate an acknowledgement.
Conversely, if the packet is not properly formatted, driver 240 may control radio 250 to
transmit a negative acknowledgement.
[0059] In the embodiment illustrated in FIG. 2, computing device 210 includes a
second radio 254. While radio 250 may be used, for example, for transmitting and/or
receiving a stream of data representing audio-video content, radio 254 may be used for
transmission and/or reception of data representing commands to control a remote audiovideo
device.
[0060] Radio 254 is incorporated into computing device 210 with generally the
same architecture as radio 250. Radio 254 is associated with a driver 244 that provides a
mechanism for operating system 230 to control radio 254. Driver 244 has an interface 246
through which operating system 230 may send commands to driver 244 and driver 244
may provide data and status messages to operating system 230. Interface 246, like
interface 244, may be a standardized interface such that operating system 230 may
communicate with driver 244 using a similar set of commands as are used to driver 240.
[0061] Though two radios are shown, it should be appreciated that any suitable
number of radios may be included within computing device 210. For example, a separate
radio may be used to form audio-video channel 132, side channel 134 and connection 142
(FIG. 1). Though, in embodiments in which those channels are formed using similar
frequencies, a single radio may be used to form all of the indicated connections.
Accordingly, the specific hardware configuration of computing device 210 is not critical to
the invention.
[0062] Regardless of the specific construction of computing device 210,
computing device 210 may be configured with software to present a user interface through
which a user may be select audio-video content for presentation on a nearby presentation
device and also control parameters of that presentation.
[0063] FIG. 3 illustrates a user interface that may be presented by such software.
User interface 300 may be presented on a screen of computing device 210 by any suitable
components within computing device 210. Though, in the embodiment illustrated,
application 220 (FIG. 2) may be a media control application, which may present user
interface 300. In this example, the media control application may control the presentation
of audio-video content of any suitable form. The audio-video content, for example, may
be audio only, video only or may be multi-media, involving both an audible and visual
component. In this example, user interface 300 is configured for controlling the
presentation of audio-video content that has both an audio component and a video
component.
[0064] A user may interact with application 220 through graphical user interface
300 using interface techniques as are known in the art. For example, user interface 300
may include controls that a user may activate using a mouse or other human interface
device. Upon activation of a control by a user, application 220 may be prompted to
execute a function associated with the control. For example, user interface 300 includes
media selection controls 310. Such controls may perform functions as are known in the
art for media control applications. By activation of one or more of the media selection
controls 310, a user may navigate through media files on or accessible to computing
device 210 to identify a file representing audio-video content for presentation.
[0065] In the operating state illustrated in FIG. 3, a user has activated a media
selection control to select a movie. The selected content may be presented through content
display area 320. Accordingly, in the operating state illustrated by FIG. 3, a movie,
representing selected audio-video content, is being presented in media display area 320.
[0066] A media control application may also provide media playback controls
330. Those controls, for example, may include a play control 336. Activation of play
control 336 may cause selected audio-video content to play in content display area 320.
Play control 336 may toggle between states such that when the selected audio-video
content is being played in content display area 320, user activation of play control 336
may freeze the playing of the audio-video content.
[0067] As another example of a media playback control, application 220 may
present a control 332 that mutes the sound such that an audio portion of the audio-video
content may be suppressed. Alternatively or additionally, media playback controls 330
may include a slider 334. Slider 334 may be a control as is known in the art that allows a
user to specify a value from a range of values. The specified value may correlate with a
volume of the audio portion of audio-video content being presented in content display area
320.
[0068] Aspects of user interface 300 may be implemented as in a conventional
media control application. For example, media selection controls 310, content display
area 320 and media playback controls 330 may be implemented using techniques as are
known in the art.
[0069] Though, a media control application may be adapted such that the
behavior of some or all of these components changes when computing device 210 is being
used to control the presentation of audio-video content on a remote presentation device.
For example, when operating in a remote control mode, selection of play control 336 may
trigger the streaming of data representing audio-video content over an audio-video
channel, such as channel 132 (FIG. 1). Similarly, when operating in a remote control
mode, selection of mute control 332, instead of or in addition to controlling the sound
level at computing device 210, may trigger transmission of a command over a side
channel, such as side channel 134 (FIG. 1), commanding the presentation device to mute
the sound. Similarly, in remote control mode, activation of slider 334 may result in a
command, representing a change in volume command, being transmitted over the side
channel.
[0070] Alternatively or additionally, a media control application may be modified
to present commands that control functions specifically related to remote control of a
presentation device. The example of FIG. 3 illustrates a device control 342, a presentation
control 344 and a picture-in-picture control 346. These controls are examples of controls
that may be specifically supported to allow computing device 210 to operate as a remote
control. Other controls may alternatively or additionally be provided.
[0071] In some embodiments, the specific controls made available through user
interface 300 in a remote control mode may depend on capabilities of the remote
presentation device. Such capabilities, for example, may be communicated to computing
device in any suitable way. For example, information defining capabilities of the remote
control device may be obtained when a connection for audio-video channel 132 is created.
Alternatively, the information may be communicated over side channel 134. Accordingly,
a media control application may select controls for presentation based on information
about a remote presentation device with which it is compared.
[0072] In the example of FIG. 3, device control 342 may be activated by a user
before the media control application is operating in remote control mode. Activation of
device control 342 may cause the media control application to present a further user
interface through which a user may select a nearby device to act as a presentation device.
As a specific example, activation of device control 342 may cause a user interface as
depicted in FIG. 4 to be presented to the user.
[0073] FIG. 4 illustrates a graphical user interface 400 through which a user may
select a remote device to act as a presentation device for audio-video content. Graphical
user interface 400 may be presented in any suitable way. For example, application 220
may be programmed to present graphical user interface 400. Though, in other
embodiments, graphical user interface 400 may be presented by a component of operating
system 230. For example, in other contexts it is known for an operating system 230 to
contain a device manager that can discover and present to a user a list of options for
nearby devices with which a wireless connection may be formed. In some embodiments,
graphical user interface 400 may be presented by such a device manager or other suitable
component of operating system 230.
[0074] Application 220 may obtain information about nearby devices that can
operate as presentation devices in any suitable way. For example, in the embodiment
illustrated in FIG. 1 in which audio-video channel 132 is to be implemented using a peerto-
peer protocol, such as Wi-Fi direct, media control application 220 may control
operating system 230 to transmit messages in accordance with device discovery or service
discovery aspects of that protocol. In accordance with the device discovery aspects of a
peer-to-peer protocol, nearby devices may respond to a device discovery message in a way
that reveals their capabilities for presenting audio-video content.
[0075] Graphical user interface 400 illustrates an operating state in which
multiple presentation devices have been discovered. Those presentation devices are
presented through graphical user interface 400 in a way that reveals their capabilities for
presentation of audio-video content. In this example, a display area 420 is provided for
devices that can present audio content only. A display area 430 is provided for devices
that can present video content only. A further display area 440 is presented for devices
that can present multimedia content. In the specific example of FIG. 4, display area 420
includes an icon 422, indicating that a stereo, capable of presenting audio information, has
been detected. Display area 430 includes an icon 424, indicating that a projector, capable
of presenting video content, has been detected. Display area 440 contains two icons, icon
442 indicating that a television has been detected and icon 444 indicates that a tablet PC
has been detected. Though a tablet PC may not conventionally be regarded as an audiovideo
presentation device, a tablet PC includes a visual display and speakers for
presentation of audio, in some embodiments, the tablet PC may be controlled for
presentation of multimedia content.
[0076] It should be recognized that the specific devices presented through
graphical user interface 400 may depend on the devices in the vicinity of computing
device 210. Regardless of the specific devices discovered and presented through user
interface 400, a user may manipulate a mouse or other human interface device to select
one of the discovered devices. Selecting a device may cause the media control application
or other suitable component of computing device 210 to interact with the selected device
to form an audio-video channel and a side channel over which both audio-video content
and commands, respectively, may be communicated.
[0077] Returning to FIG. 3, once an audio-video channel and a side channel are
formed with a device, a user may provide further input through user interface 300 to
indicate that selected multimedia content is to be streamed to the selected presentation
device. Presentation control 344 may be provided for this purpose. Upon selection of
presentation control 344, media control application 220 may respond by requesting
operating system 230 transmit over the audio-video channel data representing audio-video
content that appears in content display area 320. Selection of presentation control 344
may cause that audio-video content to be streamed over the audio-video channel instead of
or in addition to being presented in content display area 320.
[0078] In some embodiments, presentation control 344 may be a toggle-type
control. Such a control may cause different affects in different operating states. For
example, when audio-video content is not being streamed over the audio-video channel,
selection of presentation control 344 may initiate streaming of such audio-video content.
Conversely, in an operating state in which audio-video content is being streamed over an
audio-video channel to a remote display device, selection of presentation control 344 may
stop the streaming of audio-video content.
[0079] As a further example of a control that may appear in user interface 300,
FIG. 3 illustrates a picture-in-picture control 346. Selection of picture-in-picture control
346 may cause the media control application 220 to generate a command for transmission
over a side channel. The command may be formatted in a way recognized by the selected
presentation device as a command to create a picture-in-picture display. With a picture-inpicture
display format, the audio-video content streamed over the audio-video channel
may appear in only one portion of the display of the presentation device. Other portions of
the display may be filled with content supplied by the presentation device. In the example
of FIG. 1, upon selection of picture-in-picture control 346, television 130 may continue
presenting television programming received by television 130 from sources other than
computing device 120. Overlaid on that presentation may be a window, presenting video
content streamed from computing device 120.
[0080] Though, it should be appreciated that the controls illustrated in FIG. 3 are
just examples of the types of controls that may be presented by a computing device for the
control of a remote presentation device. Other controls, including those now known or
hereafter discovered to control televisions or other presentation devices, may be presented
by a media control application.
[0081] Turning to FIG. 5, an alternative embodiment of a system in which a
wireless computing device controls an audio-video presentation device is illustrated. In
this example, a wireless computing device 520, operated by a user 522, establishes an
audio-video channel 532 with a presentation device, here illustrated as television 530. As
with the example of FIG. 1, audio-video channel 532 may be formed using frequencies
and a protocol as specified in accordance with the Wi-Fi Direct protocol. Though, the
specific frequencies use of signal used to form that channel and the protocol used in that
channel is not critical to the invention. A media control application executing a computing
device 520 may generate a data stream, representing audio-video content for transmission
over audio-video channel 532. Additionally, such a media control application may control
the operating system of computing device 520 to form a side channel for transmission of
commands for television 530.
[0082] In the example of FIG. 5, the side channel is formed with links 534A and
534B. Here, link 534A is formed between computing device 520 and an access point 540.
Access point 540 may be an access point as is known in the art. For example, access point
540 may be configured to operate according to the known Wi-Fi protocol for infrastructure
mode components. In operation, access point 540 may provide a connection to an external
network, such as the Internet 550. Additionally, access point 540 may form a local
network. In this case, other devices equipped for wireless communication may also
connect to that local network through access point 540. In the example illustrated in FIG.
5, television 530 is equipped with a radio that can associate with access point 540 in the
same way as computing device 520. Accordingly, television 530 may communicate with
access point 540 over link 534B. Links 534A and 534B connect computing device 520
and television 530 in a local network, allowing the devices to exchange information.
Accordingly, a side channel may be established over links 534A and 534B. Computing
device 520 may use this side channel to transmit commands to television 530. Those
commands, for example, may be generated based on user interaction with a media control
application. A user may enter such commands through an interface, such as user interface
300 (FIG. 3) or any other suitable interface.
[0083] In the embodiment illustrated in FIG. 5, though access point 540 may be
located outside of room 510 containing television 530, in this case the transport used to
form side channel can communicate over such distances. For example, the Wi-Fi
protocol, though designed for communication over relatively short distances, can
nonetheless support communications over distances of tens of meters. Though, it should
be appreciated that the embodiment of FIG. 5 is just one example of a suitable transport
for forming a side channel, and any suitable transport may be used.
[0084] In some embodiments, computing device 520 may be configured to
support communications over multiple transports, any of which may be used to form a side
channel for transmission of commands that control the presentation of audio-video
content. Similarly, an audio-video presentation device, such as television 530, may
alternatively or additionally be configured to support communication over multiple
transports, any one of which may be suitable for forming a side channel. Accordingly, in
some embodiments, a computing device and an audio-video presentation device may
exchange wireless communications to establish communication over an audio-video
channel and an associated side channel. A portion of that interaction may involve
selecting a transport mutually supported by the computing device and the audio-video
presentation device for use in forming a side channel.
[0085] FIG. 6 illustrates a method of operation of a computing device that may
lead to establishing an audio-video channel and a side channel for providing audio-video
content and associated presentation commands to a presentation device, such as a
television. The method of FIG. 6 may begin in response to any suitable trigger. As one
example, the method may be triggered by user input. For example, for a computing device
such as computing device 210 executing a media control application 220 that presents a
graphical user interface 300, the trigger may be a user input selecting a control, such as
device control 342 (FIG. 3).
[0086] Regardless of the trigger, the computing device may transmit a message
requesting devices that may operate as a presentation device to respond. The specific
format of such a request message may depend on the protocol with which the computing
device elects to form a connection to act as an audio-video channel. In the case of a
computing device configured to use the Wi-Fi direct protocol to establish an audio-video
channel, the request message sent at block 610 may be formatted as a probe request
message formatted for device or service discovery. If a service discovery message is used,
the message may indicate that the computing device is searching for a remote device that
can act as a presentation device for audio-video content. In scenarios in which the audiovideo
content is audio only, the service discovery request may indicate a desired service
appropriate for presentation of audio information. If the audio-video content to be
presented is a video only, the service discovery request may request a device providing a
service appropriate for presentation of video content. If the audio-video content is
multimedia content, the service discovery request may request a service suitable for
presentation of multimedia content. Though, as illustrated by the exemplary interface 400
(FIG. 4), it is not a requirement that a computing device automatically identify a type of
audio-video presentation device. Rather, if multiple audio-video presentation devices
respond to the request transmitted at block 610, a user may be presented by a menu of
available devices, allowing the user to select a desired device.
[0087] Regardless of the nature of the request transmitted at block 610. The
process may proceed to block 612. At block 612, a user may indicate a selection of a
device with which to form an audio-video channel and a side channel. Even in scenarios
in which a computing device automatically identifies a single audio-video presentation
device, the user may nonetheless be offered an opportunity to make a selection at block
612 to indicate whether the user desires to have a connection at all. Though, it should be
appreciated that the specific mechanism by which a remote device is selected is not critical
to the invention.
[0088] Regardless of the manner in which the remote device is selected, the
process may proceed to decision block 620. At decision block 620, the process may
branch, depending on whether the selected remote device is a known device. A device
may be known to the computing device executing the process of FIG. 6 if the computing
device has previously formed a connection with that remote device and stored information
used in establishing that connection. If no information has been previously stored, the
process may branch from decision block 620 to subprocess 622.
[0089] At subprocess 622, the computing device may exchange wireless
communications with the remote device to set up the remote device for communication
over an audio-video channel and an associated side channel. The specific steps at
subprocess 622 may depend on the protocol being used by the computing device for
establishing a connection with the remote device. In this example, the steps of subprocess
622 may be based on the protocol used for establishing the audio-video channel. As a
specific example, the audio-video channel may be established using the Wi-Fi Direct
protocol. In that scenario, the steps of subprocess 622 may implement a pairing ceremony
as defined in accordance with the Wi-Fi Direct protocol. Though, it should be appreciated
that any suitable steps leading to an exchange of information allowing the computing
device and the remote presentation device to form a connection may be used.
[0090] Such communication, for example, may entail exchange of a password,
challenge code or other suitable security information between the computing device and
the remote device. The devices may obtain such security information in any suitable way.
For example, a password may be obtained by user input on the computing device. A user
may obtain such a password from the manufacturer of the remote device. For example,
devices equipped for wirelessly forming connections may be packaged with instructions
providing the password or may be configured to enter an operating mode in which the
device displays the password for the user to observe. Alternatively, the same password
may be established and entered at both devices by the user. Requiring a password as part
of the pairing ceremony may ensure that the computing device pairs with the intended
presentation device.
[0091] In addition to exchanging a password, the computing device and remote
presentation device may exchange other information useful in establishing one or more
wireless links to carry an audio-video channel and/or a side channel between the devices.
Though any suitable mechanism may be used to convey this information, in some
embodiments, additional information may be conveyed in information elements associated
with messages that are otherwise prescribed as part of the protocol to be used as a
transport for the audio-video channel. Information elements allow information not
specifically provided for as part of a standardized protocol to be inserted into messages
that are formatted according to the standardized protocol. In this way, many types of
information may be communicated between the computing device and remote presentation
device while still using a standardized protocol.
[0092] As an example of the types of additional information that may be
exchanged, each device may reveal to the other information about alternative transports
supported by that device and available for use in establishing a side channel. Additionally,
the information exchanged may reveal information about capabilities of the remote
presentation device to present audio-video content. Such information, for example, may
identify information about the remote presentation device, such as the types of codecs
supported, the resolution of a display screen or the size of a display screen. In some
embodiments, the information exchanged between the computing device and the remote
display device may indicate steps to be performed as part of the pairing ceremony. As one
example, some wireless devices support a standard called Wi-Fi protected setup (WPS),
which entails multiple methods. The information exchanged between the devices may
identify specific WPS methods supported by the devices. Though, any suitable
information that may be used in setting up the devices may be used
[0093] Regardless of the specific information exchanged between the computing
device and remote presentation device, each device may be configured with a processor
that analyzes the information to identify values for one or more parameters used in
establishing communication between the devices. For example, at block 623, the
computing device may select a transport for use in forming a side channel. As one
example of how this selection could be made, each device may maintain an ordered list of
possible transports for use in establishing a side channel. These lists may be exchanged
such that both devices have both tests. Each device may process the lists to identify
transports that are supported by both devices. Of those mutually supported transports, a
metric, representing the position on both lists may be and the transport with the highest
value of the computed metric may be selected for implementing the side channel. Similar
negotiation strategies may be performed to select values of other parameters for which
information is exchanged. Such processing may be performed using techniques as are
know in the art or in any other suitable way.
[0094] Regardless of the nature of the information exchanged during subprocess
622, upon completion of subprocess 622, each device will have set up information usable
for establishing a connection over which the audio-video channel may be communicated.
At block 624, that information may be stored. On the company device that information
may be stored in connection with a designation of the remote presentation device.
[0095] Though not expressly illustrated in FIG. 6, complementary operations may
be performed on the remote presentation device, resulting in set up information being
available on that device too. Storing the information at block 624 allows a connection to
the remote presentation device to be formed at a later time without repeating subprocess
622. Accordingly, in instances in which the process of FIG. 6 is executed when that
information has been previously stored, the process will branch from decision block 620 to
block 630, bypassing subprocess 622. At block 630, information stored at block 624 in a
prior iteration of the process may be retrieved.
[0096] Regardless of whether set up information is retrieved at block 630 or
generated as part of subprocess 622, the process of FIG. 6 may proceed to block 634.
Starting at block 634, the computing device may be internally configured to route
information over the selected connections for the audio-video channel and the side
channel. Such processing may be performed using techniques as are known in the art. For
example, processing at block 634 may entail providing an instruction to a known
component of the operating system, sometimes called a connection manager, to establish a
connection for the audio video channel and side channel.
[0097] Accordingly, at block 636, the connection manager may establish a
connection used for the side channel over the transport selected at block 623.
[0098] At block 638, the connection manager may configure the computing
device to communicate over the audio-video channel. The processing at blocks 636 and
638 may entail steps as are known in the art for establishing connections over the
identified transports. This processing may include configuring a driver, a radio and/or
other components of the computing device. This process may result in a network adapter
being exposed through which the side channel or audio video channel can be accessed.
Accordingly, the specific processing at steps 636 and 638 may depend on the transports
identified.
[0099] Regardless of the manner in which the transports for an audio-video
channel and a side channel are established, processing may proceed to block 640. At
block 640, computing device may stream data representing audio-video content over the
established audio-video channel. The audio-video content stream at block 640 may be
generated in any suitable way. In the example of a computing device 210 (FIG. 2)
containing a media control application, the audio-video content may be generated by that
application in response to user inputs. Though, the specific mechanism by which the data
stream is generated is not critical to the invention.
[00100] The mechanism by which the data representing audio-video content is
injected into the audio-video channel for transmission also is not critical to the invention
and may be performed using techniques as are known in the art. For example, a
connection manager within an operating system may establish a network adapter coupled
to the audio-video channel. A controlling application, such as a media control application
may place calls on such a network adapter, providing the data for transmission. Though,
any other suitable techniques may be used.
[00101] Processing in FIG. 6 also may entail sending commands in response to
user input at block 642. The user input may be obtained in any suitable way. When the
computing device is configured with a media control application presenting a user
interface, such as user interface 300 (FIG. 3), the commands to be transmitted may be
identified based on user input provided through such a user interface. The specific format
of the commands also is not critical to the invention. The transmitted commands may be
in format mutually recognized by the computing device and the remote presentation
device.
[00102] The specific mechanism by which the commands are injected into the side
channel for transmission also is not critical to the invention. As one example, techniques
as are known in the art may be employed. A connection manager, upon establishing a
connection to be used for the side channel, may provide a network adapter associated with
that connection. A media control application, or other component generating commands,
may place a call on such a network adapter, providing data representing a command to be
transmitted. In response to such a call, a command may be transmitted over the side
channel.
[00103] It should be appreciated that FIG. 6 represents an exemplary process for
operating a computing device. Different processes may be used on different computing
devices. Moreover, different processes may be performed in different modes of operation
of the same computing device. FIG. 7 provides an example of an alternative process of
operating a computing device. In this example, processing is performed within an
operating system utility. The process of FIG. 7 may be initiated in response to a user input
received when the computing device has already stored setup information for a remote
audio-video presentation device that is in the vicinity of the computing device. As an
example, an operating system of computing device may respond to a prescribed keystroke
sequence or other input entered into the computing device by executing the process
illustrated in FIG. 7. As a specific example, a computer executing the WINDOWS®
operating system may be configured to respond to a keystroke combination involving a
special "WIN" key and the key associated with the letter "P." Such a keystroke sequence
may trigger use of a nearby, known remote presentation device as an output device
presenting any information appearing on the screen of the computing device.
[00104] Accordingly, the process of FIG. 7 may begin at block 710 when the
keystroke sequence is detected. Upon receipt of that keystroke sequence, the process may
proceed to block 730. At block 730, a utility executing within the operating system may
retrieve setup information for a previously identified device. That setup of information
may include any passwords or other information used in establishing a connection to that
device. Additionally, that setup information may include identification of transports used
for forming an audio-video channel and a side channel.
[00105] At block 734, a connection manager may use the retrieved setup
information to establish a side channel connection. At block 738, the connection manager
may use the retrieved information to establish a connection for the audio-video channel.
Processing at blocks 734, 736 and 738 may be similar to the processing performed at
blocks 634, 636 and 638, respectively. Though, rather than the connection manager
responding to commands from a media control application, the commands may be
provided by the utility of the operating system invoked in response to the user input at
block 710.
[00106] Once the computing device is configured for communication with the
remote presentation device, the process may proceed to block 740. At block 740, data
representing a stream of audio-video information may be conveyed over the audio-video
channel. The processing at block 740 may be similar to the processing at block 640.
However, in the example of FIG. 7, rather than streaming data generated directly by a
media control application, any data captured by the operating system utility may be
streamed over the audio-video channel. In this example, that data may represent
information appearing on a display screen of the computing device and the remote display
utility may capture this information from other components that control the display of the
computing device.
[00107] Processing at block 742 may result in transmission of commands, similar
to the processing at block 642. Though, rather than having the commands being generated
in response to user input received through a media control application, the commands may
be transmitted in response to user input received through the operating system utility
invoked at block 710.
[00108] FIGs. 8 and 9 illustrate yet a further alternative embodiment. As in the
embodiments depicted in FIGs. 1 and 5, the illustrated embodiment in FIG. 8 includes a
computing device 820 and a television 830, serving as an example of an audio-video
presentation device. Also as in the prior examples, an audio-video channel 832 and a side
channel 834 are formed. Audio-video channel 832 may use as a transport a link formed
using any suitable frequencies and protocols. As an example, audio-video channel 832
may be formed using a peer-to-peer connection. Such a connection may be formed, for
example, using the Wi-Fi Direct protocol or any other suitable protocol.
[00109] In this example, side channel 834 may use as a transport a link formed in
the digital TV spectrum. It is known that computer based communications may be
performed using white space in the digital TV spectrum. The white space represents
frequencies that are not licensed to any entity for use in a geographic area in which the
computer-based communications are to occur. Such white space communication,
however, requires that a computing device identify an unused portion of the digital TV
spectrum.
[00110] In some scenarios, a computing device configured for communication in
the digital TV spectrum may be programmed to access a database of licensed digital TV
channels by location. Prior to communicating using frequencies in a digital TV spectrum,
the computing device may access the database to identify an unused channel.
The computing device may access the database in any suitable way. For example, the
computing device may store a copy of the database or may access a server or other
centralized location from which information on channel assignments is available.
[00111] Alternatively, the computing device may detect white space by sensing
power levels in various channels of the digital TV spectrum to identify an unused channel.
FIG. 9 is a graph illustrating power levels in a portion of the digital TV spectrum. In this
example, the portion of the spectrum is divided into channels 9 1OA, 9 10B ... 9101. Each
of the channels 9 1OA, 9 10B ... 9101, for example, may be 6 MHz wide.
[00112] FIG. 9 illustrates a noise threshold of - 114 dBm. This threshold indicates
the lower limits of the signal strength that a digital television receiver is expected to
respond to. Signals with powers below this level may not be detected and may instead be
regarded as noise. Channels having signal power levels below this threshold are regarded
as not being in use to transmit digital TV signals. In the scenario illustrated in FIG. 9,
channels 9 1OA, 9IOC and 910G are shown with power levels indicating that those
channels are in use carrying digital TV signals. In contrast, channels 9 1OB, 910E, 9 1OF,
9 1OH and 9101 are shown carrying signals with power levels below the noise threshold,
indicating that those channels are not in use carrying digital TV signals.
[00113] Accordingly, by sensing the power level in a digital TV channel to
identify a channel with a power level below a noise threshold, computing device 820 may
identify a white space channel to use in forming side channel 834. Once the side channel
is formed, computing device 820 may encode commands to television 830 in any suitable
format and transmit them using frequencies in the identified white space channel of the
digital TV spectrum. Because computing device 820 is transmitting in white space of a
digital TV spectrum, radiation 836 associated with those side channel communications
that may reach other nearby televisions, such as television 850, will not interfere with
operation of television 850. Television 850 will not be attempting to receive digital
television programming on the same channel on which side channel communications are
being transmitted because that white space channel is not being used in the geographic
area where television 850 is located. Accordingly, even if the transmitted power level in
the white space channel exceeds the noise threshold, here - 114 dBm, normal operation of
television 850 is not disrupted.
[00114] However, in some embodiments, it may be difficult or expensive to
identify a white space channel. Identifying a channel may require, for example, a sensitive
receiver, capable of distinguishing between power levels above - 114 dBm and below - 114
dBm. Such sensitive receivers may be expensive. Also, equipping a computing device
such that it has access to an up-to-date database of licensed TV channels and to determine
its location such that it can make use of information in such a database may be expensive
or present logistical difficulties. Accordingly, in some embodiments, computing device
820 may form a side channel in the digital TV spectrum without regard to whether the side
channel is using frequencies in a white space channel. Though, to avoid interference with
other devices, computing device 820 may transmit using power levels that are low enough
that any radiation associated with those transmissions does not interfere with nearby
televisions, such as television 850. In some embodiments, the power selected for
transmission may be below a regulatory power threshold for detecting incumbent users of
the channel.
[00115] To achieve that result, the power level of radiation 836 reaching a nearby
device should be less than the noise threshold, which in the example of FIG. 9 is - 114
dBm. Accordingly, in some embodiments, computing device 820 will be configured to
control a radio used for side channel 834 to transmit at a power level such that radiation
836 reaching boundary 838 of room 810 has a level of - 114 dBm or less.
[00116] Such a power level at boundary 838 may be achieved, for example, by
transmitting at a power level on the order of 0 dBm or less. The propagation loss between
computing device 820 and boundary 838 may be on the order of lOOdBm, such that this
transmit power level may ensure that the power of radiation 836 reaching television 850 is
low enough that radiation 836 does not interfere with the operation of television 850.
[00117] Though, the signal received by television 830 must nonetheless be
sufficiently recognizable that television 830 can make use of information conveyed in side
channel 834. To enable such communications, digital computing device 820 may use
encoding and modulation techniques that provide processing gain for a device, such as
digital television 830, employing converse decoding and demodulation techniques. As an
example, computing device 820 may transmit signals representing commands in side
channel 834 using a spread spectrum modulation technique.
[00118] FIG. 9 illustrates a spread spectrum signal 920 transmitted in channel
910E. Signal 920 is transmitted with a power level such that, upon reaching digital
television 830, the power is below the threshold deemed to represent noise. However, as
is known in the art, spread spectrum demodulation aggregates the power across the
channel such that a receiver using a spread spectrum demodulator matched to the spread
spectrum modulator of the transmitting device can aggregate the power of the signal 920
into a more powerful signal. The receiver then may detect and extract information from
the signal. As an example, a spread spectrum demodulator may have the effect of adding
on the order of 20 dB of gain or more to a signal. Accordingly, signal 920, though
illustrated in FIG. 9 as being below the noise threshold, may, following processing in a
spread spectrum demodulator, produce an output above the threshold of detectability.
[00119] Though a receiver using a spread spectrum demodulator can detect spread
spectrum signal 920, receivers using other types of demodulators perceive signal 920 as
noise below the noise threshold. Moreover, though FIG. 9 illustrates that spread spectrum
signal 920 is spread across one channel, in some embodiments, the signal may be spread
across multiple channels to achieve even further processing gain. Accordingly, by using
such low power transmission and modulation techniques that provide gain, frequencies in
the digital TV spectrum can be used to form side channel 834 without causing interference
with digital TV receivers.
[00120] To further enhance communication in a side channel using such low
power, a forward error control code may be used to encode digital data representing
commands. For example, forward error control coding may include at least one additional
bit of error correction for each bit of data transmitted. Though, in some embodiments,
even lower coding rates may be used, such as two bits or more of error correction for each
bit of data.
[00121] Such low rate error correcting codes, with ratios of one-to-one or one-totwo
or even lower, may allow reliable communication of commands, even at low power
levels. Though in some scenarios increasing the total number of bits transmitted may be
undesirable, in the scenario illustrated in FIG. 8, the commands are communicated over
the side channel require few data bits. Adding bits for error control still results in a
relatively low number of bits transmitted over side channel 934. For example, data
representing commands, including error correcting bits, may be transmitted at a rate of 56
kilobits per second or less. In some embodiments, the data rate may be lower, such as 32
kilobits per second or less. In many embodiments, these bit rates are below the channel
capacity of the side channel.
[00122] Though FIG. 9 illustrates a scenario in which signal 920, representing
commands transmitted in side channel 834, is in a white space channel, it is not a
requirement that signal 920 be transmitted in a white space channel. Signal processing
techniques may be used to differentiate the side channel signals from the digital TV
signals. As shown in FIG. 9, even channels 9 1OA, 9IOC and 910G, which contain digital
TV signals, have a relatively low power level. In the example of FIG. 9, channels 9 1OA,
9IOC and 910G have a power level below a second threshold, which is indicated here to
be approximately -100 dBm. A remote audio-video presentation device, such as television
830 intended to receive signal 920 in side channel 834 may adequately detect signal 920 if
the level of the received signal exceeds the level of the digital TV signal sufficiently in the
channel in which signal 920 is transmitted.
[00123] Though the average power level of signal 920 as shown in FIG. 9 is below
- 114 dBm, when demodulated with a spread spectrum demodulator, that signal level may
effectively increase by the gain provided by the demodulation technique. Spread spectrum
demodulation operating over a bandwidth on the order of 6 MHz as indicated in FIG. 9
may provide a gain in excess of 20 dB. Accordingly, a signal level initially below the
noise threshold may be increased to be above a level of digital TV signals in that band.
[00124] As a specific numeric example, FIG. 9 shows that each of the digital TV
channels in use, channels 9 1OA, 9IOC and 910G, the average power level of the digital
television signals is below -100 dBm. Though signal 920 has a power level below - 114
dBm, approximately -120 dBm in the example illustrated, adding gain in excess of 20 dB
to such a signal through demodulation will produce a signal with an effective power level
above -100 dBm, making the signal above the power level of the digital television signals
in each of the occupied channels. The transmission parameters of signal 920 may be
designed such that the effective power level of the demodulated signal is sufficiently
above the average power level of digital television signals in the occupied digital TV
channels to enable reliable detection. The parameters, for example, may be selected such
that the effective power level of the demodulated signal 920 is more than 3 dB above the
average power level of the digital TV signals at the remote presentation device. It should
be appreciated that the numeric examples provided herein are for illustration only, and in
other embodiment other signal levels may exist. Nonetheless, the relative signal levels
may still be such that detection of side channel communications occurs within interference
with digital TV receivers. A radio as known in the art may be constructed to detect a
signal under these conditions such that computing device 820 and television 830 may
communicate over side channel 834 formed using frequencies in the digital television
spectrum without regard to whether the frequencies used for communication are within a
white space channel of the digital TV spectrum.
[00125] FIG. 10 illustrates an example of a suitable computing system
environment 1000 on which the invention may be implemented. The computing system
environment 1000 is only one example of a suitable computing environment and is not
intended to suggest any limitation as to the scope of use or functionality of the invention.
Neither should the computing environment 1000 be interpreted as having any dependency
or requirement relating to any one or combination of components illustrated in the
exemplary operating environment 1000.
[00126] The invention is operational with numerous other general purpose or
special purpose computing system environments or configurations. Examples of well
known computing systems, environments, and/or configurations that may be suitable for
use with the invention include, but are not limited to, personal computers, server
computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based
systems, set top boxes, programmable consumer electronics, network PCs, minicomputers,
mainframe computers, distributed computing environments that include any of the above
systems or devices, and the like.
[00127] The computing environment may execute computer-executable
instructions, such as program modules. Generally, program modules include routines,
programs, objects, components, data structures, etc. that perform particular tasks or
implement particular abstract data types. The invention may also be practiced in
distributed computing environments where tasks are performed by remote processing
devices that are linked through a communications network. In a distributed computing
environment, program modules may be located in both local and remote computer storage
media including memory storage devices.
[00128] With reference to FIG. 10, an exemplary system for implementing the
invention includes a general purpose computing device in the form of a computer 1010.
Components of computer 1010 may include, but are not limited to, a processing unit 1020,
a system memory 1030, and a system bus 1021 that couples various system components
including the system memory to the processing unit 1020. The system bus 1021 may be
any of several types of bus structures including a memory bus or memory controller, a
peripheral bus, and a local bus using any of a variety of bus architectures. By way of
example, and not limitation, such architectures include Industry Standard Architecture
(ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video
Electronics Standards Association (VESA) local bus, and Peripheral Component
Interconnect (PCI) bus also known as Mezzanine bus.
[00129] Computer 1010 typically includes a variety of computer readable media.
Computer readable media can be any available media that can be accessed by computer
1010 and includes both volatile and nonvolatile media, removable and non-removable
media. By way of example, and not limitation, computer readable media may comprise
computer storage media and communication media. Computer storage media includes
both volatile and nonvolatile, removable and non-removable media implemented in any
method or technology for storage of information such as computer readable instructions,
data structures, program modules or other data. Computer storage media includes, but is
not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CDROM,
digital versatile disks (DVD) or other optical disk storage, magnetic cassettes,
magnetic tape, magnetic disk storage or other magnetic storage devices, or any other
medium which can be used to store the desired information and which can accessed by
computer 1010. Communication media typically embodies computer readable
instructions, data structures, program modules or other data in a modulated data signal
such as a carrier wave or other transport mechanism and includes any information delivery
media. The term "modulated data signal" means a signal that has one or more of its
characteristics set or changed in such a manner as to encode information in the signal. By
way of example, and not limitation, communication media includes wired media such as a
wired network or direct-wired connection, and wireless media such as acoustic, RF,
infrared and other wireless media. Combinations of the any of the above should also be
included within the scope of computer readable media.
[00130] The system memory 1030 includes computer storage media in the form of
volatile and/or nonvolatile memory such as read only memory (ROM) 103 1 and random
access memory (RAM) 1032. A basic input/output system 1033 (BIOS), containing the
basic routines that help to transfer information between elements within computer 1010,
such as during start-up, is typically stored in ROM 1031. RAM 1032 typically contains
data and/or program modules that are immediately accessible to and/or presently being
operated on by processing unit 1020. By way of example, and not limitation, FIG. 10
illustrates operating system 1034, application programs 1035, other program modules
1036, and program data 1037.
[00131] The computer 1010 may also include other removable/non-removable,
volatile/nonvolatile computer storage media. By way of example only, FIG. 10 illustrates
a hard disk drive 1040 that reads from or writes to non-removable, nonvolatile magnetic
media, a magnetic disk drive 1051 that reads from or writes to a removable, nonvolatile
magnetic disk 1052, and an optical disk drive 1055 that reads from or writes to a
removable, nonvolatile optical disk 1056 such as a CD ROM or other optical media.
Other removable/non-removable, volatile/nonvolatile computer storage media that can be
used in the exemplary operating environment include, but are not limited to, magnetic tape
cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM,
solid state ROM, and the like. The hard disk drive 1041 is typically connected to the
system bus 1021 through a non-removable memory interface such as interface 1040, and
magnetic disk drive 1051 and optical disk drive 1055 are typically connected to the system
bus 1021 by a removable memory interface, such as interface 1050.
[00132] The drives and their associated computer storage media discussed above
and illustrated in FIG. 10, provide storage of computer readable instructions, data
structures, program modules and other data for the computer 1010. In FIG. 10, for
example, hard disk drive 1041 is illustrated as storing operating system 1044, application
programs 1045, other program modules 1046, and program data 1047. Note that these
components can either be the same as or different from operating system 1034, application
programs 1035, other program modules 1036, and program data 1037. Operating system
1044, application programs 1045, other program modules 1046, and program data 1047
are given different numbers here to illustrate that, at a minimum, they are different copies.
A user may enter commands and information into the computer 1010 through input
devices such as a keyboard 1062 and pointing device 1061, commonly referred to as a
mouse, trackball or touch pad. Other input devices (not shown) may include a
microphone, joystick, game pad, satellite dish, scanner, or the like. These and other input
devices are often connected to the processing unit 1020 through a user input interface
1060 that is coupled to the system bus, but may be connected by other interface and bus
structures, such as a parallel port, game port or a universal serial bus (USB). A monitor
1091 or other type of display device is also connected to the system bus 1021 via an
interface, such as a video interface 1090. In addition to the monitor, computers may also
include other peripheral output devices such as speakers 1097 and printer 1096, which
may be connected through an output peripheral interface 1095.
[00133] The computer 1010 may operate in a networked environment using logical
connections to one or more remote computers, such as a remote computer 1080. The
remote computer 1080 may be a personal computer, a server, a router, a network PC, a
peer device or other common network node, and typically includes many or all of the
elements described above relative to the computer 1010, although only a memory storage
device 1081 has been illustrated in FIG. 10. The logical connections depicted in FIG. 10
include a local area network (LAN) 1071 and a wide area network (WAN) 1073, but may
also include other networks. Such networking environments are commonplace in offices,
enterprise-wide computer networks, intranets and the Internet.
[00134] When used in a LAN networking environment, the computer 1010 is
connected to the LAN 1071 through a network interface or adapter 1070. When used in a
WAN networking environment, the computer 1010 typically includes a modem 1072 or
other means for establishing communications over the WAN 1073, such as the Internet.
The modem 1072, which may be internal or external, may be connected to the system bus
1021 via the user input interface 1060, or other appropriate mechanism. In a networked
environment, program modules depicted relative to the computer 1010, or portions
thereof, may be stored in the remote memory storage device. By way of example, and not
limitation, FIG. 10 illustrates remote application programs 1085 as residing on memory
device 1081. It will be appreciated that the network connections shown are exemplary and
other means of establishing a communications link between the computers may be used.
[00135] Having thus described several aspects of at least one embodiment of this
invention, it is to be appreciated that various alterations, modifications, and improvements
will readily occur to those skilled in the art.
[00136] As an example, it was described that control of a remote audio-video
presentation device was provided within a media control application executing on a
computing device. It is not a requirement that control of the remote audio-video
presentation device be provided through a media control application. Such control may
alternatively or additionally be provided through an operating system. Because the
operating system of a computing device provides services for presenting audio-video
information on a display and through speakers of the computing, the operating system may
intercept and, if appropriate, redirect, audio video content to a remote presentation device.
In such a scenario, a user interface for selection and control of the aspects of the
presentation of audio-video content may be provided by a conventional media control
application.
[00137] To implement other functions for control of the remote presentation
device, the operating system may provide a utility that may be invoked by the user. Such
a utility, for example, may allow any audio or video content that could be rendered locally
on the computing device to be redirected to a nearby device acting as a display device.
For example, the user impression conventionally presented through the "desktop" of a
computing device, along with any content provided by any application that appears to be
executing on the desktop, may be transmitted to a nearby display device. Such a utility
may allow a user to control any aspect of that presentation, such as the volume or whether
it is presented in a full screen mode or embedded in another image on the presentation
device.
[00138] As another example, it was described that low power transmissions are
used in the digital TV spectrum to implement a side channel for commands to control a
remote presentation device. Similar techniques may be used to form side channels for
other purposes. Moreover, such techniques may be used for low bit rate communication,
such as 56K bps or less.
[00139] Also, in some embodiments channels are said to be formed over
connections. Use of the word "connection" is not intended to connote that a protocol that
maintains a stateful connection is used. Protocols which are sometimes referred to as
"connectionless" may also be used. Here a "connection" indicates only that sufficient
information to engage in communication is available. For example, a UDP protocol,
which is sometimes described as connectionless, or other suitable protocol, may be used.
[00140] Further, example embodiments were described in relation to a computing
device that generates audio-video content and commands. Components to establish such
channels may exist in a remote presentation device, through in some embodiments,
simpler components may be used. For example, a presentation device may have one or
more radios, like radios 250 and 254. A remove presentation device may have a controller
like processing unit 1020. Though such a controller may support fewer functions than a
general purpose CPU, it may nonetheless control the device to perform a pairing
ceremony. Also it may also direct data representing content for presentation and control
the device to respond to commands received over the side channel.
[00141] Such alterations, modifications, and improvements are intended to be part
of this disclosure, and are intended to be within the spirit and scope of the invention.
Accordingly, the foregoing description and drawings are by way of example only.
[00142] The above-described embodiments of the present invention can be
implemented in any of numerous ways. For example, the embodiments may be
implemented using hardware, software or a combination thereof. When implemented in
software, the software code can be executed on any suitable processor or collection of
processors, whether provided in a single computer or distributed among multiple
computers. Such processors may be implemented as integrated circuits, with one or more
processors in an integrated circuit component. Though, a processor may be implemented
using circuitry in any suitable format.
[00143] Further, it should be appreciated that a computer may be embodied in any
of a number of forms, such as a rack-mounted computer, a desktop computer, a laptop
computer, or a tablet computer. Additionally, a computer may be embedded in a device
not generally regarded as a computer but with suitable processing capabilities, including a
Personal Digital Assistant (PDA), a smart phone or any other suitable portable or fixed
electronic device.
[00144] Also, a computer may have one or more input and output devices. These
devices can be used, among other things, to present a user interface. Examples of output
devices that can be used to provide a user interface include printers or display screens for
visual presentation of output and speakers or other sound generating devices for audible
presentation of output. Examples of input devices that can be used for a user interface
include keyboards, and pointing devices, such as mice, touch pads, and digitizing tablets.
As another example, a computer may receive input information through speech
recognition or in other audible format.
[00145] Such computers may be interconnected by one or more networks in any
suitable form, including as a local area network or a wide area network, such as an
enterprise network or the Internet. Such networks may be based on any suitable
technology and may operate according to any suitable protocol and may include wireless
networks, wired networks or fiber optic networks.
[00146] Also, the various methods or processes outlined herein may be coded as
software that is executable on one or more processors that employ any one of a variety of
operating systems or platforms. Additionally, such software may be written using any of a
number of suitable programming languages and/or programming or scripting tools, and
also may be compiled as executable machine language code or intermediate code that is
executed on a framework or virtual machine.
[00147] In this respect, the invention may be embodied as a computer readable
storage medium (or multiple computer readable media) (e.g., a computer memory, one or
more floppy discs, compact discs (CD), optical discs, digital video disks (DVD), magnetic
tapes, flash memories, circuit configurations in Field Programmable Gate Arrays or other
semiconductor devices, or other non-transitory, tangible computer storage medium)
encoded with one or more programs that, when executed on one or more computers or
other processors, perform methods that implement the various embodiments of the
invention discussed above. The computer readable storage medium or media can be
transportable, such that the program or programs stored thereon can be loaded onto one or
more different computers or other processors to implement various aspects of the present
invention as discussed above. As used herein, the term "non-transitory computer-readable
storage medium" encompasses only a computer-readable medium that can be considered
to be a manufacture (i.e., article of manufacture) or a machine. Alternatively or
additionally, the invention may be embodied as a computer readable medium other than a
computer-readable storage medium, such as a propagating signal.
[00148] The terms "program" or "software" are used herein in a generic sense to
refer to any type of computer code or set of computer-executable instructions that can be
employed to program a computer or other processor to implement various aspects of the
present invention as discussed above. Additionally, it should be appreciated that
according to one aspect of this embodiment, one or more computer programs that when
executed perform methods of the present invention need not reside on a single computer or
processor, but may be distributed in a modular fashion amongst a number of different
computers or processors to implement various aspects of the present invention.
[00149] Computer-executable instructions may be in many forms, such as program
modules, executed by one or more computers or other devices. Generally, program
modules include routines, programs, objects, components, data structures, etc. that
perform particular tasks or implement particular abstract data types. Typically the
functionality of the program modules may be combined or distributed as desired in various
embodiments.
[00150] Also, data structures may be stored in computer-readable media in any
suitable form. For simplicity of illustration, data structures may be shown to have fields
that are related through location in the data structure. Such relationships may likewise be
achieved by assigning storage for the fields with locations in a computer-readable medium
that conveys relationship between the fields. However, any suitable mechanism may be
used to establish a relationship between information in fields of a data structure, including
through the use of pointers, tags or other mechanisms that establish relationship between
data elements.
[00151] Various aspects of the present invention may be used alone, in
combination, or in a variety of arrangements not specifically discussed in the embodiments
described in the foregoing and is therefore not limited in its application to the details and
arrangement of components set forth in the foregoing description or illustrated in the
drawings. For example, aspects described in one embodiment may be combined in any
manner with aspects described in other embodiments.
[00152] Also, the invention may be embodied as a method, of which an example
has been provided. The acts performed as part of the method may be ordered in any
suitable way. Accordingly, embodiments may be constructed in which acts are performed
in an order different than illustrated, which may include performing some acts
simultaneously, even though shown as sequential acts in illustrative embodiments.
[00153] Use of ordinal terms such as "first," "second," "third," etc., in the claims
to modify a claim element does not by itself connote any priority, precedence, or order of
one claim element over another or the temporal order in which acts of a method are
performed, but are used merely as labels to distinguish one claim element having a certain
name from another element having a same name (but for use of the ordinal term) to
distinguish the claim elements.
[00154] Also, the phraseology and terminology used herein is for the purpose of
description and should not be regarded as limiting. The use of "including," "comprising,"
or "having," "containing," "involving," and variations thereof herein, is meant to
encompass the items listed thereafter and equivalents thereof as well as additional items.
CLAIMS
What is claimed is:
1. A method of operating a wireless computing device that is providing
content to a remote device, the method comprising:
transmitting content to the remote device over a first channel; and
transmitting a command to the remote device over a side channel, the side channel
comprising a portion of a digital television spectrum.
2. The method of claim 1, wherein:
transmitting the command comprises transmitting the command with a
power below a regulatory power threshold for detecting incumbent users of the
digital television spectrum.
3. The method of claim 1, wherein:
transmitting the command comprises encoding the command using spread
spectrum modulation across at least one channel.
4. The method of claim 1, wherein:
transmitting content comprises transmitting using Wi-Fi Direct protocol.
5. At least one computer readable storage medium encoded with computerexecutable
instructions that, when executed, perform a method of operating a wireless
computing device that is providing content for presentation on a remote audio-video
presentation device, the method comprising:
exchanging wireless communications with the remote audio-video device
to perform a pairing ceremony, the pairing ceremony comprising selecting a
channel for use as a side channel;
transmitting audio-video content to the remote audio-video presentation
device over a first channel, different than the side channel; and
over the side channel, transmitting to the remote audio-video presentation
device a command to alter a presentation of the content the transmitting comprises
transmitting in a digital TV spectrum.
6. The computer readable storage medium of claim 5, wherein:
the instructions for transmitting the command over the side channel
comprise instructions for setting a transmit power for a radio transmitting the
command to below regulatory power threshold for detecting incumbent users of the
digital TV spectrum.
7. The computer readable storage medium of claim 6, wherein:
the instructions for transmitting the command over the side channel
comprise instructions for modulating a signal representing the command with
spread spectrum modulation across at least one channel
8. The computer readable storage medium of claim 5, wherein: the
instructions for transmitting the command over the side channel comprise
instructions for modulating a signal representing the command with a modulation
technique providing gain.
9. The computer readable storage medium of claim 7, wherein:
the command comprises a command to increase a volume of presentation of an
audio portion of the audio-video content.
10. The computer readable storage medium of claim 5, further comprising:
instructions for storing information identifying parameters of communication with
the remote audio-video presentation device over the side channel generated during the
pairing ceremony.
| # | Name | Date |
|---|---|---|
| 1 | 4191-CHENP-2013 PCT PUBLICATION 30-05-2013.pdf | 2013-05-30 |
| 1 | 4191-CHENP-2013-RELEVANT DOCUMENTS [15-09-2023(online)].pdf | 2023-09-15 |
| 2 | 4191-CHENP-2013 DRAWINGS 30-05-2013.pdf | 2013-05-30 |
| 2 | 4191-CHENP-2013-RELEVANT DOCUMENTS [26-09-2022(online)].pdf | 2022-09-26 |
| 3 | 4191-CHENP-2013-RELEVANT DOCUMENTS [23-09-2021(online)].pdf | 2021-09-23 |
| 3 | 4191-CHENP-2013 DESCRIPTION (COMPLETE) 30-05-2013.pdf | 2013-05-30 |
| 4 | 4191-CHENP-2013-RELEVANT DOCUMENTS [27-03-2020(online)].pdf | 2020-03-27 |
| 4 | 4191-CHENP-2013 CLAIMS 30-05-2013.pdf | 2013-05-30 |
| 5 | 4191-CHENP-2013-IntimationOfGrant30-12-2019.pdf | 2019-12-30 |
| 5 | 4191-CHENP-2013 POWER OF ATTORNEY 30-05-2013.pdf | 2013-05-30 |
| 6 | 4191-CHENP-2013-PatentCertificate30-12-2019.pdf | 2019-12-30 |
| 6 | 4191-CHENP-2013 FORM-5 30-05-2013.pdf | 2013-05-30 |
| 7 | 4191-CHENP-2013_Abstract_Granted 328419_30-12-2019.pdf | 2019-12-30 |
| 7 | 4191-CHENP-2013 FORM-3 30-05-2013.pdf | 2013-05-30 |
| 8 | 4191-CHENP-2013_Claims_Granted 328419_30-12-2019.pdf | 2019-12-30 |
| 8 | 4191-CHENP-2013 FORM-2 FIRST PAGE 30-05-2013.pdf | 2013-05-30 |
| 9 | 4191-CHENP-2013 FORM-1 30-05-2013.pdf | 2013-05-30 |
| 9 | 4191-CHENP-2013_Description_Granted 328419_30-12-2019.pdf | 2019-12-30 |
| 10 | 4191-CHENP-2013 CORRESPONDENCE OTHERS 30-05-2013.pdf | 2013-05-30 |
| 10 | 4191-CHENP-2013_Drawing_Granted 328419_30-12-2019.pdf | 2019-12-30 |
| 11 | 4191-CHENP-2013 CLAIMS SIGNATURE LAST PAGE 30-05-2013.pdf | 2013-05-30 |
| 11 | 4191-CHENP-2013_Marked up Claims_Granted 328419_30-12-2019.pdf | 2019-12-30 |
| 12 | 4191-CHENP-2013-Written submissions and relevant documents (MANDATORY) [27-12-2019(online)].pdf | 2019-12-27 |
| 12 | 4191-CHENP-2013.pdf | 2013-06-02 |
| 13 | 4191-CHENP-2013 CORRESPONDENCE OTHERS 27-9-2013.pdf | 2013-11-01 |
| 13 | 4191-CHENP-2013-Correspondence to notify the Controller (Mandatory) [25-11-2019(online)].pdf | 2019-11-25 |
| 14 | 4191-CHENP-2013 FORM-3 06-11-2013.pdf | 2013-11-06 |
| 14 | 4191-CHENP-2013-HearingNoticeLetter-(DateOfHearing-13-12-2019).pdf | 2019-11-22 |
| 15 | 4191-CHENP-2013 CORRESPONDENCE OTHERS 06-11-2013.pdf | 2013-11-06 |
| 15 | 4191-CHENP-2013-CLAIMS [10-06-2019(online)].pdf | 2019-06-10 |
| 16 | 4191-CHENP-2013-COMPLETE SPECIFICATION [10-06-2019(online)].pdf | 2019-06-10 |
| 16 | abstract4191-CHENP-2013.jpg | 2014-06-13 |
| 17 | 4191-CHENP-2013-DRAWING [10-06-2019(online)].pdf | 2019-06-10 |
| 17 | 4191-CHENP-2013 FORM-6 27-02-2015.pdf | 2015-02-27 |
| 18 | 4191-CHENP-2013-FER_SER_REPLY [10-06-2019(online)].pdf | 2019-06-10 |
| 18 | MTL-GPOA - MLK1.pdf | 2015-03-13 |
| 19 | 4191-CHENP-2013-FORM 3 [10-06-2019(online)].pdf | 2019-06-10 |
| 19 | MS to MTL Assignment.pdf | 2015-03-13 |
| 20 | 4191-CHENP-2013-Information under section 8(2) (MANDATORY) [10-06-2019(online)].pdf | 2019-06-10 |
| 20 | FORM-6-1901-2000(MLK).8.pdf | 2015-03-13 |
| 21 | 4191-CHENP-2013-FER.pdf | 2018-12-11 |
| 21 | 4191-CHENP-2013-OTHERS [10-06-2019(online)].pdf | 2019-06-10 |
| 22 | 4191-CHENP-2013-FER.pdf | 2018-12-11 |
| 22 | 4191-CHENP-2013-OTHERS [10-06-2019(online)].pdf | 2019-06-10 |
| 23 | 4191-CHENP-2013-Information under section 8(2) (MANDATORY) [10-06-2019(online)].pdf | 2019-06-10 |
| 23 | FORM-6-1901-2000(MLK).8.pdf | 2015-03-13 |
| 24 | MS to MTL Assignment.pdf | 2015-03-13 |
| 24 | 4191-CHENP-2013-FORM 3 [10-06-2019(online)].pdf | 2019-06-10 |
| 25 | 4191-CHENP-2013-FER_SER_REPLY [10-06-2019(online)].pdf | 2019-06-10 |
| 25 | MTL-GPOA - MLK1.pdf | 2015-03-13 |
| 26 | 4191-CHENP-2013 FORM-6 27-02-2015.pdf | 2015-02-27 |
| 26 | 4191-CHENP-2013-DRAWING [10-06-2019(online)].pdf | 2019-06-10 |
| 27 | 4191-CHENP-2013-COMPLETE SPECIFICATION [10-06-2019(online)].pdf | 2019-06-10 |
| 27 | abstract4191-CHENP-2013.jpg | 2014-06-13 |
| 28 | 4191-CHENP-2013 CORRESPONDENCE OTHERS 06-11-2013.pdf | 2013-11-06 |
| 28 | 4191-CHENP-2013-CLAIMS [10-06-2019(online)].pdf | 2019-06-10 |
| 29 | 4191-CHENP-2013 FORM-3 06-11-2013.pdf | 2013-11-06 |
| 29 | 4191-CHENP-2013-HearingNoticeLetter-(DateOfHearing-13-12-2019).pdf | 2019-11-22 |
| 30 | 4191-CHENP-2013 CORRESPONDENCE OTHERS 27-9-2013.pdf | 2013-11-01 |
| 30 | 4191-CHENP-2013-Correspondence to notify the Controller (Mandatory) [25-11-2019(online)].pdf | 2019-11-25 |
| 31 | 4191-CHENP-2013-Written submissions and relevant documents (MANDATORY) [27-12-2019(online)].pdf | 2019-12-27 |
| 31 | 4191-CHENP-2013.pdf | 2013-06-02 |
| 32 | 4191-CHENP-2013 CLAIMS SIGNATURE LAST PAGE 30-05-2013.pdf | 2013-05-30 |
| 32 | 4191-CHENP-2013_Marked up Claims_Granted 328419_30-12-2019.pdf | 2019-12-30 |
| 33 | 4191-CHENP-2013 CORRESPONDENCE OTHERS 30-05-2013.pdf | 2013-05-30 |
| 33 | 4191-CHENP-2013_Drawing_Granted 328419_30-12-2019.pdf | 2019-12-30 |
| 34 | 4191-CHENP-2013 FORM-1 30-05-2013.pdf | 2013-05-30 |
| 34 | 4191-CHENP-2013_Description_Granted 328419_30-12-2019.pdf | 2019-12-30 |
| 35 | 4191-CHENP-2013 FORM-2 FIRST PAGE 30-05-2013.pdf | 2013-05-30 |
| 35 | 4191-CHENP-2013_Claims_Granted 328419_30-12-2019.pdf | 2019-12-30 |
| 36 | 4191-CHENP-2013_Abstract_Granted 328419_30-12-2019.pdf | 2019-12-30 |
| 36 | 4191-CHENP-2013 FORM-3 30-05-2013.pdf | 2013-05-30 |
| 37 | 4191-CHENP-2013-PatentCertificate30-12-2019.pdf | 2019-12-30 |
| 37 | 4191-CHENP-2013 FORM-5 30-05-2013.pdf | 2013-05-30 |
| 38 | 4191-CHENP-2013-IntimationOfGrant30-12-2019.pdf | 2019-12-30 |
| 38 | 4191-CHENP-2013 POWER OF ATTORNEY 30-05-2013.pdf | 2013-05-30 |
| 39 | 4191-CHENP-2013-RELEVANT DOCUMENTS [27-03-2020(online)].pdf | 2020-03-27 |
| 39 | 4191-CHENP-2013 CLAIMS 30-05-2013.pdf | 2013-05-30 |
| 40 | 4191-CHENP-2013-RELEVANT DOCUMENTS [23-09-2021(online)].pdf | 2021-09-23 |
| 40 | 4191-CHENP-2013 DESCRIPTION (COMPLETE) 30-05-2013.pdf | 2013-05-30 |
| 41 | 4191-CHENP-2013-RELEVANT DOCUMENTS [26-09-2022(online)].pdf | 2022-09-26 |
| 41 | 4191-CHENP-2013 DRAWINGS 30-05-2013.pdf | 2013-05-30 |
| 42 | 4191-CHENP-2013 PCT PUBLICATION 30-05-2013.pdf | 2013-05-30 |
| 42 | 4191-CHENP-2013-RELEVANT DOCUMENTS [15-09-2023(online)].pdf | 2023-09-15 |
| 43 | 4191-CHENP-2013-FORM-27 [12-09-2025(online)].pdf | 2025-09-12 |
| 1 | SEARCHSTRATEGY_03-08-2018.pdf |