SYSTEM AND METHOD FOR CREATING A TELEVISION CHANNEL INDEX AND VIEWING HISTORY IN A TELEVISION RECEIVER

Abstract: There is disclosed a system and method for creating a television channel index and viewing history in a television receiver. The channel index and viewing history may be used to identify and select television programs. The system comprises a user interface controller capable of receiving viewer instructions to record video images and to display recorded video images, a video signal unit capable of recording video images, and a memory capable of storing video images. The user interface controller can display reduced size images of the stored video signals, and in response to viewer instructions, cause the television receiver to play the program associated with a selected stored video image. A user file is provided for each viewer to select and record programs according to his or her individual taste. A history file in each user file records information concerning programs that a viewer actually watches. The system automatically deletes stored video images that relate to television programs that have been completed and are no longer available for viewing.

Description: System and method for creating a television channel index and viewing history in a television receiver TECHNICAL FIELD OF THE INVENTION The present invention is directed, in general, to television receivers and, more specifically, to a system and method for creating a television channel index and viewing history in a television receiver. The channel index and viewing history may be used to identify and select television programs. BACKGROUND OF THE INVENTION As technology has advanced for television receivers and for personal computer systems, the public has increased its expectations for capabilities that represent mergers of the two technologies. As the commercialization of digital television systems progresses, the television industry is assessing new features which will expedite the public's desire to convert to digital television receivers as rapidly as possible. The user interface associated with modern digital television receivers has an extended range of features and capabilities designed to enhance and personalize the viewer's entertainment experience while providing a high level of convenience and ease of use. Handheld remote control devices make it easy for a viewer to turn the television receiver on and off, to change channels, to increase or to decrease volume, or to otherwise adjust the television receiver. On-screen displays allow a viewer to scroll through menus from which the viewer may enable a sleep mode, set an internal television clock, select a signal source (cable, satellite antenna, or broadcast receive antenna), create a "surf ring," and the like. A surf ring is a subset of the available channels. The viewer adds his or her favorite channels to the surf ring. The viewer can scroll (or "channel surf) through the short surf ring much faster than the viewer can scroll through all available channels. One area in which existing navigational tools such as Web browsers provide a convenience of use over television systems is in the manner in which users may identify or bookmark a particular site and place it on a personalized list for future access. Initially, television viewers had few problems in determining which programs were available for viewing and then making a selection of the program to watch. This was because there were so few television broadcast channels available for viewing. As technology advanced to include ultra-high frequency (UHF) channels, very high frequency (VHF) channels, cable television, and satellite television reception, viewers were soon overwhelmed by the available choices. Text menus available from cable and satellite service providers have overcome some of the disadvantages involved in selecting programs. However, most cable and satellite television viewers still spend a significant amount of time viewing portions of multiple programs in order to progressively reduce the number of programs of immediate interest and make a final viewing decision. Viewers who do not have cable or satellite find that their choice of programs has also increased tremendously, without a solution to the problem of how to determine which program to watch at any particular time. The advent of digital television, the interactive services planned for digital television, and the schedule that has been established for the cessation of broadcasts of analog television signals are expected to completely change the ways in which viewers presently interact with their television receivers. However, there is presently no available technology or plan that describes a system or method by which a viewer may easily identify a short list of television programs for viewing at a particular time and then make a viewing decision based upon progressively reducing the number of possible programs to select one desired program. Therefore, there is a need in the art for an improved system and method for selecting television programs that allows a viewer greater control when surfing through numerous television channels. In particular, there is a need in the art for an improved television receiver system and method that establishes a group of possible programs for viewing that is based upon the personal choices of a viewer. More particularly, there is a need in the art for an improved television receiver system and method for selecting a television program to be viewed from an identified group of two or more programs. SUMMARY OF THE INVENTION To address the above-discussed deficiencies of the prior art, it is a primary object of the present invention to provide, for use in a television receiver, a system and method for creating a personalized current television channel index and viewing history file. According to an advantageous embodiment of the present invention, the system comprises television selection control modules for controlling images that may be displayed on the display screen of a television receiver. The television selection control modules comprise a user interface (UI) controller, an input/output interface unit, a memory, and a video signal unit. As a viewer scrolls (or "channel surfs") through available television channels, the viewer selects individual programs that the viewer may wish to view. The UI controller executes software programs stored in the memory to select and record images from the television programs that the viewer selects. The UI controller creates an image (or retrieves a broadcast image) and displays a small sized version of the image (referred to as a "thumbnail" image) for each television program that the viewer selects. The viewer selects and activates one selected thumbnail image to cause the television receiver to display the television program associated with the selected thumbnail image. The television programs that the viewer watches are recorded in a viewing history file. When a television program ends, the UI controller consults the viewing history file for the next program time period of interest to the viewer. The UI controller then displays thumbnail images that represent possible program choices for the viewer to select in the next program time period. If the viewer does not select any of the choices presented by the UI controller, then the television receiver remains tuned to the presently displayed channel until the channel is changed by the viewer. The thumbnail images remain on the display screen and the list of thumbnail images is updated as the viewer selects additional thumbnail images. It is a primary object of the present invention to provide for use in a television receiver having a display screen an improved system and method for creating a television channel index and viewing history. It is another object of the present invention to provide for use in a television receiver having a display screen improved television control modules for selecting a television program. It is also an object of the present invention to provide for use in a television receiver having a display screen an improved method for 1) recording within a memory one or more video images that are selected by a viewer from video images that are sequentially displayed on a display screen as the viewer changes channels, and 2) displaying the stored video images on the display screen in a reduced size format in response to a viewer instruction, and 3) receiving a viewer instruction selecting one of the displayed video images, where the selection indicates the desire of the viewer to view the television program associated with the selected displayed video image, and 4) tuning the television receiver to the television channel on which the selected television program is playing. Additional objects and advantages of the present invention will be more fully described in the DETAILED DESCRIPTION of the invention. The foregoing has outlined rather broadly the features and technical advantages of the present invention so that those skilled in the art may better understand the detailed description of the invention that follows. Additional features and advantages of the invention will be described hereinafter that form the subject of the claims of the invention. Those skilled in the art should appreciate that they may readily use the conception and the specific embodiment disclosed as a basis for modifying or designing other structures for carrying out the same purposes of the present invention. Those skilled in the art should also realize that such equivalent constructions do not depart from the spirit and scope of the invention in its broadest form. Before undertaking the DETAILED DESCRIPTION, it may be advantageous to set forth definitions of certain words and phrases used throughout this patent document: the terms "include" and "comprise," as well as derivatives thereof, mean inclusion without limitation; the term "or," is inclusive, meaning and/or; the phrases "associated with" and "associated therewith," as well as derivatives thereof, may mean to include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, juxtapose, be proximate to, be bound to or with, have, have a property of, or the like; and the term "controller" means any device, system or part thereof that controls at least one operation, such a device may be implemented in hardware, firmware or software, or some combination of at least two of the same. It should be noted that the functionality associated with any particular controller may be centralized or distributed, whether locally or remotely. Definitions for certain words and phrases are provided throughout this patent document, those of ordinary skill in the art should understand that in many, if not most instances, such definitions apply to prior, as well as future uses of such defined words and phrases. BRIEF DESCRIPTION OF THE DRAWINGS For a more complete understanding of the present invention, and the advantages thereof, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, wherein like numbers designate like objects, and in which: FIGURE 1 illustrates an exemplary television receiver system, according to one embodiment of the present invention; FIGURE 2 illustrates an exemplary system for creating a personalized current television channel index and viewing history file that is implemented in the exemplary television receiver system in FIGURE 1, according to one embodiment of the present invention; FIGURE 3 illustrates in greater detail an exemplary user file for a television receiver, according to one embodiment of the present invention; and FIGURE 4 is a flow diagram illustrating the operation of exemplary television selection control modules in a television receiver, according to one embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION FIGURES 1 through 4, discussed below, and the various embodiments used to describe the principles of the present invention in this patent document are by way of illustration only and should not be construed in any way to limit the scope of the invention. In the description of the exemplary embodiment that follows, the present invention is integrated into, or is used in connection with, a digital television receiver. However, this embodiment is by way of example only and should not be construed to limit the scope of the present invention to digital television receivers. In fact, those skilled in the art will recognize that the exemplary embodiment of the present invention may easily be modified for use in analog television receivers. FIGURE 1 illustrates exemplary television system 100, according to one embodiment of the present invention. Exemplary television system 100 comprises television receiver 105, set top box 150 with infrared (IR) detector 160, and optional personal computer (PC) 170. As will be explained below in greater detail, the present invention provides a system for creating a personalized current television channel index and viewing history file for the operation of television receiver 105, according to the personal tastes of one or more viewers (users). Television receiver 105 comprises display screen 110 for displaying television programs provided by a cable or satellite television program service provider, infrared (IR) sensor 115, and a set of manual controls 120, as indicated by a surrounding dotted line. Manual controls 120 may include, without limitation, a power button, a volume control button, vertical and horizontal control buttons and one or more channel selection buttons. Infrared (IR) sensor 115 receives IR control signals from an optional hand-held remote control 125 that may be operated by the television viewer. Typically, IR control signals from remote control 125 that are detected by IR sensor 115 are processed within television receiver 105 in order to change the channel being viewed on display screen 110, to increase or to decrease the volume, to turn television receiver 105 on and off, and the like. Optionally, the IR control signals detected by IR sensor 115 may be relayed to set top box 150 in order to control the operation of set top box 150. Set top box 150 performs conventional tuning and demodulation of incoming signals from a cable or satellite television program service provider to produce, for example, a stream of Moving Picture Experts Group (MPEG) encoded digital data from which video signals may be derived. Alternatively, television receiver 105 may directly receive an incoming television broadcast signal from an external antenna (not shown). In this alternative embodiment of the invention, television receiver 105 performs conventional tuning and demodulation of incoming RF signals received from the antenna to produce, for example, a stream of MPEG encoded digital data from which video signals may be derived. Set top box 150 also comprises infrared (IR) sensor 160. IR sensor 160 receives infrared (IR) control signals from hand-held remote control 125 operated by the television viewer. Preferably, remote control 125 that controls set top box 150 is the same remote control 125 that operates television receiver 105. Typically, IR control signals that are detected by IR sensor 160 are processed within set top box 150 in order to change the channel being transmitted to television receiver 105 for viewing on display screen 110, to turn set top box 150 (and/or television receiver 105) on and off, and to adjust other television controls. In an advantageous embodiment of the present invention, set top box 150 may be integrated into television receiver 105. The integration of set top box 150 and television receiver 105 commonly occurs in cases when television receiver 105 is a high-definition digital television (HDTV) receiver. Because the functions and principles of operation of set top box 150 are well known, television manufacturers frequently find it advantageous to integrate set top box 150 into television receiver 105, thereby reducing the amount of equipment, wiring, and set-up work required to be performed by the television viewer. In an advantageous embodiment of the present invention, the system for creating a personalized current television channel index and viewing history file for television receiver 105 may be an embedded system integrated into television receiver 105. In an alternate advantageous embodiment of the present invention, the system for creating a personalized current television channel index and viewing history file for television receiver 105 may be implemented in a separate personal computer (PC) 170. PC 170 comprises central processing unit (CPU) 180, video monitor 190, and removable storage medium 195. PC 170 also comprises conventional elements (not shown) such as a keyboard, a mouse, an internal hard disk drive, and a random access memory (RAM). In one advantageous embodiment of the present invention that uses PC 170, the system for creating a personalized current television channel index and viewing history file for television receiver 105 comprises CPU 180 and a program stored in the random access memory (RAM) (not shown) of CPU 180 or stored in the internal hard disk drive (not shown) of CPU 180. The program used to create a personalized current television channel index and viewing history file for television receiver 105 may also be stored on removable storage medium 195, which may be, for example, a 3.5 inch floppy diskette, a compact disk read only memory (CD ROM), a digital video disk (DVD), or a similar storage medium. FIGURE 2 illustrates an exemplary television receiver 105, according to one embodiment of the present invention. Television receiver 105 comprises primary television signal path 200 and television selection control modules 230. Primary television signal path 200 comprises tuner 205, intermediate frequency (IF) processor (IF PROC) 210, demodulation (DEMOD) circuit 212, demultiplexer (DEMUX) 215, MPEG decoder 220, post processor (POST PROC) 225, and display screen 110. Display screen 110 may be a cathode ray tube or a flat panel display or any type of video display device. Tuner 205 receives an incoming radio frequency (RF) signal from either a cable source or a satellite antenna source through set top box 150 (not shown in FIGURE 2) or a broadcast receive antenna source (not shown). Tuner 205 filters out a particular video signal from the RF signal according to the channel selected by the viewer through remote control 125 (not shown in FIGURE 2) or television selection control modules 230. Tuner 205 down-converts the filtered RF signal to produce an intermediate frequency (IF) signal. Intermediate frequency (IF) processor (IF PROC) 210 further down-converts the output of tuner 205 to produce a modulated baseband signal. Demodulation (DEMOD) circuit 212 further demodulates the modulated baseband signal to produce a transport stream. Demultiplexer (DEMUX) 215 extracts at least one elementary stream, such as an MPEG encoded data stream, from the transport stream and transfers the extracted elementary stream to MPEG decoder 220. MPEG decoder 220 converts the incoming encoded MPEG data stream and generates a standard video signal capable of being displayed on display screen 110. Post processor (POST PROC) 225 may perform several different types of video signal processing, including (a) adaptive noise level reduction, (b) level sharpness enhancement, (c) luminance-chrominance separation, (d) motion detection, and (e) motion estimation and compensation. Post processor 225 produces signals for output to display screen 110 and to television selection control modules 230. Television selection control modules 230 comprise user interface (UI) controller 235, input/output (I/O) interface (IF) 240, memory 250, and digital video signal unit 270. UI controller 235, I/O interface 240, memory 250, and digital video signal unit 270 are coupled together via communications bus 245. UI controller 235 controls the operation of display screen 110 and other visually or audibly perceptible aspects of the operation of television receiver 105 by executing programs stored in memory 250. Under the direction of programs in memory 250, UI controller 235 modifies the video signal being processed in post processor 225 to include images associated with the viewer selected current channel index and viewing history file of the present invention, as well as any other viewer controlled graphics. Input/output interface (I/O IF) 240 connects television selection control modules 230 to optional PC 170 (not shown in FIGURE 2) through CPU bus 290. I/O interface 240 also connects television selection control modules 230 to IR sensor 115 in television 105 and to IR sensor 160 in set top box 150. I/O interface 240 also connects television selection control modules 230 to tuner 205. Television selection control modules 230 provide a path for viewer selection of operating channels according to the principles of the present invention as will be more fully described. Memory 250 includes storage for UI control program 255, UI editing program 257, vendor default profile 260, and three exemplary user current channel index and history files 271, 272 and 273, respectively labeled in FIGURE 2 as User 1 File, User 2 File, and User 3 File. In an advantageous embodiment of the present invention, memory 250 may comprise a non- volatile random access memory (RAM), such as flash memory. UI control program 255 comprises a set of instructions executable by UI controller 235 that control the operation of display screen 110 and other visually or audibly perceptible aspects of the operation of television receiver 105. Control signals from UI controller 235 reach display screen 110 via post processor 225. UI control program 255 uses the values stored in vendor default profile 260 or one or more of user files 271-273 to determine, for example, the size of a viewer's surf ring, the current channel index, and the history file, and any other similar features having values that may be modified by the viewer. Other possible features include 1) the selection of the size and location of a picture-in-picture (PIP) window, and 2) an audio mute option. Other similar types of features may also be incorporated. UI editing program 257 comprises a set of instructions executable by UI controller 235 that are capable of modifying different aspects of the video image and other visually or audibly perceptible aspects of the operation of television receiver 105. UI controller 235 runs UI editing program 257 when a viewer desires to modify the values stored in vendor default file 260 or to create a new user file or to modify one or more of user files 271-273. In an advantageous embodiment of the present invention, UI editing program 257 can create and store several different user files so that, for example, each member of a household may personalize (i.e., customize) at least one user file to suit his or her taste. Thus, one family member can establish one group of frequently watched programs in a dedicated viewing history file, while another family member can establish an entirely different viewing history file. For example, one family member can select from an on-screen menu a first user file having a short surf ring containing mostly news and sports channels while another family member can select a second user file having a longer surf ring containing a wider variety of television channels. In an advantageous embodiment of the present invention, the viewer may modify vendor default file 260 using remote control 125 to select different options and enter parameter values from a set of menus provided by UI editing program 257. In an alternate advantageous embodiment of the present invention, a copy of vendor default profile 260 may be stored on the hard disk drive of PC 170 and UI editing program 257 may be executed by CPU 180. In this alternate embodiment, the viewer may create one or more new user files in CPU 180 (similar to user files 271-273) and transfer the new user files to memory 250 via CPU bus 290, I/O Interface 240, and communications bus 245. CPU bus 290 provides a standard external connection, such as an RS-232 connection, an IEEE-1394 connection, or a Universal Serial Bus (USB) connection, to which CPU 180 may be coupled. The viewer may edit UI control program 255 in CPU 180 and then download the edited version to memory 250. Digital video signal unit 270 comprises video signal converter 275, frame grabber 280, and video signal generator 285. Video signal converter 275 receives decoded video signals from post processor 225. The decoded video signals are the same decoded video signals that post processor 225 provides to display screen 110. The decoded video signals represent the image carried on the incoming video signal from set top box 150 or a television antenna (not shown) or an image created by television selection control modules 230. Video signal converter 275 uses well known techniques to convert decoded video signals from post processor 225 to red (R), green (G), and blue (B) component video signals for input to frame grabber 280. Frame grabber 280 accepts the R, G, and B video signals (RGB signals) that represent the video image being displayed by display screen 110. Frame grabber 280 formats the RGB signals into video frames and transfers the video frames on communications bus 245 to UI controller 235 and I/O Interface 240. In turn, I/O interface 240 transfers the video frames to CPU 180 on CPU bus 290 when CPU 180 is controlling display features of television receiver 105. Depending upon the status of any active remote control signals received through IR sensor 115 in television receiver 105 or IR sensor 160 in set top box 150, UI controller 235 analyzes incoming video frames from frame grabber 280 to implement any viewer initiated graphic or control changes. This process is discussed in greater detail below. Frame grabber 280 also receives on communications bus 245 copies of outgoing video bit streams sent by UI controller 235 to post processor 225 for display on display screen 110. When outgoing video bit streams are present on communications bus 245 they represent outgoing graphical image(s) created by UI controller 235 or CPU 180. The outgoing graphical image(s) may represent an exemplary channel select index image or an exemplary channel history file image. The outgoing graphical image(s) may represent other possible types of images that are to be transferred to display screen 110. The exemplary channel select index image and exemplary channel history file image may originate from UI controller 235 or optional CPU 180 (not shown in FIGURE 2) through the CPU bus 290 and I/O interface 240. Frame grabber 280 uses well known techniques to detect an outgoing video bit stream on communications bus 245 from UI controller 235 or I/O interface 240. After frame grabber 280 detects an outgoing video frame from UI controller 235 or I/O interface 240, frame grabber 280 isolates the RGB components of the detected video frame and provides the respective RGB video data as red (R), green (G), and blue (B) video signals for input to video signal generator 285. Video signal generator 285 receives the red (R), green (G), and blue (B) video signals from frame grabber 280 and uses well known techniques to convert these signals to a digital video bit stream for output to display screen 110. It is noted that video signal formats other than red (R), green (G), and blue (B) may be used to practice the invention. For example, a video signal format using Y, U and V signals may also be used. FIGURE 3 illustrates in greater detail exemplary User 1 File 265 in television selection control modules 230, according to one embodiment of the present invention. User 1 File 265 comprises current channel index 310, history file 330, and other files 350. Current channel index 310 comprises storage locations labeled channel A identification (ID) and image 315, channel B ID and image 316, channel C ID and image 317, through channel N ID and image 320. Each storage location in current channel index 310 has space for storing channel identification information and channel image information. Memory 315 for "Channel A ID and image" provides storage for the television station channel designation (channel 11, for example) associated with an initial program that User 1 has entered and wishes to review for possible viewing. Memory 315 for "Channel A ID and image" also provides memory for a video image that is being received on television channel A at the time that User 1, for example, has selected the program on television channel A as a prospective viewing channel. Thus, memory 315 for "Channel A ID and image" stores information concerning the initial channel (channel A) that User 1 may select as a channel for future viewing. In a similar manner, memory 316 for "Channel B ID and image" and memory 317 for "Channel C ID and image" store information concerning the next two television programs that User 1 may select for future viewing. Lastly, memory 320 for "Channel N ID and image" stores the last channel ID and image that is available for future viewing by User 1. It should be noted that the number of storage locations available in current channel index 310 is a function of the size of the memory of exemplary User 1 File 265 and memory 250. Ideally, the size of current channel index 310 is selected to be large enough to provide a channel ID and image memory location for each of the channels that is available through cable, satellite, and local broadcast television stations. One embodiment of the invention comprises a current channel index 310 having sufficient memory to accomplish that result. However, because the size of display screen 110 places a limit on the size and number of program images that may be effectively displayed simultaneously, it may be more practical to limit the number of program images that may be selected. A first alternate embodiment of the invention comprises a current channel index 310 having sufficient memory to store the number of channel IDs and program images that can be displayed by display screen 110 simultaneously. A second alternate embodiment of the invention comprises 1) current channel index 310 with sufficient memory to store more than the number of channel IDs and program images that can be displayed by display screen 110 simultaneously, and 2) display screen 110 that is capable of sequentially displaying multiple screens showing all of the stored channel IDs and program images. History file 330 comprises memory storage locations. Memory 335 contains information for channel AA including channel identification (ID), schedule, and program image (collectively referred to as channel AA information). Similarly, memory 336 contains channel AB information and memory 337 contains channel AC information. History file 330 contains similar memory storage locations for each channel. Lastly, memory 340 contains channel AN information. As in the case of current channel index 310, each memory storage location in history file 330 has space for storing channel identification information and channel image information. In addition, each storage space in history file 330 has been expanded to include a schedule associated with its particular channel and program image. The schedule identifies the viewing time and day of the week on which a particular program occurs. During the course of normal operations, UI controller 235 compiles statistics on programs that are consistently viewed for a selected threshold length of time per viewing day. When a selected threshold length of time is reached, UI controller 235 automatically stores the channel ID, schedule, and image associated with the frequently watched program in an available storage location in history file 330, (e.g., memory 336 for channel AB information). In an advantageous embodiment, UI controller 235 creates a split-screen display so that display screen 110 may display both 1) a program image for a proposed program, and 2) the current viewer selected program. The program image for the proposed program is a video image associated with a frequently watched program for the half-hour program segment that is about to begin. The viewer may select the proposed program with remote control 125 to indicate that the viewer desires to watch the proposed program. UI controller 235 detects the viewer selection of the proposed program and causes television receiver 105 to tune to the program represented by the program image of the proposed program. If the viewer has not selected the image of the proposed program within a threshold period of time (e.g., the time span of the television program), UI controller 235 automatically removes the proposed program image and causes display screen 110 to provide a full screen display of the current viewer selected program. In another embodiment, UI controller 235 accesses history file 330 and causes tuner 205 to automatically tune to an identified channel and program when the appropriate day of the week and time for the program occurs. The viewer may over-ride the automatic selection of frequently watched programs either manually by using remote control 125. In another embodiment, the viewer may bypass all or a portion of the automatic selection of channel information for storage in history file 330. That is, the viewer may directly enter into history file 330 the channel ID, schedule, and image for one or more desired programs. During periods of operation, UI controller 235 monitors the status of history file 330 and causes television receiver 105 to automatically tune to a particular program when information stored in history file 330 indicates that the program is being broadcast. In an alternate embodiment, history file 330 may only provide storage for the channel ID and schedule information associated with frequently watched programs. This embodiment eliminates the requirement for large amounts of memory needed to store a multiplicity of video images associated with frequently watched programs. The elimination of image storage space in history file 330 may be used to increase the number of frequently watched programs which may be identified by history file 330 or to decrease the overall memory requirements for memory 250. Ideally, the size of history file 330 is selected to be large enough to provide memory storage locations for saving the channel identification, program schedule, and program image for all programs available on the maximum number of channels available through cable, satellite, and local broadcast television stations. One embodiment of the invention comprises a history file 330 having sufficient memory to accomplish that result. In another embodiment, history file 330 may be sized to provide storage channel identification, program schedule, and program image for one frequently watched program in each half hour interval for each day of the week. This embodiment requires three hundred thirty six (336) channel information storage locations. While the storage capacity of this embodiment may greatly exceed the needs of most viewers, there may be some viewers who need this amount of storage capacity. In an alternate embodiment, history file 330 may be sized to only provide enough storage space to identify the channel and the program schedule for three hundred thirty six (336) one half hour program intervals. A history file 330 that does not provide image storage space for three hundred thirty six (336) program images requires much less storage space than a history file 330 that stores program images. Other files 350 provide storage for additional information that may be personalized according to the unique requirements of each viewer. Other files 350 may include other data fields that control or affect the visually and audibly perceptible aspects of the operation of television receiver 105, including local keyboard options 355, controls for other input devices 356, screen graphics controls 357, and the like. As previously described, all of the fields in a user file (e.g., User 1 File 265) may be modified using UI editing program 257. For example, screen graphics controls 357 permit the viewer to control the appearance of graphical entities that appear as part of the display shown on display screen 110. These graphical entities include alphanumeric characters, background color(s), the physical appearance of screen icons/symbols, the relative sizes of icons, font type and size for alphanumeric characters, the color of screen icons, and the like. FIGURE 4 illustrates flow diagram 400 which depicts the operation of exemplary television selection control modules 230 in exemplary television receiver 105, according to one embodiment of the present invention. During the operation of television receiver 105, frame grabber 280 continuously monitors incoming red (R), green (G), and blue (B) video signals from video signal converter 275 and isolates video frames according to these signals. As previously mentioned, other video signals such as Y, U and V may also be used. When UI controller 235 detects that a television viewer (e.g., User 1) has selected (or bookmarked) a potential channel for viewing, UI controller 235 uses well known algorithms to minimize the size of the selected image provided by frame grabber 280. UI controller 235 then stores the entered channel number (channel identification) with its associated minimized image into an initial storage location in current channel index 310 (e.g., memory 315 for "channel A ID and image"). Television selection control modules 230 continue to store channel identifications (IDs) and their associated minimized images in current channel index 310 as directed by User 1 until no further channel selections are entered (process step 405). When UI controller 235 determines that User 1 has completed the selection of entries to current channel index 310, UI controller 235 formats the stored images from current channel index 310 for simultaneous display as minimized (thumbnail) images and transfers them to frame grabber 280. Frame grabber 280 converts the image data from UI controller 235 into RGB signals which are in turn processed by video signal generator 285 to video signals for input to display screen 110. Display screen 110 provides simultaneous display of the resultant minimized (thumbnail) images (process step 410). When UI controller 235 detects the presence of a thumbnail image which has been selected (activated) by User 1 through I/O Interface 240, UI controller 235 causes tuner 205 to tune to the channel identification (ID) number associated with the thumbnail image selected by User 1. UI controller 235 also causes frame grabber 280 and video signal generator 285 to disable the output of video signals so that display screen 110 no longer displays the selected program images from User 1 current channel index 310. Subsequently, UI controller 235 determines if history file 330 has an entry for the channel ID and time associated with the program activated by User 1. If UI controller 235 finds an entry for the program currently activated by User 1, UI controller 235 next determines whether the program count for the program currently activated by User 1 has reached a pre-determined viewing threshold. If the pre-determined viewing threshold has been reached for the program currently activated by User 1, then no further action is required. If the pre-determined viewing threshold has not been reached, UI controller 235 increments the current activated program count by one. When UI controller 235 does not find an entry for the program currently activated by User 1, the UI controller 235 creates a channel identification, schedule, and (optional) image entry in history file 330 for the activated program (process step 415). UI controller 235 monitors a system clock (not shown) for the start of a half hour program interval. When a half hour program interval is detected, UI controller 235 analyzes the content of current channel index 310 to determine if any of the selected programs have reached the end of their indicated broadcast period. When UI controller 235 finds a selected program that has ended, UI controller 235 deletes the channel ID and image associated with the completed program (process step 420). When UI controller 235 detects that the activated program has ended and that User 1 has not selected another program from current channel index 310 for viewing, UI controller 235 compares the content of history file 330 with the current program clock (not shown) to determine if one or more frequently watched programs are in the current program time. If UI controller 235 finds more than one program that is in the current program time, UI controller 235 causes the applicable thumbnail images from history file 330 to be displayed on display screen 110 so that User 1 may make a selection. UI controller 235 then waits for User 1 to activate a thumbnail image. If a thumbnail image is activated for viewing, UI controller 235 causes television receiver 105 to tune to and display the selected program. If UI controller 235 only finds one frequently watched program in history file 330 for the present program time slot, UI controller 235 causes television receiver 105 to tune to the one program without further action by User 1 (process step 425). When UI controller 235 finds no frequently watched program for the current time slot, UI controller 235 makes no change in tuning for television receiver 105. Television receiver 105 remains tuned to its presently displayed channel until tuner 205 is changed by manual, remote, or UI controller 235 (process step 430). In one embodiment of the present invention, a return communication channel (not shown) couples television receiver 105 to one or more data collection devices (not shown) of the broadcaster. The viewing statistics collected in memory 250 may then be transferred to the broadcaster's data collection devices via the return communication channel. The broadcaster may then use the viewing statistics recorded in memory 250 of television receiver 105 to make informed choices in selecting television programming for the broadcaster's viewers. Although the present invention has been described in detail, those skilled in the art should understand that they can make various changes, substitutions and alterations herein without departing from the spirit and scope of the invention in its broadest form.

Claims: CLAIMS: 1. For use in a television receiver (105) having a display screen (110), a system (100) for creating a television channel index (310) and viewing history (330) comprising: a user interface controller (235) capable of receiving a viewer instruction to record a video image that is being displayed on said display screen (110); a video signal unit (270) coupled to said display screen (110) and to said user interface controller (235), said video signal unit (270) capable of recording a video image that is being displayed on said display screen (110) in response to a signal from said user interface controller (235); and a memory (250) coupled to said user interface controller (235) and to said video signal unit (270), said memory (250) capable of storing said video image recorded by said video signal unit (270) in response to a signal from said user interface controller (235). 2. The system (100) for creating a television channel index (310) and viewing history (330) as set forth in Claim 1, wherein said user interface controller (235) is capable of receiving a viewer instruction to display a video image stored in said memory (250) and, in response to said viewer instruction, capable of causing said video image stored in said memory (250) to be displayed on said display screen (110). 3. The system (100) for creating a television channel index (310) and viewing history (330) as set forth in Claim 2, wherein said user interface controller (235) is capable of receiving a viewer instruction to select said displayed video image for viewing and, in response to said viewer instruction, capable of causing said television receiver (105) to play the television program from which said displayed video image was recorded. 4. The system ( 100) for creating a television channel index (310) and viewing history (330) as set forth in Claim 1, wherein said user interface controller (235) is capable of receiving a viewer instruction to display a plurality of user selectable video images stored in said memory (250) and, in response to said viewer instruction, capable of causing said plurality of video images stored in said memory (250) to be displayed on said display screen (110) in reduced size format. 5. The system (100) for creating a television channel index (310) and viewing history (330) as set forth in Claim 1, further comprising: an input/output interface (240) coupled to said user interface controller (235) and coupled to a tuner (205) of said television receiver (105), said input/output interface (240) capable of receiving viewer instructions and transferring said viewer instructions to said user interface controller (235), and said input/output interface (240) capable of causing said tuner (205) of said television receiver ( 105) to tune to a selected television channel in response to a signal from said user interface controller (235). 6. The system (100) for creating a television channel index (310) and viewing history (330) as set forth as set forth in Claim 1, wherein said memory (250) comprises a plurality of user files (265, 266, 267), wherein each user file (265) comprises: a current channel index (310) comprising a plurality of memory storage locations (315, 316, ... , 320), wherein, in response to a signal from said user interface controller (235), each memory storage location (315) is capable of storing a video image selected by a viewer and channel identification information associated with said video image. 7. The system (100) for creating a television channel index (310) and viewing history (330) as set forth in Claim 7, wherein each of said plurality of user files (265, 266, 267) comprises: a history file (330) comprising a plurality of memory storage locations (335, 336, ... , 340), wherein each memory storage location (335) is capable of storing information concerning the programs that a user has previously watched on a channel. 8. The system (100) for creating a television channel index (310) and viewing history (330) as set forth in Claim 1, wherein said video signal unit (270) is a digital video signal unit (270) comprising a video signal converter (275), a frame grabber (285), and a video signal generator (285). 9. A television receiver (105) having a display screen (110) comprising a system (100) for creating a television channel index (310) and viewing history (330) as set forth in any one of claims 1 to 8. 10. For use in a television receiver (105) having a display screen (110), a method for creating a television channel index (310) and viewing history (330) comprising the steps of: receiving in a user interface controller (235) a viewer instruction to record a video image that is being displayed on said display screen (110); recording a video image that is being displayed on said display screen (110) in response to a signal from said user interface controller (235); and storing said video image recorded by a video signal unit (270) in a memory (250) in response to a signal from said user interface controller (235). 11. The method for creating a television channel index (310) and viewing history (330) as set forth in Claim 10 further comprising the steps of: receiving in said user interface controller (235) a viewer instruction to display a video image stored in said memory (250); and causing said video image stored in said memory (250) to be displayed on said display screen (110) in response to said viewer instruction. 12. The method for creating a television channel index (310) and viewing history (330) as set forth in Claim 11, further comprising the steps of: receiving in said user interface controller (235) a viewer instruction to select said displayed video image for viewing; and causing said television receiver (105) to play the television program from which said displayed video image was recorded in response to said viewer instruction. 13. The method for creating a television channel index (310) and viewing history (330) as set forth in Claim 10, further comprising the steps of: receiving in said user interface controller (235) a viewer instruction to display a plurality of user selectable video images stored in said memory (250); and causing said plurality of video images stored in said memory (250) to be displayed on said display screen (110) in reduced size format in response to said viewer instruction. 14. The method for creating a television channel index (310) and viewing history (330) as set forth in Claim 10, further comprising the step of: storing a video image selected by a viewer and channel identification information associated with said video image in a memory storage location (315) in a current channel index (310) of a user file (265) in response to a viewer instruction, where said current channel index (310) of said user file (265) comprises a plurality of memory storage locations (315, 316, ... , 320) within said memory (250). 15. For use in a television receiver (105) having a display screen (110), the method for a viewer to select a television program as set forth in Claim 14, further comprising the step of: deleting from said memory (250) stored video images and information associated with said stored video images that relate to television programs that have been completed. 16. For use in a television receiver (105) having a display screen (110), computer- executable instructions stored on a computer-readable storage medium (195) for enabling a programmable device when executing said instructions to function as a system for creating a television channel index and viewing history.

Inventors: DEVARA KAVITHA V, LU JIN, MARMAROPOULOS GEORGE, DEVARA, KAVITHA, V., LU, JIN, MARMAROPOULOS, GEORGE
Applicants: KONINKL PHILIPS ELECTRONICS NV, KONINKLIJKE PHILIPS ELECTRONICS N.V.
Application year: 2001
Main classification: H04N5
IPC codes: H04N5