United States Patent5798785
Hendricks , ; et al.August 25, 1998

Title

Terminal for suggesting programs offered on a television program delivery system

Abstract

A novel reprogrammable set top terminal for a television program delivery system which suggests programs for viewing is described. The invention relates to methods and apparatus for reprogramming set top terminals, and selecting and displaying programs to suggest to subscribers for viewing. The invention is particularly useful in television program delivery systems with hundreds of channels of programming, a menu driven program selection system, and a program control information signal which carries data and identifies the available program choices. Specifically, the invention relates to remote reprogramming of terminal memory and the gathering and analysis of data for selecting programs to suggest to a subscriber. The invention is a terminal which includes a circuit for receiving incoming signals, a processor, memory, and a circuit to generate menu screens for display on a TV or monitor. Various data gathering and analysis techniques are used to customize selection of programs for display on a menu.


Inventors:Hendricks; John S. (Potomac, MD), Bonner; Alfred E.  (Bethesda, MD), Wunderlich; Richard E.  (Alpharetta, GA)
Assignee:Discovery Communications, Inc. (Bethesda, MD)
Appl. No.:160281
Filed:December 2, 1993

Current U.S. Class:725/46 725/104 725/116 725/13 725/2 725/4 725/41 725/45 
Field of Search:348/1,2,5,7,12,9,10,6,13,906,11 358/84,86 455/4.2,2,5.1,6.1,6.2,6.3

U.S. Patent Documents
3891792June 1975Kimura
4361848November 1982Poignet et al.
4488179December 1984Kruger et al.
4605964August 1986Chard
4639225January 1987Washizuka
4688218August 1987Blineau et al.
4697209September 1987Kiewit et al.
4706121November 1987Young
4724491February 1988Lambert
4792972December 1988Cook, Jr.
4829558May 1989Welsh
4829569May 1989Seth-Smith et al.
4860379August 1989Schoeneberger et al.
4876736October 1989Kiewit
4928168May 1990Iwashita
4947429August 1990Bestler et al.
4949187August 1990Cohen
4959810September 1990Darbee et al.
4961109October 1990Tanaka
4975951December 1990Bennett
4977455December 1990Young
4995078February 1991Monslow et al.
5001554March 1991Johnson et al.
5014125May 1991Pocock et al.
5015829May 1991Eilert et al.
5020129May 1991Martin et al.
5027400June 1991Baji et al.
5036394July 1991Morii et al.
5036537July 1991Jeffers et al.
5046093September 1991Wachob
5047867September 1991Strubbe et al.
5078019January 1992Aoki
5093718March 1992Hoarty et al.
5105268April 1992Yamanouchi et al.
5132789July 1992Ammon et al.
5132992July 1992Yurt et al.
5133079July 1992Ballantyne et al.
5144663September 1992Kudelski et al.
5150118September 1992Finkle et al.
5151782September 1992Ferraro
5151789September 1992Young
5155591October 1992Wachob
5166886November 1992Molnar et al.
5172413December 1992Bradley et al.
5182639January 1993Jutamulia et al.
5202817April 1993Koenck et al.
5206954April 1993Inoue et al.
5216515June 1993Steele et al.
5223924June 1993Strubbe
5237311August 1993Mailey et al.
5247347September 1993Litteral et al.
5253066October 1993Vogel
5253275October 1993Yurt et al.
5260778November 1993Kauffman et al.
5283639February 1994Esch et al.
5285272February 1994Bradley et al.
5289271February 1994Watson
5293540March 1994Trani et al.
5319455June 1994Hoarty et al.
5319707June 1994Wasilewski et al.
5323240June 1994Amano et al.
5327554July 1994Palazzi, III et al.
5339315August 1994Maeda et al.
5341474August 1994Gelman et al.
5343239August 1994Lappington et al.
5345594September 1994Tsuda
5351075September 1994Herz et al.
5353121October 1994Young et al.
5355162October 1994Yazolino et al.
5357276October 1994Banker et al.
5367571November 1994Bowen et al.
5375068December 1994Palmer et al.
5400401March 1995Wasilewski et al.
5404393April 1995Remillard
5410326April 1995Goldstein
5410344April 1995Graves
5412416May 1995Memirofsky
5414426May 1995O'Donnell et al.
5416508May 1995Sakuma et al.
5432542July 1995Thibadeau et al.
5442626August 1995Wei
5446919August 1995Wilkins
5469206November 1995Strubbe et al.
5477263December 1995O'Callaghan et al.
5479268December 1995Young et al.
5481294January 1996Thomas et al.
5481296January 1996Cragun et al.
5481542January 1996Logston et al.
5483278January 1996Strubbe et al.
5515098May 1996Carles
D301037May 1989Matsuda
D314383February 1991Hafner
D325581April 1992Schwartz
D329238September 1992Grasso et al.
D331760December 1992Renk, Jr.
Foreign Patent Documents
1130683May., 1989JP
1142918May., 1989JP
1204190Sep., 1970GB
2044574Dec., 1992CA
2168227Jun., 1986GB
234223Nov., 1994TW
235358Dec., 1994TW
235359Dec., 1994TW
236065Dec., 1994TW
236744Dec., 1994TW
243312Oct., 1987EP
3423846Jan., 1986DE
355697Feb., 1990EP
399200Nov., 1990EP
402809Dec., 1990EP
424648May., 1991EP
506435Sep., 1992EP
5250106Sep., 1993JP
61-060150Mar., 1986JP
8601962Mar., 1986WO
8909528Oct., 1989WO
9100670Jan., 1991WO
9103112Mar., 1991WO
9211713Jul., 1992WO
9212599Jul., 1992WO
9217027Oct., 1992WO
9221206Nov., 1992WO
9322877Nov., 1993WO
Other References
Sharpless, "Subscription teletext for value added services", Aug. 1985. .
Hong Kong Enterprise advertisement: Two Innovative New Consumer Products From SVI; Nov. 1988; p. 379. .
Great Presentations advertisement: Remote, Remote; 1987; p. 32H. .
Consumer Digest advertisement: Xpand Your TV's Capability: Fall/Winter 1992; p. 215. .
Henrie van den Boom: An Interactive Videotex System for Two-Way CATV Networks; AEU, Band 40; 1986; pp. 397-401. .
Daniel M. Moloney: Digital Compression in Todays Addressable Enviroment; 1993 NCTA Technical Papers; Jun. 6, 1993; pp. 308-316. .
Caitlin Bestler: Flexible Data Structures and Interface Rituals For Rapid Development of OSD Applications; 93 NCTA Tech. Papers; Jun. 6, 1993; pp. 223-236. .
A.D. Gelman, et al.: A Store-And-Forward Architecture For Video-On-Demand Service; ICC 91 Conf.; Jun. 1991; pp. 842-846. .
Reimer, "Memories in my Pocket", Byte, pp. 251, 252, 254, 255, 256, 258, Feb. 1991..~
Primary Examiner: Peng; John K.
Assistant Examiner: Grant; Chris
Attorney, Agent or Firm:Dorsey & Whitney

Parent Case Text



RELATED APPLICATIONS

This application is a continuation-in-part of application Ser. No. 07/991,074 filed Dec. 9, 1992 entitled TELEVISION PROGRAM PACKAGING AND DELIVERY SYSTEM WITH MENU DRIVEN SUBSCRIBER ACCESS. The following other continuation-in-part applications, also based on the above-referenced patent application, are incorporated herein by reference: Ser. No. 08/160,280, entitled NETWORK CONTROLLER FOR CABLE TELEVISION DELIVERY SYSTEMS, filed on Dec. 2, 1993; Ser. No. 08/160,282, entitled AN OPERATIONS CENTER FOR A TELEVISION PROGRAM PACKAGING AND DELIVERY SYSTEM filed on Dec. 2, 1993; Ser. No. 08/160,193, entitled SET-TOP TERMINAL FOR CABLE TELEVISION DELIVERY SYSTEMS filed on Dec. 2, 1993 Ser. No. 08/160,194, entitled ADVANCED SET-TOP TERMINAL FOR CABLE TELEVISION DELIVERY SYSTEMS Ser. No. 08/160,283, entitled DIGITAL CABLE HEADEND FOR CABLE TELEVISION DELIVERY SYSTEM filed Dec. 2, 1993.

Claims


What is claimed is:
1. A set top terminal used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information containing program description data, and subscriber specific data, the set top terminal comprising:
a means for gathering the subscriber specific data to be used in selecting programs;
a means, connected to the gathering means, for storing the subscriber specific data;
means for receiving the program control information containing the program description data;
program selection means, operably connected to the storing means and the receiving means, for selecting one or more programs using a subscriber's programming preferences and the program control information, comprising:
a processor, wherein the subscriber programming preferences are generated from the subscriber specific data; and
means, operably connected to the program selection means, for suggesting the selected programs to the subscriber.

2. The set top terminal of claim 1 wherein the means for gathering the subscriber specific data comprises a means for obtaining the subscriber specific data from a remote location.

3. The apparatus of claim 1 wherein the program selection means resides within a set top terminal.

4. The set top terminal of claim 1 wherein the set top terminal receives menu details from the television program delivery system, a display is used, and wherein the means for gathering subscriber specific data comprises:
a memory device for storing received menu details;
a means, connected to the memory device, for generating menu screens by integrating the program control information with the stored menu details;
a means, connected to the generating means, for eliciting subscriber responses using the generated menu screens; and
a subscriber interface means for entering subscriber responses.

5. The set top terminal of claim 4 wherein the stored menu details include a cursor overlay, the means for generating menu screens comprises a means for generating the cursor overlay, the generated menu screens are displayed on the display, and wherein the subscriber interface means comprises a means for moving the generated cursor overlay on the displayed menu screens.

6. The set top terminal of claim 1 wherein a display is used and wherein the set top terminal receives program signals, the set top terminal further comprising a means for generating a signal identifying a selected program's location on the received program signal.

7. A set top terminal used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information containing program description data, and subscriber specific data indicative of a subscriber's programming preferences, wherein the set top terminal receives menu details from the television program delivery system, the set top terminal comprising:
a means for gathering the subscriber specific data indicative of subscriber preferences to be used in selecting programs, wherein the means for gathering subscriber specific data comprises:
a first means for storing received menu details;
a means for generating menu screens by integrating the program control information with the stored menu details;
a display, connected to the generating means, wherein menu screens to elicit subscriber responses are displayed; and
a subscriber interface means for entering subscriber responses to displayed menu screens;
a second means, connected to the gathering means, for storing the subscriber specific data;
a means for receiving the program control information comprising program description data;
a program selection means, operably connected to the second storing means and the receiving means, for selecting one or more programs using the subscriber specific data and program control information whereby the selected programs correspond to the subscriber's programming preferences; and
wherein the display is used to suggest the selected programs to the subscriber.

8. The set top terminal of claim 7 wherein the stored menu details include a cursor overlay and the means for generating menu screens comprises a means for generating the cursor overlay, and wherein the subscriber interface means comprises a means for moving the generated cursor overlay on the displayed menu screens.

9. A set top terminal used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information containing program description data, and subscriber specific data indicative of a subscriber's programming preferences, the set top terminal comprising:
a means for gathering the subscriber specific data indicative of subscriber preferences to be used in selecting programs;
a means, connected to the gathering means, for storing the subscriber specific data;
a means for receiving the program control information comprising program description data;
a program selection means, operably connected to the storing means and the receiving means, for selecting one or more programs using the subscriber specific data and program control information whereby the selected programs correspond to the subscriber's programming preferences, wherein the program selection means comprises:
a means for matching the subscriber specific data to a program described by the program control information; and
wherein the set top terminal further comprises a means for tuning to the matched program; and
a means, operably connected to the program selection means, for displaying for suggestion the selected programs to the subscriber.

10. A set top terminal used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information containing program description data, and subscriber specific data indicative of a subscriber's programming preferences, wherein the set top terminal receives program signals, the set top terminal comprising:
a means for gathering the subscriber specific data indicative of subscriber preferences to be used in selecting programs;
a means, connected to the gathering means, for storing the subscriber specific data;
a means for receiving the program control information comprising program description data;
a program selection means, operably connected to the storing means and the receiving means, for selecting one or more programs using the subscriber specific data and program control information whereby the selected programs correspond to the subscriber's programming preferences;
a means, operably connected to the program selection means, for displaying for suggestion the selected programs to the subscriber; and
a means for generating a signal identifying a selected program's location on the received program signal.

11. A method used by a set top terminal for a television program delivery system for suggesting programs to subscribers for display on a television using program control information and subscriber specific data, the method comprising:
gathering subscriber specific data to be used in selecting programs;
storing the gathered subscriber specific data;
receiving program control information to be used in selecting programs;
selecting one or more programs using a subscriber's programming preferences and the received program control information, wherein the subscriber programming preferences are generated from the subscriber specific data; and
suggesting the selected programs to the subscriber.

12. The method of claim 11 wherein a display is used and wherein the set top terminal generates menus based on menu details received over the program television delivery system further comprising the following steps:
storing the received menu details;
generating menu screens using the stored menu details by integrating the received program control information with the stored menu details;
displaying menu screens whereby the menu screens identify the selected programs; and
receiving subscriber responses to the displayed menu screens.

13. A method used by a set top terminal for a television program delivery system for suggesting programs to subscribers for display on a television using program control information and subscriber specific data indicative of a subscriber's programming preferences, wherein the set top terminal generates menus based on menu details received over the program television delivery system, the method comprising the following steps:
storing the received menu details;
gathering subscriber specific data indicative of subscriber preferences to be used in selecting programs;
storing the gathered subscriber specific data;
receiving program control information to be used in selecting programs;
selecting one or more programs using the stored subscriber specific data and received program control information wherein the selected programs correspond to the subscriber's programming preferences;
generating menu screens using the stored menu details by integrating the received program control information and the stored menu details;
displaying menu screens whereby the menu screens identify the selected programs and suggest the selected programs to the subscriber; and
receiving subscriber responses to the menu screens.

14. A set top terminal used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information containing menu screen details and program description data, and a subscriber's programming preferences, by searching program abstracts stored in a database for programs which correlate to key words mapped from one or more subscriber responses to search criteria containing a plurality of selectable entries on one or more menu screens, comprising:
a means for receiving the program control information;
a means for storing the program abstracts in a database;
a memory means, connected to the receiving means, for storing the menu screen details;
means, connected to the memory means for storing menu screen details, for generating menu screens using the stored menu screen details, wherein the menu screens are generated by integrating the program control information with the stored menu screen details, and wherein the menu screens list search criteria comprising the plurality of selectable entries;
a display wherein the generated menu screens are displayed;
a subscriber interface means for entering subscriber responses to the plurality of selectable entries on the menu screens;
a means, connected to the subscriber interface means, for mapping the subscriber responses into the key words;
a means, connected to the mapping means, for searching the program abstract database for programs consisting of one or more of the key words;
a program selection means, operably connected to the receiving means and searching means, for selecting one or more programs, wherein programs are selected using the search of the searching means; and
wherein the display is used to suggest the selected programs to the subscriber.

15. The set top terminal of claim 14 wherein program abstracts are included in the received program control information, and wherein the set top terminal further comprises a means connected to the receiving means, for reprogramming the means for storing the program abstracts to include the received program abstracts.

16. The set top terminal of claim 14 wherein the subscriber interface means comprises a means for interpreting the subscriber responses and a means for storing the subscriber responses.

17. The set top terminal of claim 14 wherein the generated menu screens comprise main menus and submenus and the means for generating menu screens comprises a means for generating submenus whereby selectable entries are listed in the submenus and each submenu corresponds to a search criterion in a main menu.

18. The set top terminal of claim 14 wherein the program selection means comprises:
means for obtaining preferred program indicators from a remote location;
means for assigning a weight number to programs using the preferred program indicators; and
means for analyzing the assigned weight numbers.

19. The set top terminal of claim 18 wherein the means for analyzing the assigned weight numbers further comprises a means for prioritizing programs.

20. The set top terminal of claim 14 wherein the stored menu screen details include a cursor overlay and the means for generating menu screens comprises a means for generating the cursor overlay and wherein the subscriber interface means comprises a means for moving the generated cursor overlay on the displayed menu screens.

21. A method used by a set top terminal for a television program delivery system for suggesting programming to subscribers using program control information containing menu screen details by searching program abstracts for programs which correlate to key words mapped from one or more subscriber responses to search criteria containing a plurality of selectable entries on one or more menu screens displayed on a television, comprising the steps of:
receiving the program control information;
storing the program abstracts in a database;
storing menu screen details;
generating the menu screens wherein the menu screens are generated by integrating the program control information with the stored menu screen details, and wherein the generated menu screens list the search criteria containing the plurality of selectable entries;
displaying the menu screens;
gathering subscriber responses to the plurality of selectable entries on the menu screens;
mapping the subscriber responses into the key words;
searching the stored program abstracts for abstracts comprising one or more of the key words;
selecting one or more of the programs, whereby the programs are selected using the search of the stored program abstracts; and
suggesting the selected programs.

22. A set top terminal used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information containing mood menu details, and subscriber specific data indicative of a subscriber's programming preferences determined from subscriber responses to a set of mood questions presented on mood menu screens, the set top terminal comprising:
a means for receiving the program control information containing mood menu details;
a memory means, connected to the receiving means, for storing the received mood menu details;
a means, connected to the receiving means and memory means, for generating the mood menu screens by integrating the received program control information with the stored mood menu details;
a means for displaying one or more of the generated mood menu screens;
a subscriber interface means for entering subscriber specific data in response to the displayed mood menu screens;
a program selection means, operably connected to the subscriber interface means and the receiving means, for selecting one or more programs using the subscriber specific data and the program control information whereby the selected programs correspond to the subscriber's programming preferences; and
a means, operably connected to the program selection means, for suggesting the selected programs to the subscriber.

23. The set top terminal of claim 22 wherein the program selection means comprises:
means for obtaining preferred program indicators from a remote location; and
means for assigning a weight number to programs using the preferred program indicators.

24. A set top terminal used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information containing demographic codes created at a remote location and assigned to each television program and demographic data created at a remote location describing subscribers using the set top terminal, comprising:
a means for receiving the program control information comprising the demographic codes and demographic data;
a memory means, operably connected to the receiving means, for storing the received demographic data;
a program selection means, operably connected to the memory means and the receiving means, for selecting one or more programs using the received program control information containing the demographic data and demographic codes; and
a means, operably connected to the program selection means, for displaying for suggestion the selected program.

25. A set top terminal used by subscribers of a television program delivery system for suggesting programs through the use of program control information and program watched data indicative of a subscriber's most watched programs, the set top terminal comprising:
a means for receiving program control information;
a means for gathering the program watched data;
a memory means for storing the gathered program watched data;
a program selection means, operably connected to the memory means and the receiving means, for selecting a program using the stored program watched data and the received program control information;
a means, operably connected to the program selection means, for displaying the selected program.

26. A set top terminal used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information and channel watched data indicative of a subscriber's favorite channels, the set top terminal comprising:
a means for gathering the channel watched data;
a means for receiving the program control information;
a memory means for storing the gathered channel watched data;
a processing means, operably connected to the memory means and the receiving means, for determining suggested favorite channels, comprising:
a channel selection means for selecting a plurality of channels using the stored channel watched data; and
means to generate a signal identifying the selected channels; and
a means, operably connected to the processing means, for displaying a representation of the selected channels.

27. A television program delivery and presentation system for delivering menu selectable programs to a subscriber in a digital format and for suggesting certain of those delivered programs for viewing by the subscriber on a television, using program control information wherein the programs are combined and compressed with the program control information, comprising:
a means for converting programs to a digital format;
a means for generating program control information;
means, connected to the converting means and the generating means, for packaging the digital format programs using the program control information;
means for combining and compressing the packaged programs and program control information into a composite signal;
means for transmitting the composite signal;
a set top terminal connected to the television comprising:
a means for receiving the composite signal;
a means for creating personal profile information;
a means, connected to the creating means, for storing the personal profile information;
a means, connected to the receiving means, for generating menus using the program control information;
a means for gathering viewer mood information using the generated menus;
a means, connected to the gathering means and storing means, for selecting at least one program for suggestion to the viewer, comprising:
a means for integrating the stored personal profile information and gathered viewer mood information into selection criteria;
a means for comparing the selection criteria and the received program control information; and
a means for matching the selection criteria with one or more received programs; and
a means for displaying the suggested program for suggestion to the viewer.

28. A terminal for program suggestion using user preference data concerning user preferences and program control information concerning available programs, comprising:
a means for gathering the user preference data;
a means, connected to the gathering means, for storing the gathered user preference data;
a means for accessing the program control information;
a means, connected to the storing means and accessing means, for selecting one or more programs using a subscriber's programming preferences and the program control information, comprising:
a processor, wherein the subscriber programming preferences are generated from the user preference data; and
a means, connected to the selecting means, for suggesting the selected programs to the user.

29. The terminal of claim 28, wherein the terminal further comprises a kiosk, whereby the kiosk comprises means for displaying the selected programs for suggestion to the user.

30. The terminal of claim 28, wherein the terminal is used for video rental and to suggest programs stored on video tape, and wherein the program control information comprises information concerning programs stored on video tape and wherein the means for suggesting comprises a means for indicating a video tape.

31. A terminal for program suggestion using user preference data concerning user preferences and program control information concerning available programs, comprising:
a means for gathering the user preference data;
a means, connected to the gathering means, for storing the gathered user preference data;
a means for accessing the program control information;
a means, connected to the storing means and accessing means, for selecting one or more programs using the user preference data and the program control information, whereby the selected programs correspond to the gathered user preference data; and
a kiosk, wherein the kiosk comprises means, connected to the selecting means, for displaying the selected programs for suggestion to the user.

32. A terminal for program suggestion using user preference data concerning user preferences and program control information concerning available programs, wherein the terminal is used for video rental and to suggest programs stored on video tape, and wherein the program control information comprises information concerning programs stored on video tape, comprising:
a means for gathering the user preference data;
a means, connected to the gathering means, for storing the gathered user preference data;
a means for accessing the program control information;
a means, connected to the storing means and accessing means, for selecting one or more programs using the user preference data and the program control information, whereby the selected programs correspond to the gathered user preference data; and
a means, connected to the selecting means, for suggesting the selected programs to the user, wherein the means for suggesting comprises a means for indicating a video tape.

33. A network controller, adapted for remotely controlling a plurality of set top terminals in a television program delivery system, for suggesting programs to subscribers by making program suggestions using subscriber specific data and program control information received from a remotely located source containing program description data, wherein the suggested programs are transmitted to the set top terminal, the network controller comprising:
a means for receiving the program control information containing program description data;
a means for gathering the subscriber specific data from a set top terminal;
a means, connected to the gathering means, for storing the subscriber specific data;
a means, operably connected to the receiving means and the storing means, for suggesting one or more programs using a subscriber's programming preferences and the received program control information, comprising:
a processor, wherein the subscriber programming preferences are generated from the subscriber specific data; and
a means, connected to the suggesting means, for transmitting the suggested programs to the set top terminal for presentation to the subscriber.

34. The network controller of claim 33 wherein key words are used in searching program abstracts to assist in suggesting programs, and wherein the network controller further comprises:
a means for storing program abstracts; and
wherein the means for suggesting comprises a means for searching the stored program abstracts for one or more programs consisting of one or more of the key words.

35. A network controller, adapted for remotely controlling a plurality of set top terminals in a television program delivery system, for suggesting programs to subscribers by making program suggestions using subscriber specific data indicative of a subscriber's programming preferences received from a set top terminal, program control information received from a remotely located source containing program description data, and program abstracts with key words, wherein the suggested programs are transmitted to the set top terminal, the network controller comprising:
a means for receiving the program control information containing program description data;
a means for gathering the subscriber specific data indicative of subscriber preferences from a set top terminal;
a means, connected to the gathering means, for storing the subscriber specific data;
a memory means for storing program abstracts;
a means, operably connected to the receiving means and the storing means, for suggesting one or more programs using the stored subscriber specific data and the received program control information, whereby the suggested programs correspond to the subscriber's programming preferences, wherein key words are used in searching the stored program abstracts to assist in suggesting programs, and wherein the means for suggesting comprises:
a means for searching the stored program abstracts for one or more programs consisting of one or more of the key words; and
a means, connected to the suggesting means, for transmitting the suggested programs to the set top terminal for presentation to the subscriber.

36. A program suggestion system for suggesting programs to subscribers of a television program delivery system by using program control information containing program description data and by searching program abstracts stored in a database at a network controller, the suggested programs resulting from a search of the program abstracts for key words sent to the network controller from a set top terminal, wherein the key words are mapped from one or more subscriber responses to a plurality of selectable entries at the set top terminal, the system comprising:
a set top terminal comprising:
a means for receiving programs;
a means for presenting the plurality of selectable entries to the subscriber;
a subscriber interface means for entering subscriber responses to the plurality of selectable entries; and
a means, connected to the subscriber interface means, for mapping the subscriber responses into the key words; and
a network controller, networked to the set top terminal, comprising:
a means for receiving the program control information;
a means for storing the program abstracts in a data base;
a means for gathering the key words;
a program selection means, operably connected to the receiving means, gathering means and storing means, for selecting one or more programs for suggestion to the subscriber, comprising:
a means for searching the program abstract data base for program abstracts consisting of one or more key words; and
a means for distributing the selected programs to the set top terminal.

37. A network controller for suggesting programs to subscribers of a television program delivery system by using program control information containing program description data and by searching program abstracts for key words that are mapped from one or more subscriber responses received from a set top terminal, comprising:
a means for receiving the program control information;
a means for storing the program abstracts in a data base;
a means for gathering subscriber responses to a plurality of selectable entries from the set top terminal;
a means, connected to the gathering means, for mapping the subscriber responses into the key words;
a means, operably connected to the receiving means, storing means, gathering means and mapping means, for suggesting one or more programs, comprising:
a means, connected to the storing and mapping means, for searching the program abstract data base for one or more key words; and
a means for distributing the suggested programs to the set top terminal.

38. A set top terminal used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information containing program description data, by searching program abstracts for programs which correlate to key words mapped from one or more subscriber responses to a plurality of selectable entries presented on a display, comprising:
a means for receiving the program control information;
a means for storing the program abstracts in a database;
a means for presenting the plurality of selectable entries to the subscriber using the display;
a subscriber interface means for entering subscriber responses to the plurality of selectable entries;
a means, connected to the subscriber interface means, for mapping the subscriber responses into the key words;
a means, connected to the mapping means and storing means, for searching the program abstract database for programs consisting of one or more of the key words;
a program selection means, operably connected to the receiving means and searching means, for selecting one or more programs, wherein programs are selected using the search of the searching means; and
means, connected to the program selection means, for suggesting the selected programs to the subscriber using the display.

39. The set top terminal of claim 38 wherein program abstracts are included in the received program control information, and wherein the set top terminal further comprises a means, connected to the receiving means, for reprogramming the means for storing the program abstracts to include the received program abstracts.

40. The set top terminal of claim 38 wherein the program control information further contains menu screen details and the selectable entries are displayed on one or more menu screens by the presenting means, the set top terminal further comprising:
a memory means, connected to the receiving means, for storing the menu screen details; and
a means, connected to the memory means and the presenting means, for generating menu screens using the stored menu screen details, wherein the menu screens are generated by integrating the program control information with the stored menu screen details, and wherein the generated menu screens list search criteria comprising the plurality of selectable entries.

41. The set top terminal of claim 40 wherein the generated menu screens comprise main menus and submenus and the means for generating menu screens comprises a means for generating submenus whereby selectable entries are listed in the submenus and each submenu corresponds to a search criterion in a main menu.

42. The set top terminal of claim 40 wherein the stored menu screen details include a cursor overlay and the means for generating menu screens comprises a means for generating the cursor overlay, and wherein the subscriber interface means comprises a means for moving the generated cursor overlay on the displayed menu screens.

43. A method used in a television program delivery system for suggesting programs to subscribers for display on a television using program control information and subscriber specific data, the method comprising:
gathering subscriber specific data to be used in selecting programs;
storing the gathered subscriber specific data;
receiving program control information to be used in selecting programs;
selecting one or more programs using a subscriber's programming preferences and the received program control information, wherein the subscriber programming preferences are generated from the subscriber specific data; and suggesting the selected programs to the subscriber.

44. A method used in a television program delivery system for suggesting programming to subscribers using program control information containing menu screen details by searching program abstracts for programs which correlate to key words mapped from one or more subscriber responses to search criteria containing a plurality of selectable entries on one or more menu screens displayed on a television, comprising the steps of:
receiving the program control information;
storing the program abstracts in a database;
storing the menu screen details;
generating the menu screens wherein the menu screens are generated by integrating the received program control information with the stored menu screen details, and wherein the generated menu screens list the search criteria containing the plurality of selectable entries;
displaying the menu screens;
gathering subscriber responses to the plurality of selectable entries on the menu screens;
mapping the gathered subscriber responses into the key words;
searching the stored program abstracts for abstracts comprising one or more of the key words;
selecting one or more of the programs, whereby the programs are selected using the search of the stored program abstracts; and
suggesting the selected programs.

45. A method used in a television program delivery system for suggesting programming to subscribers using program control information and by searching program abstracts for programs which correlate to key words mapped from one or more subscriber responses to a plurality of presented selectable entries, comprising the steps of:
receiving the program control information;
storing the program abstracts in a database;
presenting the plurality of selectable entries;
gathering subscriber responses to the plurality of selectable entries;
mapping the gathered subscriber responses into the key words;
searching the stored program abstracts for abstracts comprising one or more of the key words;
selecting one or more of the programs, whereby the programs are selected using the search of the stored program abstracts; and
suggesting the selected programs.

46. A set top terminal used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information containing scheduled program description data, the set top terminal comprising:
a means for creating personal profile information;
a means, connected to the creating means, for storing the personal profile information;
means for receiving the program control information comprising the scheduled program description data;
a means, connected to the storing means and receiving means, for selecting at least one program for suggestion to the viewer, comprising:
a means for transforming the personal profile information into preferred program indicators, wherein a preferred program indicator comprises a program category with each program category having a weighted value;
a means for matching the preferred program indicators with the scheduled program description data, wherein each scheduled program is assigned a weighted value based on at least one associated program category;
a means for prioritizing the scheduled programs from highest weighted value programs to lowest weighted value programs;
a means for indicating one or more programs meeting a predetermined weight related threshold, wherein all other programs are excluded from program suggestion; and
means, operably connected to the program selection means, for displaying for suggestion the selected programs to the subscriber.

47. The set top terminal of claim 46 further comprising a means for gathering subscriber specific data, wherein the means for creating personal profile information utilizes the gathered subscriber specific data.

48. A set top terminal used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information containing scheduled program description data, and subscriber specific data, the set top terminal comprising:
a means for gathering the subscriber specific data, wherein the subscriber specific data comprises subscriber mood data;
a means for creating personal profile information;
a means, connected to the gathering means and the creating means, for storing the subscriber mood data and the personal profile information;
means for receiving the program control information comprising scheduled program description data;
a means, connected to the storing means and receiving means, for selecting at least one program for suggestion to the viewer, comprising:
a means for integrating the personal profile information and subscriber mood data into preferred program indicators, wherein a preferred program indicator comprises a program category with each program category having a weighted value;
a means for comparing the preferred program indicators with the scheduled program description data in the received program control information, wherein each scheduled program is assigned a weighted value according to at least one associated program category;
a means for prioritizing the scheduled programs from highest weighted program values to lowest weighted program values;
a means for indicating one or more programs meeting a predetermined weight threshold, wherein all other programs are excluded from program suggestion; and
means, operably connected to the program selection means, for displaying for suggestion the selected programs to the subscriber.

49. The set top terminal of claim 48 wherein the subscriber specific data further comprises the subscriber's desired program viewing time frame and desired program length and wherein the means for comparing comprises means for excluding programs for suggestion that are not in the subscriber's desired viewing time frame and desired length.

50. A set top terminal used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information containing scheduled program description data, the set top terminal comprising:
a means for gathering program watched data;
a means, connected to the gathering means, for storing the program watched data;
means for receiving the program control information comprising the scheduled program description data;
a means, connected to the storing means and receiving means, for selecting at least one program for suggestion to the viewer, comprising:
a means for transforming the program watched data into preferred program indicators, wherein a program indicator comprises a program category with each program category having a weighted value;
a means for comparing the preferred program indicators with the scheduled program description data, wherein each scheduled program is assigned a weighted value based on at least one associated program category;
a means for prioritizing the scheduled programs from highest weighted value programs to lowest weighted value programs;
a means for indicating one or more programs meeting a predetermined weight threshold, wherein all other programs are excluded from program suggestion; and
means, operably connected to the program selection means, for displaying for suggestion the selected programs to the subscriber.

51. An apparatus for suggesting programs to subscribers using program control information containing program description data, and subscriber specific data, the apparatus comprising:
a means for gathering the subscriber specific data to be used in selecting programs;
a means, connected to the gathering means, for storing the subscriber specific data;
a means for receiving the program control information; and
a program selection means, operably connected to the storing means and the receiving means, for selecting one or more programs using a subscriber's programming preferences and the program control information, comprising:
a processor, wherein the subscriber programming preferences are generated from the subscriber specific data.

52. A set top terminal used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information containing program description data, and subscriber specific data, the set top terminal comprising:
a means for gathering the subscriber specific data to be used in selecting programs;
a means, connected to the gathering means, for storing the subscriber specific data;
means for receiving the program control information containing the program description data;
program selection means, operably connected to the storing means and the receiving means, for selecting one or more programs using a subscriber's programming preferences and the program control information, comprising:
a processor, wherein the subscriber programming preferences are generated from the subscriber specific data;
wherein the program selection means resides within a network controller; and
means, operably connected to the program selection means, for suggesting the selected programs to the subscriber.

53. A method for suggesting programs to subscribers using program control information containing program description data, and subscriber specific data, the method comprising:
gathering the subscriber specific data to be used in selecting programs;
storing the subscriber specific data;
receiving the program control information; and
selecting one or more programs using a subscriber's programming preferences and the program control information, wherein the subscriber's programming preferences are generated from the subscriber specific data.

54. An apparatus used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information containing program description data, and subscriber specific data, the apparatus comprising:
a remote control, wherein the subscriber specific data is obtained to be used in selecting programs;
a memory, operably connected to the remote control, wherein the subscriber specific data is stored;
a demodulator, wherein the program control information containing the program description data is received;
a central processing unit, operably connected to the memory and the demodulator, wherein programs are selected using a subscriber's programming preferences and the program control information, and wherein the subscriber programming preferences are generated from the subscriber specific data; and
a display, operably connected to the processor, wherein the selected programs are suggested to the subscriber on the display.

55. An apparatus used by subscribers of a television program delivery system for suggesting programs through the use of program control information and program watched data indicative of a subscriber's most watched programs, the apparatus comprising:
a demodulator, wherein the program control information is received;
a remote control interface, wherein the program watched data is gathered;
a memory, wherein the gathered program watched data is stored;
a processor, operably connected to the memory and the demodulator, wherein a program is selected using the stored program watched data and the received program control information;
a display, operably connected to the processor, for displaying the selected program.

56. An apparatus used by subscribers of a television program delivery system for suggesting programs to subscribers using program control information containing program description data, by searching program abstracts for programs which correlate to key words mapped from one or more subscriber responses to a plurality of selectable entries presented on a display, the apparatus comprising:
a demodulator, wherein the program control information is demodulated;
a memory, connected to the demodulator, wherein the program abstracts are stored;
a combiner, wherein the plurality of selectable entries are presented to the subscriber using the display;
a subscriber interface, wherein subscriber responses to the plurality of selectable entries are entered;
logic circuitry, connected to the subscriber interface, wherein the subscriber responses are mapped into the key words;
a processor, operably connected to the logic circuitry and the memory, wherein the stored program abstracts are searched for programs consisting of one or more of the key words, and wherein one or more programs are selected using the search; and
wherein the selected programs are suggested to the subscriber using the display.

Description

BACKGROUND OF THE INVENTION

The invention relates to television entertainment systems for providing television programming to consumer homes. More particularly, the invention relates to a user friendly system for providing consumers with television programming choices.

Advances in television entertainment have been primarily driven by breakthroughs in technology. In 1939, advances on Vladmir Zworykin's picture tube provided the stimulus for NBC to begin its first regular broadcasts. In 1975, advances in satellite technology provided consumers with increased programming to homes.

Many of these technology breakthroughs have produced inconvenient systems for consumers. One example is the ubiquitous three remote control home, having a separate and unique remote control for the TV, cable box and VCR. More recently, technology has provided cable users in certain parts of the country with 100 channels of programming. This increased program capacity is beyond the ability of many consumers to use effectively. No method of managing the program choices has been provided to consumers.

Consumers are demanding that future advances in television entertainment, particularly programs and program choices, be presented to the consumer in a user friendly manner. Consumer preferences, instead of technological breakthroughs, will drive the television entertainment market for at least the next 20 years. As computer vendors have experienced a switch from marketing new technology in computer hardware to marketing better useability, interfaces and service, the television entertainment industry will also experience a switch from new technology driving the market to consumer useability driving the market.

Consumers want products incorporating new technology that are useful, and will no longer purchase new technology for the sake of novelty or status. Technological advances in sophisticated hardware are beginning to surpass the capability of the average consumer to use the new technology. Careful engineering must be done to make entertainment products incorporating new technology useful and desired by consumers.

In order for new television entertainment products to be successful, the products must satisfy consumer demands. TV consumers wish to go from limited viewing choices to a variety of choices, from no control of programming to complete control. Consumers wish to advance from cumbersome and inconvenient television to easy and convenient television and keep costs down. Consumers do not wish to pay for one hundred channels when due to lack of programming information, they seldom, if ever, watch programming on many of these channels.

The concepts of interactive television, high definition television and 300 channel cable systems in consumer homes will not sell if they are not packaged, delivered and presented in a useable fashion to consumers. The problem is that TV programming is not being presented to consumers in a user friendly manner.

Consumers are already being bombarded with programming options, numerous "free" cable channels, subscription cable channels and pay-per-view choices. Any further increase in TV entertainment choices, without a user friendly presentation and approach, will likely bewilder viewers with a mind-numbing array of choices.

What is needed is an economical system which can present television programs through a user friendly interface which allows the consumer to easily select from among the many program choices.

What is needed is a system that assists the consumer with his program selection.

What is needed is a reprogrammable system for presenting program choices.

What is needed is a system which can be remotely reprogrammed.

What is needed is a system capable of handling hundreds of programs in different formats, be expandable for future types of programming and be inexpensive. The present invention is addressed to fulfill these needs.

SUMMARY OF INVENTION

This invention is a reprogammable terminal for television program delivery systems which is capable of suggesting programs for viewing. Specifically, the present invention may be remotely reprogrammed and is capable of assisting a subscriber in selecting television programs by suggesting programs for viewing. This is a particularly useful invention for television program delivery systems with hundreds of channels of programming and a menu driven program selection system.

Preferably the terminal is located at the television set top and is used with a television delivery system that includes a program control information signal which carries data and identifies the available program choices. The terminal includes means for receiving incoming signals, a processor, memory and means to generate menu screens for display on a TV or monitor.

The terminal can be remotely reprogrammed using an incoming signal. Preferably a software interrupt followed by a memory location or software line number is transmitted via an incoming signal. This is followed by the new software programming which is written into memory at the set top terminal. Using this method, basic programming as well as menu formats, templates, logos, colors etc. may be changed.

The terminal of the present invention can also help a subscriber in selecting programs by suggesting programs to the subscriber. The terminal suggests programs that the subscriber is most likely to watch. The terminal is capable of applying several methods of analysis and a variety of informational sources to solve the problem of choosing a program that the subscriber is most likely to watch. For example, responsive and "intelligent" methods of analysis may be used with mood, personal profile, and historical program watched and network watched data.

Responsive methods of analysis require a subscriber to respond to a variety of questions or select subjective adjectives from program driven menus. The terminal will pose the questions or lists of subjective entries using menus and the subscriber will respond using a user interface, usually an alpha-numeric remote control. For example, subscriber preferences in mood, type of program, category/genre, actor, year preference and standard rating can be selected from menus as search entries. These entries, or key words which correlate to the entries, will be used to search a program database consisting of abstracts of a multitude of programs. The search results in a list of programs which can be displayed to the user.

Intelligent methods "learn" the subscribers viewing choices through analysis of historical data generally gathered by the terminal in a passive mode.

Through a series of analysis and weighing algorithms, the terminal is able to suggest groups of programs. A menu display of the suggested programs is offered to the subscriber. Within the suggested group of programs, the terminal can also prioritize the programs and determine each programs menu position.

It is an object of the invention to provide a user friendly interface for subscribers to access television programs.

It is an object of this invention to assist viewers in choosing programs.

It is an object of this invention to allow subscribers to select a program from among hundreds of choices without a television viewing guide.

It is an object of this invention to suggest program selections to viewers.

It is an object of this invention to monitor subscriber viewing choices.

It is an object of this invention to provide a system which can be reprogrammed.

It is an object of this invention to provide a system which can be remotely reprogrammed.

It is an object of this invention to provide a system which can handle many television programs and menu selection of programs. These and other objects and advantages of the invention will become obvious to those skilled in the art upon review of the following description, the attached drawings and appended claims.

DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram of the primary components of the television delivery system.

FIG. 2 is an overview of the television delivery system operations.

FIG. 3 is a schematic of the operation of the primary components of the system.

FIG. 4 is a block diagram of the hardware components of the set top terminal.

FIG. 5a is a perspective front view of a set top terminal.

FIG. 5b is a perspective rear view of a set top terminal.

FIG. 6 is a schematic of a Turbo card upgrade for a set top terminal.

FIG. 7a is a drawing of a frame format for a program control information signal.

FIG. 7b is a drawing of a frame format for a polling response from the set top terminal.

FIG. 8 is a drawing of the basic menus used in the present invention, including ten major menus represented by icons.

FIG. 9a is a drawing of storage for on-screen menu templates and other graphics files stored in graphics memory of the set top terminal.

FIG. 9b is a drawing showing the hierarchical storage of text in memory for the set top terminal.

FIG. 9c is a drawing of a flow chart showing the steps required for the microprocessor to retrieve, combine and display a menu.

FIG. 10a and 10b are schematics of memory structures for reprogramming the set top terminal.

FIG. 11a is a drawing of the main menu used for suggesting programs based on viewer responses.

FIGS. 11b, 11c, 11d and 11e are drawings of submenus used for suggesting programs based on user responses.

FIGS. 12a and 12b are drawings of a broadcast television menu and submenu.

FIGS. 12c, 12d and 12e are drawings of mood question menus.

FIG. 13a is a drawing of a method for selecting programs for display.

FIG. 13b is a drawing of a more detailed method for selecting programs for display.

FIG. 14 is a drawing of a movie ordering/preview menu.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

A. Television Program Delivery System Description

1. Introduction

FIG. 1 shows the present invention as part of an expanded cable television program delivery system 200 that dramatically increases programming capacity using compressed transmission of television program signals. Developments in digital bandwidth compression technology now allow much greater throughput of television program signals over existing or slightly modified transmission media. The program delivery system 200 shown provides subscribers with a user friendly interface to operate and exploit a six-fold or more increase in current program delivery capability.

Subscribers are able to access an expanded television program package and view selected programs through a menu-driven access scheme that allows each subscriber to select individual programs by sequencing a series of menus. The menus are sequenced by the subscriber using simple alpha-numeric and iconic character access or moving a cursor or highlight bar on the TV screen to access desired programs by simply pressing a single button, rather than recalling from memory and pressing the actual two or more digit numeric number assigned to a selection. Thus, with the press of a single button, the subscriber can advance from one menu to the next. In this fashion, the subscriber can sequence the menus and select a program from any given menu. The programs are grouped by category so that similar program offerings are found on the same menu.

2. Major System Components

In its most basic form, the system uses a program delivery system 200 in conjunction with a conventional concatenated cable television system 210. The program delivery system 200 generally includes (i) at least one operations center 202, where program packaging and control information are created and then assembled in the form of digital data, (ii) a digital compression system, where the digital data is compressed, combined/multiplexed, encoded, and mapped into digital signals for satellite transmission to the cable headend 208, and (iii) a set of in-home decompressors. The program delivery system 200 transports the digital signals to the cable headend 208 where the signals are transmitted through a concatenated cable television system
210. Within the cable headend 208, the received signals may be decoded, demultiplexed, managed by a local central distribution and switching mechanism, combined and then transmitted to the set top terminal 220 located in each subscriber's home over the cable system 210. Although concatenated cable systems 210 are the most prevalent transmission media to the home, telephone lines, cellular networks, fiberoptics, Personal Communication Networks and similar technology for transmitting to the home can be used interchangeably with this program delivery system 200.

The delivery system 200 has a reception region 207 with an in-home decompression capability. This capability is performed by a decompressor housed within a set top terminal 220 in each subscriber's home. The decompressor remains transparent from the subscriber's point of view and allows any of the compressed signals to be demultiplexed and individually extracted from the composite data stream and then individually decompressed upon selection by the subscriber. The decompressed video signals are converted into analog signals for television display. Such analog signals include NTSC formatted signals for use by a standard television. Control signals are likewise extracted and decompressed and then either executed immediately or placed in local storage such as a RAM. Multiple sets of decompression hardware may be used to decompress video and control signals. The set top terminal 220 may then overlay or combine different signals to form the desired display on the subscriber's television. Graphics on video or picture-on-picture are examples of such a display.

Although a single digital compression standard (e.g., MPEG) may be used for both the program delivery system 200 and the concatenated cable system 210, the compression technique used may differ between the two systems. When the compression standards differ between the two media, the signals received by the cable headend 208 must be decompressed before transmission from the headend 208 to the set top terminals 220. Subsequently, the cable headend 208 must recompress and transmit the signals to the set top terminal 220, which would then decompress the signals using a specific decompression algorithm.

The video signals and program control signals received by the set top terminal 220 correspond to specific television programs and menu selections that each subscriber may access through a subscriber interface. The subscriber interface is a device with buttons located on the set top terminal 220 or on a portable remote control 900. In the preferred system embodiment, the subscriber interface is a combined alpha-character, numeric and iconic remote control device 900, which provides direct or menu-driven program access. The preferred subscriber interface also contains cursor movement and go buttons as well as alpha, numeric and iconic buttons. This subscriber interface and menu arrangement enables the subscriber to sequence through menus by choosing from among several menu options that are displayed on the television screen. In addition, a user may bypass several menu screens and immediately choose a program by selecting the appropriate alpha-character, numeric or iconic combinations on the subscriber interface. In the preferred embodiment, the set top terminal 220 generates the menus that are displayed on the television by creating arrays of particular menu templates, and the set top terminal 220 displays a specific menu or submenu option for each available video signal.

3. Operations Center and Digital Compression System

The operations center 202 performs two primary services, packaging television programs and generating the program control information signal. At the operations center 202, television programs are received from external program sources in both analog and digital form. FIG. 2 shows an embodiment of the operations center receiving signals from various external sources 212. Examples of the external program sources are sporting events, children's programs, specialty channels, news or any other program source that can provide audio or visual signals. Once the programs are received from the external program sources, the operations center 202 digitizes (and preferably compresses) any program signals received in analog form. The operations center 202 may also maintain an internal storage of programs. The internally stored programs may be in analog or digital form and stored on permanent or volatile memory sources, including magnetic tape or RAM. Subsequent to receiving programming, the operations center 202 packages the programs into the groups and categories which provide the optimal marketing of the programs to subscribers. For example, the operations center 202 may package the same programs into different categories and menus for weekday, prime-time viewing and Saturday afternoon viewing. Also, the operations center 202 packages the television programs in a manner that enables both the various menus to easily represent the programs and the subscribers to easily access the programs through the menus.

The packaging of the digital signals is typically performed at the operations center 202 by computer assisted packaging equipment (CAP). The CAP system normally includes at least one computer monitor, keyboard, mouse, and standard video editing equipment. A programmer packages the signals by entering certain information into the CAP. This information includes the date, time slot, and program category of the various programs. The programmer and the CAP utilize demographic data and ratings in performing the packaging tasks. After the programmer selects the various programs from a pool of available programs and inputs the requisite information, the programmer, with assistance from the CAP, can select the price and allocate transponder space for the various programs. After the process is complete, the CAP displays draft menus or program schedules that correspond to the entries of the programmer. The CAP may also graphically display allocation of transponder space. The programmer may edit the menus and transponder allocation several times until satisfied with the programming schedule. During the editing, the programmer may direct the exact location of any program name on a menu with simple commands to the CAP.

The packaging process also accounts for any groupings by satellite transponder which are necessary. The operations center 202 may send different groups of programs to different cable headends 208 and/or set top terminals 220. One way the operations center 202 may accomplish this task is to send different program packages to each transponder. Each transponder, or set of transponders, then relays a specific program package to specific cable headends 208 and/or set top terminals 220. The allocation of transponder space is an important task performed by the operations center 202.

The operations center 202 may also "insert" directions for filling local available program time in the packaged signal to enable local cable and television companies to fill the program time with local advertising and/or local programming. Consequently, the local cable headends 208 are not constrained to show only programs transmitted from the operations center 202. New set top converters will incorporate both digital and analog channels. Therefore, the cable headend 208 may combine analog signals with the digital signals prior to transmitting the program signals to the set top terminals 220.

After the CAP packages the programs, it creates a program control information signal to be delivered with the program package to the cable headend 208 and/or set top terminal 220. The program control information signal contains a description of the contents of the program package, commands to be sent to the cable headend 208 and/or set top terminal 220, and other information relevant to the signal transmission.

In addition to packaging the signal, the operations center 202 employs digital compression techniques to increase existing satellite transponder capacity by at least a 4:1 ratio, resulting in a four-fold increase in program delivery capability. A number of digital compression algorithms currently exist which can achieve the resultant increase in capacity and improved signal quality desired for the system. The algorithms generally use one or more of three basic digital compression techniques: (1) within-frame (intraframe) compression, (2) frame-to-frame (interframe) compression, and (3) within carrier compression. Specifically, in the preferred embodiment, the MPEG 2 compression method is used. After digital compression, the signals are combined (multiplexed) and encoded. The combined signal is subsequently transmitted to various uplink sites 204.

There may be a single uplink site 204 or multiple uplink sites (represented by 204', shown in phantom in FIG. 1) for each operation center 202. The uplink sites 204 may either be located in the same geographical place or may be located remotely from the operations center 202. Once the composite signal is transmitted to the uplink sites 204, the signal may be multiplexed with other signals, modulated, upconverted and amplified for transmission over satellite. Multiple cable headends 208 may receive such transmissions.

In addition to multiple uplinks, the delivery system 200 may also contain multiple operations centers. The preferred method for using multiple operations centers is to designate one of the operations centers as a master operations center and to designate the remaining operations centers as slave operations centers. In this configuration, the master operations center coordinates various functions among the slave operations centers such as synchronization of simultaneous transmissions and distributes the operations workload efficiently.

4. Cable Headend

After the operations center 202 has compressed and encoded the program signals and transmitted the signals to the satellite, the cable headend 208 receives and further processes the signals before they are relayed to each set top terminal 220. Each cable headend site is generally equipped with multiple satellite receiver dishes. Each dish is capable of handling multiple transponder signals from a single satellite and sometimes from multiple satellites.

As an intermediary between the set top terminals 220 and the operations center 202 (or other remote site), the cable headend 208 performs two primary functions. First, the cable headend 208 acts as a distribution center, or signal processor, by relaying the program signal to the set top terminal 220 in each subscriber's home. In addition, the cable headend 208 acts as a network controller 214 by receiving information from each set top terminal 220 and passing such information on to an information gathering site such as the operations center 202.

FIG. 3 shows an embodiment where the cable headend 208 and the subscriber's home are linked by certain communications media 216. In this particular embodiment, analog signals, digitally compressed signals, other digital signals and up-stream/interactivity signals are sent and received over the media 216. The cable headend 208 provides such signaling capabilities in its dual roles as a signal processor 209 and network controller 214.

As a signal processor 209, the cable headend 208 prepares the program signals that are received by the cable headend 208 for transmission to each set top terminal 220. In the preferred system, the signal processor 209 re-routes or demultiplexes and recombines the signals and digital information received from the operations center 202 and allocates different portions of the signal to different frequency ranges. Cable headends 208 which offer different subscribers different program offerings may allocate the program signals from the operations center 202 in various manners to accommodate different viewers. The signal processor 209 may also incorporate local programming and/or local advertisements into the program signal and forward the revised signal to the set top terminals 220. To accommodate this local programming availability, the signal processor 209 must combine the local sigral in digital or analog form with the operations center program signals. If the local cable system uses a compression standard that is different than the one used by the operations center 202, the signal processor 209 must also decompress and recompress incoming signals so they may be properly formatted for transmission to the set top terminals 220. This process becomes less important as standards develop (i.e., MPEG 2). In addition, the signal processor 209 performs any necessary signal decryption and/or encryption.

As a network controller 214, the cable headend 208 performs the system control functions for the system. The primary function of the network controller 214 is to manage the configuration of the set top terminals 220 and process signals received from the set top terminals 220. In the preferred embodiment, the network controller 214 monitors, among other things, automatic poll-back responses from the set top terminals 220 remotely located at each subscribers'home. The polling and automatic report-back cycle occurs frequently enough to allow the network controller 214 to maintain accurate account and billing information as well as monitor authorized channel access. In the simplest embodiment, information to be sent to the network controller 214 will be stored in RAM within each subscriber's set top terminal 220 and will be retrieved only upon polling by the network controller 214. Retrieval may, for example, occur on a daily, weekly or monthly basis. The network controller 214
allows the system to maintain complete information on all programs watched using a particular set top terminal 220.

The network controller 214 is also able to respond to the immediate needs of a set top terminal 220 by modifying a program control information signal received from the operations center 202. Therefore, the network controller 214 enables the delivery system to adapt to the specific requirements of individual set top terminals 220 when the requirements cannot be provided to the operations center 202 in advance. In other words, the network controller 214 is able to perform "on the fly programming" changes. With this capability, the network controller 214 can handle sophisticated local programming needs such as, for example, interactive television services, split screen video, and selection of different foreign languages for the same video. In addition, the network controller 214 controls and monitors all compressors and decompressors in the system.

The delivery system 200 and digital compression of the preferred embodiment provides a one-way path from the operations center 202 to the cable headend 208. Status and billing information is sent from the set top terminal 220 to the network controller 214 at the cable headend 208 and not directly to the operations center 202. Thus, program monitoring and selection control will take place only at the cable headend 208 by the local cable company and its decentralized network controllers 214
(i.e., decentralized relative to the operations center 202, which is central to the program delivery system 200). The local cable company will in turn be in communication with the operations center 202 or a regional control center (not shown) which accumulates return data from the set top terminal 220 for statistical or billing purposes. In alternative system embodiments, the operations center 202 and the statistical and billing sites are collocated. Further, telephone lines with modems are used to transfer information from the set top terminal 220 to the statistical and billing sites.

5. Set Top Terminal

The set top terminal 220 is the portion of the delivery system 200 that resides in the home of a subscriber. The set top terminal 220 is usually located above or below the subscriber's television, but it may be placed anywhere in or near the subscriber's home as long as it is within the range of the subscriber's remote control device 900. In some aspects, the set top terminal 220 may resemble converter boxes already used by many cable systems. For instance, each set top terminal 220 may include a variety of error detection, decryption, and coding techniques such as anti-taping encoding. However, it will become apparent from the discussion below that the set top terminal 220 is able to perform many functions that an ordinary converter box cannot perform.

The set top terminal 220 has a plurality of input and output ports to enable it to communicate with other local and remote devices. The set top terminal 220 has an input port that receives information from the cable headend 208. In addition, the unit has at least two output ports which provide communications from the set top terminal 220 to a television and a VCR. Certain menu selections may cause the set top terminal 220 to send control signals directly to the VCR to automatically program or operate the VCR. Also, the set top terminal 220 contains a phone jack which can be used for maintenance, trouble shooting, reprogramming and additional customer features. The set top terminal 220 may also contain stereo/audio output terminals and a satellite dish input port.

Functionally, the set top terminal 220 is the last component in the delivery system chain. The set top terminal 220 receives compressed program and control signals from the cable headend 208 (or, in some cases, directly from the operations center 202). After the set top terminal 220 receives the individually compressed program and control signals, the signals are demultiplexed, decompressed, converted to analog signals (if necessary) and either placed in local storage (from which the menu template may be created), executed immediately, or sent directly to the television screen.

After processing certain signals received from the cable headend 208, the set top terminal 220 is able to store menu templates for creating menus that are displayed on a subscriber's television by using an array of menu templates. Before a menu can be constructed, menu templates must be created and sent to the set top terminal 220 for storage. A microprocessor uses the control signals received from the operations center 202 or cable headend 208 to generate the menu templates for storage. Each menu template may be stored in volatile memory in the set top terminal 220. When the set top terminal receives template information it demultiplexes the program control signals received from the cable headend 208 into four primary parts: video, graphics, program logic and text. Each menu template represents a different portion of a whole menu, such as a menu background, television logo, cursor highlight overlay, or other miscellaneous components needed to build a menu. The menu templates may be deleted or altered using control signals received from the operations center 202 or cable headend 208.

Once the menu templates have been stored in memory, the set top terminal 220 can generate the appropriate menus. In the preferred embodiment, the basic menu format information is stored in memory located within the set top terminal 220 so that the microprocessor may locally access the information from the set top terminal instead of from an incoming signal. The microprocessor next generates the appropriate menus from the menu templates and the other menu information stored in memory. The set top terminal 220 then displays specific menus on the subscriber's television screen that correspond to the inputs the subscriber selects.

If the subscriber selects a specific program from a menu, the set top terminal 220 determines on which channel the program is being shown, demultiplexes and extracts the single channel transmitted from the cable headend 208. The set top terminal
220 then decompresses the channel and, if necessary, converts the program signal to an analog NTSC signal to enable the subscriber to view the selected program. The set top terminal 220 can be equipped to decompress more than one program signal, but this would unnecessarily add to the cost of the unit since a subscriber will generally only view one program at a time. However, two or three decompressors may be desirable to provide picture-on-picture capability, control signal decompression, enhanced channel switching or like features.

In addition to menu information, the set top terminal 220 may also store text transmitted from the cable headend 208 or the operations center 202. The text may inform the subscriber about upcoming events, billing and account status, new subscriptions, or other relevant information. The text will be stored in an appropriate memory location depending on the frequency and the duration of the use of the textual message.

Also, optional upgrades are available to enhance the performance of a subscriber's set top terminal 220. These upgrades may consist of a cartridge or computer card (not shown) that is inserted into an expansion slot in the set top terminal 220
or may consist of a feature offered by the cable headend 208 or operations center 202 to which the user may subscribe. Available upgrades may include on line data base services, interactive multi-media services, access to digital radio channels, and other services.

In the simplest embodiment, available converter boxes such as those manufactured by General Instruments or Scientific Atlanta, may be modified and upgraded to perform the functions of a set top terminal 220. The preferred upgrade is a circuit card with a microprocessor which is electronically connected to or inserted into the converter box.

6. Remote Control Device

The primary conduit for communication between the subscriber and the set top terminal 220 is through the subscriber interface, preferably a remote control device 900. Through this interface, the subscriber may select desired programming through the system's menu-driven scheme or by directly accessing a specific channel by entering the actual channel number. Using the interface, the subscriber can navigate through a series of informative program selection menus. By using menu-driven, iconic or alpha-character access, the subscriber can access desired programs by simply pressing a single button rather than recalling from memory and pressing the actual channel number to make a selection. The subscriber can access regular broadcast and basic cable television stations by using either the numeric keys on the remote control 900 (pressing the corresponding channel number), or one of the menu icon selection options.

In addition to enabling the subscriber to easily interact with the cable system 200, the physical characteristics of the subscriber interface 900 should also add to the user friendliness of the system. The remote control 900 should easily fit in the palm of the user's hand. The buttons of the preferred remote control 900 contain pictorial symbols that are easily identifiable by the subscriber. Also, buttons that perform similar functions may be color coordinated and consist of distinguishing textures to increase the user friendliness of the system.

7. Menu-Driven Program Selection

The menu-driven scheme provides the subscriber with one-step access to all major menus, ranging from hit movies to sport specials to specialty programs. From any of the major menus, the subscriber can in turn access submenus and minor menus by cursor or alpha-character access.

There are two different types of menus utilized by the preferred embodiment, the Program Selection menus and the During Program menus. The first series of menus, Program Selection menus, consists of an Introductory, a Home, Major menus, and Submenus. The second series of menus, During Program menus, consists of two primary types, Hidden menus and the Program Overlay menus.

Immediately after the subscriber turns on the set top terminal 220, the Introductory menu welcomes the subscriber to the system. The Introductory menu may display important announcements from the local cable franchise, advertisements from the cable provider, or other types of messages. In addition, the Introductory menu can inform the subscriber if the cable headend 208 has sent a personal message to the subscriber's particular set top terminal 220.

After the Introductory menu has been displayed the subscriber may advance to the next level of menus, namely the Home menu. In the preferred embodiment, after a certain period of time, the cable system will advance the subscriber by default to the Home menu. From the Home menu, the subscriber is able to access all of the programming options. The subscriber may either select a program directly by entering the appropriate channel number from the remote control 900, or the subscriber may sequence through incremental levels of menu options starting from the Home menu. The Home menu lists categories that correspond to the first level of menus called Major menus.

If the subscriber chooses to sequence through subsequent menus, the subscriber will be forwarded to the Major menu that corresponds to the chosen category from the Home menu. The Major menus further refine a subscriber's search and help guide the subscriber to the selection of his choice.

From the Major menus, the subscriber may access several submenus. From each submenu, the subscriber may access other submenus until the subscriber finds a desired television program. Similar to the Major menu, each successive level of Submenus further refines the subscriber's search. The system also enables the subscriber to skip certain menus or submenus and directly access a specific menu or television program by entering the appropriate commands on the remote control 900.

The During program menus (including Hidden Menus and Program Overlay Menus) are displayed by the set top terminal 220 only after the subscriber has selected a television program. In order to avoid disturbing the subscriber, the set top terminal
220 does not display the Hidden Menus until the subscriber selects the appropriate option to display a Hidden Menu. The Hidden Menus contain options that are relevant to the program selected by the viewer. For example, a Hidden Menu may contain options that enable a subscriber to enter an interactive mode or escape from the selected program.

Program Overlay Menus are similar to Hidden Menus because they occur during a program and are related to the program being viewed. However, the Program Overlay Menus are displayed concurrently with the program selected by the subscriber. Most Program Overlay Menus are small enough on the screen to allow the subscriber to continue viewing the selected program comfortably.

B. Detailed Set Top Terminal Description

The set top terminal 220 receives and manipulates signals from the cable headend 208. The set top terminal 220 is equipped with local computer memory and the capability of interpreting the digitally compressed signal to produce menus for the subscriber. The remote control 900 communicates the subscriber's selections to the set top terminal 220. The subscriber's selections are generally based upon menus or other prompts displayed on the television screen.

It is preferred that the signal reaches the subscriber's home in a compressed format and is decompressed prior to viewing. Included in the delivered program signal is information that enables equipment at the subscriber's home to display menus for choosing particular programs. Depending on the particular embodiment, the television program signal may arrive at the subscriber's home through one or more connections such as coaxial cables, fiber cables, twisted pairs, cellular telephone connections, or personal communications network (PCN) hookups.

The program control information signal is generated by the operations center 202 and provides the network controller 214 with data on the scheduling and description of programs. In an alternate configuration, this data is sent directly to the set top terminal 220 for display to the subscriber. In the preferred embodiment, the program control information signal is stored and modified by the network controller 214 and sent to the set top terminal 220 in the form of a set top terminal control information stream (STTCIS). The set top terminal 220 integrates either the program control information signal or the STTCIS with data stored in the memory of the set top terminal 220 to generate on-screen menus that assist the subscriber in choosing programs for display.

The types of information that can be sent using the program control signal include: number of program categories, names of program categories, what channels are assigned to a specific category (such as specialty channels), names of channels, names of programs on each channel, program start times, length of programs, description of programs, menu assignment for each program, pricing, whether there is a sample video clip for advertisement for the program, and any other program, menu or product information.

With a minimal amount of information being communicated to the set top terminal 220 on a regular basis, the set top terminal 220 is able to determine the proper menu location for each program and the proper time and channel to activate for the subscriber after a menu selection. The program control information signal and SITCIS can be formatted in a variety of ways and the on-screen menus can be produced using many different methods. For instance, if the program control information signal carries no menu format information, the menu format for creating the menus can be fixed in ROM at the set top terminal 220. In the preferred embodiment, the menu format information is stored at the set top terminal 220 in a temporary memory device such as a RAM or EPROM. New menu format information is sent via the program control information signal or the STTCIS to the set top terminals 200 whenever a change to a menu format is desired.

In the simplest embodiment, the menu formats remain fixed and only the text changes. In this way the program control information signal can be limited to primarily text and a text generator can be employed in the set top terminal 220. Another simple embodiment uses a separate channel full-time (large bandwidth) just for the menu information.

Live video signals may be used in windows of certain menus. These video signals can be transmitted using the program control information signal or STTCIS, or can be taken off channels being transmitted simultaneously with the menu display. Video for menus, promos or demos may be sent to the set top terminal 220 in several formats, including (1) on a dedicated channel, (2) on a regular program channel and scaled to size, or (3) along with the program control information signal. However, in the preferred embodiment, a large number of short promos or demo video is sent using a split screen technique on a dedicated channel. A multiple window technique may be used with the menus to display a description of a program and one or more video frames that assist the subscriber in selecting the program.

FIG. 4 shows the basic hardware components of the set top terminal 220. The set top terminal 220 has a tuner 603, digital demodulator 606, decryptor 600, and demultiplexers 609, 616 as well as audio equipment 612 and a remote control interface
626 for receiving and processing signals from the remote control unit 900. An optional modem 627 allows communication between a microprocessor 602 and the cable headend 208. An NTSC encoder 625 provides a standard NTSC video output.

The microprocessor 602 is capable of executing program instructions stored in memory. These instructions allow a user to access various menus by making selections on the remote control 900.

The manner in which the video is decompressed and the menus are generated from the program control information signal or STTCIS varies depending on the specific embodiment of the invention. Video decompressors 618 and 622 may be used if the video is compressed. The program control information signal may be demultiplexed into its component parts, and a video decompressor 618, graphic decompressor, text generator and video combiner 624 may be used to assist in creating the menus.

In addition to the menu format information that is stored in graphics memory, the set top terminal 220 also stores data tracking those programs that have been selected for viewing. By gathering this data, the set top terminal 220 can maintain an accurate record of all programs accessed/watched by storing the data in EEPROM or RAM. Subsequently, this data can be transmitted to the cable headend 208, where it can be used in carrying out network control and monitoring functions. Such data transmissions between the set top terminal 220 and cable headend 208 can be accomplished, for example, through upstream transmission over the cable network or over telephone lines through the use of telephone modems. Where upstream transmission over the cable network is used, the set top terminals 220 can complete data transmissions on a scheduled (e.g., using a polling response or status report to respond to polling requests sent from the cable headend 208) or as-needed (e.g., using a random access technique) basis.

FIG. 5a shows the front panel of the set top terminal 220, which includes an infrared sensor 630 and a series of LED displays 640. The LED displays 640 may indicate with an icon or a letter (e.g. A-K) the major menu currently selected by the set top terminal 220 or the channels selected directly by a user, or menu channel selections (e.g., from 1 to 50). Further displays may include current channel, time, volume level, sleep time, parental lock (security), account balance, use of a hardware upgrade, second channel being recorded by VCR, use of the Level D music hardware upgrade in a separate room, and any other displays useful to a subscriber to indicate the current status of the set top terminal 220. The LEDs 640 may also provide an indication of the digital audio channel currently tuned.

The set top terminal 220 includes a flapped opening 635 on its front that allows the insertion of a magnetic cartridge (or similar portable storage device, including optical disk, ROM, EPROM, etc. not shown). This cartridge opening 635 allows the set top terminal 220 to be upgraded or reprogrammed locally with the use of a magnetic tape cartridge.

On the top or cover of the set top terminal 220 are located pushbutton controls 645. Any function that can be performed on the remote 900 may also be performed at the set top terminal 220 using the duplicative pushbutton controls 645.

FIG. 5b shows the back of the set top terminal 220, which includes a pair of output terminals 650, pair of input terminals 652, pair of stereo/audio output terminals 654, satellite dish input port 656, telephone Jack 658 and an RS-422 port 660. In addition, an upgrade port 662 and a cover plate 664 are held in place by a series of sheet metal screws. One of the output terminals 650 is for a television and the other is for a VCR. The set top terminal 220 is equipped to handle incoming signals on one or two cables using the input terminals 652. The phone jack 658 and an RS-232 or RS-422 port 660 are provided for maintenance, trouble shooting, reprogramming and additional customer features. In alternate embodiments, the telephone jack 658 may be used as the primary mode of communication between the cable headend 208 and the set top terminal 220. This connection is possible through the local telephone, cellular telephone or a personal communications network (PCN).

The basic programming of each set top terminal 220 is located on ROM within the set top terminal 220. Random access memory, the magnetic cartridge capability, and the expansion card slot 635 each allow upgrades and changes to be easily made to the set top terminal 220.

In the preferred embodiment, the set top terminal 220 includes a hardware upgrade port 662, in addition to expansion card slots. The hardware upgrade port 662 accommodates a four-wire (or more) connection for: (1) error corrected, decrypted data output of the set top terminal 220, (2) a control interface, (3) decompressed video output, and (4) a video input port. In the preferred embodiment, multiple wires are used to perform each of the four functions. The four sets of wires are combined in a single cable with a single multipin connector.

In the preferred embodiment, multipin connections may be used for the multiwire cable. The multipin connection 662 may range from DB9 to DB25. A variety of small computer systems interface (SCSI) ports may also be provided. Alternatively, four or more ports may be provided instead of the single port depicted.

Another port 662 is used to attach the various hardware upgrades described below to a set top terminal 220. The preferred embodime