This disclosure relates generally to control devices for content players, and more specifically to assisting the use of control devices with different content players in a network of content players.
The present disclosure discloses systems and methods for assisting use of control devices with different content players in a network of content players. In various implementations, a control device that is configurable to control one or more content players of a network of content players may transmit a plurality of signals indicating that a user wishes to utilize the control device in a particular area. The plurality of signals may include the first signal of a first type that is transmitted to a content player with which the control device is currently configured to control. The plurality of signals may also include a second signal transmitted to any content players that are located in the particular area. The particular area may include a content player if that content player is within proximity of the control device such that the content player can receive the second signal. A first content player may receive the first signal. If the first content player receives a notification from a second content player that received the second signal, the first content player may transmit a command to the control device to instruct a component associated with the second content player to activate. However, if the first content player does not receive the notification, the first content player may command the control device to instruct all components of a certain type (such as presentation devices) known to the control device to activate.
In such implementations, the first signal of the first type may be one or more radio frequency (RF) signals. Additionally, in such implementations the second signal of the second type may be one or more infrared (IR) signals and the command to activate the component(s) may include one or more IR command codes.
As such, components associated with a content player of the network of content players with which a user desires to configure the control device to control may be activated such that the respective content player may display one or more confirmation messages to confirm which content player the user wishes to configure the control device to control. In addition to assisting the control configuration process by commanding the control device to instruct one or more components to activate, the first content player may also instruct the control device to allow the control device to be configured to control another content player in the network of content players and/or command the control device to configure so as to control the other content player.
In some implementations, the control device may store a table of control entries transmitted by one or more of the content players of the network of content players wherein each entry corresponds to one of the content players and includes a control entry for the respective content player and may include a set of command codes for one or more components that are associated with the respective content player (though some sets may be empty sets as some content players may not be associated with any components). When a content player configures the control device to control the content player when the control device has not yet been configured to control other content players, the content player may construct the table by communicating with other content players in the network and transmitting the table to the control device. Subsequently, if information in the table changes (including replacing, removing, or adding devices), one or more content players in the network of content players may instruct the control device to update the stored table. In such implementations, configuring the control device to control a content player may include configuring the control device to utilize a particular entry of the table of pairing entries.
As such, in implementations where the control device is configurable to participate in the above discussed pairing process, the control device may reconfigured to control the second content player rather than the first content player by changing the entry the control device is configured to utilize from the entry corresponding to the first content player to the entry corresponding to the second content player.
It is to be understood that both the foregoing general description and the following detailed description are for purposes of example and explanation and do not necessarily limit the present disclosure. The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate subject matter of the disclosure. Together, the descriptions and the drawings serve to explain the principles of the disclosure.
The description that follows includes sample systems, methods, and computer program products that embody various elements of the present disclosure. However, it should be understood that the described disclosure may be practiced in a variety of forms in addition to those described herein.
Content players (such as set top boxes, television receivers, digital video recorders, television tuners, digital music players, desktop computers, laptop computers, cellular telephones, smart phones, mobile computing devices, and so on) may present content via one or more presentation devices (such as computer monitors, televisions, cathode ray tube displays, liquid crystal displays, speakers, printers, and/or other such devices for presenting content). The content that such content players may present may be stored by the content player and/or may be received from one or more content providers (such as one or more television programming providers, video on demand providers, pay per view movie providers, digital music providers, and so on) via one or more communication links (such as one or more satellite communication links, coaxial cable communication links, WiFi communication links, Internet protocol communication links, and so on). The operations of such content players may be controlled via one or more control devices, such as one or more remote control devices.
In some cases, control devices may be dedicated to a particular content player. However, in other cases, a single control device may be configured to be utilized with one or more of a number of different content players and/or other devices at a particular time. For example, a number of different content players of a particular type may be arranged within a particular location. A control device may be configured such that the control device may be utilized to control any one of the different content players at a particular time. This may be accomplished by pairing the control device with the particular content player which the control device is to control. In order to utilize the control device to control a different content player, the control device may be paired with the different content player, effectively unpairing the control device from the content player with which the control device was previously paired.
However, in the present disclosure, when a control device is configured to control a first content player and is then reconfigured to control to a second content player, the control device may retain control information (including display device settings) related to the first content player in addition to gathering information regarding the second content player. As such, the control device may later be reconfigured to control the first content player without having to go through a pairing process. Additionally, while the control device is configured to control the first content player, the first content player may obtain control information (and related display device information) from the second content player across the network and provide that control information to the control device. Thus the control device may be reconfigurable to control the second content player without the need to go through a pairing process with the second content player.
In addition to controlling the content player with which the control device is paired, the control device may be configurable to control various electronic device that are associated with the paired content player. For example, a content player may be associated with a television on which the content player may present content. When the control device is paired with the content player such that the control device is operable to control the content player, the control device may also be configured to control the television. As such, the control device may be utilized to control the content player and control operations of the television that are related to the content player (turning the television on and/or off, altering volume, and so on).
In some cases, pairing a control device with a content player may involve one or more complicated and burdensome operations. A user may have to manually configure the control device and/or the content player in order to pair the control device with the content player. In other cases, the control device and/or content player may be configurable to perform various operations to aid in pairing the control device with the content player. Such operations may include signaling that a user wishes to pair the control device with a particular content player located in a particular area (and/or the content player with which the control device is currently paired), displaying a prompt utilizing a presentation device associated with the particular content player requesting confirmation that the control device is to be paired with the particular content player, and pairing the control device with the particular content player if an affirmative response to the confirmation is received.
However, prior to pairing the control device with the particular content player, the control device may not be configured to control the presentation device that is associated with the particular content player. If the presentation device is not activated (i.e., powered on), the prompt to confirm pairing may not be presented. The control device may be configured to transmit instructions to presentation devices to power on as part of initiating such a pairing sequence, but even if the control device is configured to control presentation devices associated with the content player with which the control device is paired the control device may not be configured to control presentation devices associated with the particular content player with which a user intends to pair the control device. As such, the user may be required to manually power on the appropriate presentation device in order to complete such a pairing operation and/or locate and utilize another control device associated with the appropriate presentation device. These additional operations may make the process of pairing a control device with a content player more burdensome and/or difficult for a user.
The present disclosure discloses systems and methods for assisting use of control devices with different content players in a network of content players. A first content player in a network of content players may receive a first signal from a control device which may be sent by the control device as part of a plurality of signals that a user intends to utilize the control device in a particular area. The plurality of signals may include the first signal (which may be a first type of signal such as a radio frequency signal transmitted to the first content player because the control device is currently paired with the first content player) and a second signal (which may be a second type of signal such as an infrared signal) transmitted to any content players that are located in the particular area (within proximity of the control device such that they can be reached by the second signal). If the first content player, which receives the first signal, receives a notification from a second content player that received the second signal, the first content player may transmit a command to the control device to instruct a component associated with the second content player to activate. However, if the first content player does not receive a notification from a second content player that received the second signal, the first content player may command the control to instruct all components of a certain type (such as presentation devices) known to the control device to activate. In this way, components associated with content players may be activated such that messages regarding configuring the control device to control one or more content players may be presented.
In addition to assisting the control configuration process by commanding the control device to instruct one or more components to activate, the first content player may store a table of control entries transmitted by one or more of the content players of the network of content players wherein each entry corresponds to one of the content players and may include a control entry for the respective content player and set of command codes for one or more components that are associated with the respective content player (though some sets may be empty sets as some content players may not be associated with any components). In some implementations, the control device may also instruct the control device to allow the control device to be configured to control another content player in the network of content players and/or command the control device to configure so as to control the other content player. In such implementations, configuring the control device to control a content player may include configuring the control device to utilize a particular entry of the table of control entries. Further, reconfiguring the control device to no longer control a content player and reconfiguring the control device to control another content player may include altering the particular entry of the table of control entries which the control device is configured to utilize.
The content player 101 (and/or the content players A-N 104A-104N) may include one or more processing units 106, one or more non-transitory storage media 107 (which may take the form of, but is not limited to, a magnetic storage medium; optical storage medium; magneto-optical storage medium; read only memory; random access memory; erasable programmable memory; flash memory; and so on), one or more communication components 108, one or more infrared (IR) transmitters and/or receivers 109, one or more radio frequency (RF) transmitters and/or receivers 110, and/or one or more output components 111. The processing unit 106 may execute instructions stored in the non-transitory storage medium 107 to transmit content (such as content stored in the non-transitory storage medium 107 and/or content being received via the communication component 108 and/or non-networked communication components not shown such as a satellite receiver component) to one or more presentation devices, such as one or more display devices 105 and/or devices not shown such as audio amplifiers, via the output component. Further, the processing unit 106 may execute instructions stored in the non-transitory storage medium 107 to communicate with other content players connected to the network 103 via the communication component and/or send signals to and/or receive signals from the control device 102 via the infrared transmitter and/or receiver 109 and/or the radio frequency transmitter and/or receiver 110.
The control device 102 may include one or more processing units 112, one or more non-transitory storage media 115, one or more IR transmitters and/or receivers 114, and/or one or more RF transmitters and/or receivers 113. The processing unit 112 may execute instructions stored in the non-transitory storage medium 115 to initiate a configuration sequence to configure to control the content player 101 and/or the content players A-N 104A-104N and/or control the content played of the content player 101 and/or the content players A-N 104A-104N with which the control device is configured to control. In some cases, such operations may be performed in response to user input received via one or more user input elements included by the control device (not shown). For example, the control device may include a dedicated “configure to control device” button that initiates a configuration sequence to configure the control device to control a content player which is within IR signaling proximity of the control device. By way of another example, attempting to utilize the control device with a content player that is not currently configured to be controlled with the control device may initiate a configuration sequence to configure the control device to control the content player not previously controlled by the control device.
In various implementations, a configuration sequence to configure the control device 102 to control one of the content player 101 and/or the content players A-N 104A-104N may include transmitting a RF signal to the content receiver with which the control device is currently configured to control via the RF transmitter and/or receiver 113 and transmitting an IR signal to a content player which is within IR signaling proximity to the control device (and to which the control device is to be configured to control) via the IR transmitter and/or receiver 114. As the IR signal may only be received by a content player that is located proximate and within line-of-sight to the control device, if a user indicates via the control device that the user wishes to utilize the control device in a particular area it is probable that only a content player in that particular area may receive the IR signal As the RF signal may have a greater range than the IR signal and may pass through structures such as walls and doors, it is probable that the content player with which the control device is currently configured to control may receive the RF signal even if that content player is not in the particular area where the user indicates that the user wishes to utilize the control device. In some cases, the configuration sequence may also include transmitting an instruction to a component associated with the content player within IR signaling proximity of the control device (such as the display device 105) to activate (power on) via the IR transmitter and/or receiver 114.
The content player with which the control device 102 is already configured to control, such as the content player 101, may receive the RF signal. If the content player 101 also receives the IR signal, such as if the content player 101 is within the area where the user indicated that the user wished to utilize the control device, the content player 101 may abort the configuration sequence as the content player 101 is already controlled by the control device.
If, however, the content player 101 does not receive the IR signal, the content player 101 may determine whether or not another content player connected to the network 103 (such as one of the content players A-N 104A-104N) notifies the content player 101 that the other content player has received the IR signal. If so, the content player 101 may determine that the user has requested to configure the control device 102 to control the other content player. As such, the content player 101 may command the control device to instruct a presentation device (such as the display device 105) associated with the other content player to activate (i.e., power on). Such a command may include one or more IR codes for activating the component associated with the other content player (which may be stored in the non-transitory storage medium 107 and/or the non-transitory storage medium 115). The other content player may present a prompt via the associated component that may request the user to confirm that the user wishes to configure the control device to control the other content player and/or associated equipment. If an affirmative response is received, the content player 101 may instruct the control device to allow the control device to be configured to control the other content player. Such instruction may include commanding the control device to utilize an entry in a table of control entries that corresponds to the other content player. Alternatively, such instruction may include instructing the control device to unpair from the control device so that the other content player may pair with the control device.
However, even if a target content player is within the area in which the user has indicated that the user wishes to utilize the control device 102, the target content player may not receive the IR signal (such as if an IR transmitter and/or receiver of the target content player is blocked). As such, if the content player (such as the content player 101) that receives the RF signal determines that another content player connected to the network 103 (such as one of the content players A-N 104A-104N) has not notified the content player 101 that the IR signal was received, the content player 101 may command the control device to instruct all presentation devices known to the control device to be associated with any content player connected to the network 103 to activate. The content player 101 may also command all content players connected to the network 103 to present a prompt requesting the user confirm whether or not to configure the control device to control the respective content player on the presentation device associated with the respective content player. The content player 101 may then determine which of the content players connected to the network 103 to which the user wishes to configure the control device to control based on which response is received for which prompt. As such, the content player 101 may instruct the control device to allow the control device to be configured to control the determined content player. Such instruction may include commanding the control device to utilize an entry in a table of control entries that corresponds to the determined content player. Alternatively, such instruction may include instructing the control device to unpair from the control device so that the determined content player may pair with the control device.
In one or more implementations, the control device 102 may store a table of control entries received from one or more content players (such as the content player 101 and/or the content players A-N 104A-104N) connected to the network 103. Each of the control entries may correspond to one of the content players and may include a control entry for the respective content player (such as a RF entry) and a set of command codes (such as IR command codes) for components that are associated with the respective content player. The control device 102 may be configured to control and/or configured to no longer control one or more of the content players by configuring which of the entries in the table the control device is set to utilize. As such, when the control device reconfigures to no longer control a particular content player and to control another content player, the control device may be configured to utilize the entry corresponding to the other content player instead of the entry corresponding to the particular content player.
In such implementations, the table of control entries may be constructed by one or more of content players connected to the network 103, such as the content player 101 and/or the content players A-N 104A-104N. In constructing the table of control entries, the content player may communicate with other content players connected to the network in order to determine entries to create for each content player, command codes to include in the entries for the respective content player for associated components (though some entries may not include command codes for components associated with the content player corresponding to that entry as some content players may not be associated with components), and so on. If the content player constructing the table of control entries determines that the control device 102 does not currently store the table of entries, the content player may transmit the table of entries to the control device and also may instruct the control device as to which of the entries to utilize. The control device may subsequently be reconfigured to no longer control a currently controlled content player and to control a different content player by updating which entry in the table of pairing entries that the control device is configured to utilize.
Additionally, one or more of the content players connected to the network 103, such as the content player 101 and/or the content players A-N 104A-104N, may determine that the table of entries stored by the control device 102 contains information that is inaccurate. The information in the table of entries stored by the control device may be out of date if one or more content players have been added to and/or removed from the network, if one or more components have been associated and/or de-associated with one or more content players connected to the network, and so on. If the content player determines that the table of entries stored by the control device 102 contains information that is inaccurate, the content player may command the control device to update the inaccurate information. Such updating may be performed as soon as the information becomes inaccurate, upon a set update schedule (such as at 3 am every morning), and so on.
Although the system 100 is illustrated and described above such that the first signal is an RF signal and the second signal is an IR signal, other signal types are possible. For example, the second signal may be a type of signal other than an IR signal that may be received by content players within a certain proximity to the control device (such as twenty feet) whereas the first signal may be a type of signal other than a RF signal that may be received by a content player paired with the control device that is outside of the certain proximity to the control device.
At block 204, after the processing unit 106 determines that the content receiver 101 receives the first signal, the processing unit determines whether or not the content receiver 101 receives a second signal that the control device 102 transmitted to a content player located in the area in which the user intends to utilize the control device. If so, the flow returns to block 202 and the content player 101 continues to operate, as the content player 101 is already controlled by the control device. Otherwise, the flow proceeds to block 205.
At block 205, after the processing unit 106 determines that the content receiver does not receive the second signal, the processing unit determines whether or not the content receiver receives a notification from another content player connected to the network 103 indicating that the other content receiver received the second signal. If so, the flow proceeds to block 206. Otherwise, the flow proceeds to block 209.
At block 206, after the processing unit 106 determines that the content receiver 101 receives the notification, the processing unit transmits a command to the control device 102 to instruct a display related to the other content player to activate (i.e., power on). The flow then proceeds to block 207. At block 207, the processing unit determines whether or not a confirmation to configure the control device to control the other player has been received. If so, the flow proceeds to block 208. Otherwise, the flow returns to block 202 and the content player 101 continues to operate under the control of the control device.
At block 208, after the processing unit 106 determines that a confirmation to configure the control device 102 to control the other content player has been received, the processing unit instructs the control device to allow the control device to be configured to control the other content player. As part of such, if the control device is not capable of controlling multiple content players simultaneously, the processing unit may instruct the control device to reconfigure such that the control device no longer controls the content player 101. The flow then returns to block 202 and the content player continues to operate.
At block 209, after the processing unit 106 determines that the content receiver 101 does not receive the notification, the processing unit transmits a command to the control device 102 to instruct all displays known to the control device to be associated with any content player connected to the network 103 to activate (i.e., power on). The processing unit may also signal the other content players to display confirmation prompts on their associated displays indicating for the user to make a particular selection to configure the control device to control the content player associated with that display. The flow then proceeds to block 210. At block 210, the processing unit determines whether or not a confirmation to configure the control device to control another content player identified based on the display which displayed the confirmation prompt to which a response was received. If so, the flow proceeds to block 211. Otherwise, the flow returns to block 202 and the content player 101 continues to operate.
At block 211, after the processing unit 106 determines that a confirmation to configure the control device 102 to control another content player was received based on the displayed confirmation prompt, the processing unit instructs the control device to allow the control device to be configured to control the identified content player. As part of such, if the control device is not capable of controlling multiple content players simultaneously, the processing unit may instruct the control device to reconfigure such that the control device no longer controls the content player 101. The flow then returns to block 202 and the content player continues to operate.
Although the method 200 is illustrated and described as including particular operations performed in a particular order, other arrangements of other operations are within the scope of the present disclosure. By way of a first example, in other implementations, the order of blocks 203 and 204 may be reversed. By way of another example, the control device 102 may be configured to anticipate receipt of the command transmitted in either block 206 or 209 and if such a command is not received with a period of time (such as two seconds), the control device may act as if the command transmitted in block 209 was received. As such, if the processing unit 106 determines at block 204 that the content receiver 101 receives the second signal, the processing unit may transmit a command to the control device instructing the control device to omit instructing any displays to power on.
At block 304, after the processing unit 106 determines to set up the control device 102, the content player 101 constructs the table of control entries. As part of the table of control entries, the content player 101 communicates with other content players connected to the network 103 to determine entries to create as well as one or more sets of command codes (such as IR command codes) for components associated with the content player corresponding to the respective entry (though some entries may not include any command codes as some content players may not be associated with any components). The pairing entry table may also include information needed to allow the control device to communicate via RF with other content players (such as the content players 104A-N). Such information could include for example media access control (MAC) addresses, personal area network (PAN) identifiers and addresses, encryption keys, and so on. The flow then proceeds to block 305 where the processing unit transmits the table of control entries to the control device before the flow proceeds to block 306. At block 306, the processing unit transmits an instruction to the control device instructing the control device to utilize a particular entry of the table of control entries. The flow then returns to block 302 where the content player 101 continues to operate.
At block 307, after the processing unit 106 determines not to set up the control device 102, the processing unit determines whether or not to update the table of control entries. The processing unit may determine to update the table of control entries if the processing unit determines that information in the table has changed (such as in response to information received from another content player). If so, the flow proceeds to block 308. Otherwise, the flow proceeds to block 310.
At block 308, the processing unit 106 determines to update the table of control entries, the processing unit updates the table of control entries. Then the flow proceeds to block 309 where the processing unit transmits the updated table to the control device 102 before the flow returns to block 302 and the content player 101 continues to operate.
At block 310, the processing unit 106 determines not to update the table of control entries, the processing unit determines whether or not to change content player to which the control device 102 is configured to control. If not, the flow returns to block 302 where the content player 101 continues to operate. Otherwise, the flow proceeds to block 311 where the processing unit transmits an instruction to the control device instructing the control device to utilize a different entry in the table of control entries that corresponds to the content player to which the control device is to be configured to control. The flow then returns to block 302 where the content player 101 continues to operate.
Although the method 300 is illustrated and described as including particular operations performed in a particular order, other arrangements of other operations are within the scope of the present disclosure. For example, blocks 308 and 309 are illustrated as separate operations performed in a linear sequence. However, in various implementations the content player 101 may instruct the control device 102 to update the stored table instead of updating the table and then transmitting the updated table to the control device.
As illustrated in
However, returning to
In the present disclosure, the methods disclosed may be implemented as sets of instructions or software readable by a device. Further, it is understood that the specific order or hierarchy of steps in the methods disclosed are examples of sample approaches. In other embodiments, the specific order or hierarchy of steps in the method can be rearranged while remaining within the disclosed subject matter. The accompanying method claims present elements of the various steps in a sample order, and are not necessarily meant to be limited to the specific order or hierarchy presented.
The described disclosure may be provided as a computer program product, or software, that may include a non-transitory machine-readable medium having stored thereon instructions, which may be used to program a computer system (or other electronic devices) to perform a process according to the present disclosure. A non-transitory machine-readable medium includes any mechanism for storing information in a form (e.g., software, processing application) readable by a machine (e.g., a computer). The non-transitory machine-readable medium may take the form of, but is not limited to, a magnetic storage medium (e.g., floppy diskette, video cassette, and so on); optical storage medium (e.g., CD-ROM); magneto-optical storage medium; read only memory (ROM); random access memory (RAM); erasable programmable memory (e.g., EPROM and EEPROM); flash memory; and so on.
It is believed that the present disclosure and many of its attendant advantages will be understood by the foregoing description, and it will be apparent that various changes may be made in the form, construction and arrangement of the components without departing from the disclosed subject matter or without sacrificing all of its material advantages. The form described is merely explanatory, and it is the intention of the following claims to encompass and include such changes.
While the present disclosure has been described with reference to various embodiments, it will be understood that these embodiments are illustrative and that the scope of the disclosure is not limited to them. Many variations, modifications, additions, and improvements are possible. More generally, embodiments in accordance with the present disclosure have been described in the context or particular embodiments. Functionality may be separated or combined in blocks differently in various embodiments of the disclosure or described with different terminology. These and other variations, modifications, additions, and improvements may fall within the scope of the disclosure as defined in the claims that follow.