In an increasingly digitally connected world, telecommunication services play a crucial role in the daily operation of businesses and in consumers' lives. Telecommunication services commonly used by both businesses and consumers include telephone, network (e.g., Internet) connectivity, and television. These services are typically provided to the customer premises by a telecommunication provider through one or more wired or wireless connections.
Television, in particular, is one service that may be provided to consumers. Typically, incoming television signals are received by a signal processing device, such as a set-top-box (STB), before being forwarded to the consumer's audio/video equipment (e.g., television). The consumer may control what is watched on the television by controlling the STB through a remote.
The following detailed description of exemplary embodiments refers to the accompanying drawings. The same reference numbers in different drawings may identify the same or similar elements. Also, the following detailed description does not limit the invention.
Implementations described herein provided for a remote control through which a user may control television viewing that is provided through a STB. The remote control may include a button that puts the remote control into an “interactive” mode. In this mode, the user may control the STB by pointing the remote at the television and moving the remote. In various implementations, the user may, for example, “point and click” to select menu items displayed by the STB, interact with a graphical control or icon displayed by the STB, or use gestures to interact with the STB.
Network 110 may include a Local Area Network (LAN), a wide area network (WAN), such as a cellular network, a satellite network, a broadcast television based network, the Internet, a private WAN, or a combination of the Internet and a private WAN, that is used to transport data. Although shown as a single element in
Server devices 120 may include servers or other network devices used to deliver or control delivery of the telecommunication services to customer premises 130. For example, server devices 120 may include web servers, network switches or routers, television broadcast facilities. etc.
Customer premises 130 may include a number of electronic devices, such as computing device 135, telephone 140, and television 145. Customer premises 130 may additionally include devices that provide an interface to personal computer 135, telephone 140, and television 145, such as a local gateway 150 and a set-top box (STB) 155.
Computing device 135 may include, for example, a personal computer, such as desktop, laptop computer, personal digital assistant (PDA), etc., used for general computing tasks.
Telephone 140 may include standard analog phones or VoIP (voice over IP) phones. As a VoIP phone, telephone 140 may be a stand-alone telephone capable of initiating VoIP calls over network 110 or a “soft-phone” that is implemented as software on computing device 135.
Television 145 may include a digital or analog television through which a user may watch programming. For example, television 145 may include a high-definition television (HDTV) set. Television 145 may receive audio and video signals from STB 155 present the signals to the user.
Gateway 150 may include a network device that provides an interface from network 110 to personal computer 135, telephone 140, and television 145. For example, when telecommunication services are provided to customer premises 130 via optical fiber, gateway 150 may include an optical network terminal (ONT) to connect to the optical fiber. The ONT may convert between signals appropriate for devices 135/140/145/155 and signals appropriate for transmission over optical fiber. For example, the ONT may include an Ethernet output port that connects to personal computer 135, a standard telephone port for connecting to a standard telephone 140, and/or a coaxial cable that connects to STB 155.
STB 155 may include a device for selecting and/or obtaining content that may be shown or played on television 145. STB 155 may receive a television signal from gateway 150, convert the signal to a form usable by television 145, and transmit the signal to television 145 for display. STB 155 may receive commands, such as commands transmitted via a remote control, and control television 145 accordingly. For example, users may use a remote control to interact with STB 155 and/or television 145 in an interactive session. The interaction of STB 155 with a remote control will be more particularly described below.
In some implementations, STB 155 may include a recording function in which STB 155 may record programs delivered to STB and playback the programs when desired by the user. Additionally, in some implementations, STB 155 may receive programs on-demand (at the selection of the user) from one or more of servers 120.
In general, customer premises 130 may be either a residential or business location. Additionally, although only a single personal computer 135, telephone 140, and television 145 are shown in
The physical housing of remote control 200 may additionally include one or more buttons located on the side or bottom of remote control 200. These buttons may be referred to herein as the “interactive mode buttons” of remote control 200. Two such buttons are shown in
It can be appreciated that the particular form of remote control 200 is exemplary. Remote control 200 could be implemented in many alternative physical configurations. For example, the interactive mode buttons may be located on the bottom of remote control 200 and there may be one or more than two interactive mode buttons.
Control unit 310 may include a processor, microprocessor, or other type of processing logic that may interpret and execute instructions. Memory 320 may include a dynamic or static storage device that may store information and instructions for execution by control unit 310. For example, memory 320 may include a storing component, such as a random access memory (RAM), a dynamic random access memory (DRAM), a static random access memory (SRAM), a synchronous dynamic random access memory (SDRAM), a ferroelectric random access memory (FRAM), a read only memory (ROM), a programmable read only memory (PROM), an erasable programmable read only memory (EPROM), an electrically erasable programmable read only memory (EEPROM), and/or a flash memory.
In some implementations, control unit 310 and memory 320 may be omitted. Instead, remote control 200 may be implemented entirely as a hardwired circuit, i.e., without using control software.
Motion sensor 330 may include one or more components capable of sensing motion of remote control 200. Motion sensor 330 may include an accelerometer and/or a gyrometer. An accelerometer is a device for measuring acceleration. The accelerometer may be implemented as a circuit that detects acceleration of remote control 200 when it is moved by the user. A gyrometer is a device for measuring tilt. The gyrometer may be implemented as a circuit that detects tilting of remote control 200.
Infrared transmitter 340 may include circuitry for transmitting an infrared signal. The signal may be particularly used to transmit when buttons, such as buttons 205, 210, 230, 220, and 230, on remote control 200 are pushed by the user.
Key input component 350 may be circuitry designed to determine which buttons, such as buttons 205, 210, 230, 220, and 230, have been pressed by the user. An indication of the buttons that have been pressed may be transmitted, via infrared transmitter 340 or local wireless network component 360, to STB 155.
Local wireless connection component 360 may include circuitry designed to implement a local wireless connection. For example, remote control 200 may connect to STB 155 via a Bluetooth connection, IEEE 802.11 (“Wi-Fi”) based connection, or another type of connection. The wireless connection implemented by local wireless connection component 360 may generally be relatively short-range connection.
In some implementations, both infrared transmitter 340 and local wireless connection component 360 may be implemented in remote control 200. In other implementations, only one of infrared transmitter 340 or local wireless connection component 360 may be implemented. For instance, local wireless connection component 360 may implement a Bluetooth connection with STB 155, where the Bluetooth connection is used to send information relating to key presses and information generated by motion sensor 330 to STB 155. Alternatively, infrared transmitter 340 may be exclusively used to transmit into to STB 155.
In some implementations, motion sensor 330 may be omitted. In this case, motion of remote control 200 may be estimated by STB based on reception of infrared signals emitted by infrared transmitter 340.
Bus 410 may include a path that permits communication among the elements of STB 155. Processing logic 420 may include a processor, microprocessor, or other type of processing logic, such as an application specific integrated circuit (ASIC), field programmable gate array (FPGA), etc., that may interpret and execute instructions. Memory 430 may include a random access memory (RAM) or another type of dynamic storage device that may store information and instructions for execution by processing logic 420, read only memory (ROM) or another type of static storage device that may store static information and instructions for use by processing logic 420, and/or another type of storage device.
Infrared receiver 440 may include circuitry for receiving infrared signals, such as signals transmitted from infrared transmitter 340 of remote control 200. Infrared receiver 440 may receive and decode the input infrared signals to obtain, for example, the key that was pressed by the user. In some implementations, the infrared signals sent from remote control 200 may also be used to indicate when remote control 200 is pointed at STB 155 and may be used to determine movement of remote control 200. For example, infrared sensor 440 may sense the intensity of the received infrared signal, and based on the intensity, estimate the direction that the infrared transmitter in remote control 200 is moving relative to infrared receiver 440. In some implementations, infrared receiver 440 may include multiple, spatially separated, reception circuits, the outputs of which can be used to more accurately determine the motion of remote control 200.
Output device 450 may include one or more ports for outputting information from STB 155. For example, audio and video information may be output to television 145. The signals output to television 145, in addition to including the television signals received from a television provider, may include graphical interface information. For example, STB 155 may display a user guide menu on television 145. The user may interact with the menu using remote control 200 to, for example, select programs to watch or record.
Communication interface 460 may include one or more communication interfaces. For example, communication interface may include an Ethernet interface to through which STB 155 may communicate with gateway 150 to receive programming or other information from servers 120. Communication interface 460 may also include local wireless network transceivers for communicating with local wireless connection component 360 of remote control 200.
As will be described in detail below, STB 155 may perform certain operations. STB 155 may perform these, and other operations, in response to processing logic 420 executing software instructions contained in a computer-readable medium, such as memory 430.
The software instructions may be read into memory 430 from another computer-readable medium or from another device via communication interface 460. The software instructions contained in memory 430 may cause processing logic 420 to perform processes that will be described later. Alternatively, hardwired circuitry may be used in place of, or in combination with, software instructions to implement processes consistent with exemplary embodiments. Thus, embodiments described herein are not limited to any specific combination of hardware circuitry and software.
Remote control 200 may include a “normal” operation mode in which a user may interact with STB 155 and television 145 in a normal remote control sequence, in which, for example, the user may press the normal remote buttons on the top of remote control 200, such as buttons 210 or 215. Each of these keys may correspond to a particular command that is transmitted to STB 155 via infrared transmitter 340.
Additionally, consistent with aspects described herein, an “interactive command mode” may be initiated (block 510) by, for example, pressing one or both of buttons 220 or 230. As previously mentioned, these buttons may be designed as buttons that are easily accessible when remote control 200 is being casually held by the user. The user may thus be able to casually press these buttons without having to be looking at remote control 200.
When in the interactive command mode, remote control 200 and STB 155 may interact so that a touch-screen like interface is presented to the user. STB 155 may respond to movements of remote control 200 to accept commands through the graphical touch-screen interface presented by STB 155 (block 520). More particularly, one or both of buttons 220 and 230, potentially in combinations with the movement of remote control 200, may be used to interact with a visual interface presented by STB 155. The movement of remote control 200 may be detected through, for example, infrared receiver 440 or through motion sensor 330. Examples of the interaction of STB 155 and remote control 200 will be described below.
At some point, the interactive command mode may end (block 530). At this point, STB 155 may go back to a normal command entry mode.
Additionally, details relating to the operation of remote control 200 and STB 155 when in interactive mode will next be described with reference to
For interface 600, movement of remote control 200 may cause an icon, such as pointer icon 610, to move over interface 600. For example, infrared receiver 440 of STB 155 may include multiple receiver sensors that may be used to translate an infrared signal received from remote control 200 into a signal that represents a direction of movement. STB 155 may then convert this into a location for pointer icon 610 on interface 600.
In one implementation, whenever pointer icon 610 moves over a particular show or channel, the area corresponding to the show or channel may be visually distinguished. In
A “wheel” object 720 is included in interface 700. Wheel object 720 may be any graphical object or widget that a user can manipulate through touch-screen like gestures made with remote control 200. For example, one of buttons 220 or 230 may be pressed to cause STB 155 to enter the interactive command mode. The user may then move pointer icon 710 over wheel object 720, press and hold one of buttons 220 or 230 to “grab” the wheel, and then quickly move remote control 200 to spin the wheel either counter-clockwise or clockwise.
In the example of
It can be appreciated that the wheel object 720 is only one example of a graphical object which a user may interact to control STB 155. In general, such objects may include any widget or media object that the user may interact with and can assist the user in, for example, sorting/stacking, browsing, or otherwise manipulating media information.
Assume that the user would like to control an aspect of the playback of the program. For example, STB 155 may provide the ability to pause, rewind, or fast-forward (for non-live programs) the viewing of the program. In this example, the user may use simple gestures to control these commands. For example, the user may press one of buttons 220 or 230 to enter the interactive mode. The user may then, while continuing to hold down the pressed button, move remote control 200 to form a gesture that corresponds to a command. As shown in
As described with respect to
Although examples of pausing, rewinding, and fast-forwarding were given for the gestures discussed with respect to
The foregoing description of implementations provides illustration, but is not intended to be exhaustive or to limit the implementations to the precise form disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from practice of the teachings.
In addition, while a series of blocks and/or acts have been described with regard to the process illustrated in
It will be apparent that aspects described herein may be implemented in many different forms of software, firmware, and hardware in the implementations illustrated in the figures. The actual software code or specialized control hardware used to implement aspects does not limit the invention. Thus, the operation and behavior of the aspects were described without reference to the specific software code—it being understood that software and control hardware can be designed to implement the aspects based on the description herein.
Even though particular combinations of features are recited in the claims and/or disclosed in the specification, these combinations are not intended to limit the invention. In fact, many of these features may be combined in ways not specifically recited in the claims and/or disclosed in the specification.
No element, act, or instruction used in the present application should be construed as critical or essential to the implementations described herein unless explicitly described as such. Also, as used herein, the article “a”, “an”, and “the” are intended to include one or more items. Where only one item is intended, the term “one” or similar language is used. Further, the phrase “based on” is intended to mean “based, at least in part, on” unless explicitly stated otherwise.