Patent Publication Number: US-10764630-B2

Title: System and method of displaying content

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     The present application is a continuation of, and claims priority to, U.S. patent application Ser. No. 14/804,836, filed on Jul. 21, 2015, which is a continuation of U.S. patent application Ser. No. 14/540,890, filed on Nov. 13, 2014, issued as U.S. Pat. No. 9,118,956, which is a continuation of U.S. patent application Ser. No. 14/181,038, filed on Feb. 14, 2014, issued as U.S. Pat. No. 8,913,199, which is a continuation of U.S. patent application Ser. No. 11/788,390, filed on Apr. 19, 2007, issued as U.S. Pat. No. 8,687,128, the content of each of which is incorporated herein by reference in its entirety. 
    
    
     FIELD OF THE DISCLOSURE 
     The present disclosure is generally related to a system and method of displaying content. 
     BACKGROUND 
     Last channel selection keys on remote controls have become increasingly popular with the expansion of available television services. Unfortunately, remote controls and video tuning devices may limit users to navigate to only a single previously viewed channel by pressing a last channel selection key. Hence, there is a need for an improved system and method of navigating previously viewed channels. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a block diagram of a particular illustrative embodiment of a system to navigate previously viewed channels; 
         FIG. 2  is a block diagram of a second particular illustrative embodiment of a system to navigate previously viewed channels; 
         FIG. 3  is a flow chart of a particular illustrative embodiment of a method of navigating previously viewed channels; and 
         FIG. 4  is a block diagram of a particular illustrative embodiment of a general computing system. 
     
    
    
     DETAILED DESCRIPTION 
     The disclosure is directed to systems and methods of navigating previously viewed channels. In a particular embodiment, a method may include maintaining a channel list in a memory where the channel list includes multiple previously viewed channels. The method may also include receiving a first signal to select a first selected channel in the channel list. The method may also include tuning a channel tuner to the first selected channel. 
     In another particular embodiment, a device may include a user interface, a memory, a channel tuner, and processing logic, where the user interface, the memory, and the channel tuner are accessible to the processing logic. The memory may include instructions to cause the processing logic to execute a method. The method may include maintaining a channel list in the memory. The channel list may include multiple previously viewed channels. The method may also include receiving a first signal via the user interface to select a first selected channel in the channel list. The method may also include tuning the channel tuner to the first selected channel. 
     In yet another particular embodiment, a remote control device may include a first user selectable selection key to navigate a channel list. The channel list may include multiple previously viewed channels. The remote control device may also include a second user selectable selection key to navigate the channel list. 
     In still yet another particular embodiment, a computer readable medium may have instructions to cause processing logic to execute a method. The method may include maintaining a channel list in a memory. The channel list may include multiple previously viewed channels. The method may also include sending the channel list to a display device to be displayed in a graphical user interface (GUI). The GUI may include a user selectable element for each channel in the channel list. The method may also include receiving a first signal to select a first selected channel in the channel list. The method may also include tuning a channel tuner to the first selected channel. 
     Referring to  FIG. 1 , a particular embodiment of a system to navigate previous channels is illustrated and generally designated  100 . The system  100  includes a user device  102 , such as a set-top box device, communicating with an access network  106  of a television content distribution system, such as an Internet Protocol Television (IPTV) system, a cable television system, or a satellite television system. The user device  102  may be coupled to or integrated with a display device  126  having a viewing area  128 , such as a television monitor. The user device  102  may include a set-top box device; a video cassette recording (VCR) device; a digital versatile disc (DVD) device; a digital video recorder (DVR); a video gaming device or a console that is adapted to receive television content; an interface device within the display device  128 , such as a cable card; a personal computer or other computing device that is adapted to receive television content; any other device adapted to receive television content via the access network  106 ; or any combination thereof. 
     The user device  102  includes logic  108  and memory  110  accessible to the logic  108 . In a particular embodiment, the logic  108  may be a processor or controller. The logic  108  can be coupled to a network interface  104  that facilitates communication between the user device  102  and the access network  106 . 
     Further, the user device  102  can communicate with a display device  126  and a remote control device  120  via a client interface  118 . The remote control device  120  can include a previous channel selection key  122 . The previous channel selection key  122  may be labeled back, last, previous, or another similar identifier. The remote control device  120  may also include a next channel selection key  124 . The next channel selection key  124  may be labeled forward, next, or another similar identifier. 
     In a particular embodiment, the memory  110  may include instructions  112  executable by the logic  108  to provide a graphical user interface (GUI) to navigate television content at the display device  126 . In an illustrative embodiment, the instructions  112  can be a portion of a GUI software application or other computer program stored at the memory  110 . The memory  110  may also include instructions  114  executable by the logic  108  to store a recent channel list. The recent channel list may store multiple previously viewed channels in an order that they were viewed with respect to time. In a particular embodiment, the instructions  114  may include instructions executable by the logic  108  to provide a user selectable channel list  130  to be displayed in the viewing area  128 . In another particular embodiment, the instructions  114  include instructions to allow a user to select a number of recent channels to be stored in the recent channel list and/or displayed in the user selectable channel list  130 . 
     The user device  102  may receive user input from the remote control device  120  and process the user input via a user interface module  116 . In response to the user input, the logic  108  may select a recent channel from the recent channel list to be displayed at the display device  126 . In an illustrative embodiment, the user may navigate to a previous channel from the recent channel list by depressing the previous channel selection key  122 . The user may navigate to a second previous channel by depressing the previous channel selection key  122  twice. The user may navigate to a next channel in the recent channel list by depressing a next channel selection key  124 . The user may navigate to a second next channel in the recent channel list by depressing the next channel selection key  124  twice. The user may navigate backwards or forwards in the recent channel list by pressing either the previous channel selection key  122  or the next channel selection key  124  once or multiple times depending on the desired previous channel and a respective channel location in the channel list. 
     In a particular embodiment, the user may navigate to a channel in the recent channel list by selecting at least one selectable element of the user selectable channel list  130  using the remote control device  120 . In an illustrative embodiment, the user may select a channel in the user selectable channel list  130  by navigating a selection mechanism, such as a highlight mechanism, on the screen until the desired channel is selected, and confirming the selection. 
     In another illustrative embodiment, the user may select the desired channel by entering a value on a keypad of the remote control device  120 . For example, once the user selectable channel list  130  is displayed in the viewing area  128 , the user may press a first selection key, such as a selection key  134  labeled “1”, to select a first channel shown in the user selectable channel list  130 . Further, the user may select a second channel shown in the user selectable channel list  130  by depressing a second selection key, such as a selection key  136  labeled “2”. Even further, the user may select a third channel shown in the user selectable channel list  130  by depressing a third selection key, such as a selection key  138  labeled “3”. In a particular embodiment, each channel in the user selectable channel list  130  can be associated with a specific selection key, or combination of selection keys, to allow a user to select a respective channel. 
     Referring to  FIG. 2 , a particular embodiment of a system to navigate previously viewed channels is illustrated and generally designated  200 . The system  200  includes a user device  202 , such as a television, that can receive television content. The user device  202  includes a viewing area  204 , such as a television monitor. Also, the user device  202  includes logic  206  and memory  208  accessible to the logic  208 . In a particular embodiment, the logic  208  may be a processor or controller. The logic  208  can be coupled to a network interface  210  that facilitates communication between the user device  202  and a television content delivery system. The logic  208  can be coupled to a channel tuner  211  to tune a signal received via the network interface  210  to a specific channel. The channel tuner  211  can provide the specific channel to a video controller  213  for display at the viewing area  204 . 
     Further, the user device  202  can communicate with a remote control device  220  and user input controls  228  via a client interface  212 . The remote control device  220  can include a previous channel selection key  222 . The remote control device  220  may also include a next channel selection key  224 . The remote control device  220  may also include a display  226  to display a recent channel list  232  and allow for the selection of a channel from the recent channel list  232 . 
     In a particular embodiment, the memory  208  may include instructions  214 , executable by the logic  206  to store a recent channel list. In a particular embodiment, the instructions  214  may include instructions executable by the logic  206  to provide a user selectable channel list  230  to be displayed in the viewing area  204 . In another particular embodiment, the instructions  214  include instructions to allow a user to select a number of recent channels to be stored in the recent channel list and/or displayed in the user selectable channel list  230 . 
     The user device  202  may receive user input from the remote control device  220  and process the user input via a user interface module  216 . In response to the user input, the logic  206  may select a channel from the recent channel list to be displayed at the display device  202 . In an illustrative embodiment, the user may navigate to a previous channel from the recent channel list by depressing the previous channel selection key  222 . The user may navigate to a second previous channel by depressing the previous channel selection key  222  twice. The user may navigate to a next channel in the recent channel list by depressing a next channel selection key  224 . The user may navigate to another next channel in the recent channel list by depressing the next channel selection key  224  twice. The user may navigate backwards or forwards in the recent channel list by pressing either the previous channel selection key  222  or the next channel selection key  224  once or multiple times depending on the desired previous channel and a respective channel location in the channel list. 
     In a particular embodiment, the user may navigate to a channel in the recent channel list by selecting at least one selectable element of the user selectable channel list  230  using the remote control device  220  or the user input controls  228 . In an illustrative embodiment, the user may select a channel in the user selectable channel list  230  by navigating a selection mechanism, such as a highlight mechanism, on the screen until the desired channel is selected, and confirming the selection. 
     In another particular embodiment, the user may select the desired channel by entering a value on a keypad of the remote control device  220 . For example, once the user selectable channel list  230  is displayed in the viewing area  204 , the user may press a first selection key, such as a selection key  234  labeled “1”, to select a first channel shown in the user selectable channel list  230 . Further, the user may select a second channel shown in the user selectable channel list  230  by depressing a second selection key, such as a selection key  236  labeled “2”. Even further, the user may select a third channel shown in the user selectable channel list  230  by depressing a third selection key, such as a selection key  238  labeled “3”. In a particular embodiment, each channel in the user selectable channel list  230  can be associated with a specific selection key, or combination of selection keys, to allow a user to select a respective channel. 
     Referring to  FIG. 3 , an illustrative embodiment of a method of navigating previously viewed channels is depicted and generally designated  300 . Generally, the method  300  allows for a user to navigate a channel list containing multiple previously viewed channels. The method  300  includes receiving a channel selection signal indicating a channel, at  302 . A channel tuner can then be tuned to the channel, at  304 . A determination can then be made to determine if a number of channels stored in the channel list is greater than or equal to a threshold, at  306 . In a particular embodiment, the threshold may be user selectable. The channel list may be stored in a memory of a user device or a remote control, such as the user device  102  or the remote control device  120  shown in  FIG. 1 . 
     When the number of channels stored in the channel list is greater than or equal to the threshold, an oldest in time channel stored in the channel list can be deleted, at  308 . After the oldest channel has been deleted or when the number of channels in the channel list is less than the threshold, the recently tuned channel can be added to the channel list, at  310 . In a particular embodiment, the multiple previously viewed channels in the channel list may be stored in an order in which they were viewed with respect to time. In a particular embodiment, the multiple previously viewed channels may be stored in the channel list after the occurrence of an event. The event may include a power on event, a reset event, or a timer expire event. In a particular embodiment, a channel may only be added to the channel list after the channel has been viewed after the event. 
     Another channel selection signal indicating a second channel may be received, at  312 . The method  300  then repeats the tuning at  304 , the determining at  306 , the adding at  310 , and, if necessary, the deleting at  308 . Additionally, yet another channel selection signal indicating a third channel may be received, at  312 . The method  300  then repeats the tuning at  304 , the determining at  306 , the adding at  310 , and, if necessary, the deleting at  308 . These parts of the method  300  may be repeated for every channel selection signal received by a user device implementing the method  300 . 
     Alternatively, a first signal to select a first selected channel in the channel list may be received, at  314 . The channel tuner may then be tuned to the first selected channel, at  316 . 
     In a particular embodiment, a second signal to select a second selected channel in the channel list, where the second selected channel is a different channel than the first selected channel, may be received, at  318 . In a particular embodiment, the second selected channel is a channel in the channel list that immediately precedes the first selected channel. In another particular embodiment, the second selected channel is a channel in the channel list that immediately succeeds the first selected channel. The channel tuner may then be tuned to the second selected channel, at  320 . 
     In a particular embodiment, the user may navigate to a previous channel from the channel list by depressing a previous channel selection key on a remote control, such as the previous channel selection key  122  shown in  FIG. 1 . The user may also navigate to a second previous channel by depressing the previous channel selection key twice. In another particular embodiment, the user may navigate to a next channel in the channel list by depressing a next channel selection key on the remote control, such as the next channel selection key  124  shown in  FIG. 1 . The user may also navigate to another next channel in the channel list by depressing the next channel selection key twice. The user may navigate backwards or forwards in the channel list by pressing either the previous channel selection key or the next channel selection key once or multiple times depending on the desired previous channel and a respective channel location in the channel list. 
     In a particular embodiment, the channel list may be sent to a display device to display the channel list. The user may navigate to a channel in the channel list by selecting at least one selectable element displayed on a display device, where each user selectable element corresponds to a specific channel in the channel list. The user may select the user selectable elements using a remote control device or other user input controls located on the user device. In another particular embodiment, the user may select a channel in the channel list by navigating a selection mechanism, such as a highlight mechanism, on a display until the desired channel is selected, and confirming the selection. 
     In another illustrative embodiment, the user may select the desired channel by entering a value on a keypad of a remote control device. For example, once the channel list is displayed on a display device, the user may press a first selection key, such as a selection key labeled “1”, to select a first channel shown in the channel list. Further, the user may select a second channel shown in the channel list by depressing a second selection key, such as a selection key labeled “2”. Even further, the user may select a third channel shown in the channel list by depressing a third selection key, such as a selection key labeled “3”. In a particular embodiment, each channel in the channel list can be associated with a specific selection key, or combination of selection keys, on a remote control to allow a user to select a respective channel. 
     Referring to  FIG. 4 , an illustrative embodiment of a general computer system is shown and is designated  400 . The computer system  400  can include a set of instructions that can be executed to cause the computer system  400  to perform any one or more of the methods or computer based functions disclosed herein. The computer system  400  may operate as a standalone device or may be connected, e.g., using a network, to other computer systems or peripheral devices. 
     In a networked deployment, the computer system may operate in the capacity of a server or as a client user computer in a server-client user network environment, or as a peer computer system in a peer-to-peer (or distributed) network environment. The computer system  400  can also be implemented as or incorporated into various devices, such as a personal computer (PC), a tablet PC, a set-top box (STB), a personal digital assistant (PDA), a mobile device, a palmtop computer, a laptop computer, a desktop computer, a communications device, a wireless telephone, a land-line telephone, a control system, a camera, a scanner, a facsimile machine, a printer, a pager, a personal trusted device, a web appliance, a network router, switch or bridge, or any other machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. In a particular embodiment, the computer system  400  can be implemented using electronic devices that provide voice, video or data communication. Further, while a single computer system  400  is illustrated, the term “system” shall also be taken to include any collection of systems or sub-systems that individually or jointly execute a set, or multiple sets, of instructions to perform one or more computer functions. 
     As illustrated in  FIG. 4 , the computer system  400  may include a processor  402 , e.g., a central processing unit (CPU), a graphics processing unit (GPU), or both. Moreover, the computer system  400  can include a main memory  404  and a static memory  406 , which can communicate with each other via a bus  408 . As shown, the computer system  400  may further include a video display unit  410 , such as a liquid crystal display (LCD), an organic light emitting diode (OLED), a flat panel display, a solid state display, or a cathode ray tube (CRT). Additionally, the computer system  400  may include an input device  412 , such as a keyboard, and a cursor control device  414 , such as a mouse. The computer system  400  can also include a disk drive unit  416 , a signal generation device  418 , such as a speaker or remote control, and a network interface device  420 . 
     In a particular embodiment, as depicted in  FIG. 4 , the disk drive unit  416  may include a computer-readable medium  422  in which one or more sets of instructions  424 , e.g. software, can be embedded. Further, the instructions  424  may embody one or more of the methods or logic as described herein. In a particular embodiment, the instructions  424  may reside completely, or at least partially, within the main memory  404 , the static memory  406 , and/or within the processor  402  during execution by the computer system  400 . The main memory  404  and the processor  402  also may include computer-readable media. 
     In an alternative embodiment, dedicated hardware implementations, such as application specific integrated circuits, programmable logic arrays and other hardware devices, can be constructed to implement one or more of the methods described herein. Applications that may include the apparatus and systems of various embodiments can broadly include a variety of electronic and computer systems. One or more embodiments described herein may implement functions using two or more specific interconnected hardware modules or devices with related control and data that can be communicated between and through the modules, or as portions of an application-specific integrated circuit. Accordingly, the present system encompasses software, firmware, and hardware implementations. 
     In accordance with various embodiments of the present disclosure, the methods described herein may be implemented by software programs executable by a computer system. Further, in an exemplary, non-limited embodiment, implementations can include distributed processing, component/object distributed processing, and parallel processing. Alternatively, virtual computer system processing can be constructed to implement one or more of the methods or functionality as described herein. 
     The present disclosure contemplates a computer-readable medium that includes instructions  424 , or receives and executes instructions  424 , responsive to a propagated signal, so that a device connected to a network  426  can communicate voice, video or data over the network  426 . Further, the instructions  424  may be transmitted or received over the network  426  via the network interface device  420 . 
     While the computer-readable medium is shown to be a single medium, the term “computer-readable medium” includes a single medium or multiple media, such as a centralized or distributed database, and/or associated caches and servers that store one or more sets of instructions. The term “computer-readable medium” shall also include any medium that is capable of storing a set of instructions for execution by a processor or that cause a computer system to perform any one or more of the methods or operations disclosed herein. 
     In a particular non-limiting, exemplary embodiment, the computer-readable medium can include a solid-state memory such as a memory card or other package that houses one or more non-volatile read-only memories. Further, the computer-readable medium can be a random access memory or other volatile re-writable memory. Additionally, the computer-readable medium can include a magneto-optical or optical medium, such as a disk or tapes or other storage device to capture carrier wave signals such as a signal communicated over a transmission medium. Accordingly, the disclosure is considered to include any one or more of a computer-readable medium and other equivalents and successor media, in which data or instructions may be stored. 
     Although the present specification describes components and functions that may be implemented in particular embodiments with reference to particular standards and protocols, the disclosed embodiments are not limited to such standards and protocols. For example, standards for Internet and other packet switched network transmission (e.g., TCP/IP, UDP/IP, HTML, HTTP) represent examples of the state of the art. Such standards are periodically superseded by faster or more efficient equivalents having essentially the same functions. Accordingly, replacement standards and protocols having the same or similar functions as those disclosed herein are considered equivalents thereof. 
     The illustrations of the embodiments described herein are intended to provide a general understanding of the structure of the various embodiments. The illustrations are not intended to serve as a complete description of all of the elements and features of apparatus and systems that utilize the structures or methods described herein. Many other embodiments may be apparent to those of skill in the art upon reviewing the disclosure. Other embodiments may be utilized and derived from the disclosure, such that structural and logical substitutions and changes may be made without departing from the scope of the disclosure. Additionally, the illustrations are merely representational and may not be drawn to scale. Certain proportions within the illustrations may be exaggerated, while other proportions may be reduced. Accordingly, the disclosure and the figures are to be regarded as illustrative rather than restrictive. 
     Although specific embodiments have been illustrated and described herein, it should be appreciated that any subsequent arrangement designed to achieve the same or similar purpose may be substituted for the specific embodiments shown. This disclosure is intended to cover any and all subsequent adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent to those of skill in the art upon reviewing the description. 
     The Abstract is provided with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, various features may be grouped together or described in a single embodiment for the purpose of streamlining the disclosure. This disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter may be directed to less than all of the features of any of the disclosed embodiments. Thus, the following claims are incorporated into the Detailed Description, with each claim standing on its own as defining separately claimed subject matter. 
     The above-disclosed subject matter is to be considered illustrative, and not restrictive, and the appended claims are intended to cover all such modifications, enhancements, and other embodiments which fall within the true spirit and scope of the present invention. Thus, to the maximum extent allowed by law, the scope of the present invention is to be determined by the broadest permissible interpretation of the following claims and their equivalents, and shall not be restricted or limited by the foregoing detailed description.