ELECTRONIC TELEVISION PROGRAM GUIDE CHANNEL SYSTEM AND METHOD

Abstract: An electronic program schedule system which includes a receiver (30) for receiving television program schedule information and promotional information transmitted via satellite (170), a digital playback system (40) for storing the schedule and promotional information and formatting pages of said information, and a cable television channel modulator (50) for modulating the pages of information onto a cable television system. A data processor (41) in the playback system (40) receives and stores in a memory (42) television program schedule information for a plurality of television programs to appear on the plurality of television channels. A televison receiver is used to display the television program schedule and promotional information by tuning the receiver or cable converter box to the designated channel upon which the signals are modulated. A multimedia generator (44) receives control commands from the data processor (41) and program schedule information from the memory (42) and displays a portion of the program schedule information in either full screen grid format or partial screen grid format together with promotional information, as controlled by a schedule for display of the promotional information resident in the data processor (41). The data processor (41) controls the multimedia generator (44) with control commands, issued in response to a computer program resident on the data processor (41), to display program schedule information and promotional information.

Description: ELECTRONIC TELEVISION PROGRAM GUIDE CHANNEL SYSTEM AND METHOD Background of the Invention This invention relates to an electronic program guide system which provides a user with schedule information for broadcast or cablecast programs available for viewing on a television receiver. More particularly, it relates to an improved electronic program guide channel that provides the viewer with a more versatile, readable, and aesthetically pleasing display of program listings as well as promotional information. Electronic program guides for television systems are known in the art, particularly with regard to cable television systems. For example, one common implementation of a electronic program guide channel utilizes a dedicated cable television channel for continuously broadcasting program schedule information. The advantage of such a system is that it is relatively easy to deploy because it is centrally implemented at the cable head-end. No additional electronics or software are required at the viewer location because full control of the display is maintained at the cable head-end. The display information is then broadcast continuously on a dedicated cable channel. The television viewer simply tunes the cable converter box or television tuner to the channel on which the schedule information is modulated and views the program listings. Typically, these program guides utilize a scrolling display of television listings. Some systems employ a partial screen of listings with additional information in the remainder of the screen such as advertisements for movies on pay channels, pay-per-view (PPV) event schedules, time and weather information, and other commercial information. These systems generally incorporate a grid or matrix to display the program schedule information, with a different row for each channel and columns representing different time slots. Collectively, the prior electronic program guide systems are frustrating for the viewer and do not incorporate features that render them especially useful. They also lack features that would make them aesthetically pleasing to watch. These deficiencies contribute to their limited use by viewers and general preference for printed television schedules. For example, only a few rows (channels) are typically displayed at one time and scrolled either continuously or periodically, so that, in a cable system with a large number of channels, the time for completing one cycle through the listings for all the channels may be several minutes, and the viewer may be required to wait some time to view the schedule for a desired channel. In addition, many viewers may find a continuously scrolling program guide difficult to read because their eyes must follow the listings as they move up the screen. Scrolling listings are also used in guides that display program listings in a split screen format together with promotional and other information. The split screen format is necessitated because of the need to include commercial advertising in the screen as well as the schedule information. However, it may be frustrating for viewers to be forced to continuously view this information while they are waiting for the schedule information for a desired channel to appear on the display. Another possible reason why electronic program guides are under-utilized is they simply are boring to watch. While a full screen of listings allows for the display of more schedule information at one time and thus a shorter cycle time through the entire program schedule, viewers could be bored by the monotony of continuously viewing a full screen of listings. As indicated above, however, split screen program guides that simultaneously display additional information of possible interest to the viewer have the disadvantage of much longer cycle times. An additional problem with prior program guides is that program titles must be truncated to fit into the cells of the grid. The width of the grid cells vary with the duration of the program. Thus, a 30 minute program is allotted only a small amount of space for the program title and description. Therefore, titles and/or descriptions for half and even full hour programs must often be truncated in order to fit into the allotted space. Some systems simply cut off the description of a program without abbreviating it in any way so the user is unable to determine the subject matter of the program. For example, a recent television program display included the following text in a grid cell: "Baseball: Yankees v." Truncation of program listings in this manner greatly reduces the utility of the program guide and is frustrating for viewers. Although some systems partially alleviate this problem by providing two lines of text in each grid cell, this solution is not ideal because program descriptions may still be truncated. A similar problem arises with electronic program guides as the time slots change. Typically, 90 minutes of schedule information is displayed at one time and at every half-hour, the 90 minute window shifts ahead by 30 minutes. In the case where a 30 minute shift causes a 30 minute size grid cell to display, e.g., a two-hour movie, it is likely that the full title of the movie will not fit into the cell. Truncation of the title is thus required in this situation as well. In this case, while two lines of text may be desirable to fit the title in the 30 minute cell, this may not be the case for the 60 or 90 minute cells because there may be sufficient space in these cells to fit the title on a single line. There thus exists a need for substantial improvements in existing electronic television program guide channels that will make the guides more useful for the viewer and more pleasant to watch, while still meeting the needs of the cable operator in terms of including commercial information in addition to program schedules. Electronic program guide channels represent a potentially useful tool for the viewer as well as a source of revenue for cable operators, but it is believed that current program guides are being under-utilized because of the aforementioned drawbacks with these systems. Accordingly, there exists a need for an improved technique of displaying program information in order to make program schedule grids more readable. There also exists a need for an improved technique of displaying program information and associated commercial information in order to reduce the cycle time for displaying the complete schedule of program information. There also exists a need for providing a more aesthetically pleasing display environment for the program schedule information. There also exists a need for providing more flexible display formats for the program schedule information that can be readily altered and interchanged by the cable operator. There is also a particular need for an improved display of text in the cells comprising the program schedule grid. Accordingly, there exists a need for a electronic program guide which can provide improved display of program listings and video promotions in a manner that does not detract from the utility of the program guide. For example, there is a particular need for a flexible program schedule system that allows the cable operator to broadcast full screen displays of program schedule information as well as partial screens of program information together with promotional and other commercial information. These as well as other problems and drawbacks of existing electronic program guides are solved by applicants' improved electronic program guide channel system and method. It is accordingly an object of the present invention to provide a electronic television program schedule system wherein pages and partial pages of program schedule information fade in and out on the viewer's display. It is another object of the present invention to provide a system which can interchangeably display a full screen of program listings or a partial screen of program listings. It is a further object of the present invention to provide a system which can switch between a display of program listings and display of a received video or text message. It is a further object of the present invention to provide a system which can alter the portion of the page display occupied by program listings depending upon the content of a received message. It is a further object of the present invention to provide a system which can switch between a full page listing display and partial page listing together with a message. It is a further object of the present invention to provide a system which can switch between a full page listing display and partial page listing together with a message, wherein the portion of the page used for program listings is determined by the content of the message. It is another object of the invention to provide a electronic television program guide with variable background views. It is another object of the invention to provide a electronic television program guide with variable background views that change according to time of day. It is another object of the invention to provide a electronic television program guide with background views that are determined by current events or events upcoming in the near future. It is another object of the invention to provide a electronic television program guide with background views that are determined by current holidays or holidays upcoming in the near future. It is a further object of the invention to provide an electronic television program guide wherein varying grid cell sizes are provided with associated, varying length program titles. It is a further object of the invention to combine an electronic television program guide channel with an interactive program guide system so as to provide user control over the display of listings information in an electronic program guide channel environment. These and other objects of the invention are achieved by an electronic program schedule system which includes a digital receiver and demodulator for receiving and demodulating digital data transmitted, e.g., via satellite, comprising television program schedule information and promotional material, and a digital playback system for storing the data, retrieving the data, and forming pages of television program listings and promotional material for transmission to viewers via a cable television system. The playback system includes a data processor that stores in a disk storage memory apparatus television program schedule information for a plurality of television programs to appear on the plurality of television channels. The data processor also stores in disk storage memory apparatus promotional material for display in association with the schedule information. A multimedia generator receives control commands from the data processor as well as program schedule information and promotional information from the memory and displays a portion of the program schedule information in grid format. The data processor controls the multimedia generator with video control commands, issued in accordance with software resident in the data processor to display program schedule information either in full page format or in partial page format together with promotional information. In addition, the control commands cause the multimedia generator to fade program listings in and out, alter the background upon which the program listings are overlaid, and display varying textual descriptions of television programs so as to fit within a designated grid cell. The pages are modulated by a cable television channel modulator and transmitted on a dedicated cable channel to viewers. A television receiver is used to display the pages by tuning the cable converter box or television tuner to the proper channel. In an alternate embodiment, the disclosed electronic program guide channel may be combined with an interactive program guide, implemented in the cable converter box. Brief Description of the Drawings Fig. 1 is a block diagram showing various components of a preferred embodiment of the invention herein. Fig. 2a is a flow chart showing one method of operation of master uplink facility. Figs. 2b and 2c are flow charts showing another method of operation of master uplink facility. Fig. 3 is a flow chart showing the process for formation of a promotional display schedule. Fig. 4 is a block diagram showing the various components of a preferred embodiment of the digital playback system of the invention herein. Fig. 5a shows the layout for the full page display mode of an embodiment of the invention herein. Fig. 5b shows a simulated full page display of an embodiment of the invention herein. Fig. 5c shows another simulated full page display of a preferred embodiment of the invention herein. Fig. 6 is a flow chart showing operation of a preferred embodiment of the invention herein when operating in full page display mode. Fig. 7a shows the layout for a promotional page display with small promotional windows. Fig. 7b shows a simulated promotional page display with small promotional windows. Fig. 7c shows another simulated promotional page display with small promotional windows. Fig. 8 shows a typical sequence of display pages of one embodiment of the invention herein. Fig. 9 is a flow diagram showing the sequence of operations of the invention herein when operating under control of a promotional schedule. Fig. 10a is a flow chart showing the operation of a preferred embodiment of the title editing portion of the text fit system of the invention herein. Fig. 10b is a flow chart showing the operation of a preferred embodiment of the supplementary information editing portion of the text fit system of the invention herein. Fig. 11a is an example of the operation of the text fit system. Fig. lib is an example of how current electronic program guide channel systems truncate program titles. Fig. 12 is a block diagram of an alternate embodiment of the invention herein including an interactive electronic program guide. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT System Configuration Fig. 1 is a block diagram showing various components of the electronic program schedule system of the illustrated embodiment of the invention. The system includes cable system equipment designated as 10 that is normally located at the head-end of a cable television system. Preferably there would be numerous installations of the cable system equipment 10 located at various cable system head-ends. Satellite receiver 20 receives digital signals transmitted via satellite 170. The master uplink installation 100 includes satellite transmitter 160 for transmitting digital data comprising television program schedule information and promotional material. It will be understood that there are numerous ways to transfer the digital signals from uplink 100 to cable head-end 10, including telephone lines and by transferring the signals to a storage medium, such as a computer disk or optical storage device. A satellite uplink is a preferred embodiment as it readily permits transmission to any number of cable systems and updating of such information on a frequent or as-needed basis. All television program schedule and promotional data is compiled at the master uplink installation 100. Data processor 110 processes the various data including the program schedule listings stored in database 120, channel map data stored in database 130, and the promotional information stored in database 140. Text fit data processor 115 provides a computer system for editing the program schedule listings descriptions so that they may fit in different size display cells, and is described later. Listings database 120 contains the program listings for all cable networks, local stations (including their affiliated network programs), in addition to pay-per-view events. Because each cable system may carry a particular cable network on a different channel, listings for cable networks are compiled according to the name of the cable network, as these designations are common to all cable systems. Listings for local stations are compiled according to the station call letters and include local content programs such as news shows, syndicated programs and affiliated network feed programs. In addition, local cable programming channels, such as community access channels must also have their schedule information contained in the listings database. The channel map database 130 contains information specific to each cable system, such as the number of channels and the cable channel onto which each cable network, local station or pay-per-view channel is modulated. In some cases, networks or cable channels have multiple time zone feeds which must be properly tracked. In addition, information relating to shared channels, where cable networks have been allocated broadcast rights by the cable operator according to the time of day, are stored in the channel map database. Promotional database 140 includes promotional material to be displayed to viewers in association with program listings. The promotional material, which includes video/audio clips as well as textual information, is digitally stored in compressed format. This material has been provided by the program owners as part of the overall marketing effort to the cable consumer, and may be edited by the electronic program guide provider to optimize use in the system. Operation of the master uplink facility may occur in two ways as follows. In the first, all information is preselected for the cable system at the master uplink 100 and sent as a complete package of information to the local cable system 10. In the second, and preferred method, the local cable system is sent channel map and promotional schedule information only and then locally filters (captures) the required listing and promotion material from a continuous feed of all material from the master uplink 100 via satellite 170. In the first method, data processor 110 stores a list of all participant cable systems. At a predetermined time, processor 110 selects a particular cable system and retrieves the channel map information from database 130. Using the channel map data, processor 110 extracts from listings database 120 the program schedule information for all cable networks and local stations in the cable system and matches the listings data with the appropriate channel for the cable system. For example, the channel map data would indicate that on a particular cable system the Cable News Network is broadcast on channel 4. Processor 110 would than extract the program schedule information for CNN and assign it to channel 4. Local television station or pay-per-view channel schedules for the same system would also be extracted in a similar fashion. Fig. 2a is a flow chart that shows the process of forming a complete database of schedule information, including program listings, promotional material, and channel map data for each cable system. After selecting a cable system, data processor 110 retrieves the channel map for the system and then extracts program listings information for cable networks, local channels, and pay-per-view events. In addition, promotional material is selected based on the pay-per-view listings. The data is then combined into a cable system specific data file to which the channel map and promotional schedule for the cable system is added. Processor 110 stores the schedule for display of promotional material for each cable system which includes information concerning the date, time, and frequency of display of the promotional material designated for display on a particular cable system. Based on this schedule and the pay-per-view listings, processor 110 extracts promotional material from database 140 for transmission to cable head-end 10. Once the processor has compiled all of the data for a particular cable system, the data is packetized and, together with the address header for the designated cable system, is uplinked to satellite 170 through digital uplink facility 150 and transmission antenna 160. The processor then repeats the above extraction and compilation procedure for each participating cable system so that the uplink facility 100 sequentially transmits data for each cable system. The entire process is repeated periodically, as the program schedule and promotional information is updated. The frequency of transmissions from the master facility can of course be different for each cable system. Updates and changes to the program schedule information are made at the master uplink facility and then transmitted to the participant cable system. Updates may occur weekly, daily, or evenly hourly depending on the particular cable system and the frequency of updates at the master uplink. In the second method of transmission to the cable head-ends, only the promotional schedule and channel map for each cable system is transmitted and received as described above. This process is shown in fig. 2b. The master uplink continuously transmits all cable systems listing and promotional information on a regular basis. The complete listing information would be cycled on, for example, a 12 hour basis. Program schedule updates, or new promotional information could be transmitted more frequently, say on an hourly basis. This process is shown in fig. 2c. The digital receiver 30 then monitors the transmitted digital signals from master uplink 100 looking for only the cable networks, local stations or pay-per-view channels which it requires for its channel map. This information is then passed on to the digital playback system 40 for storage. Real time updates for last minute changes, such as a sporting event going longer than originally scheduled could be supported in this second method, where it would be impractical to send them individually to each local cable system using the first method. Data processor 110 forms a schedule for the display of the promotional material for each cable system as follows: Fig. 3 is a flow chart illustrating the process by which a promotional schedule is formed. First, data processor 110 retrieves channel map data, national promotional information, and local promotional information (including the duration and frequency of promotions). Based on the channel map data, pay-per-view program listings are reviewed and promotional material for these listings is retrieved. This data is combined with the schedule for repeating promotion cycles, which includes the delay between promotions, whether a full page of listings or promotional information is to be displayed, the priority of promotions, and the required play times for promotions. The result is a complete promotion schedule database. At the cable system head-end 10, reception antenna 20 receives the signals transmitted via satellite 170 and routes them to digital receiver and demodulator 30. Digital receiver analyzes the incoming data to determine if its address matches the address for the cable system. When a match is detected, the data stream is routed to digital playback system 40, which is shown in block diagram form in fig. 4. Once the schedule, listings and promotional information has been received by either method, the operation of the electronic program guide is the same. As shown in fig. 4, digital playback system 40 comprises data processor 41, disk storage system 42, digital decompression system 43, multimedia generator 44, and background music system 49. Program listings, channel maps and the digitally compressed files containing the promotional material are stored in disk storage system 42. The data processor 41 uses the received program schedule information to build a database stored in disk storage system 42. The stored schedule information can be updated on a periodic basis, such as hourly, daily or weekly, or at any time when changes in scheduling or other factors warrant an update. Updates are made by transmissions via satellite from the master uplink facility. The data processor also includes a system clock 45, DRAM memory 46, ROM memory 47 and microprocessor 48. Together these elements comprise a computer system which can be implemented as a commercially available personal computer. Operations at the cable head-end are controlled by software resident on data processor 41 and also stored on disk system 42 for backup purposes. Data processor 41 retrieves program schedule information from disk storage system 42 just before the time it is to be displayed and stores the data in appropriately organized records in dynamic random access memory (DRAM) 46. Promotional material is retrieved from disk system 42, decompressed by digital decompression system 43, and sent to the multimedia display generator 44 according to a schedule resident on data processor 41, which is the schedule received from master uplink facility 100. Data processor 41 also stores data types such as stored bit maps for the screen configurations and the graphic symbol or logo to be included on the listings and promotional pages. Data processor 41 supplies the program schedule information to a multimedia generator 44 including audio switching and video display generating capability, which in the present embodiment may be a commercially available VGA-type graphics and sound card, such as a Rocgen card manufactured by Roctec. The multimedia generator includes a standard video generator, which takes the digital program schedule information sent by data processor 41 and converts it to an NTSC video format signal in accordance with the bit map for the particular screen display being presented. Multimedia generator 44 is als capable of selecting an audio source, such as background music system 49 which in the present embodiment may be a commercially available music system such as Digital Music Express (DMX). Processor 41 controls which screen display is presented and how it is mixed with the output of the digital decompression system 43, including both audio and video signals. The configuration of each type of screen display is shown and discussed in greater detail below. The multimedia generator 44, controlled by commands from data processor 41, composes the pages of listings and promotional material for display and routes the formatted pages to cable television channel modulator 50. Subscribers desiring to view the electronic program schedule listings simply tune their cable television converter box to the proper channel which then demodulates the signal. The process of receiving and displaying the listings information is not described in detail as it is well known to those of skill in the art. Program Listings Pages One advantage of the present invention is the flexibility it provides in creating the pages of program listings and promotional information, heretofore unavailable in existing systems. The various display pages generated by the electronic program guide channel system will now be described. Full Page Display Mode When the system is operating in full page display mode, no promotional material is displayed. Fig. 5a shows the layout of the full page display mode of the present system. In the top left-hand corner, space is provided for display of a product provider (such as TV Guide), cable system or multi-system operator (MSO) logo. Current time is continuously displayed on the page. In addition, space is provided for the display of local or national messages. Such messages may include program listings updates, news flashes, weather information, traffic information, local events and the like. Simulated display pages are shown in figs. 5b and 5c. As is shown in Fig. 5a, program listings are displayed in matrix format, with columns representing different time slots and rows different channels. Next to each row of channel listings is the name and number of the channel. In a preferred embodiment of the present invention, four 30 minute time slots are displayed, the first being the current 30 minute slot, and eight different channels. Of course, different numbers of channels and time slots may be used. The length of the program determines the size of the cell available for the display of the program title and other information. For example, a 30 minute program is provided with the smallest cell and a 120 minute or longer program the largest. As shown in figs. 5b and 5c, if a program began earlier but continues into a currently displayed time slot, the left side of the grid box is formed into an arrow pointing toward the left (past) to indicate that the program began at a time not currently being displayed. Similarly, if a program continues into a time slot in the future not currently being displayed, the right side of the box is formed into an arrow pointing toward the right (future). In a preferred embodiment of full page display mode, each page of listings shows information for eight channels and is displayed for 10 seconds. After 10 seconds, the page fades out and a new page displaying the next eight channels fades in. In addition, background music system 49 provides background music during display of the listings pages. A fade-in/fade-out means for display of the schedule information is an improvement over existing systems utilizing scrolling listings. With the disclosed fade-in/fade-out method, pages of listings remain constant while they are displayed, eliminating the need for the user to follow a line of listings as it scrolls up or down the screen. The full page display mode permits rapid display of all program schedule information for the four time slots. For example, in a cable system with 80 channels, it would take approximately 1.5 minutes to provide the schedule information for all eighty channels, assuming the information for each block of eight channels is displayed for 10 seconds. It will be understood by those of skill in the art that the format of the display, as well as the number of time slots, number of channels, and time of display for each page may readily be varied by modifying the software that controls the data processor 41. Fig. 6 is a flow chart showing the process by which the system operates in full page listing mode. Data processor 41 first retrieves the channel map and initializes the playback system by creating the data structures and initializing the multimedia generator. Next, eight channels are selected for display of listings data, beginning with the lowest number channel. Data processor 41 then determines the proper two-hour time window for which listings will be displayed based on the current time. The two- hour time window will shift every 30 minutes. The processor then issues commands to the multimedia generator 44 to create the display based on the eight channels and two hour time window. The display is maintained for 10 seconds at which time the next set of eight channels is selected in numerical order. When a cycle through all the channels has been completed, the data processor checks the current time to determine if the two hour time window is to be incremented. Promotional Page Display Mode As discussed above, disk storage system 42 stores not only program schedule listings but promotional information as well. The promotional information is accessed by data processor 41, and converted to audio and a video window by decompression system 43, while the system is in promotional page mode as described herein. A typical layout for a promotional page with small promotional windows is shown in fig. 7a. The layout is similar to that for the full page mode, with the exception that there are fewer channels displayed at one time because the top portion of the display contains a video promotion window and an associated text window. The video and text windows replace the messages furnished with the full page of listings. For example, the video window may display a movie clip for an upcoming pay-per- view movie, the text window may contain schedule, price, and ordering information for the movie. Figs. 7b and 7c show simulated promotional page displays with small promotional windows. The same display format may be used for the display of large promotional windows, except that fewer channel listings are displayed at the same time. Depending on the desired size of the video window, data processor 41 determines how many channel listings to include on the bottom portion of the screen as to be described in further detail below. In a preferred embodiment, the same fade-in/fade-out method for changing listings is used while the video and text windows are continuously displayed in the top portion of the screen. The promotional video has a corresponding audio soundtrack which is substituted for the background music by the multimedia generator during the video playback. In one embodiment of the present invention the size of the video and text windows may be an entry in the promotional display schedule, so that data processor 41 determines the size of the windows when retrieving the promotional information. Alternatively, the size of the video and text windows may be determined by a header in the data file with the video and textual data. For example, the header may include a code that is read by data processor 41 and indicates that one-half page should be used for display of the video and text windows. The computer then determines how many rows of program listings to include with the promotion and selects the proper bit map from memory and issues appropriate commands to the multimedia generator 44 for generation of the page displays. It is apparent that much flexibility is accorded by this system. For example, advertisers may be charged different prices depending on the size of the video and text windows. System Operation A typical sequence of display pages as controlled by the data processor 41 is shown in fig. 8. In the figure, T represents time and δT represents an increment of time. As shown in fig. 8, at T=0, data processor 41 sends commands to multimedia generator 44 to produce a full page of listings (channels 1-8). After an increment of time δT 1} the listings fade and at T=T 1? listings for channels 9-16 fade in. Similarly, after two more intervals of δT,, the display has cycled through the program listings for channels 1-32. At T=4Tj, the program listings fade and instead of fading in a full page of program listings, a promotional page is faded in including a video window, text window, and only four channels of program listings. As indicated above, the proportion of the page used for display of program listings may be determined by data processor 41 based on the header in the file containing the video clip which controls the size of the promotional video and text windows. The promotional windows are treated by data processor 41 as messages. When the stored promotional schedule indicates it is time to display promotional windows, processor 41 sends a message to multimedia generator 44 in the form of a command to display the designated promotional windows. The multimedia generator then forms a promotional page by combining the promotional windows with program listings. The number of channels displayed is dependent on the size of the promotional windows, as discussed above. The duration of the display of the promotional page, δT 2 , may or may not be the same as δTj. In fig. 8, δT ! is 10 seconds and δT 2 is 5 seconds. Time durations may be determined by the amount of listing information that is displayed on the screen. Four full pages are displayed and then six promotional pages so that full page listings are shown for 40 seconds followed by 30 seconds of promotional pages and then another 30 seconds of full page listings and so on. In an 80 channel cable system it thus will require 100 seconds or approximately 1.5 minutes to display all the listings. It of course will be understood that any number of variations of this scheme are possible. For example, the promotional video and text windows can be changed after the first δT 2 period. The data processor may also be configured to display promotional windows more frequently during peak viewing hours and display different promotional windows depending on day of the week and time of day. An advantage of the present invention is that full flexibility is provided ~ any number of combinations are possible and each cable system may choose to configure the system differently. The overall logic for determining the commands to be sent to the video display generator by the data processor is shown in the flow diagram in fig. 9. After initialization, the data processor checks the clock and promotional schedule to determine if promotional video and text windows are scheduled for display. If a promotion is scheduled, data processor 41 composes the promotional page display format and program listings information. If the promotional schedule indicates it is time to end a promotion, the data processor composes the full page format and program listings information. The page then fades from the old to the new display. The data processor then checks the clock to determine if it is time to display the next group of channel listings. If it is, new channel listings are composed for the same time slots. If not, the data processor checks the clock to determine if it is time to display new time slots. If it is, then listings are composed for the new times. Finally, the data processor determines how long to display the current page based on whether a full page of listings or a promotional page is being displayed. Mood Backgrounds The software resident on data processor 41 may also include a schedule for the display of varying background views upon which the program listings are overlaid. The purpose of the background views or "mood" backgrounds is to help ease the monotony of viewing program listings. The background views are stored as bit maps in data processor 41. For example, data processor 41 may be programmed to issue a command to multimedia generator 44 every morning at 6:00 AM to display a sunrise in the background. The background may then be changed accordingly throughout the day to, for example, a blue sky or a nighttime view (as shown in figs. 5b and c). The background views may also vary by, e.g., day of the week, month, season, or year. Alternatively, the mood background may also be adapted to display scenes that reflect the geographic location of the cable system, or standard scenes such as an ocean or forest may be displayed. In addition, different background views may be used for holidays and special events, such as Christmas, Fourth of July, Superbowl Sunday, etc. It is also possible to incorporate background views that relate to a particular promotional window that is being displayed. Text Fit System One of the novel features of the disclosed invention is the text fit system. A preferred embodiment of the text fit system includes an interactive computer program used to edit the program listings data before it is stored in the program listings database 120 as well as software resident in the data processor 41. The interactive portion of the text fit system operates as follows: unedited (or partially edited) program listings information is loaded into text fit data processor 115. The data includes program titles, program schedule times, duration, category, as well as additional descriptive information dependent on the type of program. For example, for movies the data includes the Motion Picture Association of America (MPAA) rating, the reason for the rating ~ violence, nudity, etc., year of the movie, whether it is in black and white, story line information, and a list of starring actors and actresses. Fig. 10a is a flow chart showing the operation of the interactive portion of the text fit system. Data processor 115 extracts only the program title data which includes television program titles as well as movie titles, sporting event titles and titles for other special events. Based on the duration of the program, data processor 115 first analyzes the listings data to determine what grid size listings are needed for each title. Thus, a two hour movie could require four different edited titles to fit into each of the four different size grid cells (30, 60, 90, 120 minutes). Data processor 115 then determines how much space is required to display the title based on its character length. If the title is to be displayed in the program schedule grid using a proportional font and character to character kerning, the data processor may also account for these factors in determining the space required to display a title. The space determination would then be based on the number of pixels required for the particular combination of characters in the title. The amount of space available for display of a title depends on the size of the grid cell which in turn depends on the duration of the program and the present time. If the data processor determines that a full title requires too much space to fit into one or more grid cells, the title is then presented to the editor using a suitable display device connected to the data processor, such as a CRT. The editor is then queried to alter the title so that it will fit in the allotted space. If the title must be edited for more than one cell size, the editor is queried to edit each of these separately. In a preferred embodiment of the interactive program, the editor is shown in real time, as the title is being edited, whether the edited title will fit in the designated grid cell. In a preferred embodiment of the disclosed electronic program guide, two lines of text are displayed in each grid cell of the program listings. The title, as edited, appears on the first line, and if necessary, continues onto the second line. The decision whether to wrap¬ around to the second line is based on whether natural breaks exist in the title such as spaces between words, commas, periods, hyphens, etc. These are standard techniques used in word processing software routines. The editor may also be queried to edit a title in the situation where the full title will fit on the allotted two lines, but a hyphen is required because there are no suitable natural breaks in the title. Prior to querying the editor to shorten a title, the data processor compares the title with a stored library of shortened titles to determine if the title had previously been shortened while editing another listings database. Each time changes are made by the editor to a title, the shortened title is added to the library. It is apparent that this process of building a library of shortened titles greatly reduces the manual input required. After all titles requiring editing have been edited, either automatically by consulting the library or manually by an editor, the listings are stored in program listings database 120 for subsequent transmission to a cable head-end 10. Upon receipt by a cable head¬ end 10, the portion of the text fit system resident on the data processor 41 operates as shown in the flow chart of fig. 10b. For many listings, additional space will be available on the second line and possibly the first line as well. This space may be used for the display of supplementary information in addition to the title of the program. Supplementary information is displayed according to a fixed set of rules programmed into data processor 41. The rules are applied to determine how available space in a grid cell is to be filled. For example, for a two hour movie, there will typically be space available in addition to that required for display of the title, particularly when the 90 and 120 minute grid cells are activated. The data process determines how much space is available and fills it according to the programmed rules. For example, for a movie, the data processor will first determine if there is space available to display the MPAA rating of the movie. Next, the processor will determine if space is available for the year of the movie and then the characters "B&W" if the movie is in black and white (not shown in fig. 10b), and finally, one or more starring actors/actresses in the movie. The supplementary information will only be displayed in those grid cells where full titles are also displayed. In this manner, additional supplementary information will be displayed for larger grid cells. The process of determining what supplementary information is displayed is fully automated and thus the requisite software may be implemented at the cable head-end 10. If space is available, the data processor consults the appropriate data field as dictated by the rules and determines whether supplementary information may be displayed. This automated portion of the text fit system may be implemented as follows: each time a page is formatted, computer 41 retrieves the listings to be displayed and determines the sizes of the grid cells based on the duration of the program and the current time. As indicated above, if the size of the grid cell is too small to fit the entire title, the listings data will include an edited title for that grid cell. Data processor 41 is programmed to retrieve the longest title that will fit in the designated grid cell. If the size of the cell is sufficiently large to fit the full title as well as supplementary information, the text fit system determines what supplementary information is to be included as the pages of listings information are being composed. Performing the automated steps at the head-end is a preferred embodiment because it simplifies the data that is transmitted to each head-end. It of course is also possible for data processor 115 to perform these automated steps as well and thus provide complete grid listings, including supplementary information, for each required cell size to listings database 120, thereby eliminating the need for any text fit functions by processor 41. The benefits of the text fit system are illustrated in fig.11. Fig. 11a shows an example of a grid cell using the disclosed text fit system as compared with fig. lib that shows an example of current systems that merely truncate the listing if there is not adequate space for display of the complete title. Alternate Embodiment In an alternate embodiment of the present invention, the disclosed passive electronic program guide may be combined with an interactive program guide as follows: subscribers desiring the interactive features in the program guide would be provided a cable converter box including additional processor and memory capabilities. The hardware and software utilized in such interactive converters can be identical to that disclosed in applicants' two prior, co-pending applications titled "Electronic Television Program Schedule Guide System and Method," filed Sept. 9, 1993 and assigned serial no. 08/119,367, and "Improved Electronic Television Program Schedule Guide System and Method," filed the same date as the present application. The disclosure of these two prior applications is incorporated herein by reference. Depending on the desired functionality of the interactive portion of the guide, the processor and memory requirements of the converter box may be reduced accordingly. A block diagram of one possible implementation of the interactive portion of the guide is shown in fig. 12. Fig. 12 shows an interactive cable converter box 200 including memory 210. Program schedule information could then be downloaded and stored in the converter box memory 210 and displayed on the television receiver in overlaying relationship with the electronic program guide channel display being broadcast on a dedicated cable channel. Thus, the display environment of the disclosed guide channel can be retained, but the listings portion of the guide controlled locally by the subscriber's converter box. In this manner, the video- dominant features of the guide channel are retained, such as the promotional video clips. The same method for display of program listings disclosed in applicants' above referenced co-pending application may be utilized for user control of the listings display in the present invention. Referring again to fig. 12, a microprocessor 220, operating according to user-control commands, selects program schedule information for a plurality of television channels from memory 210. The program schedule information may be digitally transmitted to the subscriber's converter box in any of a number of ways, such as in the vertical blanking interval of the broadcast signal of the program guide channel. The listings information, along with corresponding display mode control information from the electronic program guide channel is received by data receiver 215, and then processed by microprocessor 220. In addition, the application software for implementing or updating the interactive portion of the electronic program guide may also be transmitted from the cable head-end to subscribers. The cable converter box at the viewer location will not be described in detail as such apparatus are known. For example, the components shown schematically in fig. 12 may be implemented in a commercially available converter box, such as the model 8600x manufactured by Scientific Atlanta, for example. It will be understood by those skilled in the art that any number of other commercially available cable converter boxes may be used as well. Operation of the combined guide channel/ interactive electronic program guide is as follows. The microprocessor issues control commands to video display generator (VDG) 230 based on user inputs. The VDG includes a standard RGB video generator 235, which takes the digital program schedule information sent by microprocessor 220 and converts it to an RGB format in accordance with a bit map for the screen display. VDG 230 includes a Video Overlay Device 240, which accepts the RGB video input, as well as the video (program guide channel) signal from the tuner/ demodulator 245 of cable converter box 200, which is supplied in standard NTSC video format. The overlay device 240 converts and combines the RGB signal with the signal from the tuner/ demodulator, and produces a composite NTSC output signal containing both the original video signal from the program guide channel and the interactive program schedule information as controlled by the user. This composite video signal is supplied to a modulator 250, shown in fig. 12, and then to the television receiver 260, which the user keeps tuned to the modulated channel, for example, channel 3 or 4. The advantage of the above program guide channel/ interactive electronic program guides is that it combines the advantage of a guide channel system ~ the video features including promotional video clips — with the benefit of user control over display of selected program schedule information as opposed to waiting for the desired information to appear. This may be achieved with only limited additional processor and memory requirements in the converter box. In one such embodiment of the combined program guide channel/ interactive program guide, the program listings may be displayed in the same grid format as in the passive guide. The viewer, however, could issue control commands to the cable converter box using, e.g., an infrared remote control device, to manually scroll the grid so as to control the channels being displayed. In addition, the viewer may also use the remote control to issue commands to shift the grid to the right to view future time slots. The form and content of a particular computer program to implement the invention disclosed herein will be readily apparent to those skilled in the art of video system programming and graphic display based on the description contained herein and associated flow diagrams. It will also be appreciated by those skilled in the art that there can be departure from the specific embodiment of the invention described herein without departing from the true scope of the claims appended hereto.

Claims: We claim: 1. An electronic television programming guide comprising: storage means for electronically storing television program schedule information for a plurality of television programs; data processing means for retrieving said program schedule information and for generating control commands; a multimedia generator adapted to receive control commands from said data processing means for generating a page of television program schedule listings in grid format, said page of program listings comprising program schedule information for a first, unchanging plurality of television channels and a plurality of time slots; wherein said data processing means is adapted to: retrieve from said storage means television program schedule information for a second plurality of television channels and said plurality of time slots, said second plurality of television channels differing from said first plurality of television channels, and generate control commands to said multimedia generator to create a second page of television program listings in grid format, said second page of program listings comprising program schedule information for said second, unchanging plurality of television channels and said plurality of time slots. 2. The electronic television programming guide of claim 1 further comprising: storage means for electronically storing promotional information including digitally compressed video and audio data and associated textual data; digital decompression means for receiving said digitally compressed video and audio data from said promotional information storage means and decompressing said data to form video signals and associated audio signals; wherein said data processor is adapted to retrieve said video and audio signals from said digital decompression means and textual data from said promotional information storage means and provide said video and audio signals and said textual data to said multimedia generator; and said pages of program listings further comprise a video window containing promotional video information and a text window containing promotional text. 3. The electronic television programming guide of claim 1 wherein said data processor is adapted to: generate control commands to said multimedia generator to create a third page of television program listings in grid format, said third page of program listings comprising program schedule information for said first, unchanging plurality of television channels and a second plurality of time slots, at least one of said second plurality of time slots not included in said first plurality of time slots. 4. The electronic television programming guide of claim 2, wherein said data processor is adapted to: generate control commands to said multimedia generator to create a third page of television program listings in grid format, said third page of program listings comprising program schedule information for said first, unchanging plurality of television channels and said second plurality of time slots, at least one of said second plurality of time slots not included in said first plurality of time slots. 5. An electronic television programming guide comprising: storage means for electronically storing television program schedule information for a plurality of television programs and promotional information including digitally compressed video and audio data and textual data; data processing means for retrieving said program schedule and promotional information and for generating control commands; digital decompression means for receiving said digitally compressed video and audio data from said storage means and decompressing said data to form video signals and associated audio signals; a multimedia generator adapted to receive control commands from said data processing means for generating a page of television program schedule listings in grid format, said page of program listings comprising program schedule information for a first, unchanging plurality of television channels and a plurality of time slots, said page of program listings further comprising a video window displaying promotional video information and a text window displaying promotional text; said data processing means adapted to generate control commands to said multimedia generator to create a second page of television program listings in grid format, said second page of program listings comprising program schedule information for a second, unchanging plurality of television channels and said plurality of time slots, said second plurality of television channels differing from said first plurality of television channels, said second page of program listings further comprising a video window displaying promotional video information and a text window displaying promotional text. 6. The electronic television programming guide of claim 5 wherein said data processor is further adapted to generate control commands to said multimedia generator indicating the size of said video and text windows. 7. The electronic television programming guide of claim 5 wherein said data processor is further adapted to generate control commands to said multimedia generator to create a third page of television program listings in grid format, said third page of program listings comprising program schedule information for said first, unchanging plurality of television channels and a second plurality of time slots, at least one of said second plurality of time slots not included in said first plurality of time slots. 8. The electronic television programming guide of claim 6 wherein the stored promotional information includes a code representative of the size of said video and text windows, said data processing means being further adapted to read said code. 9. An electronic television programming guide comprising: storage means for electronically storing television program schedule information for a plurality of television programs; data processing means for retrieving said program schedule information and for generating control commands; a multimedia generator adapted to receive control commands from said data processing means for generating a page of television program schedule listings in grid format, said page of program listings comprising program schedule information for an unchanging plurality of television channels and a plurality of time slots; said multimedia generator further adapted to receive control commands from said data processor for overlaying said program listings on a background view, said background view being provided by said data processor. 10. The electronic television programming guide of claim 9 wherein said data processing means is adapted to generate control commands to said multimedia generator to create a second page of television program listings in grid format, said second page of program listings comprising program schedule information for a second, unchanging plurality of television channels, said second plurality of television channels differing from said first plurality of television channels, and said plurality of time slots. 11. The electronic television programming guide of claim 9 wherein said data processing means is adapted to periodically alter said background view. 12. The electronic television programming guide of claim 10 wherein said data processing means is adapted to periodically alter said background view. 13. The electronic television programming guide of claim 10 wherein said data processing means is further adapted to generate control commands to said multimedia generator to create a third page of television program listings in grid format, said third page of program listings comprising program schedule information for said first, unchanging plurality of television channels and a second plurality of time slots, at least one of said second plurality of time slots not included in said first plurality of time slots. 14. The electronic television programming guide of claim 13 wherein said data processing means is further adapted to alter said background view. 15. The electronic television programming guide of claim 13 wherein said data processing means is further adapted to alter said background view on a time selected basis. 16. An electronic television programming guide comprising: storage means for electronically storing television program schedule information for a plurality of television programs; storage means for electronically storing promotional information including digitally compressed video and audio data and textual data; data processing means for retrieving said program schedule and promotional information and for generating control commands; digital decompression means for receiving said digitally compressed video and audio data from said promotional information storage means and decompressing said data to form video signals and associated audio signals; a multimedia generator adapted to receive control commands from said data processing means for generating a page of television program schedule listings in grid format, said page of program listings comprising program schedule information for an unchanging plurality of television channels and a plurality of time slots, said page of program listings further comprising a video window displaying promotional video information and a text window displaying promotional text; said multimedia generator further adapted to receive control commands from said data processor for overlaying said program listings on a background view, said background view being provided by said data processor. 17. The electronic television programming guide of claim 16 wherein said data processing means is adapted to generate control commands to .said multimedia generator to create a second page of television program listings in grid format, said second page of program listings comprising program schedule information for a second, unchanging plurality of television channels and said plurality of time slots, said second plurality of television channels differing from said first plurality of television channels, said second page of program listings further comprising a video window displaying promotional video information and a text window displaying promotional text. 18. The electronic television programming guide of claim 17 wherein said data processing means is adapted to generate control commands to said multimedia generator to create a third page of television program listings in grid format, said third page of program listings comprising program schedule information for said first, unchanging plurality of television channels and a second plurality of time slots, at least one of said second plurality of time slots not included in said first plurality of time slots. 19. The electronic television programming guide of claim 18 wherein said data processing means is adapted to alter said background view on a time-selected basis. 20. A process for presenting television program schedule information to viewers of a cable television channel comprising: storing television program schedule information, providing a portion of said stored television program schedule information to a data processor, controlling a multimedia generator with commands from said data processor, said multimedia generator forming a page of program listings comprising in grid format program comprising schedule information for a plurality of television channels and a plurality of time slots, transmitting said page of program listings on a dedicated cable television channel for a predetermined period of time, said plurality of channels and plurality of time slots remaining constant for said predetermined period of time, repeating said controlling and transmitting steps for a second plurality of channels and said plurality of time slots following the expiration of said predetermined time period. 21. The process of claim 20 further comprising the steps of: providing a portion of said stored television program schedule information to a data processor, said portion comprising schedule information for said plurality of television channels and a second plurality of time slots, at least one of said second plurality of time slots not included in said first plurality of time slots; controlling a multimedia generator with commands from said data processor, said multimedia generator forming a page of program listings comprising in grid format program schedule information for said first plurality of television channels and a second plurality of time slots, transmitting said page of program listings on a dedicated cable television channel for a predetermined period of time, said first plurality of channels and second plurality of time slots remaining constant for said pre-determined period of time, repeating said controlling, and transmitting steps for said second plurality of channels and said second plurality of time slots following the expiration of said predetermined time period. 22. An electronic television programming guide comprising: storage means for electronically storing television program schedule information for a plurality of television programs, said program schedule information comprising program title information; said program title information comprising, for at least one of said program titles, at least one predetermined abbreviated title; data processing means for retrieving said program schedule information and for generating control commands, said data processing means being adapted to retrieve said at least one predetermined abbreviated title on a time selected basis; RECTIFIED SHEET (RULE 91) ISA/EP a multimedia generator adapted to receive control commands from said data processing means for generating a page of television program schedule listings in grid format, said page of program listings comprising program schedule information for a first, unchanging plurality of television channels and a plurality of time slots; wherein said data processing means is further adapted to generate control commands to said multimedia generator to create a second page of television program listings in grid format, said second page of program listings comprising program schedule information for a second, unchanging plurality of television channels and said plurality of time slots, said second plurality of television channels differing from said first plurality of television channels. 23. In an electronic television programming guide system including a storage means for storing television program schedule information, data processing means for receiving said program schedule information and for generating control commands, multimedia generator means for receiving said control commands and for generating a page of television program listings in grid format, a process for forming descriptions of television programs for display in the grid cells of said listings page comprising: providing a database of television program schedule information to a data processor, extracting program title and program duration information from said schedule information, determining the size of a grid cell in which said title information will be displayed in response to said program duration information, determining the available space in said grid cell, determining the space required for display of the program title, comparing said program title space with the space in said grid cell, comparing said program title information to a library of program titles stored in a memory means if said program title space is greater than said grid cell space, displaying said program title if said title is not included in said library, editing said tile, RECTIFIED SHEET (RULE 91) ISA/EP placing said edited title in said database, and placing said edited title in said library.

Inventors: ALTEN JERRY, DAVIS BRUCE, MORRIS MICHAEL, THOMAS WILLIAM L, YOUMAN ROGER, ALTEN, JERRY, DAVIS, BRUCE, MORRIS, MICHAEL, THOMAS, WILLIAM, L., YOUMAN, ROGER
Applicants: TV GUIDE ON SCREEN
Application year: 1994
Main classification: H04N7
IPC codes: H04H1, H04N5, H04N7