ENHANCED VIDEO PROGRAMMING SYSTEM AND METHOD UTILIZING A WEB PAGE STAGING AREA

Abstract: A web page staging area for construction of web pages hidden from view of the user and a system (200) for its use is disclosed. Once the web page is constructed, it is displayed to the user based upon timer event information (206) or receipt of a particular command (206) instructing that it be displayed. Use of the staging area provides the user with a more television-like experience in viewing content from the Internet (220) or other source in that the user need not view a web page being constructed on a display device (209). Use of timer event information (206) for displaying the constructed web page permits synchronization of the web page with associated programming.

Description: ENHANCED VIDEO PROGRAMMING SYSTEM AND METHOD UTILIZING A WEB PAGE STAGING AREA REFERENCE TO RELATED APPLICATION The present application is related to a U.S. application of Craig D. Ullman, Michael R. Abato, Jeffrey M. Harrington, and Carl R. Duda, entitled "ENHANCED VIDEO PROGRAMMING SYSTEM AND METHOD FOR PROVIDING A DISTRIBUTED COMMUNITY NETWORK," which can be identified in the United States Patent and Trademark Office as application Serial No. 09/396693, filed 15 September 1999. BACKGROUND OF THE INVENTION Today, the capabilities of computers to provide massive amounts of educational and entertainment information has exploded with the Internet. The Internet has the power to transform society through unprecedented levels of information flow between members. Currently, on-line systems offer a variety of different services to users, including news feeds, electronic databases (either searchable by the user directly on the on-line system, or downloadable to the user's own computer), private message services, electronic newsletters, real time games for play by several users at the same time, and job placement services, to name a few. However, today, most on-line communications occur merely through text. This currently stands in great contrast to the audio/visual presentation of the alternative electronic medium, television. However, it is expected that as multi-media's incessant growth continues, audio/visual programs will proliferate and text will become less and less dominant in the on-line environment. Even though these programs will be introduced, the Internet, will remain essentially user unfriendly due to its very massiveness, organization, and randomness. Simply stated, there is no order or direction in the Internet. Specific pieces of information are many times hard to find, and harder yet, is the ability to put that piece of information into a meaningful context. Television, on the other hand, has been criticized for being a passive medium - "chewing gum for the eyes," as Fred Allen once observed. Television has always been something you watched, not something you do. Many social critics believe that the passivity television depends on has seeped into our entire culture, turning a nation of citizens into a nation of viewers. While interactive television systems have increased the level of user interaction, and thus, provided greater learning and entertainment opportunities, vast information resources such as databases are inaccessible from such a medium What is needed is a means to close the gap between video programming and the information superhighway of the Internet What is needed is a wider, richer expeπence integrating audio/visual and textual database elements into an organized unique interactive, educational, entertainment experience Currently, the Internet is a repository of information on virtually any subject However, what is needed is a mechanism for combining the user-friendly visual expeπence of television with the vast information resources of the Internet SUMMARY OF THE INVENTION The system of the present invention combines broadcast television programming and/or video programming which appears on a VHS or Beta tape, CD-ROM, DVD or other medium, or particular content from the Internet, or video programming at a video server (hereinafter "video programming"), with the massive Internet, creating a new and powerful educational and entertainment medium The system allows consumers to receive more information in a more efficient manner than either television or the Internet alone Consumers not only can see a news report on television, but they can also read pertinent information about the report, as well as explore related information about the story The program becomes the introduction to a particular subject, rather than the entire subject itself The act ot viewing a program has now become a more engaging, enriching expeπence The system can also create a more intimate relationship between the viewer and the program The user might be solving problems or performing virtual experiments on the Internet site that a teacher is discussing in an educational television program Similarly, the consumer might be solving problems that the fictional characters in a television program must solve In both cases, the consumer is an active participant in the process, rather than a passive observer Instead of an undirected and unfocused exploration of Internet sites, by synching specific Internet pages to the video signal, the system puts the Internet in context The television program producers now can decide what additional information to offer their audience. This material can now be seen in the context of the television program An additional advantage is that consumers don't have to search through the literally hundreds of millions of pages on the Internet to find appropriate mateπal. The mateπal has already been filtered by the program producers and delivered to the consumer automatically Another advantage of the system is that it changes the nature of advertising Since additional information can be given to consumers automatically, advertising can now be more substantive, allowing customers to make more informed choices. Now, the act of purchasing a product seen on television can be streamlined ~ the consumer can be given the choice of buying the product instantly using the two-way capabilities of the system In addition, users can take advantage of the two-way capabilities of the Internet to respond to polls, to send e-mail or to link to additional sites For example, a viewer watching a television news program, through the system of the invention, can receive a stream of Web pages which provide additional, specific information relating to the news content — whether background on the Presidential pπmaπes or the latest change in interest rates The video programming and corresponding Internet pages can be viewed on personal computers equipped with a television card, but the open software-based approach enables anyone with a television set and JAVA enabled PC to experience the system of the invention By marrying the appeal of video with the two-way data transfer capabilities of the Internet, the system creates a powerful new medium Video producers and Internet site creators can enhance their content to extend their brand identity and differentiate their program offerings to the millions ot people who are spending more time navigating through the resources of the World Wide Web rather than watching television, advertisers can speak more directly to consumers by directly sending Web pages to the consumer instead of only displaying Web addresses in their commercials; and consumers can gain a new level of interest and interactivity over a video-based medium. In addition to providing significant and immediate benefits to broadcasters and advertisers, the system will also present educational programmers with a way to more effectively use Internet resources in the classroom Recently, several media companies have joined to create a system for linking the Internet and television on the personal computer, called "Intercast." In this system, content will be provided simultaneously with the TV video signal. This system, however, requires that stripped down Web pages be sent in the vertical blanking interval (VBI) of the video signal, using up to three scan lines limiting effective bandwidth to approximately 28.8 kbps. This approach, however, requires specialized hardware to both insert the Web pages into the VBI and extract these codes at each PC since it takes up to three scan lines of the VBI. Thus, the complexity and cost of the PC is increased. Because the Web pages are transmitted with the video signal, the Intercast system is not a true "two-way" system, but merely a one-way "piggyback" system. In addition, the Intercast is an analog video product, and thus, cannot handle digital video data. The system of the present invention, on the other hand, is a much more flexible, but less complex, system. The present invention supports either analog or digital television broadcasts without broadcasters or end-users having to alter their existing systems, thus enabling broadcasters to reach a wide audience within a short time. In a first embodiment, the actual Web pages are not forced into the very limited bandwidth of the vertical blanking interval (VBI). Instead, merely eight fields of line 21 of the VBI are used to deliver the relevant Internet Web page addresses to the PC. These addresses are called "uniform resource locators" (URLs). The system then directs the particular Web browser to retrieve the identified Web pages from the Internet. Upon receipt of the particular Web page(s), the system syncs the Web page(s) to the video signal, and at the appropriate times, presents the Web pages on one portion of the computer screen with the television video signal, shown in a window on another portion of the screen, and thus, provides the synergistic Internet and television experience. One of the advantages of the system of the present invention is that no specialized chip set need be produced and implemented into the standard PC. Thus, complexity is kept to a minimum. In one embodiment of the present invention, the VBI is not used to transmit the URLs to the user. In this alternative embodiment, member broadcasters enter the Internet through a member account, and will be provided with a graphical user interface for pre- scheduling Internet addresses, or URLs, for transmission to users at particular times of day. This interface could also be used to transmit real time live transmissions of URLs to users at the same time as a broadcast. The URLs are stored in a "Link File" for later transmission over the Internet to the user at the broadcasters entered time, which coπesponds to the broadcast time of an associated program. The timing of URL's could be determined in advance or can be sent out live. This embodiment eliminates the need to place the URLs in the VBI, and also allows the broadcaster to store more than one Link File for transmission to users in different time zones, for example. Further, more than one broadcaster could access the same master schedule if desired, and add or delete certain URLs to personalize the program for their local audiences. Also, personalization can be taken to the single user, or small group of users, by having the system send a different stream of URLs to each user, depending on a unique user profile, for example. Thus, the personalization feature of the present invention allows each user to receive information uniquely relevant to their interests, demographics, history, etc. This embodiment makes the transmission of URLs to the user even less complex than the first embodiment disclosed herein. In another embodiment of the present invention, a web page staging area is used on a client's machine to construct a web page hidden from view. The machine receives from a server a pre-fetch push command along with a URL and timer event information. A hidden staging frame is set-up in memory for constructing the web page, and a timer is initialized using the timer event information. A web browser uses the URL to retrieve content and construct the web page in the hidden staging frame. After the web page is constructed and the timer expires or other relevant timer event occurs, the web browser retrieves the constructed web page and displays it to the user. Therefore, the user is provided with a more television-like experience in viewing content, as the user need not view the web pages being constructed. Thus, it is an object of the present invention to provide order and direction to the Internet by using television signals to place, orient and control such information in a meaningful context. It is an object of the present invention to create a more intimate relationship between the viewer and the program by enriching the learning experience through the provision of more in-depth information. DESCRIPTION OF THE DRAWINGS Figure 1 is a diagram of the system design, showing the receipt and decoding of video signals at the subscriber location using the method of the present invention Figure 2 is a diagram showing an alternative system embodiment to achieve the integration of the Internet information with the video content by decoding the uniform resource locators at a server site and then transmitting the URLs to the subscπber stations via the Internet Figure 3 is a flow diagram of the basic software design of the present invention Figure 4 is a diagram showing another system embodiment to achieve the direct transmission of URLs over the Internet to the user at a broadcaster's entered time without encoding the URLs into the VBI Figure 5 is a diagram of another embodiment including a digital cable box Figure 6 is a diagram of another embodiment including a digital T V Figure 8 is a sample display provided to a student of a lesson Figure 9 is a diagram of the distributed Com Server embodiment Figure 10 is a diagram of a system for using a web page staging area Figure 1 1 is a flow chart a method tor using a web page staging area DETAILED DESCRIPTION The system of the present invention combines the πch visual capabilities of video with the vast resources of the Internet As shown in Figure 1 , an embodiment of the invention is a computer based system for receiving a video program along with embedded uniform resource locators (URLs)— which direct the user's computer 16 to address locations, or Web sites, on the Internet 20 to retrieve related Web pages These Web pages correspond to the video presentation The particular video programming can be delivered in analog, digital or digitally compressed formats (e g , MPEG2) via any transmission means, including satellite, cable, wire, television broadcast or sent via the Web The video programming is preferably created at a centralized location, 1 e , content creation 4 as shown in Figure 1 , for distribution to subscribers in their homes, for example Program creation is accomplished according to any conventional means known in the art After a video program is created, uniform resource locators are embedded, in one embodiment, into the vertical blank interval of the video programming by the URL encoder 8, shown in Figure 1 In this embodiment, the URLs are encoded onto eight fields of line 21 of the VBI Line 21 is the line associated with close captioning, among other things However, the URLs could also be embedded in other fields of the VBI, in the horizontal portion of the video, as part of the audio channel, in any subcarπer to the video, or if digital, in one ot the data fields Although Figure 1 shows the video with URLs over the same transmission line, the URLs can be sent down independently of the video program on a data channel In this embodiment, the URLs can be forwarded to the remote sites either prior to initiation or during the program Preferably, the URLs have associated time stamps which indicate to the subscriber stations when, during the video program, to display the particular Web pages addressed by the URLs Alternatively, the user can select when to call the particular Web pages for display with the video program The particular information in line 21 is not part of the visual part ot the program, and thus, is not perceptible to the human eye, thereby making it ideal to send data information to the users While the bandwidth capacity of line 21 is limited, because the system of the present invention transmits only the uniform resource locators (URLs), and not full Web pages, there is more than enough capacity Furthermore, no additional hardware is necessary at the PC 16 to implement the elements of the present invention Thus, the present invention has ihe additional advantages of being very efficient and takes advantage of conventional hardware Once the video program is created, it can be transmitted to user sites over any transmission means, including broadcast, cable, satellite, or Internet, and may reside on video servers Furthermore, the video program, with or without embedded URLs, can be encoded on a VHS or Beta tape, DVD or other medium Preferably, each receiver station comprises any Intel x86 machine (preferably a 486 processor, Pentium processor, etc ), an Apple Computer, UNIX or any other type of standard computer workstation The local PC 16 is preferably connected to either a cable and/or broadcast television connection or to a local VCR or other video source At each subscπber site, the local personal computer 16 preferably receives the cable transmission by cable connection on the back of the personal computer 16 The video/audio program can then be processed for display on the computer screen using any conventional PC card capable of displaying NTSC signals on a computer monitor, such as a WinTV card. In addition to the cable connection, however, in the present invention there is also an Internet 20 connection created concurrently with the cable connection The Internet 20 connection can be via high-speed line, RF, conventional modem or by way of two-way cable carrying the video programming The local PC 16 has Internet access via any of the current ASCII software mechanisms. In an embodiment, at each subscriber home, an associated local URL decoder 12 receives the cable video television program, as shown in Figure 1 . The local URL decoder 12 extracts the URLs, preferably embedded in the vertical blanking interval, with the use of any conventional VBI decoder device The URL decoder 12 may be either a stand-alone unit or a card which is implemented into the personal computer 16 In another embodiment shown in Figure 2, the uniform resource locators (URLs) are encoded into the video in the same manner as described above Again, the URLs are preferably encoded onto eight fields of line 21 ot the VBI, but may also be sent independently of the video In this embodiment, the URL decoder 24 is located at the server site, as opposed to the subscriber location When the decoder 24 receives the video program signal, it strips out the URL codes on line 21 of the VBI and delivers these codes independently to an Internet server 28. The URL code is then subsequently delivered over the Internet 20 to the user PC 16 Simultaneously, the video is broadcast over conventional broadcast or cable transmission means 36 to the user's personal computer 16 Another embodiment of the system, shown in Figure 4. does not depend on, or even use, the VBI In this embodiment, the system will run an online service over the Internet 20 This service will be in the form of an Internet Web site 62 that provides a user-interface to a database 78 and to one or more associated data servers 90 The service will provide member-accounts to TV broadcasters 66 who sign up to use the system of the invention in conjunction with their broadcasts. Each member broadcaster will enter the service at their computer 70 through Web browser software 74 using their member account by entering various identification and password information. Once within their account, the member will be provided with a graphical user interface for pre-scheduhng URLs for transmission to users 1 18 over a direct Internet connection 94 at particular times of day. The same user interface, or a variation on it, can be used by broadcasters for live transmission 82 of URLs to users at the same time as a broadcast 86. For example, one example of this interface might be a scheduling calendar (daily, weekly, monthly, yearly) in which the broadcaster 66 may allocate time periods which coincide with their broadcasts 86, and during which they will send out URLs to their users to link to Web pages. For each time period (for example, a particular hour long period during the day) determined by the broadcaster 66 to be a broadcast period (a period during which they want to transmit URLs that correspond to a television show being broadcast from their TV broadcast facility 110 to the external TV 1 14 of the user 1 18 at that time), the broadcaster 66 may then enter a series of URLs into an associated file ("Link File") for transmission over the Internet 20 at that time. This Link File might have a user interface such as a spreadsheet, table, or list, or it could be simply a tab- delimited or paragraph-delimited text-file. As an example, each of the records in the Link File consists of a data structure which could contain information such as: (<timecode>, <URL>, <label or title>, <additionaI informations <additional information:^...) The above data structure is just one example. The records in the Link File preferably specify the time, Internet address (i.e. URL), label (such as an associated name), and some optional additional information, for each Web page the broadcaster 66 desires to launch during a show. When a broadcaster 66 modifies their calendar and/or the Link File associated with any given time period(s) in their calendar, this information is saved into the database 78 that is attached to the site 62. Each broadcaster 66 may maintain multiple calendars in the database 78 if they broadcast in different time zones, for example. The database 78 provides the Link File records for upcoming time periods to a server 90, which may be one server or a distributed network of server programs on multiple computers across the network, to be utilized for scaling to large national or global audiences. The server 90 provides the Link File records, including the URLs, to the user's personal computer 16, which is connected via a network. Examples of possible networks include the public Internet 94, a direct private network, or even a wireless network. One feature of the above embodiment is that one or more broadcasters 66 may utilize the same schedule in the database 78 for their own broadcasts 86 or during the same broadcast. For example, a network broadcaster may develop a master schedule and various affiliate broadcasters may subscribe to that schedule or copy it (in the database) and add or delete specific URLs in the schedule for their local audiences or unique programming. This scheme enables affiliates to insert URLs for local advertisers or local subjects into a sequence of more general URLs provided by their network broadcaster 66. In other words, the affiliate can add links that ride on the network feed and then redistribute it to their local audiences. The above embodiment can also enable personalization in the form of unique series of URLs specific to each user's unique profile, which is directly sent over the Internet 20 to each user's specific client software 106. This can be achieved from the broadcaster 66 to each individual user 1 18, or to particular collections of users. To accomplish personalization, the service may send a different stream of URLs to each user's client software program 106. The stream of URLs sent would depend on a user profile stored in the database 78 or the client software program 106, a user profile which is built on demand or over time for each user 1 18 based on criteria such as the location of the user, choices the user makes while using a client software program 106, or choices the broadcaster 66 makes during a broadcast 86, or automatic choices made by an algorithm (such as a filter) residing on the service 62. Personalization enables each user to receive URLs which are uniquely relevant to their interests, demographics, history, or behavior in the system. System Operation Once the URLs have reached the personal computer 16, system operation is similar for all of the embodiments diagramed in Figures 1 , 2, and 4. In one embodiment, a JAVA enabled browser 98 as well as specialized software 106 for performing part of the method of the present invention are installed on the computer 16. The JAVA enabled browser 98 allows the computer 16 to retrieve the Web pages 102 and is preferred software, since it is platform independent, and thus, enables efficient and flexible transfer of programs, images, etc., over the Internet 20. The specialized interface software 106 (hereinafter, "client software"), attached as Appendix A, acts as an interface between the video programming and the Internet functions of the present invention The client software 106 retrieves URLs from the video program (embodiment of Figure 1 ) or directly from the Internet connection (embodiments of Figures 2 and 4), interprets these URLs and directs the JAVA enabled browser 98 to retrieve the particular relevant Web pages 102, and synchronizes the retrieved Web pages to the video content for display on the user's computer 16, as shown in Figures 3 and 4 and explained in more detail below In one method, the URLs are encoded and embedded into the video signal by inserting them into the vertical blanking interval (VBI), as mentioned above In another embodiment, the URLs are entered by member TV broadcasters 66 along with specified times for transmitting the URLs to the user At the appropriate times, the URLs are sent directly over the Internet to the user's PC 16 via the client software 106 over a direct point-to-point or multicasting connection One method of the present invention has the capability to detect identical URLs sent directly after one another which causes the browser not to fetch URLs in these particular cases As shown in Figure 3, once the URL code is received at the computer, the client software 106 first interprets the URL and determines in step 42 whether the particular URL has been received previously If it has a eady been received, the next received URL is interpreted for determination of prior receipt. If the particular URL has not been detected before, the software checks for misspelling in step 46 and any other errors, and if errors exist, coπects these particular eπors Once again, it is determined whether the URL has been previously detected If it has, the next URL is accessed in step 38 If the URL has not been detected, the specific URL is added to the URL list in step 54 1 he specific URL is then sent to the Web browser, preferably a JAVA enabled browser 98 Upon receipt of the URL, the browser 98, in step 58, will access the Web site address 122 (Figure 4) indicated by the URL and retπeve the cited Web page(s) 102 via the Internet Viewers can view the integrated presentation in the following manner As mentioned above, the video signal is processed and displayed on a video window on the PC screen using a WinTV caid, for example The corresponding audio is forwarded to the audio card and sent to the PC speakers The actual retneved Web pages 102, referenced by the URL, are optionally time stamped to be displayed on the computer screen when predetermined related video content is displayed in the video window, thus, enlightening and enhancing the video presentation by providing in-depth information related to the video content thereto Another section on the screen is also preferably used to represent an operational control panel This control panel provides a list of the URLs that have been broadcast and correspondingly received by the computer 16 This control panel is updated to add a URL code each time a new URL code is received by the PC 16 This list gives the subscriber the flexibility to go back and retrieve particularly informative or interesting Web pages that have already been displayed earlier in the program, or alternatively, to print them out for future reference Furthermore, the list could include URLs refemng to Web pages not displayed with the broadcast program, but that provide further information on a certain topic of interest to the viewer The present invention can best be understood with reference to an example A viewer can begin watching a musical video featuring a new band, for example As the video is received by the PC 16, URLs are either being received with the video signal or are being received directly via the Internet 20 or another data channel, and are being interpreted by the client software 106 Upon direction and command, the JAVA enabled browser 98 retrieves particular Web pages 102 from Internet 20 Web sites identified in the URLs These Web pages 102 will then be displayed on the video screen at particular times Thus, for example, while the viewer is watching the music video, biographical information on the band can also be displayed adjacently to the video window Web pages 102 could also include an upcoming concert schedule, or even audio clips of the band's music mav be downloaded from the Internet 20 As another example, a user could be watching a program relating to financial news While the narrator is shown discussing high tech stocks, Web pages corresponding to detailed financial performance information on high tech stocks, environment and characteristics can be displayed with the video on the computer screen If the personalization features are included, Web pages associated with a particular user's stock can be fetched and displayed on the computer screen with the video program When the program narrator switches to a discussion on the weekly performance of the Dow Jones, Web pages presenting related financial performance information can be simultaneously displayed Thus, it is evident that the present invention profoundly enriches the viewing and learning experience It is understood that there can exist alternative embodiments for use with the present invention For example, the user can view the interactive program using a television set 114 or other display monitor in conjunction with the display screen of the personal computer 16 In this embodiment, the relevant Web pages are shown on the personal computer 16 while the video program is displayed on the television monitor 1 14 In this alternative embodiment, a cable set top box receives the television program from the multichannel cable The personal computer 16 also receives the video program from the multi-channel cable and extracts the URLs, embedded in the vertical blanking interval ot the video signal or directly transmitted 94 over the Internet 20 The client software 106 extracts the URLs and retrieves the particular Web pages as described above The Web pages are then synchronized with the particular video frames and presented to the user It is understood that a hyperlink may exist on the Web site that will allow the user to automatically load the client software and call up the specific television channel referenced in the Web site For example, someone browsing the Internet 20 may come upon a major television network's Web site They scroll to an interesting story then click on an hyperlink to turn on the software which tunes the TV window to the network to enhance the information residing at the Web site Furthermore, instead of receiving the video program from a transmission means, the video program can be addressed directly from the user site if the video program, with or without embedded URLs, is stored on a VHS, Beta, DVD or other medium In this embodiment, the user PC 16 and/or television 1 14 are connected to a VCR, DVD player or other appropriate device Figures 5 and 6 show two alternative embodiments for use with the present invention For example, the user can view the interactive program using a television set 18 or other display monitor in conjunction with a digital cable box 140, as shown in Figure 5 In this embodiment, the digital cable box 140 performs the functions of the personal computer 16 shown in Figures 1, 2 and 4 In the embodiment shown in Figure 5, the client software is stored in memory in the digital cable box 140 In one embodiment, the digital cable box 140 includes two tuners, thus allowing both the Web Page and the Video program to be simultaneously viewed on the same screen If Video and Webstream, however, are carried on one channel, then only one tuner is necessary The client software retrieves URLs from the received video program, directly from the Internet connection 20 or via a separate data channel, interprets these URLs and directs the Web enabled browser to retrieve the particular relevant Web pages, and synchronizes the retrieved Web pages to the video content for display on the television 18, as shown in Figure 5 In this embodiment, the relevant Web pages are preferably shown in one frame of the television 18 while the video program is displayed in another frame. Alternatively, the web page can replace the video program on the display. In this alternative embodiment, the digital cable set top box 140 receives the television program from the multichannel cable The URLs can be encoded into the digital program channel using MPEG 1 , MPEG2, MPEG4, MPEG7 or any other compression video scheme Alternatively, the URLs can be transmitted to the digital cable boxes 140 from an Internet server 148 The digital cable box 140 decodes the URLs from the digital video signal or directly transmitted over the Internet 20 The client software decodes the URLs and retrieves the particular Web pages as described above The Web pages are then preferably synchronized with the particular video frames and presented to the user As with all the embodiments described above, instead of receiving the video program from a transmission means, the video program can be addressed directly from a local video source 144 if the video program, with or without embedded URLs, is stored on a VHS, Beta, DVD or other medium In this embodiment, the digital cable box 140 is connected to a VCR, DVD player or other appropriate device Figure 6 discloses an embodiment where a digital TV 152 is the remote reception unit In this embodiment, the digital TV 152 performs the functions of the personal computer, shown in Figures 1 , 2 and 4, and the digital cable box 140 shown in Figure 5 In the embodiment shown in Figure 6, a processor means and memory are incorporated into the digital TV 152 Further, the client software and Web browser software are implemented into memory in the digital TV 152 All of the functions described above with reference to the other embodiments are performed in a similar manner by the digital TV 152 embodiment Although the digital cable box/TV 140, 18 and digital TV 152, shown in Figures 5 and 6, are incorporated into the embodiment of Figure 1, in substitution for the PC 16, they also could be substituted for the PC 16 shown in Figures 2 and 4 The user can view the video and web content on one screen (in two windows), or with the video on one display screen and the Web content on a separate display monitor Alternatively, the usei can access the video or web content separately Thus, the user can branch from video to web content and vice versa The present invention is well-suited to the education environment In this embodiment, students and teachers access one or more Web servers. The software components include instructor and student user software, authoπng software and database assessment software. In one such embodiment, an instructor uses content creation software on a personal computer to easily integrate into their curriculum current information published on the Web, through an easy to use interface 156 such as that shown in Figure 7 The instructor creates a playhst (i.e. hnkfile) 160, the playlist 160 comprising a listing of Web pages, text notes and questions The Web sites and questions are set forth in a predetermined order and can be assigned times Preferably, the URLs identifying the Web site and time stamps are sent automatically to the desktop of each student in the virtual community, either during playback of a pre-recorded program or during a live event. At each of the student workstations, the program is directed by the playlist 160. In other words, the playlist 160 provides the structure for the program. At predetermined times as dictated by the playlist 160, the browser will go fetch and display a Web page in a frame on the computer screen Because program events can be set up in this manner at predetermined times, the entire program and playlist can be prerecorded and stored in a Web database tor later access by students A significant advantage of the present invention for educational applications is that the students and the instructor can be located anywhere, as long as they are all connected to the Web Because a server is essentially controlling the program, the instructor output comes from the server and the student workstations get automatically updated by the Web server This educational embodiment integrates Web content and other media with collaborative groupware functionality to create an interactive environment for students and teachers In this embodiment, the student can receive a traditional video lesson through a frame in his or her Web browser, or from a television. Simultaneously, the present invention provides separate frames, an example of which is shown in Figure 8, in the browser displaying ( l )Web pages 176 automatically delivered to each student's desktop with information or exercises that complement the video presentation, (2) a chat dialogue frame 168 for conversing with the instructor and/or other students online, and (3), an interactive playlist 164 of Web pages and questions comprising the lesson In the student interface of Figure 8, each student can perform a virtual expeπment during a physics lesson to learn about gravity, for example Further, the students are conversing with one another and the instructor in the chat dialogue frame 168 They may also send Web pages to one another and provide answers to questions from the teacher via the chat dialogue frame 168 of the student interface 176 With the chat feature, students may break into subgroups for collaborative learning Whenever a student in the group sends a message, the message is sent to the Internet server 20 and every other student in the subgroup receives and views the message in their Chat dialogue frame 168 The instructor, however, may retain control over the chat feature For example, the instructor can terminate the chat feature or web pushing to terminate unruly on-line conversations or the sending ot Web pages by students Unlike conventional distance learning systems systems consistent with the present ιn\ ention are more powerlul by allowing the instructor to freely and conveniently exercise almost any type of testing strategy The instructor can test students using a combination of the Chat dialogue feature and Web pages For example, multiple choice questions and short answer questions can appear in the Chat window 168 Essay questions, requiring longer answers, become Web pages As mentioned above, students can perform virtual experiments on-line Once the instructor's personal computer receives student answers, student scoring can be presented to the instructor in any format including tables, charts, diagrams, bar graphs, etc The instructor, thus, can analyze the results and has the capability of providing real-time feedback to the students Students can also receive individualized feedback via branched interactive audio, video and/or graphics responses For example, the workstation may branch to a particular audio response, preferably prerecorded in the instructor's own voice, based on the student response to a multiple choice question In this embodiment, a plurality of potential audio responses are made available at the student's workstation according to any one of the methodologies set forth in U S Patent No 5 537,141 , entitled DISTANCE LEARNING SYSTEM, herein incorporated by leference Alternatively, personalized video, audio and graphics segments can be delivered and displayed to the student based on a student answer or personal profile in the manner set forth in U.S. Patent No 5,724,091 , entitled COMPRESSED DIGITAL DATA INTERACTIVE PROGRAM SYSTEM, herein incorporated by reference. Responses to student answers can be more substantive based on the memory feature of the present invention The memory feature is an algorithm that selects an interactive response to the user based not only on the student's current answer selection, but also his or her previous responses, as discussed in the aforementioned applications. The algorithm, preferably stored in memory at each student's workstation and under processor control, merely selects an output interactive response based on student responses As another example, if a student gets three answers in sequence right, he or she receives a more difficult question. If, however, the student misses one or more of the three questions, he or she receives an easier question In another embodiment of the present invention, a system is described capable of handling the education requirements of several schools in an efficiently designed network The system shown in Figure 9 solves the problems inherent in attempting to service large numbers of users, the most obvious obstacles being the issues of load and performance In this embodiment shown in Figure 9, communications servers 180 distribute and route messages across a LAN, WAN and the Internet. Referring to Figure 9, in the center of the diagram is the Group Database server Surrounding the database server are several Com Servers 180, each serving an area 192. Surrounding each Com Server 180 are squares representing user stations 188 The Communication Servers 180 are organized in node relationships with one another Each node is responsible for serving an Area 192. An Area 192 is defined as a Virtual location serviced by a single Communications Server 180 (or "Com Server"). An Area 192 may be a single school, an office, or may consist of several actual physical locations The defining characteristic ot an Area 192 is that messages sent from one member of an Area 192 to another need not be routed outside of the servicing Com Server 180 An Area member is analogous to the frequently used term "user " For example, a "user" may be a student in the educational embodiment described above with reference to Figures 7 and 8 The Distributed Communication System of Figure 9 shall permit the dynamic addition of Communication Servers 180 within a group with little or no administrative tasks as well as the addition of groups within an overall communications network. A Communication Server group consists of several defined Virtual Areas 192 (preferably, consisting of no more the 250 members each), each area 192 serviced by a single Com Server 180 This system shall allow members of one Area 192, or group to easily communicate with members of another Area 192 or group without any configuration changes Generally, service of very large numbers of users has required large expensive servers and networks As the user base increases, performance suffers and hardware must be upgraded to service the demand The Distributed Communication System of the present invention allows the same, relatively inexpensive machines to serve an ever-increasing user base The technique by which this will be accomplished will be through the routing of messages from one server to another when necessary The method essentially follows the same core pattern as IP routing and DNS lookups If a message is for a member not belonging to the cuπent Area 192 or group, the message shall be routed through the Distributed Communication System until its destination, or someone who knows the destination and can deliver the message, is found The destination will be cached so subsequent messages for that member or group may be more efficiently delivered Referring again to Figure 9, if a message is posted by member "A" and is intended only tor the members of group 1 the message shall never leave Area 1 Com Server However, if the message is intended for members of Area 1 and the members of Area 2, the Area 1 Com server forwards the message to the group database server 184 The message shall be broadcast to the members of Area 1 and tagged in the database 184 as belonging to Area 2 The message is then routed to Area 2 and broadcast to Area 2 members With this technique any member can potentially send a message to any other member If the Area Com server 180 does not recognize the destination, the message is forwarded up the line Each Com server 180 does not need to know about any other server 180 Messages are routed until they delivered If undehverable. the original sender is notified New Areas 192 can be added on the fly. When a new Com server 188 is added to the network, it registers itself with the database application. Henceforth, any message destined for the new Area 192 can be routed properly without altering the other Area Servers 180. This method and system works for global messages or for user to user messages. Furthermore, new Groups may also be dynamically added. Once added, each new Group Database Server 184 registers itself with the existing database servers 184. This distribution of load permits nearly unlimited expansion with existing software and hardware. Each server manages a finite number of members, cumulatively serving a growing community. Users need not be informed as to the particular Com Server 180 they should connect to. Members are directed to a single URL. The selection of the server for user connection is determined by load balancing software. In this manner, the network may appear to be a global network of Servers or simply a local classroom. The unique aspects of this architecture, using database servers as routing gateways, using techniques resembling IP routing and DNS lookup, enables this system to serve with minimum administration and configuration and with lower end, cost- effective hardware. Web Page Staging Area A web page staging area feature permits construction of web pages hidden from view of the user. Once the web page is constructed, it is displayed to the user based upon timer event information or receipt of a particular command that it be displayed. This feature thus provides the user with a more television-like experience in viewing content from the Internet or other source in that the user need not view a web page being constructed on a display device. Use of timer event information for displaying the constructed web page also permits synchronization of the web page with associated programming. For example, the timer event information may be used to trigger display of a web page for an advertisement at the same time as corresponding information is provided by the video programming. The programming, or an associated program, may include, for example, a video program, audio program, multimedia program, combinations of those programs, or other information. The content for the web page may include a wide variety of information such as, for example, advertisements, sports, graphics, music, or any type of multimedia information. Figure 10 is a diagram ot a system 200 for using a web page staging area. System 200 includes a server 202 providing commands such as a pre-fetch push command, explained below, and related information to a client machine 204 Client machine 204 includes a web browser 210 and an associated browser plug-in 208 Web browser 210 uses a portion of memory 214 reserved for constructing web pages hidden from view. It also uses a timer event 212, such as a JavaScript timer, for use in determining when to display constmcted web pages when timer event information is used Web browser 210 includes a connection through the Internet 220 or other network to a remote web server 222 for use in retrieving content to construct web pages Web browser 210 displays content on an associated display device 209 Client machine 204 may display both the web page along with programming as described above, such as video, audio, or multimedia content In particular, client machine 204 may be implemented with a personal computer for displaying both the programming and the web page, with a television for displaying both the programming and the web page, or with both a personal computer for displaying the web page and an associated television for displaying the programming Personal computers may include hardware and software for displaying video and audio programming such as television signals Also, televisions may include associated haidware with web browsers, such as a set-top converter (digital or analog), for use in retrieving and displaying web pages and other content from the Internet Therefore, client machine 204 may be implemented with any type ot digital display device or device tor controlling a digital display device, or combinations of such devices, and examples include a personal computer, a television, a cable box, α satellite box, and a personal digital assistant In opeiation, server 202 transmits a pre-fetch push command with an address and optional timer event information 206 to browser plug-in 208 A pre-fetch push command is used to obtain and assemble content, for example a web page, prior to presentation on an associated machine The address is used to obtain particular content or other information from web sites or networks such as a local area network, wide-area network, intranet, or the Internet An example of such an address is a Uniform Resource Identifier (URI) A URI is a compact string of characters for identifying an abstract or physical resource More specifically, URIs provide a simple and extensible means for identifying a resource, and a URI can be further classified as a locator, a name, or both The specification of URI syntax and semantics is derived from concepts introduced by the World Wide Web global information initiative URIs include, for example, URLs and Uniform Resource Names (URNs) A URL is a subset of a URI that identifies resources via a representation of their primary access mechanism, such as their network "location," rather than identifying the resource by name or other attribute of that resource The term URN refers to a subset of URI that is required to remain globally unique and persistent even when the resource ceases to exist or becomes unavailable Browser plug-in 208 passes the URI and timer event information, if present, to web browser 210, which initializes timer event 212. as shown with connection 224, if timer information is invoked Browser plug-in 208 also uses the URI to retrieve content tor a web page from web server 222 As web browser 210 retrieves the content, it constructs α web page 21 8 hidden f rom view in hidden staging frame 214 Upon detecting a time-out by timer event 212, browser plug-in 208 commands web browser 210 to display the constructed web page Alternatively, if a timer was not invoked, browser plug-in waits for a show command 207 from server 202 In response to time-out by timer event 212 or receipt of show command 207, web browser 210 retrieves the constructed web page from hidden staging frame 214 and displays web page 216 on associated display device 209 Only one hidden staging frame 214 is shown for illustrative purposes only, machine 204 may include many hidden staging frames by, for example, using different reserved portions of memory in order to concurrently construct many web pages hidden from view Figure 1 1 is a flow chart of a method 230 further illustrating use of a web page staging area to construct web pages hidden from view Method 230 may be implemented in software by browser plug-in 208 and web browser 210 controlling operation of client machine 204 In method 230, server 202 sends to client machine 204 a pre-fetch push command along with a URI and optional timer event information (step 232) The pre- fetch push command may include any type of information instructing client machine 204 to construct a web page hidden from view The URI specifies the network address for obtaining the content for the web page The timer event information, when used, provides an indication of when to display the constructed web page and it may use a JavaScript timer, or other software or hardware timers Also, it may provide a relative indication ot when to display the web page, such as a particular number ot seconds after receiving the command, or it may provide an indication of an actual time at which to display it Browser plug-in 208 receives the pre-fetch push command, URI. and optional timer event information (step 234) It sets up hidden staging frame 214 in memory and initializes timer event 212 using the timer event information, if present (step 236) Hidden staging frame 214 may be implemented using a portion of memory in or associated with client machine 204 Browser plug-in 208 may set up the hidden staging frame by reserving a particular portion of memory based upon an expected size of the web page to be constructed, and the size information may be sent by server 202 with the pre-tetch push command Alternatively, a portion of memory may be reserved in advance for constructing web pages Browser plug-in 208 interacts with web browser 210 to construct the web page (step 238) In particular, web browser 210 uses the URI or other address information to retrieve content for the web page from web server 222 through the Internet 220 or other network As web browser 210 retrieves the content, it constructs the web page 218 m hidden staging frame 214 so that the user does not view the web page being constructed The construction involves retrieving and locally compiling content for the page for presentation of page when completed For presentation of the page in a web browser on a computer display device, the construction involves assembling the content for display in the browser If the web browser operates in a different environment, such as with a video program, the construction may also involve reframing the content for display with the program Although only web server 222 is shown for providing the content, web browser 210 may obtain the content for the web page from server 202 or from multiple sources Browser plug-in 208 determines if a timer was invoked through transmission of timer information with the pre-fetch push command (step 239) If a timer was invoked, browser plug-in 208 through web browser 210 monitors timer event 212 to determine when to display the constructed web page (step 240) In particular, it determines if timer event 212 has expired (step 242) If a timer was not invoked, browser plug-in 208 waits for show command 207 from seivei 202 (step 241 ) Upon detecting a time-out (step 242) or receiving show command 207 (step 241 ), browser plug-in 208 commands web browser 210 to display the Constructed web page (step 244) Instead of using a time-out feature as timer information, browser plug-in 208 may use other types of time indications for determining when to display the web page such as displaying it at a particular time. Based upon the command from browser plug-in 208, web browser 210 retrieves the constructed web page 216 from hidden staging frame 214 and displays it on associated display device 209 (step 246) Accordingly, the user is presented with a constructed web page at a particular time or in response to a particular command, and potentially corresponding to programming also presented to the user Although browser plug-in 208 and web browser 210 are described as constructing one web page in method 230, they may concurrently execute method 230 for construction and display of multiple web pages at the same time or at least partially overlapping times Display device 209 may concurrently display both a program and web browser 210 for presenting the constructed web page In particular web browser 210 may be displayed in a window or frame overlayed on the program, refeπed to as a picture- - picture presentation In this case, the content for web browser 210 is combined with the program to generate one signal containing the overlayed browser window and content in the program Client machine 204 may receive the program from server 202 or from other sources, such as television, broadcast television, cable, satellite, local video, and local digital veisatile disk (DVD) The local content may be stored on the hard disk drive of client machine 204 Many uses of a web page staging area are possible, and following provides an example of how it may used in conjunction with a sporting event For instance, before the coin toss ot a professional football game, a producer decides that he wants to send the users a game in the form of a JAVA applet that will require a certain amount of time to download He also decides that he wants to send a web page of a graphic of historic fumbles that decided past games between the two teams participating in the game The producer pushes the JAVA applet from server 202 to the user's web page staging area in machine 204, and to any other participating users, along with a Javascript timer embedded in the page in order to have it launch precisely at the start of the football game In addition, the producer sends a fumbles graphic to the user's web browser 210 in another hidden frame and to the other users' web browsers However, the producer does not know exactly when he wants to show that page to the viewers on line, and he does not include a Javascript timer in that page When the game starts, the JAVA game applet automatically appears at the kickoff on the users' display devices such as display device 209 A few minutes later, one of the players fumbles The producer then sends a command to all the web staging areas on the client machines to display the fumbles graphic in the users' web browsers such as web browser 210 in machine 204 Using the foregoing embodiments, methods and processes, the system of the present invention creates a synergistic experience combining the vast resources of the Internet w ith the presentation capabilities ot television

Claims: CLAIMS 1. A method of constructing a web page and presenting a constructed web page on a display device comprising: receiving an instruction to retrieve the web page, including an address for use in retrieving information to construct the web page; retrieving the information using the address; constructing the web page prior to display on the display device in order to produce the constructed web page; and commanding the constructed web page be displayed on the display device based upon particular criteria. 2. A method of constructing a web page as described in claim 1 wherein the receiving step comprises receiving timer event information providing an indication of when to command the web page be displayed on the display device, and the commanding step comprises commanding the constructed web page be displayed based upon the timer event information. 3. A method of constructing a web page as described in claim 1 wherein the step of commanding further comprises the step of receiving a command instructing that the constructed web page be displayed. 4. A method of constructing a web page as described in claim 1 wherein the address comprises a uniform resource identifier. 5. A method of constructing a web page as described in claim 2 wherein the timer event information comprises a particular amount of time at the expiration of which a trigger is generated to actuate the commanding step. 6. A method of constructing a web page as described in claim 5 wherein the commanding step comprises transmitting the constructed web page for display upon detecting the trigger. 7. A method of constructing a web page as described in claim 1 wherein the constructing step comprises constructing the web page in a memory module. 8. A method of constructing a web page as described in claim 1 wherein the retrieving step comprises using a web browser to retrieve the information. 9. A method of constructing a web page as described in claim 3 wherein the step of receiving a command comprises receiving a program concuπent with receipt of the command instructing that the constructed web page be displayed. 10. A method of constructing a web page as described in claim 9 wherein the program comprises a video program, audio program, or multimedia program. 1 1 . A method of constructing a web page as described in claim 9 wherein the commanding step further comprises the step of transmitting the program and the constructed web page to the display device for simultaneous display. 12. A method of constructing a web page as described in claim 1 1 wherein the display device is a television. 13. A method of constructing a web page as described in claim 9 wherein the commanding step further comprises the step of transmitting the program for display on a television and transmitting the constructed web page for display on the display device. 14. A method of constructing a web page as described in claim 1 1 wherein the transmitting step transmits the constructed web page for display to be overlayed on the display of the program. 15. A method of constructing a web page as described in claim 1 wherein the receiving, retrieving, constructing, and commanding steps are performed by a personal computer, a television, a cable box, a satellite box, a radio, a telephone, a telephone answering device, a wueless telephone device, a wireless Internet device, a telephony device for the deaf, or a personal digital assistant 16 A method of constructing a web page as descπbed in claim 1 wherein the retrieving step comprises retrieving advertising, sports, or music content 17 An apparatus for constructing a web page and presenting a constructed web page on a display device comprising a receiver module for receiving an instruction to retrieve the web page, including an address for use in retrieving information to construct the web page, a retrieving module for retrieving the information using the address, α construction module for constructing the web page pπor to its display on the display device in order to produce the constructed web page, and a display generation module for displaying the constructed web page on the display device based upon particular criteria 18 An apparatus tor constructing a web page as described in claim 17 further comprising α timer event module for receiving timer event information and providing an indication of when to trigger the release of the constructed web page for display on the display device, and wherein the display generation module displays the constructed web page based upon the trigger 19 An apparatus for constructing a web page as described in claim 17 wherein the receiver receives a command instructing the apparatus to display the constructed web page, and the display generation module displays the constructed web page based upon receipt of the command 20 An apparatus for constructing a web page as described in claim 17 wherein the address comprises a uniform resource identifier 21 An apparatus for constructing a web page as described in claim 18 wherein the timer event information comprises a particular amount of time at the expiration of which the timer event module triggers the display generation module to display the constructed web page. 22. An apparatus for constructing a web page as described in claim 17 further comprising a memory for storing the constructed web page prior to its display on the display device. 23. An apparatus for constructing a web page as described in claim 17 wherein the retrieving module further comprises a computer readable program code means comprising a web browser program to retrieve the information. 24. An apparatus for constructing a web page as described in claim 19 wherein the receiver module receives a program concurrent with receipt of the command that the constructed web page be displayed. 25 An apparatus for constructing a web page as described in claim 24 wherein the program comprises a video program, audio program, or multimedia program. 26. An apparatus for constructing a web page as described in claim 24 wherein the display generation module displays the program and the constructed web page simultaneously on the display device 27. An apparatus for constructing a web page as descπbed in claim 26 wherein the display device is a television. 28. An apparatus for constructing a web page as described in claim 24 wherein the display generation module displays the program on a television and displays the constructed web page on the display device. 29. An apparatus tor constructing a web page as described in claim 26 wherein the display generation module displays the constructed web page by overlaying it on the display of the program. 30. An apparatus for constructing a web page as described in claim 17 wherein the apparatus is integrated into a personal computer, a television, a cable box, a satellite box, a radio, a telephone, a telephone answering device, a wireless telephone device, a wireless Internet device, a telephony device for the deaf, or a personal digital assistant. 31. An apparatus for constructing a web page as described in claim 17 wherein the retrieving module retrieves advertising, sports, or music content. 32. A method of constructing a web page as described in claim 1 wherein the step of constructing further comprises saving a plurality of constructed web pages in anticipation of their future display. 33. A method of constructing a web page as described in claim 7 wherein the step of constructing further comprises saving a plurality of constructed web pages in the memory module in anticipation of their future display. 34. An apparatus for constructing a web page as described in claim 22 wherein the memory stores a plurality of constructed web pages prior to their display on the display device. 35. A method of constructing a web page as described in claim 1 wherein the instruction to retrieve is received as part of a program data stream. 36. A method of constructing a web page as described in claim 35 wherein the program data stream is received via a transmission medium selected from the group consisting of broadcast television, cable, satellite, microwave, radio, fiber optic, telephone, wireless telephone, the Internet, an intranet, a public communication network, and a private communication network. 37. A method of constructing a web page as described in claim 1 wherein the instruction to retrieve is received via a user interface at the direction of a user. 38. A method of constructing a web page as described in claim 35 wherein the step of commanding further comprises the step of transmitting a program contained in the program data stream to the display device for simultaneous display with the constructed web page 49 A method of constructing a web page as described in claim 38 wherein the step ot commanding synchronizes the display of the program with the display of the constructed web page. 40 A method of constructing a web page as described in claim 35 wherein the step of commanding causes the constructed web page to be displayed on the display device simultaneously with the display of a program contained in the program data stream on a second display device 41 A method of constructing a web page as described in claim 40 wherein the step of commanding synchronizes the display of the program with the display of the constructed web page 42 An apparatus for constructing a web page as descπbed in claim 17 wherein the receiver module receives the instruction to retrieve as part of a program data stream 43 An apparatus for constructing a web page as descπbed in claim 42 wherein the program data stream is received via a transmission medium selected from the group consisting of broadcast television, cable, satellite, microwave, radio, fiber optic, telephone, wireless telephone, the Internet, an intranet, a public communication network, and a private communication network 44 An apparatus for constructing a web page as descπbed in claim 17 further comprising a user interface for receiving the instruction to retrieve at the direction of a user. 45. An apparatus for constructing a web page as described in claim 42 wherein the display generation module displays a program contained in the program data stream simultaneously with the constructed web page on the display device. 46. An apparatus for constructing a web page as described in claim 45 wherein the display generation module synchronizes the display of the program with display of the constructed web page. 47. An apparatus for constructing a web page as described in claim 42 wherein the display generation module displays the constructed web page on the display device simultaneously with the display of a program contained in the program data stream on a second display device. 48. An apparatus for constructing a web page as described in claim 47 wherein the display generation module synchronizes the display of the program with display of the constructed web page. 49. A method of constructing a web page as described in claim 1 wherein the display device is a television, a computer monitor, a telephony device, a wireless telephony device, or a personal digital assistant. 50. An apparatus for constructing a web page as described in claim 17 wherein the display device is a television, a computer monitor, a telephony device, a wireless telephony device, or a personal digital assistant. 51 . A method of constructing a web page as described in claim 1 wherein the instruction to retrieve is received from a media playback device. 52. A method of constructing a web page as described in claim 51 wherein the media playback device is selected from the group consisting of: a video tape player, a digital video disk player, a digital media player, or a digital file server. 53. An apparatus for constructing a web page as described in claim 17 wherein the receiver module receives the instruction to retrieve from a connected media playback device. 54. An apparatus for constructing a web page as described in claim 53 wherein the media playback device is selected from the group consisting of: a video tape player, a digital video disk player, a digital media player, or a digital file server. 55. A method of constructing a web page as described in claim 1 wherein the instruction to retrieve is received in either within the vertical blanking interval of a video signal, the horizontal blanking interval of a video signal, an associated audio channel to a video signal, or a data packet. 56. An apparatus for constructing a web page as described in claim 17 wherein the receiver module receives the instruction to retrieve within the vertical blanking interval of a video signal, the horizontal blanking interval of a video signal, an associated audio channel to a video signal, or a data packet. 57. A method of constructing a web page as descπbed in claim 1 wherein the instruction to retrieve is received via a communication link from a remote data server. 58. A method of constructing a web page as described in claim 57 wherein the communication link comprises a communication network selected from the group consisting of: the Internet, an intranet, a public network, and a private network. 59 An apparatus for constructing a web page as described in claim 17, further comprising a connection with a communication link to a remote data server, and wherein receiver module receives the instruction to retrieve from the data server via the communication link. 60. An apparatus for constructing a web page as described in claim 59 wherein the communication link comprises a communication network selected from the group consisting of: the Internet, an intranet, a public network, and a private network. 61. An apparatus for constructing a web page as described in claim 17 wherein the display generation module displays a listing of the address associated with the constructed web page on the display device. 62. An apparatus for constructing a web page as described in claim 34 wherein the display generation module displays a listing of a plurality of addresses associated with the plurality of constructed web pages on the display device. 63. An apparatus for constructing a web page as described in claim 62 wherein the memory saves the listing of the plurality of addresses for later redisplay on the display device. 64. A method of constructing a web page as described in claim 1 wherein the step of commanding further comprises the step of instructing that the address be displayed on the display device. 65. A method of constructing a web page as described in claim 32 wherein the step of commanding further comprises the step of instructing that a plurality of addresses associated with the plurality of constructed web pages be displayed on the display device. 66. A method of constructing a web page as described in claim 33 wherein the step of commanding further comprises the step of instructing that a plurality of addresses associated with the plurality of constructed web pages be displayed on the display device. 67 A method of constructing a web page as described in claim 64 further comprising the step of saving the listing of the address for later redisplay on the display device 68 A method of constructing a web page as described in claim 65 further comprising the step of saving the listing of the plurality of addresses for later redisplay on the display device 69 A method of constructing a web page as described in claim 66 further comprising the step of saving the listing of the plurality of addresses in the memory module for later redisplay on the display device 70 A programming transmission system for instructing one or more programming receivers to construct one or more web pages for delayed presentation on a display device, the programming transmission system comprising a programming source for providing a program data stream, an encoder for inserting one or more addressed into the program data stream, the addresses associated with one or more programs and identifying the storage location of infoimation comprising the web pages, and a data transmitter for transmitting the program data stream via a transmission medium to one or more programming receivers 71 A programming transmission system as described in claim 70 further comprising an timer event generator which generates timer event information associated with the addresses, the timer event information indicating the period for delaying the presentation of the constructed web pages, and wherein the encoder further encodes the timer event information into the program data stream 72 A programming transmission system as described in claim 71 further comprising a memory, within which is stored a playlist database comprising the addresses, the timer event information; and a programming schedule, the programming schedule associated with the addresses and the timer event information. 73 A programming transmission system as described in claim 72 wherein the playlist database is remotely accessible and updateable by programmers 74 A programming transmission system as described in claim 70 further comprising a command generatoi for generating one or more commands to the programming receivers to display the constructed web pages, and wherein the encoder further encodes the display command into the program data stream 75 A programming transmission system as described in claim 74 wherein the command generator is able to be actuated in association with a program transmission in real-time by a programmer 76 A programming transmission system as described in claim 70 wherein the transmission medium is selected trom the group consisting of: television, cable, satellite, microwave, radio, fibei optic, telephone, wireless telephone, the Internet, an intranet, a public communication network, and a private communication network 77 A programming transmission system as described in claim 70 wherein the encoder inserts the addresses within either the vertical blanking interval of a video signal, the horizontal blanking interval of a video signal, an associated audio channel to a video signal, or a data packet 78 A programming transmission system as described in claim 71 wherein the encoder the addresses and the timer event information within either the vertical blanking interval of a video signal, the horizontal blanking interval of a video signal, an associated audio channel to a video signal, or a data packet 79. A programming transmission system as described in claim 70 further comprising an intermediate distribution system which receives the program data stream, the intermediate distribution system further comprising- a decoder for decoding the addresses from the data stream; a data server with a memory for storing the decoded addresses; and a connection with a communication link between the data server and the programming receivers for transmitting the addresses from the data server to the programming receivers 80. A programming transmission system as described in claim 71 further comprising an intermediate distribution system which receives the program data stream, the intermediate distribution system further comprising a decoder for decoding the addresses and timer event information from the program data stream, a data server with a memory tor storing the addresses and event timer information; and a connection with a communication link between the data server and programming receivers transmitting the addresses and timer event information from the data server to the programming receivers. 81 A programming transmission system as described in claim 70 wherein the addresses comprise Uniform Resource Identifiers 82 A programming transmission system as described in claim 70 wherein the programming source comprises a broadcast transmission, a real-time program feed, or a media playback device. 83 A programming transmission system as descπbed in claim 82 wherein the media playback device is selected from the group consisting of. a video tape player, a digital video disk player, a digital media player, and a digital file server 84 A method of transmitting instructions from a programming transmission system to one or more programming receivers to instruct the programming receivers to construct a web page for delayed presentation on respective display devices, the method comprising the steps of selecting an address associated with a program which identifies the storage location of information comprising the web page, encoding the selected address into a program data stream, and transmitting the program data stream to the programming receivers 85 A method of transmitting instructions from a programming transmission system as described m claim 84 further comprising the step of associating the address with timer event information, the timer event information indicating the period for delaying presentation of the constructed web page, and wherein the step of encoding further comprises encoding the timer event information into the program data stream 86 A method of transmitting instructions from a programming transmission system as described in claim 85 further comprising the step of selecting the timer event information from a playlist, the timer event information associated with programming schedules which together comprise the playlist 87 A method of transmitting instructions from a programming transmission svstem as described in claim 86 wherein the playlist is further comprised of the address 88 A method of transmitting instructions from a programming transmission system as described in claim 86 wherein the playlist information is remotely accessible and updateable by programmers 89 A method of transmitting instructions from a programming transmission system as descπbed in claim 84 further comprising the steps of inserting an instruction to display the web page into the program data stream, and transmitting the program data stream with the instruction to display to the programming receivers. 90. A method of transmitting instructions from a programming transmission system as described in claim 89 wherein the step of inserting is performable in association with a program transmission in real-time by a programmer. 91. A method of transmitting instructions from a programming transmission system as described in claim 84 wherein the program data stream is transmitted over a transmission medium selected from the group consisting of: television, cable, satellite, microwave, radio, fiber optic, telephone, wireless telephone, the Internet, an Intranet, a public communication network, and a private communication network. 92. A method of transmitting instructions from a programming transmission system as described in claim 84 wherein the step of encoding further comprises inserting the address within either the vertical blanking interval of a video signal, the horizontal blanking interval of a video signal, an associated audio channel to a video signal, or a data packet. 93. A method of transmitting instructions from a programming transmission system as described in claim 85 wherein the step of encoding further comprises inserting the address and timer event information within either the vertical blanking interval of a video signal, the horizontal blanking interval of a video signal, an associated audio channel to a video signal, or a data packet. 94. A method of transmitting instructions from a programming transmission system as described in claim 84 wherein the step of transmitting further comprises the steps of: receiving the program data stream at an intermediate distribution system; decoding the address from the program data stream; storing the address in a memory in the intermediate distribution system; and transmitting the address from the intermediate distribution system to the programming receivers via communication links between the intermediate distribution system and the programming receivers. 95. A method of transmitting instructions from a programming transmission system as described in claim 85 wherein the step of transmitting further comprises the steps of: receiving the program data stream at an intermediate distribution system; decoding the address and timer event information from the program data stream; storing the address and timer event information in a memory in the intermediate distribution system; and transmitting the address and timer event information from the intermediate distribution system to the programming receivers via communication links between the intermediate distribution system and the programming receivers. 96. A method of transmitting instructions from a programming transmission system as described in claim 84 wherein the address comprises a Uniform Resource Identifier. 97. A web browser plug-in product for use with a web browser program embodied in a programming receiver, the plug-in product comprising a computer readable medium having computer readable program code means embodied in the medium, the computer readable program code means comprising instructions for: causing the web browser program to acknowledge the transmission of instructions to the programming receiver from a programming source; causing the web browser program to retrieve information from a communication network via a communications link with the programming receiver based on instructions received from the programming source; causing the web browser program to assemble the retrieved information in a memory module in the programming receiver; and causing the web browser program to access the assembled information and display the assembled information on a display means connected to the receiver. 98. A web browser plug-in product as described in claim 97 wherein the programming source is a programming transmission system which transmits the instructions to the programming receiver in a program data stream. 99. A web browser plug-in product as described in claim 98 wherein the programming transmission system transmits the program data stream via a transmission medium selected from the group consisting of broadcast television, cable, satellite, microwave, radio, fiber optic, telephone, wireless telephone, and the communication network. 100. A web browser plug-in product as described in claim 97 wherein the communication network is selected from the group consisting of: the Internet, an intranet, a public network, and a private network. 101 . A web browser plug-in product as described in claim 97 wherein the programming source is a media playback device connected to the programming receiver which transmits the instructions to the programming receiver in a program data stream. 102. A web browser plug-in product as described in claim 101 wherein the media playback device is selected from the group consisting of: a video tape player, a digital video disk player, a digital media player, and a digital file server. 103. A web browser plug-in product as described in claim 97 wherein the computer readable program code means further comprises instructions for causing the web browser program to delay the access and display of the assembled information based upon timer event information in the received instructions. 104. A web browser plug-in product as described in claim 103 wherein the computer readable program code means further comprises instructions for causing the web browser program to consult a timer event module in the programming receiver to determine whether the delay imposed by the timer event information has expired 105 A web browser plug-in product as described in claim 97 wherein the computer readable program code means further comprises instructions for causing the web browser program to delay the access and display of the assembled information until the receipt of a command from the programming source 106 A web browser plug-in product as described in claim 97 wherein the instructions from the programming source comprise a Uniform Resource Identifier 107 A web browser plug-m product as described in claim 97 wherein the information comprises one or more web pages 108 A method in a in a web page presentation system for displaying a preconstructed web page associated with a program in conjunction with the display of the program on a display device, the preconstructed web page identified by an address, the preconstructed web pages stored in a memory in the system, the method comprising displaying the program on the display device, and superimposing a display of the preconstructed web page over a portion of the displayed program 109 A method in α in a web page presentation system for displaying a preconstructed web page as described in claim 108 further comprising substituting the display of the preconstructed web page for the displayed program 1 10 A method in a in a web page presentation system for displaying a preconstructed web page as described in claim 108 further comprising superimposing a plurality of displays of a plurality of preconstructed web pages over portions of the displayed program 1 11. A method in a in a web page presentation system for displaying a preconstructed web page as described in claim 108 further comprising superimposing a display of a listing of the address identifying the preconstructed web page. 1 12. A method in a in a web page presentation system for displaying a preconstructed web page as described in claim 1 10 further comprising superimposing a display of a listing of the plurality of addresses identifying the plurality of preconstructed web pages. 1 13. A method in a in a web page presentation system for displaying a preconstructed web page as described in claims 1 1 1 or 1 12 further comprising saving the addresses in the memory for later redisplay at the direction of a user. 1 14. A method in a in a web page presentation system for displaying a preconstructed web page associated with a program in conjunction with the display of the program on a display device, the preconstructed web page identified by an address, the preconstructed web pages stored in a memory in the system, the method comprising: displaying the program in a first window on the display device; and displaying the preconstructed web page in a second window on the display device. 1 15. A method in a in a web page presentation system for displaying a preconstructed web page as described in claim 1 14 further comprising resizing the first and second windows as directed by a user. 1 16. A method in a in a web page presentation system for displaying a preconstructed web page as described in claim 1 15 further comprising superimposing the first and second windows over each other, either portionally or entirely, as a consequence of resizing by the user. 1 17. A method in a in a web page presentation system for displaying a preconstructed web page as described in claim 1 14 further comprising displaying a plurality of preconstructed web pages in a plurality of windows on the display device 1 18 A method in a in a web page presentation system tor displaying a preconstructed web page as described in claim 1 17 further comprising resizing the plurality of windows as directed by a user. 1 19 A method in a in a web page presentation system for displaying a preconstructed v/eb page as described in claim 1 17 further comprising superimposing the first, second, and plurality of windows over each other, either portionally or entirely, as a consequence of resizing by the user 120 A method in α in α web page presentation system tor displaying a preconstructed web page as described in claim 1 14 further comprising displaying a plurality of preconstructed web pages successively in the second window on the display device 121 A method in a in a web page presentation system for displaying a preconstructed web page as descπbed in claim 1 14 further comprising displaying a third window containing a listing of the address identifying the preconstructed web page 122 A method in a in a web page presentation system foi displaying α preconstnicted web page as descπbed in claim 1 17 further comprising displaying a third window containing a listing of the addresses identifying the plurality of preconstructed web pages 123 A method in a in a web page presentation system for displaying a preconstructed web page as descπbed in claim 120 further comprising displaying α third window containing a listing ot the addresses identifying the plurality of preconstructed web pages 124 A method in a in a web page presentation system for displaying a preconstructed web page as described in claims 121 , 122. or 123 furthei comprising resizing the third window as directed by a user 125 A method in a in a web page presentation system for displaying a preconstructed web page as described in claims 121, 122, or 123 further comprising saving the addresses in third window in the memory for later redisplay at the direction ot the user 126 A method in a in a web page presentation system for displaying a preconstructed web page as described in claim 124 further comprising superimposing the first, second, third, and plurality of windows, as appropriate, over each other, either portionally or entirely, as α consequence of resizing by the user

Inventors: HARRINGTON JEFFREY M, HARRINGTON, JEFFREY, M.
Applicants: ACTV INC, ACTV, INC.
Application year: 2000
Main classification: G06F17
IPC codes: G06F3, G06F13, G09G5, H04N5, H04N7