MANAGING ELECTRONIC CONTENT FROM DIFFERENT SOURCES

Abstract: Electronic content, including television (TV) programming and computer network content, is managed by a computer in a web-based TV environment by gathering the electronic content from multiple sources, selectively arranging (e.g., combining, re-organizing and/or re-formatting) the gathered electronic content to form one or more virtual channels, which can then be presented to a viewer. A virtual program guide formed, (e.g., from metadata descriptive of the virtual channels), also can be generated and presented to viewers, who can use the virtual program guide to search for, sort, bookmark, and/or filter out virtual channels as desired.

Description: MANAGING ELECTRONIC CONTENT FROM DIFFERENT SOURCES The application claims benefit of U.S. Provisional Application No. 60/166,741, filed November 22, 1999, the entire disclosure of which is incorporated herein by reference. TECHNICAL FIELD This invention relates to managing electronic content from different sources using, for example, virtual channels and interactive program guides. BACKGROUND The computer system 100 shown in Fig. 1 illustrates a hardware setup for executing software that allows a user to perform tasks such as communicating with other computer users, accessing various computer resources, and viewing, creating, or otherwise manipulating electronic content in the form of, for example, any combination of text, images, movies, music or other sounds, animations, 3D virtual worlds, and links to other objects. The system 100 includes input/output (I/O) devices, such as, for example, a mouse 103, a keyboard 105, and a display 107. The system 100 also includes a general purpose computer 110 that may include a central processor unit (CPU) 115, an I O unit 117, and a memory 119. The memory 119 stores data and various programs such as an operating system 121 and one or more application programs 123. The computer system 100 may also include a communications card or device 125 (e.g., a modem or network adapter) for exchanging data with a network 127 via a communications link 129 (e.g., a telephone line). As shown in Fig. 2, a user of a computer system can access electronic content or other resources either stored locally at the user's own client system 202 (for example, a personal or laptop computer) or remotely at one or more server systems 200. An example of a server system 200 is a host computer that provides subscribers with online computer services such as e-mail, e-commerce, chat rooms, Internet access, electronic newspapers and magazines. Users of a host computer's online services typically communicate with one or more central server systems 200 through client software executing on their respective client systems 202. The client computer 202 can communication with the host 200 via a modem 204 or TCP/IP network connection over communication links 206 and 207, respectively. In practice, a server system 200 typically will not be a single monolithic entity. Rather, the server system 200 will be a network of interconnected server computers, possibly physically dispersed from each other, each dedicated to its own set of duties and/or to a particular geographical region. In such a case, the individual servers are interconnected by a network of communication links, in known fashion. One such server system is "America Online 5.0" from America Online, Inc. A browser is an example of client software that enables users to access and view electronic content stored either locally or remotely, through a network environment (e.g., a local area network (LAN), an intranet, the Internet). A browser typically is used for displaying documents described in Hyper-Text Markup Language (HTML) and stored on servers connected to a network such as the Internet. A user instructs a browser to access an HTML document, or webpage, by specifying a network address, or Uniform Resource Locator (URL), at which a desired document resides. In response, the browser contacts the corresponding server hosting the requested webpage specified by the URL, retrieves one or more files that make up the webpage, and then displays the webpage in a window on the display of the user's client system. Fig. 3 is a screenshot of a browser application 300 displaying a typical HTML document in the form of a webpage 302. As shown, a single webpage 302 may be composed of several different files potentially of different data types 304 (e.g., text, graphics, images, virtual worlds, sounds, and movies). In addition, a webpage can include links 306 pointing to other resources (e.g., webpages or individual files) available on the network. Links 306 can take virtually any visual form. For example, a link can appear as a text string, as a graphical image, or as a combination of the two. Each link 306 has an associated URL pointing to a location on the network. When a user clicks on, or otherwise selects, a displayed link 306, the browser automatically retrieves the webpage (or other resource) corresponding to the link's associated URL and displays it to, or executes it for, the user. Referring to Fig. 4, an internet-based TV system 400 makes dual usage of a conventional TV 402. That is, a user of the internet-based TV system can watch TV or view webpages and otherwise use the Internet. In this regard, a special purpose computer 404, referred to as a set top device, is used in connection with a standard TV 402 for viewing webpages on the Internet. Accessories, such as, for example, a wireless keyboard 408 may be added to the internet-based TV system 400. The wireless keyboard 408 can be similar to keyboard 105 but it also may have specialized keys designed for use in the web-based TV system 400 to make viewing and web use easier. Additionally, a wireless remote control 410 may be used to control the set top device 404 and to facilitate channel changing and web-based TV connections via various buttons 412, which may be specialized for the web-based TV environment. An example of an existing internet-based TV system 400 is "WebTV" by Microsoft. Information about WebTV service may be found, for example, at http://www.webtv.net and http://developer.webtv.net. TV systems, whether web based or conventional, may provide an electronic program guide to assist users in finding programs to watch. Fig. 5 is an example of an electronic program guide from Yahoo! As shown therein, a list of channels 501 is presented to users. The schedule 502 for each channel typically is presented as a list showing the next several hours of programming for each channel. The starting and stopping times 503 are presented as headers at the top of the list of channel schedules. The user may use the controls 504 to limit the number of channels presented. For example, by selecting the "Children" category 505, the user can limit the set of channels presented to those showing children's programming. By using conventional GUI (graphical user interface) manipulation techniques, users of electronic program guides may be able to scroll through the list of channels, and may be able to scroll forward in time 506 to see the schedule for future programs. Users also may be able to select a channel to watch using the electronic programming guide. In conventional web-based TV systems, web content and TV content are accessed by, and presented to, viewers in disparate manners. The present inventors recognized that it would be advantageous to eliminate the need for viewers to distinguish between web content and TV content. Consequently, the present inventors developed a new type of abstraction - the virtual channel - that can combine different sources of electronic content and which hides the underlying transport technology. SUMMARY The invention may provide these and other advantages. The techniques and methods described here may enable a web-based TV system to provide viewers with a simple but powerful interface to a broad array of content. Viewers will no longer need to be concerned with the underlying technologies used to transport video and web content to their television. For example, viewers will be able to save a "bookmark" or "favorite" instead of trying to remember a channel number or network call sign. There is essentially no limit to the number of virtual channels that can be supported. Further, the techniques and mechanisms described here can provide a platform for other applications. For example, the virtual channel abstraction allows the sending and receiving of video without having to deal with the underlying transport technologies. This makes such systems easier to use, modular in their design, and suitable for running on a variety of different hardware platforms. These techniques and mechanisms also provide users with powerful tools for searching, filtering, and organizing channels of content. Viewers will be able to customize the display of channels to make finding and selecting content more efficient. By using the same virtual channel abstraction to display virtual program guides to users, guide information can be presented without requiring additional device support. The details of one or more embodiments are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the invention will be apparent from the description and drawings, and from the claims. DESCRIPTION OF DRAWINGS Fig. 1 shows a block diagram of a computer system. Fig. 2 shows a typical network-computing environment. Fig. 3 shows a browser displaying a web page. Fig. 4 shows a block diagram of a set top device. Fig. 5 shows an electronic program guide. Fig. 6a shows a virtual channel constructed from several sources. Fig. 6b shows a different virtual channel constructed from the same sources. Fig. 7a shows a virtual channel displaying a TV program. Fig. 7b shows a virtual channel displaying a web page. Fig. 7c shows a virtual channel displaying combined content from the web and TV programming. Fig. 7d shows the schedule for a virtual channel displaying shows from several different sources. Fig. 8 is a diagram showing various sources of information available to a set top device in a web-based TV environment. Fig. 9a shows an exemplary set top box. Fig. 9b shows an exemplary VBI/TV Frame architecture. Fig. 10 shows a layered architecture for virtual channels. Fig. 11 shows a virtual program guide. Fig. 12 shows the process of creating a virtual program guide. Fig. 13 shows a virtual program guide with a hierarchical browser. Fig. 14 shows a virtual program guide with a user-customized list of channels. Fig. 15 shows a virtual program guide with the ability to search for channels or content. Fig. 16 shows a virtual program guide with content filtering. DETAILED DESCRIPTION The set top device, according to one aspect of the invention, displays a variety of virtual channels. A "virtual channel" is a stream of content that can be presented to a viewer by a TV monitor and is an abstraction of a traditional TV channel. However, unlike a traditional TV channel, a virtual channel is not restricted to a single source of content (e.g., broadcast TV programming). In addition, a virtual channel can combine content from any number of different sources for presentation to the viewer as a single channel. For example, Fig. 6a shows a virtual channel combining a television program 601 broadcast by a network, statistics 602 from www.stats.com, a number of links 603 to other web sites from www.aol.com, and a virtual button 604 which can be used by the viewer to retrieve additional web content. As another example, web content can be combined and presented to viewers as if the web content were a traditional TV channel. Generally, channels used to broadcast TV programming have been tied to the underlying range of spectrum used to transport the signal used to form the channel. However, with the advent of digital technology, this dependency is no longer necessary. Channels, according to the invention, are referred to as "virtual" because virtual channels eliminate the dependency between the source of the content and the content that is shown to viewers. As a result, the number of virtual channels that can be formed is virtually unlimited. For example, Fig. 6b shows a different virtual channel constructed from the same sources of content used in Fig. 6a. The following virtual channels are some examples of the basic types of virtual channel that can be presented by the set top device. Fig. 7a shows a "TV only" virtual channel. The TV only virtual channel can show TV content from a single conventional TV channel, without adding any other content. Fig. 7a shows a virtual chaimel displaying a TV program on a web- based TV system in which a baseball game 701 broadcast from a local station is being shown on the TV monitor display 402. In this example, the local station may be known as "Channel 7"; however, according to the invention the virtual channel can be designated as "baseball" or renumbered according to a scheme to make finding the channel easier. For example, all sporting events channels can be assigned to be between 100-199. As a result, a viewer does not need to remember what channel is showing the type of program that is desired. Instead, the viewer simply has to remember that all sporting channels are in the one hundreds. With the increasing number of channels, the renumbering of channels using virtual channels provides added convenience to the viewer. Fig. 7b shows a "Web Only" virtual channel including a web content (e.g., a web page), which may include content from multiple web sources, without adding any other type of content. As shown in Fig. 7b, a virtual channel displays a web page on a web-based TV system in which web page 711 shows various statistics 712 about a baseball game. Another type of virtual channel is the "Combined" virtual channel that shows TV content combined with web content from one or more sources. Fig. 7c shows a virtual channel combining content from the web and content from TV programming for presentation on a web-based TV system. The TV content 721 is received from a station broadcasting a baseball game and is combined with web content to provide a total presentation including statistics 722, a chat session about the game 723, and links to other related web content 724. Fig. 7d shows a "Constructive" virtual channel including a series of programs presented in successive time slots. Each program is constructed from a different set of one or more content sources. For example, a virtual channel directed to a particular subject matter can be formed from a set of available content having a common or related subject matter, without regard to the content source (from the viewer's perspective). According to the example in Fig. 7d, a constructive virtual channel called "The Dog Channel" presents dog- related content selected from any of the sources available to the set top box. "The Dog Channel" includes Lassie 731 from the TNT network at 6:30 P.M., then web content 732 from www.dogs.com on the Internet at 7:00 P.M., and a PBS broadcast 733 of the Westminster Dog Show at 7:30 P.M. In addition, any of the programs 731, 732, and 733 may be created from combined content, as discussed above. All changing, combining, and construction of sources, and their content, is performed by the set top box, alone or in combination with a host computer, and requires no viewer interaction other than selecting a virtual channel that the viewer wishes to watch. Referring to FIG. 8, a system including a set top device 800 can be used to implement virtual channels. The set top device 800 is connected to a TV/monitor 802 for displaying content on the TV/monitor 802. The set top device 800 is capable of receiving content from a number of sources. For example, the set top device 800 can receive broadcast TV signal transmissions 871, cable TV signals 831, or wireless signals 841 (e.g., broadcast from a base station 840 or a satellite 820). The set top device may also be connected to the Internet 127 via a communications link 125. A content service provider 850 connected to the Internet 127 can be accessed by the set top device 800. The systems shown in Fig. 8 for supplying content are exemplary only and not necessarily comprehensive. In general, essentially any available mechanism for receiving digital and/or analog signals may be used by the set to device 800 to gather content. The set top device 800 gathers two main types of content: Internet content and TV content. Internet content is, for example, digital information that is typically, but not exclusively, communicated over a computer network. Examples of Internet content include web pages, image files, audio files, video files, virtual worlds, data files, e-mail, instant messages, and chat sessions. TV content may be digital or analog information, generally corresponding to established NTSC or PAL standards, intended for presentation on a TV or video monitor. Examples of TV content are broadcast television programs, cable TV programs, and output of video player such as a tape player, a laser disc player, and a DVD player. The set top device 800 may use any of a variety of known methods to gather TV content from any of several different sources. Referring also to FIG. 9a, the set top device 800 may include a video processor 906 capable of receiving broadcast TV signals 841 using an antenna, in addition to TV signals from cable, a video player (e.g., VCR, DVD player, laser disc player), computer 100, satellite dish 812 (e.g., Direct TV), or other sources of TV signals. The set top device 800 may also include separate or combined receivers for these sources of TV signals, such as a TV tuner, a wireless interface, a video decoder. The set top device 800 also includes a memory 914 for storing application programs and internet content. A CPU 910 is provided for accessing and running program applications stored in the memory 914, such as, a browser. The CPU 910 also controls the interaction of the various interfaces and data received through the I/O unit and may include a video controller 915. In addition, the CPU 910 can implement functions of the set top device 800 through its programming or through commands received from a viewer, for example, using an input device such as remote control 912 or wireless keyboard 908. Another mechanism for communicating web content to the set top device involves the use of vertical blanking intervals (VBIs) in TV frames. The standard NTSC TV signal used in the United States is made up of "frames" that are broadcast at a rate of 30 per each second. Each frame is formed of 825 scan lines divided equally into two separate and contiguous fields, field 1 and field 2. Each field includes 262.5 scan lines, 241.5 of which carry TV signal information that is normally used to display programming to a viewer of the TV picture. The first 21 lines in each field represent the VBI. The VBI corresponds to the period of time that it takes the electron beam emitted by the TV set's cathode ray tube (CRT) to reposition itself from the bottom of the TV screen to the top of the screen (also referred to "vertical retracing"). After each field is received and displayed, the electron beam must be repositioned in this manner before drawing of the first scan line of the next field may commence. Accordingly, no visible TV signal information can be transmitted during the VBI, since such TV signal information would be lost. However, basically any other type of information may be transmitted to the set top device's TV receiver and used for purposes such as closed captioning, teletext, and electronic program guide information. The amount of data that can be transmitted in this manner is roughly equal to the capacity of a 9600 baud modem for each available scan line in the VBI. Accordingly, in one implementation, web content can be communicated directly from the TV broadcaster to a set top device within the VBIs of a TV signal as shown in Fig. 9b. For each TV field received, the set top device can extract this information from the VBI and use it to generate elements of a virtual channel. The VBI can be used in this way either in real or near real time (i.e., the web content in the VBI can be extracted and used by the set top device immediately upon receipt) or the VBI can be used to transmit information to the set top device for storage and subsequent retrieval. Another available technique is to "trickle-down" or "push" content from a host system to the set top device in the background (i.e., transparently to, and without being requested by, the viewer). The content can be sent using ordinary network connections while the set top device is logged on the host system. Content can also be sent via other routes that do not require the set top box to be logged on to a host (e.g., using the VBI as described above). The trickled-down content is then stored in a memory, such as a cache, by the set top device so that the content is available for future use, for example, if the viewer, while offline, requests a virtual channel that requires the cached content. Fig. 10 is an architecture diagram for virtual channels. As explained above, the set top device 800 can be provided with a number of different sources 1003 of TV content, for example, cable, broadcast, satellite, and the Internet. The set top device also can be provided with offline 1005 and online 1007 sources of web content 1002. Offline sources of web content 1005 include content stored in a memory of the set top device and content received, for example, through the VBI. Online sources of web content 1007 include a computer network, a DSL, a modem, a wireless network connection and information that is trickled- down to the set top device. The virtual channel abstraction 1015 relies on the TV content 1001 and web content 1002 provided by content gathering parts 1004 of the set top device. The virtual channel can created by the processor 910 of the set top device from a combination of the TV and web content received by or stored by the set top device, thus creating a single video stream 1019 for display on the TV monitor screen. The set top device can generate virtual channels regardless of whether the viewer (subscriber to web-based TV service) happens to be online (i.e., "logged in" or actively connected to a service's host computer system) or offline (i.e., not logged into a service's host computer system). The set top device is able to generate virtual channels using one or more of the following different techniques. The set top device can receive web content through a connection to a host ISP or web- based TV service and store (e.g., cache) the web content in a memory for retrieval and use by the set top device's processor as needed. The set top device can also receive the web content "on-the-fly" (i.e., in near real time on a need-specific basis). Cached content can be stored in the memory of the set top device or retrieved from storage media such as a hard disk, cassette tape, or CD-ROM connected to the set top device. When creating a virtual channel, the set top device 800 uses "on the fly" content when available, such as when the set top device is logged into the host system 850. In addition, the set top device 800 can retrieve content from the memory for use in generating virtual channels. Of course, retrieval of locally stored content is always available, whether the viewer is offline or online. In the case of combined virtual channel, the video signal data is received by the set top device and is allocated to a portion of the display monitor's view area by the video controller of the set top devices processor in conjunction with a video processor, for example. The video controller also determines what viewing portion of the display will contain the web content for display. In the example previously described with regard to Fig. 6a, the display area 601 may include streaming video which is constantly updated showing the TV signal telecast of the game. On the other hand, the portion showing the links 603 to other web content may be stored web content and relatively static. Caching web content in the set top device reduces the demands on a host computer system and on a communication link connecting the host system to the set top device. For example, the set top device does not need to be logged into the host system in order to be able to display web content. As a result, the number of terminal servers or other connection ports that the host system needs to maintain can be reduced because viewers can remain logged off the host system for much, if not all, of the viewing session. At the same time, the viewer's telephone line, or other communication medium connecting the set top box, does not need to be connected to the host system and thus is available for other uses. Moreover, some online computer service providers charge their customers based on the cumulative amount of online time (i.e., time connected to a host system). As a result, providing access to web content while the set top device is in an offline state can benefit subscribers by providing reduced connection-time costs. A virtual channel also can include metadata about the content of the channel and the programs to be displayed. Metadata is descriptive information (not part of the content to be displayed) that is used to search, filter, and control access to channels and programs. Metadata can be associated with the virtual channel as a whole or with the individual programs shown on the virtual channel, or both. The metadata associated with a virtual channel may include, but is not limited to, program descriptions, schedule information, credits for the author or producers, content ratings, such as those offered by the Recreational Software Advisory Council (RSAC) or Motion Picture Advisory Association, reviews, and viewer comments. The set top box can access the metadata for each of the virtual channels it offers. Metadata can be gathered and cached using the same methods for gathering and caching web content, as described above. A host service or broadcasting company can also create a virtual channel. Once the virtual channel has been created, the channel can be presented to a viewer using the set top device. However, the virtual channel can be displayed on, or received by, any device capable of handling analog video signals, such as a television or videocassette recorder. The virtual channel can also be sent digitally to devices capable of handling digital video signals, such as digital televisions, computers, and computer networks. The set top box, alone or in conjunction with a host system, can also produce a "virtual program guide" 1017 for viewers. A virtual program guide is an electronic program guide that extends the virtual channel abstraction enabling viewers to find and manage a set of virtual channels made available through the set top device. Fig. 11 shows a virtual program guide (VPG) 1017 listing several virtual channels 1101. Each virtual channel is listed in substantially the same manner regardless of whether it is associated with TV only content, web only content, or a combination thereof. A VPG can include any combination of virtual channels, regardless of the type of virtual channel (TV only, web only, combined, constructive). The virtual program guide's panel 1102 lists additional virtual program guides that can be selected for viewing. In the example shown in Fig. 11, the "Nature" guide 1103 is currently selected and displayed in the program grid. The program grid lists the schedules 1104 for several virtual channels 1101 showing programming from a variety of sources. A time grid 1105 lists the times when programs are scheduled to start and stop. Finally, a picture-in-picture (PIP) area 1106 can be used to show the virtual channel selected in the program grid, such as web content from the dogs.com web site. A virtual program guide is effectively a special type of virtual channel constructed by the set top device. This VPG channel can be constructed using the metadata associated with other virtual channels, including schedule, description, and ratings. Fig. 12 shows how a virtual program guide can be constructed to help a viewer manage virtual channels. First, the user selects a VPG to view (step 1201). Once a VPG is selected, the set top device selects the virtual channels corresponding to the VPG (step 1202) and extracts the required metadata from each (step 1203). The metadata is used to create a visual representation of each channel's schedule and details (step 1204). These schedules are then combined on the virtual program guide display and shown to the user (step 1205). In addition to entries for the virtual channels provided, the virtual program guide can include entries for other virtual program guides. For example, a guide directed to sports channels may display an entry for a virtual program guide dedicated to basketball. This enables a virtual program guide to be arranged into a hierarchical structure, for example. Fig. 13, illustrates a "top-level" virtual program guide listing other guides according to topic areas. In this example, the viewer selects the "Sports" guide 1301, which has several guides within it. The viewer then selects the "Baseball" subcategory 1302, which lists additional guides. The same set of virtual channels can also be arranged into several different structures. For example, one viewer may want to browse the channels according to subject matter, while another viewer may want to browse by ratings or keywords. These structures are not mutually exclusive, so a single virtual channel might appear in multiple virtual program guides. For example, a virtual channel directed to dogs may appear in a VPG entitled "Nature" and another VPG entitled "Pets." There is essentially no limit to the number of ways that structures of virtual program guides might be arranged. The virtual channels can be organized by the web TV host service, allowing them to maintain a standard organization of channels for all of their users. In addition, the virtual channels can be organized by the end user of the set top box according to personal preferences. In this case, the end user could select preferred channels and organize them into a hierarchy similar to the "bookmarks" or "favorites" in Internet browser programs, such as Microsoft's Internet Explorer. Fig. 14 shows a virtual program guide with a user-customized list 1401 of channels. To add to the list of favorites, the user can select the "Add Favorite" button 1402. To edit the favorite, the user can select the "Edit" button 1403 associated with each entry. Different structures of favorites may also be created. A third party may create virtual channels or virtual program guides and make them available over a computer network connected to the set top device. The virtual program guide also allows viewers to search through the metadata associated with virtual channels to find suitable channels or content. Fig. 15 shows a virtual program guide with the ability to search metadata associated with channels or content. The viewer can enter words to search for in the "Search for" box 1501. The viewer can limit the scope of the search by selecting the categories 1502. To trigger the search, the viewer selects the "Search" button 1503. The search can be conducted by a search engine resident in the set top box or by a server at the host TV service provider. The results of the search are then displayed to the user in the virtual program guide format. Viewers can use the virtual program guide to restrict access to certain channels and content according to their associated metadata. These restrictions ensure that inappropriate channels and content are not displayed to other viewers (e.g., children), or shown in search results, or both. Fig. 16 shows a virtual program guide with content filtering according to metadata. In this case, the viewer sets the maximum content ratings allowed for various types of content. For example, the maximum TV rating 1601 is set to TV-G. Other types of content can be set to different ratings. As a result, the set top box will gather only information that conforms to the selected ratings. Once the virtual program guide has been created as a virtual channel, it can be displayed to the viewer in any of the ways described above for displaying virtual channels. The techniques, methods, and systems described herein may find applicability in any computing or processing environment in which electronic content may be viewed, accessed, or otherwise manipulated. For instance, the concept of managing electronic content from different sources using virtual channels and virtual program guides could be applied whenever multiple sources of content can be combined to form streams of content for the viewer. One such environment involves a computer system (e.g., a Microsoft Windows-based PC or Apple Macintosh) that includes a TV tuner card and which is connected to the Internet. Various implementations of the systems and techniques described herein may be realized in digital electronic circuitry, in computer hardware, firmware, software, or in combinations thereof. A system or other apparatus that uses one or more of the described techniques and methods described may be implemented as a computer-readable storage medium, configured with a computer program, where the storage medium so configured causes a computer system to operate on input and or generate output in a specific and predefined manner. Such a computer system may include one or more programmable processors that receive data and instructions from, and transmit data and instructions to, a data storage system, and suitable input and output devices. Each computer program may be implemented in a high-level procedural or object- oriented programming language, or in assembly or machine language if desired; and in any case, the language may be a compiled or interpreted language. Suitable processors include, by way of example, both general and special purpose microprocessors. Generally, a processor will receive instructions and data from a read-only memory and/or a random access memory. Storage devices suitable for tangibly embodying computer instructions and data include all forms of non-volatile memory, including semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM disks. Any of the foregoing may be supplemented by, or implemented in, specially designed ASICs (application specific integrated circuits). A number of embodiments of the present invention have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the invention. Accordingly, other embodiments are within the scope of the following claims.

Claims: WHAT IS CLAIMED IS: 1. A set top device comprising: a communications interface for receiving TV signal data, the data including a virtual channel; a processor for interpreting the data and creating a visual presentation; and an output providing the visual presentation to a video display device. 2. A set top device according to claim 1 further comprising: a video display processor creating the visual presentation; and a video display controller controlling the video processor and the appearance of the visual presentation on the video display device. 3. A set top device according claim 1 wherein the virtual channel includes TV content and web content. 4. A set top device that according to claim 3 wherein the web content and the TV content are source unspecific. 5. A set top device that according to claim 1 wherein the virtual channel includes a virtual program guide. 6. A set top device that according to claim 1 wherein the virtual channel includes metadata. 7. A set top device according to claim 6 wherein the processor uses the metadata to formulate a virtual program guide. 8. A set top device according to claim 6 wherein the processor uses the metadata to control the display of the visual presentation. 9. A set top device according to claim 1 wherein the TV signal data includes a vertical blanking interval and the vertical blanking interval contains web content that is extracted by the processor. 10. A set top device according to claim 10 wherein the extracted web content is a virtual program guide. 11. A set top device according to claim 3 further comprising a memory for storing the web content. 12. A set top device according to claim 11 wherein the processor extracts the web content from the memory to be included in the visual presentation. 13. A system for presenting virtual channels comprising: a host transmitting virtual channel data; a set top device for receiving the transmitted virtual channel data and creating a virtual channel presentation from the virtual channel data; and a display for showing the virtual channel presentation. 14. A system according claim 13 wherein the virtual channel data includes TV content and web content. 15. A system according to claim 14 wherein the web content and the TV content are source unspecific. 16. A system according to claim 15 wherein the virtual channel data includes a virtual program guide. 17. A system according to claim 13 wherein the virtual channel data includes metadata. 18. A system according to claim 17 wherein the set top device uses the metadata to formulate a virtual program guide. 19. A system according to claim 18 wherein the set top device uses the metadata to formulate a virtual channel. 20. A system according to claim 19 wherein the set top device uses the metadata to control the display of the virtual channel presentation. 21. A system according to claim 14 wherein the set top device includes a memory for storing the web content. 22. A system according to claim 21 wherein the set top device extracts the web content from the memory to be included in the virtual channel presentation. 23. A virtual program guides for display on a TV system comprising: a plurality of virtual channels including a related content type wherein the content type is source unspecific. 24. A virtual program guide according to claim 23 wherein the virtual program guide contains a display of programming that is being shown on a selected virtual channel included in the virtual program guide. 25. A virtual program guide according to claim 23 further comprising metadata. 26. A virtual program guide according to claim 23 wherein the virtual program guide includes one or more other virtual program guides. 27. A virtual program guide according to claim 23 wherein selection of a virtual channel causes display of the programming on the virtual channel. 28. A virtual program guide according to claim 24 wherein selection of a virtual program guide cause display of the selected virtual program guide.

Inventors: ESCOBAR GEORGE D, KIRSH LAURENCE F, SILVA CARLOS A JR, ESCOBAR, GEORGE, D., KIRSH, LAURENCE, F., SILVA, CARLOS, A., JR.
Applicants: AMERICA ONLINE INC, ESCOBAR GEORGE D, KIRSH LAURENCE F, SILVA CARLOS A JR, AMERICA ONLINE, INC., ESCOBAR, GEORGE, D., KIRSH, LAURENCE, F., SILVA, CARLOS, A., JR.
Application year: 2000
Main classification: H04N5
IPC codes: H04N5, H04N7