1. This invention relates to interactive entertainment systems, such as interactive television or interactive computing network systems. More particularly, this invention relates to methods for presenting supplemental interactive content in conjunction with continuous video programs to enable viewer interactivity with the otherwise non-interactive video programs.
2. Video content programs, such as TV shows and pay-per-view movies, are delivered to a viewer as a continuous data stream. Today, programs are most commonly distributed using a wireless broadcast system, or a cable system. In the first instance, the programs are broadcast over a wireless network and received at individual homes through an antenna or satellite dish. In the latter case, the programs are transmitted over cable to set-top boxes resident in the viewers' homes.
3. In broadcast distribution systems, there is no opportunity for interactive control of the content by the viewer. The viewer simply has an option to watch the program, change to a different program, or turn off the television. However, as consumers have learned from playing video games on their televisions, non-interactive viewing is not nearly as fun or sensory rich as interactive entertainment.
4. To enhance the traditional way of viewing television, there has been some effort toward the production of interactive programming content. As presently contemplated, additional interactive content is created to enhance the existing traditional program. This supplemental content is played along with the continuous video stream to enable viewers to interact with the program in a more involved manner than simply watching it. The supplemental content might, for example, ask the viewer questions about the episode, or play games with the viewer that relate to the show, or describe behind-the-scenes aspects of making the program. However, there remains a significant hurdle concerning how to create and distribute interactive programs.
5. Apart from the TV environment, however, computer users are familiar with interactive content on their computers. Many users own interactive multimedia CD-ROM applications that combine video, audio, pictures, text, and other content into a rich and responsive presentation. Familiar examples of interactive computer applications include games (e.g., Myst from Broderbund), educational programs (e.g., Reader Rabbit series from the Learning Company or Magic Schoolbus series from Microsoft), and home entertainment (e.g., Encarta from Microsoft).
6. Interactive content is also available from online services over a public network. Most notably, the Internet is emerging as a means for supplying video, sound, pictures, text, and other multimedia rich resources to a user's computer. Through the Internet, users can access a wide variety of resources that are maintained on computers located around the world.
7. Resources available on the Internet are most commonly presented as hypertext. “Hypertext,” also referred to as “hypermedia,” is a metaphor for presenting information in which text, images, sounds, and actions become linked together in a complex, non-sequential web of associations that permit a user to browse through related topics, regardless of the presented order of the topics. Hypermedia content is widely used for navigation and information dissemination on the “World-Wide Web” (WWW or Web) of the Internet. An application program referred to as a “Web browser” is normally used to retrieve and render hypermedia content from the WWW.
8. Despite the development of interactive entertainment in the computer sector, there has been little activity spilling over into the traditional television world. The TV environment poses a problem in that the programs are typically delivered as a broadcast of a continuous data stream, which inherently does not support interactive control. Interlacing interactive content presents a difficult design issue.
9. One proposed solution is a technology referred to as “Intercast technology” which is available from the Intercast Industry Group, a consortium of leading television networks, program hardware vendors, and software vendors. The Intercast technology presents both television programs and Internet data together on the same television or computer monitor, but with separate and predefined panes.
10.
11. The Internet data is combined with the video data of the television program to form a single signal that is broadcast to the viewer. The Internet data is transmitted during the vertical blank interval (VBI) between successive frames of the video data. The Internet data and video data are separated at the viewer's computer and presented simultaneously within their respective panes.
12. The drawback with the Intercast technology is that it rigidly adheres to the paned presentation. The television pane
13. The inventors have developed a better way of creating and distributing interactive programming that frees the content providers of these restrictions.
14. This invention concerns an interactive entertainment system for supplying interactive supplemental content along with continuous video content programs to viewers. The programs are supplied from a program provider, such as a cable headend or a broadcast station, over a distribution network to a viewer computing unit. The programs are continuous, non-interactive data streams, such as television shows, movies, or other video content.
15. The viewer computing unit is implemented as a television, a television/set-top box unit, a personal computer, or the like. It has a processor and memory. An electronic programming guide (EPG) is stored in the memory and executable on the processor to organize programming information that is descriptive of the video content programs. The EPG maintains a data field that indicates whether the video content program is interactive. The EPG data field contains a pointer, universal resource locator, or other target specification to the target resource that supports the interactive content and correlates this data field with the particular program that the supplemental content is designed to enhance. Accordingly, if a target resource is listed in conjunction with a particular program, the program is recognized as being interactive. The supplemental content can be developed and provided by the same provider that distributes the video content program, or by an independent service provider.
16. When the viewer tunes to a particular channel, the viewer computing unit consults the EPG to determine if the present program is interactive. If it is, the viewer computing unit launches an interactive support module, such as an Internet browser. This browser is kept in memory and is dynamically loadable for execution on the processor when the viewer tunes to a channel carrying a video content program that the EPG identifies as interactive. The viewer computing unit also depicts a small icon or other indicia to alert the viewer that the program is interactive. The viewer can click on or otherwise activate the icon to enter the interactive mode and display the supplemental content. As an alternative, the supplemental content can be automatically displayed in response to launching the Internet browser.
17. The Internet browser uses the target specification in the EPG to start the target resource. The target resource contains the supplemental content to enhance the television program. The supplemental content might be, for example, questions about the program, games, trivia information, facts about the actors and producers, information on other episodes, advertisements, a listing of products or memorabilia about the program, and so on. The supplemental content and program can be transmitted together as a single signal, which is separated at the viewer computing unit, or separately over two channels or two different networks.
18. The target resource also contains display layout instructions prescribing how the supplemental content and the video content program are to appear in relation to one another when displayed on the television or monitor. When the data from the target resource is downloaded to the viewer computing unit, the processor is responsive to the layout instructions obtained from the target resource to display the supplemental content concurrently with the video content program.
19. Embedding the layout instructions in the supplemental content advantageously returns control of the presentation to the content developers. The developers can now arrange the data and video in any manner they choose. The developers are not restricted to specific fixed panes, as in the prior art.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29. Each subscriber has a viewer computing unit
30. Each viewer computing unit
31. Headend
32. In the illustrated implementation, the network
33. Headend
34. An EPG server
35. The headend
36. In the implementation described herein, the supplemental content is constructed as a hypertext file which is rendered by a browser. Hypertext, or hypermedia, is a metaphor for presenting information in which text, images, sounds, and actions become linked together in a complex, non-sequential web of associations that permit a user to browse through related topics, regardless of the presented order of the topics. Hypermedia content is widely used for navigation and information dissemination on the “World-Wide Web” (WWW or Web) of the Internet.
37. Hypermedia content is commonly organized as documents with embedded control information. The embedded control information includes formatting specifications, indicating how a document is to be rendered by the browser. In addition, such control information can include links or “hyperlinks,” which are symbols or instructions telling the browser where to find other related documents on the Internet. A hyperlink includes a label, which is typically rendered as a graphical icon or as highlighted keywords, and an underlying target specification. The target specification is set forth in the underlying hypermedia document, but is normally invisible to the user. The target specification unambiguously identifies a targeted document or resource, specifying the name of the computer on which the document resides and the complete file name of the document.
38. In concept, the target resource can be virtually any type of object - including executable programs, text or multimedia documents, sound clips, audio segments, still images, computers, directories, and other hyperlinks. In WWW documents, hyperlink targets are most often files that can reside on any computers connected to the Internet. However, a hyperlink target can also be a particular location within a document, including the document that is currently being rendered. Hypertext usage is not limited to the Internet. Various multimedia applications utilize hypertext to allow users to navigate through different pieces of information content.
39.
40. The data structure
41. A URL (universal resource locator) is a type of target specification used in WWW documents to describe everything about a particular resource that a browser needs to know to request and render it. The URL describes the protocol a browser should use to retrieve the resource, the name of the computer it is on, and the path and file name of the resource.
42. The following is an example of a URL listed in the EPG data structure
43. The “http://” portion of the URL describes the protocol. The letters “http” stand for HyperText Transfer Protocol, the set of rules that a browser will follow to request a document and the remote server will follow to supply the document. The “www.nbc.com” portion of the URL is the name of the remote host computer which maintains the document. The last portion “/seinfeld” is the path and file name of the document on the remote host computer.
44. The development of the EPG data structure
45. The same or a subset of data structure
46.
47. The headend
48. The interactive entertainment system
49. The supplemental content provided by the ISP
50. According to this
51. In another implementation, the interactive content can be supplied locally by a storage medium, such as a CD-ROM. Suppose, for example, a content developer creates an interactive CD-ROM that can be played along with a particular movie. The supplemental content is accessed via disk reads to the local storage drive, rather than using URLs to target resources over a network. The supplemental content is synchronized with the program using open loop control, such as a start time followed by measurable ticks or by frame count.
52.
53. The viewer computer runs an operating system
54. A channel navigator application
55. Although not shown, the viewer computer might also include on or more storage drives, such as a CD-ROM drive, to play interactive CD-ROMs in the event that supplemental data is supplied locally on disk.
56.
57. The method begins when a viewer tunes to a particular channel (step
58. A run-time technique can alternatively be used for detecting whether a program is interactive compatible. Rather than checking the EPG data field, the viewer computing unit checks a dedicated channel for the existence of new supplemental content data. The dedicated channel is separate from the selected channel carrying the program so that the supplemental content is received by the viewer computing unit currently with the program video data. The existence of a supplemental content data stream over the dedicated channel indicates that the program being received on the selected channel is interactive compatible. This technique can be carried out without reference to the EPG listing.
59. If the program is interactive compatible (i.e., the “yes” branch from step
60. At this point, there are several ways to initiate viewing the supplemental content. One approach is to permit the viewer to selectively activate the interactive mode (i.e., the “viewer activate” branch from step
61.
62. If the viewer decides to enter into an interactive mode, the viewer employs a remote control handset, mouse, keyboard, or other mechanism to actuate the icon
63. This leads to another approach to invoking the supplemental content. Rather than displaying an icon and waiting for input from the viewer, the viewer computing unit can automatically activate the target resource as soon as the browser is loaded on the processor (step
64. The target resource contains digital data which supports interactive functionality in conjunction with the associated video content program. The digital data defines the supplemental content to enable viewer interactivity with the video content program. The digital data also defines a display layout prescribing how the supplemental content and the video program are to appear in relation to one another when displayed on the screen.
65. The digital data further defines timing information to synchronize presentation of the supplemental content with the video content program. This timing information can be implemented in many different ways. One approach is to coordinate the supplemental content to a particular program start time, and then carefully measure time from that start time to synchronize presentation of the supplemental content with the appropriate points in the program. Another approach is to characterize the program in terms of frames, and key the introduction of supplemental content to the frame numbers.
66. The video stream and supplemental content can be transmitted together, as a single signal, or separately. In the former implementation, the digital data is packaged with the video stream and transmitted as one signal from the headend. The viewer computing unit receives the single signal at tuner
67. At the viewer computing unit, the digital data is deconstructed to extract the timing information and the display layout from the supplemental content (step
68. The display layout also defines how the supplemental content is illustrated along with the program. The display layout prescribes the size, style, location, and other parameters for presenting the supplemental content. For instance, the supplemental content might be at least partly overlaid on the video program, or provided as a wrapper around, or along side, the program. The supplemental content is displayed according to this display layout and synchronized to the program according to the timing information (step
69.
70. The illustrated screen is taken from an interactive program based on a Star Trek episode. To provide an example of the main menu, the soft buttons
71. Soft button
72. Soft buttons
73. Button
74. Button
75. The tenth button
76. The program and supplemental content are displayed as prescribed by the display layout. The digital data from the target resource, however, can dynamically change the display layout. When the display layout is changed (i.e., the “yes” branch from step
77.
78. In this illustration, the viewer has selected the entertainment button
79. The system and method for presenting interactive entertainment programs is advantageous as it returns the freedom of creativity to the content developer. By embedding the display layout instructions within the digital data provided by a target resource, the developer is empowered to create both the content and the presentation format of how the content and broadcast program are displayed to the viewer. The developer is free to control the location and shape of the broadcast program window, as well as the presentation format of the supplemental content relative to the program window. This facilitates a non-restrictive environment in which the developer can create screens with optimal appeal to the viewer. No longer is the developer simply developing content to be displayed within a fixed pane that cannot be dynamically altered relative to the program.
80. The creative power is thus placed in the hands of the target resource author.
81. In the implementation described herein, the supplemental content is constructed as a hypertext document which can be rendered by a browser. To control how the content is to be rendered, the author encodes the presentation format and timing instructions as extension attributes to hyperlink codes. More specifically, hypermedia content utilized by the WWW is commonly written using what is referred to as a “markup language.” “SGML” (Standard Generalized Markup Language) is one such language, defined formally as “a language for document representation that formalizes markup and frees it of system and processing dependencies.” SGML is a language for describing the structure of documents and for describing a tagging scheme to delineate that structure within text. For creating hypermedia content, WWW documents utilize a subset of SGML called “HTML” (Hypertext Markup Language). An HTML textual document can be thought of as plain text that contains formatting instructions in the form of HTML markup codes or “tags.” Tags tell Web browsers how to render and print documents, and are also used to specify hyperlinks.
82. The following is a simple example of a start tag for an HTML hyperlink:
83. The leading “A” in the start tag is the name of HTML element. The letter “A” indicates that the tag is an “anchor” tag-the type of tag that defines a hyperlink. The start tag contains an “attribute” indicating a target specification:
84. The attribute name is “HREF” and the attribute value is “http://www.microsoft.com/upgrades.” HTML documents are organized according to various tags. Tags define the start and end of headings, paragraphs, lists, character highlighting and links, and so on.
85. The interactive entertainment system described herein supports conventional HTML documents as target resources. Accordingly, authors can use familiar HTML elements, such as Head, Body, and Character-Level elements, to construct a target resource. However, the inventors have also developed new types of tags, as well as extension attributes to existing HTML tags. The author of a target resource can use the new tags and extension attributes to formulate how and when the browser renders the supplemental content along with the continuous video stream. The new HTML extension attributes are given below in Table 1.
TABLE 1 HTML Extension Attributes Extension HTML Tag Attribute Function BODY background Specifies a URL for an image tile or MMS stream to cover the document background to yield a distinctive appearance. IMG dynsrc Specifies the address of a video clip or broadcast source to be displayed. FRAMESET usedefault Used to determine where the focus is located in a tab-based user interface within a FRAME by specifying the URL for the file containing the map, followed by a ‘#’, followed by the name of the USEDEFAULT. If the argument to USEDEFAULT starts with a ‘#’, the map is assumed to be in the same document as the USEDEFAULT tag
86. The new tags supported by the interactive entertainment system are provided in Table 2.
TABLE 2 HTML Tags HTML Tag Function Permitted Attributes ACTION Controls update or +E,uns CELL- identifies object in a display of sound or GALLERY picture +E,uns HREF - URL to resource or object +E,uns ID - label or id for this element +E,uns TARGET - where to perform action such as a FRAME or RENDERIMAGE element EVENT Associates trigger and +E,uns TRIGGER - reference to action TRIGGER element to be used with this event +E,uns ACTION - reference to TRIGGER element to be used with this event - allow comment delimited list of actions to satisfy the need for multiple actions in response to a single trigger +E,uns ID - name of event GALLERY Stores and coordinates +E,uns SOURCE - URL to actual gra- collection of images phic +E,uns ID - name of gallery +E,uns ROWS - height of each graphic cell +E,uns COLUMNS - width of each graphic cell +E,uns TRANSPARENCY - RGB value indicating background color LOADFONT Downloads and installs +E,uns HREF - URL to font resource a font to be used RENDER- Displays an image from +E,uns REF - name of GALLERY IMAGE the GALLERY +E,uns CELL - specifies individual cells containing image TRANSI- Defines screen change +E,uns TYPE - type of transition TION interim, fade to black, +E,uns SPEED - how fast does the cut, and so on. transition occur, SLOWEST, SLOW, MEDIUM, FAST, FASTEST TRIGGER Defines when +E,uns ID - name of this TRIGGER something is to occur +E,uns TIME - time in milli- seconds since the last event
87. Using the supplemental content and HTML tags for timing and presentation format, the author constructs the target resource (step
88. In compliance with the statute, the invention has been described in language more or less specific as to structure and method features. It is to be understood, however, that the invention is not limited to the specific features described, since the means herein disclosed comprise exemplary forms of putting the invention into effect. The invention is, therefore, claimed in any of its forms or modifications within the proper scope of the appended claims appropriately interpreted in accordance with the doctrine of equivalents and other applicable judicial doctrines.