WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Television scheduling system for displaying a grid representing scheduled layout and selecting a programming parameter for display or recording    

Get related patents on CD
United States Patent5731844   
Link to this pagehttp://www.wikipatents.com/5731844.html
Inventor(s)Rauch; Adam Christopher (Seattle, WA); Riker; Gregory (Woodinville, WA); Myhrvold; Nathan Paul (Bellevue, WA); Thorne, III; Edwin (Seattle, WA)
AbstractA computer method and system for providing a user with efficient selection of a television program to view or record. The method provides concurrent display of a television schedule with a graphic description and a textual description of the television program currently selected by the user from the displayed television schedule. The displayed television schedule comprises a schedule layout displayed to the user on a screen display. The schedule layout includes a number of program names arranged in an adaptively learned order based on the frequency of the user's previous selections. Each time a program name is selected by the user, the graphic description and the textual description of the television program represented by the selected program name are displayed concurrently with the adaptively ordered schedule layout. Thus, the user can select a television program perceptively and without delay.
   














 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History Custom Search
Drawing from US Patent 5731844
Television scheduling system for displaying a grid representing

     scheduled layout and selecting a programming parameter for display or

     recording - US Patent 5731844 Drawing
Television scheduling system for displaying a grid representing scheduled layout and selecting a programming parameter for display or recording
Inventor     Rauch; Adam Christopher (Seattle, WA); Riker; Gregory (Woodinville, WA); Myhrvold; Nathan Paul (Bellevue, WA); Thorne, III; Edwin (Seattle, WA)
Owner/Assignee     Microsoft Corporation (Redmond, WA)
Patent assignment
All assignments
Company News
Publication Date     March 24, 1998
Application Number     08/713,588
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     August 13, 1996
US Classification     725/40 348/564 348/565 348/569 348/903 715/700 725/41 725/42 725/43 725/45 725/46 725/52 725/58
Int'l Classification     H04N 005/445
Examiner     Peng; John K.
Assistant Examiner     Flynn; Nathan J.
Attorney/Law Firm     Seed and Berry LLP
Address
Parent Case     CROSS-REFERENCE TO RELATED APPLICATION This application is a file wrapper continuation of U.S. Pat. No. 08/241,743, filed May 12, 1994, now abandoned.
Priority Data    
USPTO Field of Search     348/6 348/7 348/10 348/12 348/13 348/906 348/553 348/563 348/564 348/565 348/566 348/567 348/568 348/569 348/570 348/731 348/732 348/460 348/473 348/734
Patent Tags     television scheduling displaying grid representing scheduled layout selecting programming parameter display or recording
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
5130800
Johnson
348/564
Jul,1992

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B

[0 market size comments]
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%

[0 market share comments]
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%

[0 reasonable royalty comments]
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

[0 Guesstimation of Royalty Value Comments]
License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
[0 license availability comments]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
[0 owner/assignee comments]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

[0 competitive advantage comments]
Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

[0 commercial alternatives comments]
 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


We claim:

1. A method, performed by a computer, of obtaining from a user a selected program from among a plurality of television programs, the method comprising the steps of:

(a) storing, for each of the television programs, a program name, a time of broadcast, and textual and graphic descriptions of the television program;

(b) providing to a display device, for each of the television programs, the program name and the time of broadcast for display in a schedule layout which visually associates the program name with the time of broadcast;

(c) obtaining from the user a designation of the selected program; and

(d) providing to the display device the textual description of the selected program and a graphic description of the selected program for concurrent display with the schedule layout in a separate location so that the textual and graphic descriptions do not overlay the displayed schedule layout.

2. The method of claim 1 wherein step (a) further comprises storing a channel indicator associated with the program name and the time of broadcast for each of the television programs, and step (b) comprises providing the channel indicator to the display device for display in the schedule layout so as to be visually associated with the program name and the time of broadcast.

3. The method of claim 2 wherein the schedule layout comprises a grid containing the program name of each of the television programs and having a channel axis which references the channel indicator associated with each of the television programs and a time axis which references the time of broadcast of each associated with the television programs.

4. The method of claim 3, further comprising:

for each channel indicator, determining the number of times that an attribute associated with the channel indicator has been designated by the user; and

arranging the channel indicators on the channel axis in order from the channel indicator with the attribute designated the most number of times to the channel indicator with the attribute designated the least number of times.

5. The method of claim 3, further comprising:

for each channel indicator, determining the number of times that program names associated with the channel indicator have been designated by the user; and

arranging the channel indicators on the channel axis in order from the channel indicator with the highest frequency of program names designated by the user to the channel indicator with the lowest frequency of program names designated by the user.

6. The method of claim 3, further comprising:

for each channel indicator, determining the number of times that a program name displayed on the time axis has been designated by the user; and

arranging the channel indicators on the channel axis in order from the channel indicator with the program name designated the highest number of times to the channel indicator with the program name designated the lowest number of times.

7. The method of claim 1 wherein step (a) comprises storing a set of topics, each topic having one or more programs classified according to the topic, and wherein step (c) comprises obtaining a topic selected by the user, displaying a list of the television programs classified according to the selected topic and obtaining from the user a designated program from the program list as the selected program.

8. The method of claim 7 wherein step (c) further comprises providing the user with a list of topics and obtaining from the user a designated topic from the topic list as the selected topic, the list of topics being provided in an order corresponding to the number of times each of the topics has been previously selected.

9. The method of claim 7 wherein step (c) further comprises displaying the list of television programs classified according to the topic in an order based on program use criteria related to the topic.

10. The method of claim 7 wherein step (c) further comprises displaying the list of television programs classified according to the topic in an order based on the frequency of selection of television programs displayed on a same channel.

11. The method of claim 1, further comprising the steps of (e) obtaining from the user a request to view the selected program, and (f) displaying the requested program on a full screen of the display device.

12. The method of claim 11, further comprising the step of displaying program information superimposed on the display of the requested program when a channel is changed by the user to display the requested program.

13. The method of claim 12 wherein the program information includes the textual description of the requested program.

14. The method of claim 12 wherein the program information includes the program name of the requested program.

15. The method of claim 1, further comprising the steps of:

(e) obtaining from the user a request to record the selected program; and

(f) providing an instruction to a recording device to record the selected program at the corresponding time of broadcast stored for the selected program in response to obtaining the request.

16. The method of claim 1, further comprising the steps of:

(e) obtaining from the user a request to record the selected program;

(f) providing an instruction to a recording device to record the selected program at the corresponding time stored for the selected program; and

(g) providing an instruction to the recording device to record the textual description for a predetermined time just prior to performing the step (f) of providing the instruction to record the selected program.

17. The method of claim 1 wherein step (d) comprises providing to the display device a broadcast of the selected program in a picture-in-graphics display window for concurrent display with the schedule layout.

18. The method of claim 1 wherein the step (a) of storing comprises storing a bitmap describing the selected program and step (d) comprises providing the bitmap to the display device for concurrent display with the schedule layout.

19. A computer system for selecting and displaying a television program from among a plurality of television programs, comprising:

a display;

an input device through which the selected television program is selected from a user; and

a computer coupled to the display and to the input device, comprising

an input unit for obtaining the selected television program from the input device,

a memory for storing a program name and a time of broadcast of each of the plurality of television programs, and

a processor four obtaining the selected television program from the input unit, for reading the program name and time of broadcast for each of the plurality of television programs from the memory, for displaying on the display the read program names and times of broadcast, and, when the selected television program is currently being broadcast, for displaying the selected television program concurrently with the program name and time of broadcast of the plurality of television programs.

20. The computer system of claim 19, further comprising

a video recorder coupled to the computer and coupled to the display, and

wherein the processor controls the video recorder to record the selected television program upon obtaining from the input unit a request provided by the user via the input device to record the selected television program.

21. A method in a computer system for displaying television information about a plurality of television programs on a display device, the method comprising the steps of:

receiving the television information for each of the plurality of television programs, the television information include a name and a time of broadcast, and a graphics information or the television program;

for each of the plurality of television programs, displaying on the display device the name of the television program and an indication of the time of broadcast of the television program;

receiving from a user of the computer system a selection of a television program; and

in response to receiving the selection, displaying on the display device the graphics information of the selected television program simultaneously with the displayed names and indications of time and channel of broadcast of the television programs.

22. The method of claim 21 including the step of in response to receiving the selection and when the selected television program is currently being broadcast, displaying the broadcast of the selected television program simultaneously with the displayed names and indications of the times of broadcast of the television programs.

23. The method of claims 22 wherein the step of displaying the broadcast includes the step of suppressing the displaying of the graphics information.

24. A method in a computer system for displaying television information about a plurality of television programs on a display device, the method comprising the steps of:

receiving the television information for each of the plurality of television programs, the television information include a name and a time of broadcast;

for each of the plurality of television programs, displaying on the display device the name of the television program and an indication of the time of broadcast of the television program;

receiving from a user of the computer system a selection of a television program; and

in response to receiving the selection and when the selected television program is currently being broadcast, displaying the broadcast of the selected television program simultaneously with the displayed names and indications of the time of broadcast of the television programs.

25. A method in a computer system for displaying television information about a plurality of television programs on a television screen, the television information for each television program including a name and a time of broadcast, the method comprising:

for each of the plurality of television programs, displaying on the television screen the name of the television program and an indication of the time of broadcast of the television program;

receiving from a user of the computer system a selection of a television program whose information is currently displayed on the television screen; and

in response to receiving the selection of the television program,

determining whether the television program is currently being broadcast;

when it is determined that the selected television program is currently being broadcast, displaying the broadcast of the selected television program on the television screen simultaneously with the displayed names and indications of the time of broadcast of the television programs; and

when it is determined that the selected television program is not currently being broadcast, displaying additional information about the television program on the television screen.

26. The method of claim 25, including:

when the broadcast of the selected television program is being displayed, receiving from the user of the computer system a selection of another television program whose information is simultaneously being displayed with the broadcast on the television screen; and in response to receiving the selection of the other television program,

determining whether the other selected television program is currently being broadcast;

when it is determined that the other selected television program is currently being broadcast, displaying the broadcast of the other selected television program on the television screen simultaneously with the displayed names and indications of the time of broadcast of the television programs; and

when it is determined that the other selected television program is not currently being broadcast, displaying additional information about the other television program on the television screen.

27. The method of claim 25 wherein the displayed broadcast of the selected television program does not overlap the displayed television program information so that the user can view both the displayed broadcast and the information.

28. The method of claim 25 wherein the additional information displayed when the selected television program is not being displayed is a graphical representation of the selected television program.

29. The method of claim 25 wherein the additional information is displayed simultaneously with the displayed names and indications of the time of broadcast of the television programs.

30. A computer-readable medium containing instructions for causing a computer system to display a schedule for a plurality of television programs on a television screen by:

displaying the schedule on the television screen;

receiving from a user of the computer system a selection of a television program from the displayed schedule; and

in response to receiving the selection of the television program,

determining whether the television program is currently being broadcast;

when it is determined that the selected television program is currently being broadcast, displaying the broadcast of the selected television program on the television screen simultaneously with the displayed schedule; and

when it is determined that the selected television program is not currently being broadcast, displaying additional information about the television program on the television screen simultaneously with the displayed schedule.

31. The computer-readable medium of claim 30, including:

when the broadcast of the selected television program is being displayed, receiving from the user of the computer system a selection of another television program from the schedule that is simultaneously being displayed with the broadcast on the television screen; and

in response to receiving the selection of the other television program,

determining whether the other selected television program is currently being broadcast;

when it is determined that the other selected television program is currently being broadcast, displaying the broadcast of the other selected television program on the television screen simultaneously with the displayed schedule; and

when it is determined that the other selected television program is not currently being broadcast, displaying additional information about the other television program on the television screen simultaneously with the displayed schedule.

32. The computer-readable medium of claim 30 wherein the displayed broadcast of the selected television program does not overlap the displayed schedule so that the user can view both the displayed broadcast and the schedule.

33. The computer-readable medium of claim 30 wherein the additional information displayed when the selected television program is not being displayed is a graphical representation of the selected television program.

34. The computer-readable medium of claim 30 wherein the additional information is displayed simultaneously with the displayed schedule.
 Description Submit all comments and votes
 


TECHNICAL FIELD

The present invention relates to the field of computer systems and, more particularly, to television program selection using a computer system.

BACKGROUND OF THE INVENTION

A television viewer often considers a number of different television programs before deciding on a program to view or record. Before making such a decision, the viewer typically engages in a cumbersome and time-consuming process in considering the different television programs with reference to a printed television schedule. The viewer first considers a program by referring to the printed schedule to obtain a time and channel over which the program will be broadcast. The program may be included anywhere within the schedule, and thus some effort may be required of the user and some time may be wasted in locating the program. Where provided, the viewer also reads a text description of the program in the printed schedule or in another publication. The text description may also require time and effort to locate. The viewer then considers the program based on the text description. If the program is currently being broadcast, the viewer may further consider the program by selecting the channel indicated by the printed schedule to momentarily view the program.

When the viewer wishes to consider a number of programs, the above decision process becomes particularly cumbersome and time-consuming. The viewer considers a first program as described above, determining the location of the first program in the printed television schedule, determining the location of and reading the text description of the first program and, if currently being broadcast, perhaps momentarily viewing the first program. The viewer then considers a second program by determining the location of the second program in the printed schedule, determining the location of and reading the text description of the second program and perhaps momentarily viewing the second program. This process is continued for each television program the viewer considers.

One prior art attempt at improving the selection process described above involves a method which actually displays the television schedule on the television screen. By localizing the television schedule and text description to the television, this method renders the user's selection process less awkward than the method described above. Unfortunately, however, this method is still quite cumbersome and time-consuming. When deciding on a program to view or record, the viewer considers a first program by determining the location of a first program name in the displayed television schedule and then designating the program name via a remote control pointing device. A text description is then displayed to the viewer in a display window superimposed upon the displayed television schedule.

After the viewer has read the text description, the viewer must remove the display window using the pointing device. The user then selects the first program for viewing if momentary viewing of the first program is desired. After momentary viewing, the user designates the schedule to be displayed again with the device. To continue, the user must then determine the location of a second program name in the television schedule, designate the second program name, read a second text description of the second program in a display window superimposed on the television schedule, remove the display window, select the second program for viewing, designate the schedule to be again displayed, and so on. This entire process must be repeated for each program that the user considers. Thus, a more efficient means of television program selection is desired.

SUMMARY OF THE INVENTION

The present invention is a computer method and system for providing a user with efficient selection of a television program to view or record. The method provides a television schedule which is consistently displayed concurrently with a description of the program currently selected by the user from the displayed television schedule. The description of the program includes both a textual description and a graphic description. The graphic description including a bitmap or a video presentation of the selected program. The displayed television schedule comprises a schedule layout displayed to the user on a screen display. The schedule layout includes a number of program names arranged in an adaptively learned order based on the frequency of the user's previous selections. Each time a program name is selected by the user, the graphic description and the textual description of the television program represented by the selected program name are displayed concurrently with the schedule layout in a separate location on the screen display. As a result of the concurrent display of program names, the user can select a television program perceptively by viewing the adaptively ordered schedule layout at the same time as both the textual and graphic description. Also, as a result of the concurrent display, the user's selection is unencumbered by any delay when the description of each selected program is displayed. Because the television schedule is arranged in an adaptively learned order, the user's selection is likely to be even more efficient. Thus, the user can rapidly select and view the descriptions of a number of television programs when making a decision.

In a preferred embodiment of the invention, a computer obtains the program name and the description of each of a number of television programs from a cable source which broadcasts the television program over cable. The computer also obtains from the cable source a time of broadcast of each television program and a channel indicator indicating the channel over which each television program is to be broadcast. The computer stores the program name, a channel indicator, including a channel name and a channel number, a time of broadcast, including a day, start time, and end time of the broadcast, and a description of each television program, in an entry in a program table provided for that television program. Upon a request by the user, the computer displays the program name, channel indicator and time of broadcast in the schedule layout in a fashion which visually associates the program name with the channel indicator and time of broadcast. Preferably, the schedule layout includes a grid containing one of the program names in each entry. The grid has a channel axis for referencing the channel indicators and a time axis for referencing the corresponding times of each of the scheduled television programs. The order of entries along the channel axis is based on the frequency of user selections of each of the channels.

The computer provides the description of each currently selected program to the television for concurrent display with the schedule layout. The description provided for each television program includes a text string stored by the computer which describes the television program. The computer provides the text string describing a television program to the television for display when the program name of the television program is designated in the grid by the user via an input device such as a remote control. The description provided for each television program also includes a picture-in-graphics display window. A picture-in-graphics display window is similar to a picture-in-picture display window except that the reduced-size picture is displayed in a display window superimposed on a computer graphics background. If the program is currently being broadcast, the computer provides to the television to display in the picture-in-graphics display window the program currently being broadcast. Otherwise, the computer controls the television to display a blank window, or, in an alternative embodiment, a bitmap for the network or television program indicated by the bitmap indicator. The bitmap is provided by the cable source. When a program has been selected for viewing as described above, the selected program is displayed in full screen in place of the schedule layout. Thereafter, when the user changes channels, the program name, channel indicator and text string are displayed superimposed on the program displayed in a corner of the screen.

The computer system of the preferred embodiment also includes a video recorder. The computer controls the video recorder to record a television program when it is broadcast if the television program has been previously selected by the user to be recorded. In the preferred embodiment, the computer can control the video recorder to record the television program even when the television is not "ON". The user selects a program to be recorded by selecting the program name of the program from the schedule layout. When the time of broadcast of the selected television program is reached, the computer briefly displays the text string describing the selected program and then controls the video recorder to record the selected program.

In the preferred embodiment, the user can also select a television program to view or record with reference to a specific topic which defines the nature of the television program. The computer provides to the television for display a list of topics. Each topic corresponds to a set of the scheduled television programs fitting the category described by the topic, such as movies, sports, and so forth. The topic list is displayed in an adaptively learned order based on the number of television programs previously selected from each topic. For example, if movies have been selected most frequently, then a "movies" topic is displayed first in the topic list.

The user then designates a topic from the topic list via the input device. When the topic is designated, the computer provides to the television for display a program list which lists the program names of the television programs defined by the selected topic. The user selects a television program to view or record by designating a program name in the displayed program list via the input device. The computer updates and stores the number of television programs selected for each topic. When the topic list is thereafter displayed, the topics are displayed in an order based on the updated number of television programs selected for each topic.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of the computer system of the preferred embodiment of the invention.

FIG. 2 is an illustration of the screen display displayed in accordance with the preferred embodiment.

FIG. 3 is an illustration of the program table which stores program information in the preferred embodiment.

FIG. 4 is a flow diagram of the selection program performed by the preferred embodiment.

FIG. 5 is a flow diagram of the schedule routine performed by the selection program of FIG. 4.

FIG. 6 is a flow diagram of the change selection routine performed by the schedule routine of FIG. 5 and the topics routine of FIG. 7.

FIG. 7 is a flow diagram of the topics routine performed by the selection program of FIG. 4.

FIG. 8 is a flow diagram of the record program of the preferred embodiment.

DETAILED DESCRIPTION OF THE INVENTION

The preferred embodiment of the present invention provides a computer method and system for providing a user with efficient selection of television programs to view and record. The system layout and component interrelationship of the preferred embodiment will be described first, followed by a detailed description of the processes that are performed on the system.

System Overview

A block diagram of the computer system of the preferred embodiment is shown in FIG. 1. The computer system of FIG. 1 includes a computer 100 which is connected to a cable source 110, a tuner 115, an input device 120, a television 130 and a video recorder 140. In a preferred embodiment, the cable source 110 is a broad band coaxial cable over which a television cable provider sends television programs in a broadcast signal and television program information in a digital data stream. In alternate embodiments, the programs may be broadcast over other media such as a standard television broadcast, direct broadcast via satellite, and so forth. As will be explained, the user utilizes the computer 100 via the input device 120 to select a television program broadcast by the cable source 110. The input device 120 is a mouse, a remote control pointing device, or the like. The cable source 110 and the computer 100 control the tuner, or alternatively the tuner and the video recorder 140, to control the display of the selected television program on the television 130. The computer also controls the video recorder 140 to control the recording of the selected television program.

Specifically, the computer 100 contains a memory 150 which stores a selection computer program 152. It should be noted that the memory 150 includes random access memory (RAM) in which data is stored by programs. As will be explained below, the selection program 152 allows the user to select the desired television programs. The computer 100 also contains a graphics display generator 157 that generates computer graphics, and a picture-in-graphics processor 155 that combines an output from both the tuner 115 and the graphics display generator 157 and sends the resulting signal to the television 130. The memory 150 is connected via an I/O unit 160 to a central processing unit (CPU) 170 which executes the selection program 152. The CPU 170 is also connected to the cable source 110, the tuner 115, the input device 120, the television 130 and the video recorder 140 via the I/O unit 160. When the CPU 170 executes the selection program 152, the CPU 170 obtains the television program information from the cable source 110 in a digital data stream. The program information includes information about a number of television programs. The CPU 170 then stores the program information in the RAM portion of the memory 150.

The program information includes a program name, time of broadcast, channel indicator, and description of each television program. In an alternative embodiment, the program information includes actor names, director names, content ratings such as "R," "PG," etc., and star ratings indicating quality. One of ordinary skill in the art will recognize that the principles of the invention can be applied to maintain a variety of other kinds of program information, as well. The selection program 152 provides the program information to the television 130 via the picture-in-graphics processor 155 in a schedule layout which the television 130 displays. The selection program 152 thereafter obtains from the user via the input device 120 a selection of a television program to display or record by using the schedule layout. The selection program 152 provides the description of the selected program concurrently with the schedule layout to the graphics display generator 157 to be displayed on the television 130. When the user requests to view the selected program, the selection program 152 controls the tuner 115 to tune the selected program, generates a graphics image of the schedule layout and graphics portions by controlling the graphics display generator 157, and instructs the picture-in-graphics processor 155 to combine the video information and graphics image and to send the resulting signal to the television 130. In cases where the schedule layout and portions of the description are combined with a reduced size picture-in-graphics display of the selected program, the selection program 152 instructs the picture-in-graphics processor 155 to overlay the digital image of the broadcast signal obtained from the cable source 110 with a computer graphics image of the schedule layout and graphic portions. The picture-in-graphics processor 155 sends the composite image to the television 130 to be displayed. When the user requests to record the selected program, the selection program 152 designates the program to be recorded. A record program 154 stored in the memory 150 is executed by the CPU 170 concurrently with the selection program. The record program provides a command to the video recorder 140 via the I/O device 160 to record the designated program at the time of broadcast of the selected program. In the preferred embodiment, the command is an infrared command.

A screen display is shown in FIG. 2 which is displayed by the television 130 under control of the selection program 152 when the user requests a schedule. The screen display includes a schedule layout 200 which displays the program name, channel indicator, and time of broadcast of each of the television programs. The schedule layout 200 includes a grid 210 in which a grid entry 212 is provided for each of a number of television programs broadcast by the cable source 110. Each grid entry 212 contains the program name of one of the television programs. The grid entries 212 are arranged horizontally according to a time of broadcast and arranged vertically according to the channel over which the television programs are broadcast. In an alternate embodiment, the grid entries 212 may be arranged vertically according to the time of broadcast and horizontally according to the channel. A number of time entries 215 are provided along a horizontal time axis 214 which display the different times over which the television programs are broadcast. Similarly, a number of channel entries 217 are provided along a vertical channel axis 216 which display the different channels over which the television programs are broadcast.

In the embodiment of the invention having the screen display shown in FIG. 2, the selection program 152, via the graphics display generator 157, controls the television 130 to display only a portion of the grid 210 at a given time. Thus, the grid 210 can contain a large number of times and channels over which the television programs are broadcast without the need to reduce each grid entry 212 to a size in which the program name becomes unreadable in order to display all television programs at the same time. It will be appreciated by one of ordinary skill in the art that the schedule layout 200 can be designed such that the size of the displayed portion of the grid 210 can be varied.

In an alternative embodiment, the channel entries 217 are arranged along the channel axis 216 according to a frequency with which channel entries associated with the program names have been designated by the user. Each time the user designates one of the program names, the selection program 152 increments a channel counter 151 for the channel entry 217 associated with the designated program name. The channel counter 151 is preferably stored in the RAM portion of the memory 150. The selection program 152, via the graphics display generator 157, controls the television 130 to arrange the channel entries 217 in an order of use from the channel entry with the highest value in its associated channel counter 151 to the channel entry with the lowest value in its associated channel counter 151. FIG. 2 illustrates a state of the schedule layout 200 wherein the order of use for the channel entries 217 is channels 2,4,5, and 7.

In yet another embodiment, the channel entries can be arranged along the channel axis 216 according to a frequency with which program names have been designated by the user. Each time the user designates one of the program names, the selection program 152 increments a program counter 153 associated with the designated program name. The program counter 153 is preferably stored in the RAM portion of the memory 150. The selection program 152, via the graphics display generator 157, then controls the television 130 to arrange the channel entries 217 in an order of use from the channel entry whose program name has been designated the most number of times, to the channel entry whose program name has been designated the least number of times. FIG. 2 illustrates a state of the schedule layout 200 wherein the program name designated the most number of times is associated with channel 2, for the currently displayed channel entries. The program name designated the least number of times is associated with channel 7, for the currently displayed channel entries. There may be more frequently displayed program names above channel 2 and less frequently displayed program names below channel 7 since the schedule 200 scrolls (the scroll feature is described in more detail below).

While the discussion above has focused on arranging channel entries 217 based on the frequency with which associated program names have been designated, those of ordinary skill will understand that other attributes or selection patterns can be monitored and the channel entries rearranged based on the results of that monitoring.

The schedule layout 200 also includes a day selector 220 with which the user selects the day for which the television programs are to be displayed by the grid 210. The day selector 220 contains arrow buttons with which the user moves the selected day chronologically forward or backward, as shown. The schedule layout 200 also includes a day entry 222 which indicates the day previously selected by the user via the day selector 220 and for which the television programs are displayed by the grid 210. The grid 210 varies in content based on the day currently selected.

The schedule layout 200 includes a time scroll bar 224 which the user scrolls to select time entries 215 that are different than the time entries currently displayed on the time axis 214 of the grid 210. Program names corresponding to the newly selected time entries 215 and the previously selected channel entries 217 are displayed in the grid entries 212. For example, the time scroll bar 224 is scrolled so that the time entries for the times 6:00 PM, 6:30 PM, 7:00 PM and 7:30 PM are selected, as shown in FIG. 2. Similarly, the schedule layout 200 provides a channel scroll bar 226 which the user scrolls to select channel entries 217 that are different than the channel entries currently displayed on the grid 210. Program names corresponding to the newly selected channel entries 217 and the previously selected time entries 215 are displayed in the grid entries 212. For example, the channel scroll bar 226 is manipulated so that the channel entries 217 for channels 2, 4, 5 and 7 are selected, as shown in FIG. 2. Thus, by manipulating the time scroll bar 224 and the channel scroll bar 226, the user varies the content of the displayed portion of the grid 210 shown in the schedule layout 200. In an alternate embodiment, the contents of the grid may be manipulated by directional buttons provided on the input device 120.

The present invention displays a description of the television program selected from the schedule layout 200 concurrently with the schedule layout. As shown in FIG. 2, the screen display contains a text display window 230 and a picture-in-graphics display window 240. The text display window 230 is provided in a location on the screen display that is separate from the schedule layout 200. The text display window 230 displays, concurrently with the schedule layout 200, a text string which describes the currently selected program from the grid 210.

The picture-in-graphics display window 240 is also provided in a location separate from the schedule layout 200. The picture-in-graphics display window 240 contains a graphic representation of the television program currently selected from the grid 210. When the currently selected program is actually being broadcast, the selection program 152 instructs the tuner 115 and the picture-in-graphics processor 155 to display a reduced-size video display of the selected program in the picture-in-graphics display window 240. It is well known to those skilled in the art how to provide such a reduced-size display on the screen display of a television. When the currently selected program is not being broadcast, the selection program 152, via the picture-in-graphics processor 155, controls the television 130 to display in the picture-in-graphics display window 240 a blank window, or, alternatively, a bitmap representing the selected program or the network logo or a network provided program video clip. The bitmap is provided by the cable source 110 and stored by the selection program 152 as part of the program information in the RAM portion of the memory 150.

Both a text description and a graphic representation of the selected program are preferably displayed when a television program is selected by the user in the preferred embodiment of the invention. When the user changes among selected programs by designating different entries 212 in the grid 210, the selection program 152, via the graphics display generator 157, concurrently changes the text description displayed in the text display window 230 and the graphic representation in the picture-in-graphics display window 240 of the selected programs so as to correspond to the newly selected program. As a result, the user is consistently provided with useful descriptions of the tel