The proliferation of channels for subscription television (such as cable, optical fiber, or satellite subscriptions) can provide viewers with numerous viewing options. Programming with interruptions (such as advertising) and/or delays (such as in live-action events) may cause typical viewers to begin browsing through other channels with the intention of returning to the original programming when the interruption and/or delay is over.
The following detailed description 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.
Systems and/or methods described herein may permit a user of a subscription television service to view multiple panels on a display in addition to a current program. In one implementation, for example, if a user selects a multi-panel mode on a set-top box, the display may be divided so that the current program may be viewed along with one or more options for additional subscription television content. The options for addition subscription television content may be based on user-defined criteria or other criteria that identifies, for example, a top program, gaming content, video-on-demand (VOD) options, etc. A user may select audio and/or other functionality for any one of the displayed panels.
As used herein, the term “set-top box” or “STB” may refer to any media processing system that may receive multimedia content over a network and may provide such multimedia content to an attached television. Also, as used herein, the terms “user,” “viewer,” and “customer” may refer interchangeably to a person who views, listens, or plays a multimedia program, video, and/or music (e.g., provided via a STB). A program generally corresponding to particular criteria stored in the STB may be referred to herein as a “top program.”
Referring to
Network 210 may include a local area network (LAN), a wide area network (WAN), such as a cellular network, a satellite network, or the Internet, a private WAN, or a combination of the Internet and a private WAN, etc. that is used to transport data. Although shown as a single element in
Server 220 may include one or more devices for providing content/information to STB 250 and/or television 260 in accordance with commands that are issued from STB 250. Examples of server 220 may include a headend device that provides broadcast television programs, a video-on-demand device that provides television programs upon request, and a program guide information server that provides information related to television programs available to STB 250. Server 220 may also receive information from one or more STBs, such as recorded information from STB 250 that may include viewing/interaction histories tracked by STB 250. Server 220 may store the information from the STBs in, for example, a database, such as database 230.
Database 230 may maintain entries relating to subscribers' viewing histories and/or other interactions (e.g., game playing, etc.). For example, database 230 may store information that server 220 receives from one or more STBs. In one implementation, database 230 may include exemplary fields, such as, a user-identification field, a date field, a time field, a channel field, and a program/game identification field. While only one database is shown in
Gateway 240 may include a network device that provides an interface from network 210 to television 260 and other network connectivity devices (not shown). For example, when telecommunication services are provided to the customer's premises via optical fiber, gateway 240 may include an optical network terminal (ONT) that connects to the optical fiber. The ONT may convert between signals appropriate for television 260 and signals appropriate for transmission over optical fiber. For example, the ONT may include a coaxial cable that leads to television 260 or STB 250. The ONT may also include an Ethernet output port that connects to a personal computer or a VoIP telephone and/or a standard telephone port for connecting to a standard telephone.
Gateway 240 may include one of a number of possible gateway devices, including a satellite antenna, a coaxial cable connection, an ONT, or a broadband access for Internet protocol TV (IPTV). The satellite antenna and receiver may provide an interface for television service broadcast from satellites. The coaxial cable connection may provide an interface for television service connected to a consumer via coaxial cables. The ONT may provide an interface for an optical fiber connection. The broadband IPTV access may include any device that provides broadband access over which television service may be provided.
STB 250 may include a device for selecting and/or obtaining content that may be shown or played on television 260. STB 250 may receive a television signal from gateway 240, convert the signal to a form usable by television 260, and transmit the signal to television 260 for display. STB 250 may further allow a user to alter and/or interact with the content provided to television 260 based on a signal (e.g., a channel up or channel down signal, a function signal, etc.) from, for example, remote control 270. STB 250 may also be capable of sending data to server 220.
In one implementation, STB 250 may track information relating to programs or other content provided to television 260. In another implementation, STB 250 may track information relating to programs output to other devices (not shown), such as a video cassette recorder (VCR), a digital video recorder (DVR), an external storage device, or a remote streaming video viewing device. STB 250 may provide some or all of the tracked information to a server, such as server 220. STB 250 may also obtain tracked information and provide the obtained program viewing information to television 260. In some implementations, STB 250 may obtain tracked program viewing information from an internal memory or from server 220.
Television 260 may include a digital or analog television through which a user may watch programming. Television 260 may refer to any device that can receive and display multimedia content delivered over network 210 for perception by users. Television 260 may include technologies such as cathode ray tube (CRT) displays, liquid crystal displays (LCDs), light-emitting diode (LED) displays, plasma displays and any attendant audio generation facilities.
Remote control 270 may include a device for issuing wireless commands to and for controlling electronic devices (e.g., television 260, STB 250, a stereo system, a digital video disc (DVD) player, etc.). In different implementations, in place of remote control 270, other types of devices (e.g., a wireless keyboard, a mouse, a handheld device (e.g., cell phone), etc.) may be used to control the electronic devices.
In implementations described herein, a user may send a signal (e.g., via a remote control 270) to STB 250 to enter a multi-panel browsing mode. STB 250 may split the display on television 260 into multiple panels, retrieve criteria (which may be either pre-set criteria or user-specified criteria) for each of the panels, and send a query message via network 210 to server 220 to provide information and/or programming content consistent with the criteria for each panel being displayed in the multi-panel browsing mode. Server 220 may respond to the query message by sending to STB 250 (via network 210) information consistent with the query. For example, based on information stored in database 230, server 220 may send to STB 250 the channel of a most-watched program for the current time and/or the identity of a particular game. STB 250 may receive the information from server 220 and automatically tune the individual panels to channels based on the information from server 220.
A single network 210, server 220, database 230, gateway 240, STB 250, and television 260 have been illustrated in
Additionally, although only a single STB 250 and television 260 are shown in
Control unit 310 may include a processor, microprocessor, or other type of processing logic that may interpret and execute instructions. Among other functions, control unit 310 may collect and store local viewing histories associated with television programming. Control unit 310 may execute instructions to display multi-panel views and retrieve program ranking information from another device, such as server 220. Control unit 310 may also receive information and/or instructions from other devices, such as server 220.
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 storage 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 one implementation, memory 320 may store user preferences for a most-watched program category and/or game types to be used in a multi-panel browsing mode. Most-watched program categories and/or game types may be selected, for example, based on available multimedia content and classifications determined by the subscription television provider.
Display 330 may include any component capable of providing visual information. For example, in one implementation, display 330 may be a light emitting diode (LED) or a liquid crystal display (LCD). In another implementation, display 330 may use another display technology, such as a dot matrix display, etc. Display 330 may display, for example, text (such as a time, a date or a channel selection), image, and/or video information. Display 330 may be an optional component.
Network connection 340 may include any transceiver-like mechanism that enables STB 250 to communicate with other devices and/or systems. For example, network connection 340 may include an Ethernet interface, an optical interface, a coaxial interface, a radio interface, or the like. Network connection 340 may allow for wired, wireless, and/or optical communication. Network connection 340 may be configured to connect STB 250 to a packet-based IP network.
Input/output devices 350 may include user input devices such as external buttons and output devices such as a display or printer. With input/output devices 350, a user may interact with STB 250. In some implementations, input/output devices 350 may be implemented via a remote control, such as remote control 270 of
As will be described in detail below, STB 250 may perform certain operations related to enabling multi-panel browsing in accordance with user preferences. STB 250 may perform these operations in response to control unit 310 executing software instructions contained in a computer-readable medium, such as memory 320. A computer-readable medium may be defined as a physical or logical memory device. The software instructions may be read into memory 320 from another computer-readable medium or from another device. The software instructions contained in memory 320 may cause control unit 310 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 described herein. Thus, implementations described herein are not limited to any specific combination of hardware circuitry and software.
Although
Content client 402 may include hardware, software, and/or a combination of hardware and software for outputting multimedia content/data that is received from a content distribution system, such as server 220, to television 260. Content client 402 may receive audio/video data, and, based on the received audio/video data, may generate audio/video signals that are directed to television 260. Content client 402 may also receive other multimedia information, such as interactive gaming content, and, based on the other multimedia information, may generate audio and/or video signals that are directed to television 260. Content client 402 may be implemented as a stand-alone application or as part of another component, such as a browser (not shown).
Multi-panel client 404 may include hardware, software, and/or a combination of hardware and software for sending a request for most-watch program and/or game information to server 220 upon activation of the multi-panel browser mode. Multi-panel client 404 may also aid content client 402 in presenting a program or other multimedia content in a panel of the display of television 260 (such as panels 120, 130, and/or 140 of
In aiding content client 402 to present a multi-panel browsing mode, multi-panel client 404 may provide, to content client 402, parameters that are related to each panel (e.g., locations/sizes/shapes of panels, etc.). Content client 402 may use the parameters to display the user's current program along with other panels that may include programming according to pre-defined criteria, such a most-watched program and/or an interactive game menu. Depending on the implementation, STB 250 may automatically set such parameters, or alternatively, multi-panel client 404 may provide a user interface via which the viewer may input/edit the parameters.
When a user presses a button on a remote control (such as remote control 270 of
In one implementation, multi-panel client 404 may allow a user to selectively activate an audio signal (and other functionality) for a panel by using a remote control. For example, a remote control may include an “A,” a “B,” and a “C” shortcut buttons, where pressing each button may activate an audio signal for a corresponding panel. As another example, arrow keys on a remote control may be used to selectively switch audio between panels.
Bus 510 may include a path that permits communication among the components of server 220. Processing logic 520 may include a processor, microprocessor, or other type of processing logic, such as an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), etc., that may interpret and execute instructions. Main memory 530 may include a RAM or another type of dynamic storage device that may store information and instructions for execution by processing logic 520. ROM 540 may include a ROM device or another type of static storage device that may store static information and instructions for use by processing logic 520.
Storage device 550 may include a magnetic and/or optical recording medium and its corresponding drive. In one implementation, storage device 550 may include database 230 (
Input device 560 may include a mechanism that permits an operator to input information to server 220, such as a keyboard, a mouse, a pen, voice recognition and/or biometric mechanisms, a touch-screen interface, etc. Output device 570 may include a mechanism that outputs information to the operator, including a display, a printer, a speaker, etc. Communication interface 580 may include any transceiver-like mechanism that enables server 220 to communicate with other devices and/or systems, such as set-top box 210.
As described herein, server 220 may perform certain operations to identify most-watched programming either generally or within particularly specified criteria and to provide information to STB 250. Server 220 may perform these and other operations in response to processing logic 520 executing software instructions contained in a computer-readable medium, such as main memory 530.
The software instructions may be read into main memory 530 from another computer-readable medium, such as storage device 550, or from another device via communication interface 580. The software instructions contained in main memory 530 may cause processing logic 520 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 implementations. Thus, implementations described herein are not limited to any specific combination of hardware circuitry and software.
A request may be sent to a server for a top program (block 620). For example, STB 250 may send a request message to server 220 to identify a most-watched program either generally or within a particular category. The request message may indicate the user's previously-stored input preference for a most-watched program category (e.g., the most-watched program during the timeslot when the request occurs) for a particular panel of the multi-panel browsing mode. In one implementation, the request message may include a second request for information for another panel of the multi-panel browsing mode. The second request may relate to information for interactive games. For example, the second request may include an indication of a most-played game to be displayed in another panel of the multi-panel display. In other implementations, the second request may relate to menu options for games, information for VOD programming (e.g., VOD previews, VOD menus, etc.) or other information available at server 220.
A reply from the server with the top program information may be received (block 630). For example, STB 250 may receive a reply from server 220 that includes the channel information for the program corresponding to the top program request. Thus, if the top program request is for the most-watched news program, STB 250 may receive from server 220 the channel number for the station in the subscriber's region that is carrying the most-watched news program at that time.
A multi-panel view may be displayed (block 640). For example, STB 250 may present a divided display area on television 260 that includes multiple panels. One panel may be considered a primary panel, such as primary panel 120 of
A user command for a panel selection may be received (block 650). For example, STB 250 may receive a command from a user via a remote control (such a remote control 270 of
Audio and/or user-functionality for a selected panel may be enabled (block 660). For example, based on the user command received in block 650, STB 250 may activate an audio signal corresponding to a panel in the multi-panel browsing mode that the user selected via the remote control command.
Based on the command signal from remote control 270, STB 250 may divide the display of television 260 into multiple panels, shown in
For panel 720, STB 250 may retrieve instructions for the user's favorite game. The instructions may be retrieved, for example, from a memory within STB 250 (such as memory 320 of
For panel 730, STB 250 may receive a channel number from the server corresponding to the most-watched sports program at the current time. STB 250 may tune to the channel number and display the most-watched sports program in panel 730. The user may use remote control 270 to select which panel will have audio and/or other functionality.
In another implementation, each panel may provide access to multiple options within a category. For example, a top program panel, such as panel 730, may allow a user to browse through the top program for each of multiple genres. A user may select the top program panel (e.g., via remote control 270) and browse through top programs for particular categories by using, for example, left/right commands on remote control 270. Categories may include, for example, news, sports, cooking, movies, documentaries, comedy, etc. In one implementation, each top program may be displayed with a title to indicate the category of the top program (e.g., “Most-watch: Cooking.”
Panel 820 may be designated as a top program panel. The user may select a category of programming for panel 820 from a menu, such as menu 825 displayed on television 260. Menu 825 may be displayed by, for example, first selecting panel 820 as the active panel (using, for example, a “B” function key on remote control 270) and then selecting a “menu” option from remote control 270. With menu 825 displayed, the user may select from, for example, options such as “All Programs,” “News,” “Sports,” and “Movies.” Based on the user's selection, when the multi-panel browsing mode is activated, STB 250 may tune to a most-watched program based on the viewing history of viewers. Menu 825 may also include sub-menus (not shown) for one or more options. A sub-menu may be implemented, for example, as a drop-down menu within menu 825 or as a separately displayed sub-menu. Ranking of programs may be based on statistics provided from a service-provider (e.g., provided via server 220). Rankings may be based on, for example, national statistics, regional statistics, or household statistics. In one implementation, a viewer may be provided with the opportunity (e.g. via menu 825 or a separate sub-menu) to identify the base group (e.g., national, regional, or household) for determining the most-watch programming.
Panel 830 may be designated as a games panel. The user may select a category of information for panel 830 from a menu, such as menu 835 displayed on television 260. Similar to panel the description above with respect to panel 820, menu 835 may be displayed by first selecting panel 830 as the active panel (using, for example, a “C” function key on remote control 270) and then selecting the “menu” option from remote control 270. With menu 835 displayed, the user may select from, for example, options such as “Most-Played,” “Game Menu,” “May Favorite,” and “Random Game.” Based on the user's selection, when the multi-panel browsing mode is activated, STB 250 may display either a menu or a particular game corresponding to the selected menu option.
Systems and/or methods described herein may display program content from a subscription television service on a display and receive a signal to initiate a multi-panel browsing mode on the display. A set-top box may send to a server a top program request for the subscription television service and receive top program information from the server. The top program information may include a channel number for a top program at a time associated with the request. The set-top box may generate a multi-panel view on the display, the multi-panel view including a panel with the program content and a panel with the top program based on the top program information received from the server. Additional panels may be included in the multi-panel view, such as interactive games or other content available from the subscription television service.
The foregoing description provides illustration and description, 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 systems and/or methods disclosed herein.
Also, while a series of blocks has been described with regard to the flowchart of
It will be apparent that implementations, as 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 implementations described herein is not limiting of the invention. Thus, the operation and behavior of the implementations were described without reference to the specific software code—it being understood that software and control hardware may be designed to implement the implementations based on the description herein.
Further, certain implementations described herein may be implemented as “logic” that performs one or more functions. This logic may include hardware—such as a processor, microprocessor, an application specific integrated circuit or a field programmable gate array—or a combination of hardware and software.
It should be emphasized that the term “comprises/comprising” when used in this specification is taken to specify the presence of stated features, integers, steps, or components, but does not preclude the presence or addition of one or more other features, integers, steps, components, or groups thereof.
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 description of the present application should be construed as critical or essential to the invention unless explicitly described as such. Also, as used herein, the article “a” is 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,” as used herein is intended to mean “based, at least in part, on” unless explicitly stated otherwise.