Best mode for carrying out the invention
Referring to fig. 1, there is shown an information communication system 10 for implementing the channel hyperlink concept of the present invention in accordance with a preferred embodiment of the present invention. System 10 includes a television distribution system 12 for distributing television and other programming to a plurality of system users. Generally, distribution system 12 includes a network head end 14 that provides programming over a distribution network 16. The distribution network 16 distributes television programming over a plurality of transmission links 18 to a corresponding plurality of subscriber terminals or set-top converter boxes 20. Each transmission link 18 preferably includes a plurality of downstream channels 21 and at least one upstream channel 22. Typically, each set-top converter box 20 enables a user to select, for example, one of the downstream channels 21 for viewing on a television set 24 via a remote control 23. Preferably, the remote control device 23 includes a computer-type keyboard that communicates with the set-top converter box 20 by way of a conventional infrared wireless link. In addition, a mouse-type input device (not shown) may be generally employed in conjunction with the keyboard 23. The remote control device 23 may include a general television remote controller.
Each communication link 18 preferably comprises a coaxial cable, however, it should be understood that other types of links may be employed, such as optical or wireless links. The distribution network 16 provides video program information for each of a plurality of downstream channels 21 to each of the set-top converter boxes 20 using a conventional digital or analog communication scheme. However, in contrast to conventional television distribution systems, it is preferred that the communication link 18 operate in a bi-directional direction, wherein at least one upstream channel 22 is provided to each set-top converter box 20 so that the set-top converter boxes can transmit information requests to the network head-end 14 in real-time. This allows the user to request access to internet-based or other information related to the currently viewed program by actuating the channel hyperlink button 25 on the keypad 23.
The network head end 14 typically receives video programming that is distributed to subscribers from satellites 26. However, unlike conventional television distribution systems, the headend 14 has access to information from one or more headend databases 28 (hereinafter hyperlinks databases) that can be used to select internet or other information that can be downloaded to the set-top converter box 20 for viewing at the user's television 24. The information stored in the hyperlink database 28 is reference information that is somehow related to the programming and advertising broadcast to the users over the distribution network 16. For example, the reference information preferably includes information about the source, content, timing and duration of each program or advertisement, etc. In addition, a piece of key information is typically a Uniform Resource Locator (URL), which is used to reference more detailed information related to the broadcast program and advertising content.
The information about the program content may be in any suitable form, such as text and associated graphics or images (e.g., internet web pages, full motion video, audio, etc.). Although the information about the content may come from any source, it is preferred that at least some of the information is obtained from the Internet. This is preferably accomplished by connecting headend 14 to a conventional Internet Service Provider (ISP) 30. Although head end 14 has real-time access to information directly from ISP30, it is preferred that head end 14 access information from ISP30 prior to receiving any request for information from a user and store or cache the information in cache 31 connected between ISP30 and head end 14 so that it can be quickly accessed and downloaded to a user in response to a request for information.
To facilitate channel hyperlinks for a user from a video program or advertisement to the relevant internet or other information, some means must be provided to identify the network head end 14, the identity of the program being viewed when the user initiates a hyperlink request. This is accomplished by having all sources of broadcast programming insert identification numbers and tags (hereinafter ID tags) periodically into the transmitted television signal approximately once per second. The ID tags identify the program content, and may also identify the company or organization that created the program or advertisement, as well as unique demographic or geographic information identifying known geographies and demographic categories within a particular country or market. As will be discussed in more detail below, head-end 14 uses the ID tags to perform a lookup operation in a hyperlink database (28) to retrieve the reference information (e.g., URL) necessary to access the relevant content information from ISP30 and/or cache 31.
A data collection center 34 is preferably provided for receiving, monitoring and collecting programming via satellite 26 from a plurality of broadcast and cable television network uplink centers 38 (only one shown in fig. 1), each operated by a respective broadcast or cable television network. The purpose of the uplink center 38 is not only to play the video program via the satellite 26, but also to insert an ID tag into the video program. In the case of an analog television signal this may be achieved by inserting an ID tag into the Vertical Blanking Interval (VBI) of the signal, or by inserting an ID tag into the stream of audio or video signals. Corresponding digital communications, such as those based on the MPEG ii format, for example, may insert ID tag data periodically (approximately once per second) into the data stream associated with a particular video and audio data stream.
Each uplink center 38 is also preferably in communication with an uplink center database 40 that stores information related to the program or advertising content, such as URLs or other Web-based information related to the program or advertising content. The URL data in each uplink centric database 40 is preferably communicated via the Internet to a master database 42, which is connected to the data collection center 34. The main database 42 contains URLs and other reference data for all channel hyperlinks for various national broadcast and cable television networks. This information is then retransmitted, preferably over the internet, to each of the network headends 14, where the URL data is stored in one or more hyperlink databases 28. Additionally, it should also be noted that while most of the URL data stored in the hyperlink database 28 will be the same as the corresponding data stored in the main database 42, there are differences in the case where the URL and other Web data associated with the ID tags (provided by the program source) are unique to a particular geographic or demographic location and market. For example, the ID tag of an advertised product may be associated with information pertaining to one supplier of the product at a first market place and information pertaining to a second supplier at a second market place. Thus, the data collection center 34 manages the transmission of URL data from the master database 42 to the hyperlink database 28 according to any geographic or demographic identifiers that may be present in each ID tag. In addition, the front end database 28 will likely contain only information of the ID tags of programs and commercials that may appear on the broadcast channel received by the front end 14, and the master database 42 will contain all of this information.
The acquisition center 34 also combines all the ID tags present in all the television signals received from the satellites 26 and retransmits the ID tags as a combined data stream to the second satellite 43. The second satellite 43 transmits this combined ID tag data stream to each cable head end 14. Although the presence of the ID tags is evident in the video signals received by the cable headend 14 from the first satellite 26, the separate transmission of the ID tags obviates the need for the headend 14 to detect and remove the ID tags of incoming video signals. On the other hand, it will of course be appreciated that the front end 14 itself is capable of detecting and removing the ID tags.
The hyperlink database 28 also preferably receives URL hyperlink data for local video content sources or databases 44. the databases 44 provide information to, for example, national network local affiliates, corporate access, local schools, and cable operator sponsored channels. A local ad insertion source 46 is also provided for providing a local ad ID tag to each hyperlink database 28. The local ad insertion device notifies the hyperlink database 28 in real time of any ID tags that insert ads into the broadcast.
Fig. 2 shows details of headend 14 in a preferred embodiment of the present invention, which operates by inserting information into the downstream television signal to provide each user with a channel hyperlink and other internet information. At the heart of the headend 14 is a headend server 50 that manages access to channel hyperlink information from the ISP30, the hyperlink database 28 and the local database 44, pre-caching storage of channel hyperlink information in the cache 31, and receiving program directory ID tag information from the ID tag receiving circuit 52. The front-end server 50 includes a processor 54 that performs these operations. The processor 54 sends internet information requests to and receives requested information from the ISP30 through a number of general communication elements including a cache engine 55, an interface 56, a router 58, and a channel service unit/data service unit (CSU/DSU)60 to and from the ISP 30. The cache engine 55 manages the anticipated caching of HTML web site hyperlink data from ISP30 and the storage of this data in cache 31. A general graphics processor 62 may also be provided to convert the graphics portion of the HTML data received from ISP30 into a graphics format compatible with user television 24, if desired.
The user receives a request for channel hyperlink information via the set-top communications controller 70. These requests are passed to a session manager 72 that is capable of managing multiple sessions for multiple set-top converter boxes 20 and maintaining an association between the received request and the one converter box 20 that made the request. More specifically, each channel hyperlink information request received by communications controller 70 includes an identification number or code that identifies the set-top converter box 20 that issued the request. The session manager 72 keeps track of this information and matches the requested internet information with the set top converter box 20 that made the request.
Upon receiving a request from one of the set-top converter boxes 20, the session manager 72 communicates the request to the processor 54 and connects the user to one of a plurality of active browser applications (browsers) 74. By providing multiple browsers 74 that are actively running, but are not currently being used by the user, the user can be connected to the channel hyperlink information without the delay typically associated with opening a browser application. The session manager 72 monitors the number of active browsers 74 available for use when connecting the user to the channel hyperlink information through the browsers 74, and the number of active browsers available for use is reduced. Once this number reaches a predetermined minimum, e.g., 3, the session manager 72 causes a predetermined number (e.g., 5) of browsers 74 to be restarted to ensure that one browser is always available for use when the user requests access to the channel hyperlink information. It should be understood that while the use of multiple active browsers is preferred in the manner described above, this feature need not necessarily be employed to practice the present invention, and the browser 74 may be opened in a conventional "on-demand" manner, if desired.
The browser application 74 accesses the channel hyperlink information either from the cache 31 or from the ISP 30. The browser application 74 constructs the accessed information (e.g., Web pages) as a bitmap, which is preferably compressed to reduce the transmission time between the head end 14 and the set-top converter box 20. The browser application 74 then passes the compressed bitmap to the terminal display manager 76. The terminal display manager 76 is preferably designed to further minimize the amount of actual information that must be transmitted to the set-top converter box 20. This can be achieved by transmitting only the information required to update the changed portion of the display to the set-top converter box 20.
The set-top communication controller 70 transmits the display information from the display manager 76 to the data modulator 80. In the preferred embodiment, modulator 80 includes a VBI data inserter. As the name implies, the VBI data inserter inserts channel hyperlink related data into the vertical blanking interval of a video program currently being played on a downstream channel 21, the hyperlink data being downloaded on the download channel 21. It should be noted that a plurality of data modulators 80 are provided, one for each available downlink channel 21. On the other hand, this information is included, along with the appropriate identifier, as part of the elementary digital data stream. Each downstream channel 21 also includes a radio frequency modulator 82 for modulating each television signal to the appropriate channel frequency. Is provided to an apparent rf combiner 84 which receives the outputs from all of the rf modulators 82 and combines them to form a single signal. This signal is then fed to a duplex filter 86 and finally to the distribution network 16.
The duplex filter 86 functions to separate the uplink channel hyperlink information requests received from the subscribers on the transmit link 18 from the downlink television signals. These upstream requests are fed from the duplex filter 86 to a plurality of radio frequency demodulators 87, one for each upstream channel 22, and then to an upstream data receiver 88 which passes the requests to the communications controller 70 for processing by the front end server 50. The network front end controller 89 includes equipment for receiving the television broadcast transmission signals from the second satellite 36 and distributing the transmission signals on the various downlink channels 21.
A noise detector 90 is also preferably provided in the communication controller 70 to detect the noise level on each of the upstream channels 22. If the noise level detected on one upstream channel 22 is too high, then the communications controller 70 can reassign each set-top converter box 20 to another upstream channel 22. On the other hand, the communication controller 70 can direct the affected set-top converter box 20 to transmit at a higher level if desired. Preferably, noise detector 90 includes software that determines the noise level by maintaining statistics corresponding to the number of corrupted data packets received on each upstream channel 22.
Referring now to fig. 3, the circuitry contained in the set-top converter box 20 is shown. In the preferred embodiment, downstream television signals received from distribution network 16 are fed to downstream data extractor 92 via rf tuner 94. In this example, data modulator 80 includes a VBI inserter and decimator 92 includes a VBI decimator. Typically, the rf tuner 94 is user controlled for selecting and demodulating one of the downstream channels 21. In addition, a set-top or terminal processor 96 is provided which is also capable of controlling the radio frequency tuner 94 to select a downstream channel 21 on which to receive the requested hyperlink information in response to information received from the communication controller 70. The decimator 92 removes the inserted channel hyperlink information from the blanking interval of the video signal and passes it to the terminal processor 96. Preferably, the processor 96 also includes software that performs video display data decoding and decompression functions. Additionally, the set-top converter box 20 may include a decoding and/or decompression module 98 disposed between the extractor 92 and the processor 96 that performs this function.
The terminal processor 96 is coupled to a memory bank or module 100 that facilitates various processing functions performed by the processor 96, including the generation and display of video display information from the extracted information on the television display screen 24. The terminal processor 96 also receives channel hyperlink commands entered by the user via the keypad 23. The remote control 23 preferably includes an infrared transmitter 102 that communicates with an infrared receiver 104 contained within the set-top converter box 20. It should of course be understood that any other type of input configuration may be employed, such as a hardwired keyboard or mouse, for inputting channel hyperlink requests. Receiver 104 communicates a channel hyperlink request to terminal processor 96 which identifies the channel to which rf tuner 94 is to be tuned. This information, along with the set-top converter box identification number, is then transmitted to head-end 14 for processing by means of upstream transmitter 106 over transmission link 18.
It should be appreciated that although one embodiment of the present invention is specifically designed for use with analog video signals in which channel hyperlink information is inserted into the vertical blanking interval of the analog video signal, it is also possible to insert information into the horizontal blanking interval and/or the video and audio streams, if desired. These two different configurations are useful, for example, to increase the transmission rate of channel hyperlink information. Furthermore, it is simple to implement the invention using an all digital format, such as MPEG II. In this configuration, the data modulator 90 and the decimator 92 are implemented by respective digital data inserters and extractors that are compatible with the selected digital format.
The transmission of upstream and downstream data between the set-top converter box 20 and the communications controller 70 of the front-end server 50 will now be described with reference to fig. 4-7. Preferably, each upstream channel 22 of the television distribution network 12 is multiplexed into a plurality of upstream time segments, where the time length T of each time segment is equal to the time length T of a single picture field in the downstream video signal, where each picture field includes a picture interval and a vertical blanking interval. According to the USA broadcast protocol, T equals 1/60 seconds. Further preferably, each downlink channel 21 is paired with a plurality of uplink channels 22. In the preferred embodiment of the present invention, up to 4 uplink channels are paired with each downlink channel. Further, preferably, at any one time, each set-top converter box 20 in the system 10 is assigned at least one upstream time period.
?
Referring now to fig. 4, each transmission of downstream data from the communication controller 70 of the front-end server 50 preferably takes the form of at least one downstream data packet 110. As shown, downstream data packet 110 includes a 4-byte Cyclic Redundancy Check (CRC) value based on the remaining downstream data packets 110, where the CRC value is employed to detect any misordering of the data in packet 110. The use of CRC values is well known and, therefore, need not be described further.
Downstream packet 110 also includes 4 SND bytes (SND a-SND), where each SND byte corresponds to an upstream channel associated with the downstream channel on which downstream packet 110 is being transmitted. Each SND byte contains the session ID of the sender (e.g., set-top converter box 20) that is allowed to transmit upstream data in the next upstream time period of the corresponding upstream channel. For example, if the SND B byte has a value of '1', then the set-top converter box 20 that assigned the session ID '1' may transmit in the next upstream time period on the upstream channel corresponding to 'B'. Preferably, if a particular SND byte has a zero value, then any set-top converter box 20 is allowed to transmit for the next corresponding upstream time period, e.g., a new session is requested.
Each downlink data packet 110 also includes four acknowledgement (ACK a-ACK D) bytes, where each ACK byte corresponds to an uplink channel associated with the downlink channel on which the downlink data packet 110 is being transmitted. It should be appreciated that the transmission of each ACK byte is in response to the successful receipt of uplink data on the respective uplink channel during the previous uplink time period. Preferably, each ACK byte includes the session ID of transmitter set-top converter box 20 and a check bit indicating whether the sequence number of the upstream packet being acknowledged is even or odd.
Referring now to fig. 5A, the downstream data packet 110 also includes a 2-byte packet sequence number followed by a multi-byte downstream data payload 112. The downstream data payload 112 includes a 1-byte payload session ID that identifies the session ID of the payload's intended receiver set-top converter box 20; a 2-byte length indicator; and the content of the data being transmitted in the packet. It should be appreciated that although all set-top converter boxes 20 on the downstream channel will receive all downstream data packets 110, a particular set-top converter box 20 will ignore the contents of the data being transmitted in the packets 110 unless the data payload 112 has a payload session ID corresponding to the session ID of the set-top converter box 20.
Preferably, downstream packet 110 periodically has a housekeeping payload 114 instead of a data payload 112, as shown in fig. 5B. As shown, the housekeeping payload 114 includes four channel bytes, each identifying a respective one of the four upstream channels 22 associated with the downstream channel 21 on which the downstream packet 110 is being transmitted. Thus, if the set-top converter box 20 wishes to transmit a channel hyperlink request, the set-top converter box 20 must listen for the housekeeping packets 114 on the downstream channel, which upon receipt can determine how the upstream channel relates to the downstream channel. The set-top converter box 20 can then send a hyperlink request on an associated upstream channel 22.
If the hyperlink request was recently made and acted upon by the channel controller 70, the housekeeping payload 114 also includes a number of hyperlink request Acknowledgements (ACKs). In particular, the housekeeping payload 114 includes a 1-byte indicator of the number of ACKs followed by the individual ACKs. Each ACK includes a 'box ID' corresponding to the unique terminal ID number associated with the requesting set-top converter box 20; a 1-byte session ID identifying the requesting set-top converter box 20 during the channel hyperlink session; a 2-byte downstream channel indicator indicating a downstream channel 21 to which the requesting set-top converter box 20 should tune; and a 1-byte upstream channel indicator that indicates the upstream channel 22 on which the set-top converter box 20 should play.
Referring now to fig. 6, upstream data from the set-top converter box 20 is transmitted in upstream packets 116. As shown, each upstream packet 116 includes a 4-byte CRC value, as with each downstream packet 110; a 1-byte identifier (which has the session ID assigned to the set-top converter box 20) and a check bit indicating whether the upstream packet 110 has an even or odd number of packets; a 1-byte data length indicator indicating the length of the multi-byte upstream payload in packet 116; and a payload. As shown in fig. 7A, the upstream payload has a structure 118 that includes a 2-byte length indicator and the contents of the payload. Figures 7B-7F are examples of the contents of various upstream payloads.
As shown in fig. 7B, the channel hyperlink request 120 from the set-top converter box 20 includes a 1-byte indicator that the upstream packet 116 is a hyperlink request 120; a 2 byte indicator identifying the television channel to which the set-top converter box 20 is currently being tuned; and a 4-byte indicator that identifies the unique box ID of the requesting set-top converter box 20. Upon receiving the channel hyperlink request 20, the front-end server 14 determines the time of the request from the real-time system clock. The front end server 14 then uses the time and television channel number to access the hyperlink database 28, locating the appropriate URL.
As shown in fig. 7C, the upstream acknowledgement payload 122 includes a 1-byte indicator that the upstream packet 116 is an upstream acknowledgement 122, a 2-byte sequence number of the downstream packet 110 being acknowledged, and a 1-byte Acknowledgement (ACK) indicator.
Occasionally, the expected downstream packet 110 is not received, or a packet is received that is garbled or in error. Thus, as shown in fig. 7D, the upstream data packet 116 may contain an upstream retransmission request payload 124 that includes a 1-byte indicator that the upstream data packet 116 is a retransmission request 124 and a 2-byte sequence number of the downstream data packet 110 that must be retransmitted.
If the data being sent upstream by the set-top converter box 20 is a keystroke from a computer-type keyboard or other device, the upstream data packet 116 has an upstream keystroke payload 126, as shown in fig. 7E, which includes a 1-byte indicator indicating that the upstream data packet 116 is a keystroke payload 126 and a 2-byte keystroke code. It should be understood that if the keystroke is from a keyboard, the keystroke code includes information as to whether the CTRL/ALT/SHIFT key was being depressed at the time of the keystroke.
If a user employs a mouse or mouse-like device as an input device, the mouse movement inputs commands to the set-top converter box 20 and the access system 10. Thus, upstream packet 116 may include upstream mouse movement information 128, as shown in FIG. 7F. The mouse movement information 128 includes a 1-byte identifier indicating that the upstream packet 116 is a mouse movement payload 128, a 1-byte mouse click code, a 2-byte mouse X coordinate, and a 2-byte mouse Y coordinate. It should be understood that a one byte mouse click code includes information whether the CTRL/ALT/SHIFT key is being pressed and left, center, and right mouse button information.
Those skilled in the art will appreciate that the specific structure of the downstream and upstream packets 110, 116 may be varied without departing from the spirit and scope of the present invention. For example, if only three uplink channels 22 are allocated to one downlink channel 20, only three SND and three ACK bytes are needed in downlink packet 110 (fig. 4). Likewise, fields in the packets 110, 116 may be added, deleted, or changed in structure or size.
It will be appreciated that noise on the upstream channel is problematic due to the architecture of typical television distribution networks. As a result, the error rate of the known uplink channel can be as high as 1: 100000 to 1: 100. Thus, upstream data packets 116 are preferably kept relatively short to reduce the chance that any one packet will be corrupted by noise. However, it should be noted that in most upstream commands are relatively short: such short upstream packets 116 are not prohibited in the case of mouse movements, keystrokes, etc.
With the access system 10 as described above, the set-top converter box 20 generates a channel hyperlink request in the following manner. Initially, the set-top converter box 20 is tuned to the downstream channel 21 on which the downstream packets 110 are being transmitted and listens to the housekeeping packets 114 to determine which upstream channel 22 is associated with that downstream channel 21. An upstream channel 22 is randomly selected and the hyperlink request 120 is transmitted in an upstream time period that has not been pre-allocated by the respective SND byte. If a hyperlink request Acknowledgement (ACK) is sequentially received for a predetermined number of time periods T (corresponding to the length of the picture field and the length of the uplink period), the hyperlink request is successfully received. If not, then new downstream and upstream channels 21 and 22 may be tried randomly.
In the unlikely event that two set-top converter boxes 20 would send a hyperlink request within the same upstream time period, the communications controller 70 would receive the collision data and neither set-top converter box 20 would receive the ACK. Preferably, each set-top converter box 20 waits a random amount of time to attempt a second hyperlink request. This process is repeated until the communication controller 70 processes the secondary hyperlink request.
Upon acknowledging receipt of the hyperlink session request, the set-top converter box 20 waits for the downstream data packet 110 that has been addressed to the set-top converter box 20 in response to the request. Preferably, each received downstream packet 110 is checked to determine if the packet sequence number is correct. If the sequence number of the data packet is erroneous, a retransmission request 124 is sent with the packet sequence number of the last data packet that was successfully received. Preferably, the front-end server 50 interprets the retransmission request 124 as a request to retransmit the data packets 110 having the retransmission sequence number, and then transmits each data packet 110.
If the retransmission request 124 is sent multiple times without a result, or if the set-top converter box 20 has not received a downstream packet within a predetermined time period, then the set-top converter box 20 can attempt a reconnection. Preferably, in a reconnection attempt, the set-top converter box 20 makes a hyperlink session request 120 on a new upstream channel 22 and the communications controller 70 responds on a different downstream channel 21.
As discussed above, each of downstream packet 110 and upstream packet 116 is quickly Acknowledged (ACK) by the packet recipient as shown in fig. 4 and 7C. It should be appreciated that such a fast ACK is required to address noise issues and provide real-time access to ISP 30. Preferably, the packet sender waits a maximum of two uplink time periods or image fields to receive an ACK from the packet receiver. If the set-top converter box 20 does not receive an ACK at this time, the set-top converter box 20 preferably retransmits the upstream packet 116 seeking acknowledgement. If the set-top converter box 20 is forced to retransmit data a predetermined number of times, a reconnection is preferably made on the new downstream and upstream channels 21 and 22.
In operation of the channel hyperlink system 10, each head end 14 preferably pre-caches HTML data from the ISP30 regarding channel hyperlinks associated with incoming programs prior to broadcast and stores this information in the cache 31. When receiving the video program from satellite 26 and the ID tag stream from second satellite 43, head-end 14 collects the hyperlink ID tag from the data stream, thereby reducing the hardware cost of head-end 14. At any given moment, head end 14 is able to identify the program content of any channel. Head-end 14, upon receiving the URL data from master database 42, may also be able to retrieve the Web information located at the URL address from ISP 30. As discussed above, although it is preferable that this process be performed prior to the video broadcast to facilitate faster processing of the hyperlink request, this process may also be performed in real time, if desired.
If a user watching a program or advertisement on channel a wishes to obtain additional information about the advertised product and television program, for example, the user then presses the channel hyperlink button 25 on the keypad 23 to initiate the request. The terminal processor 96 within the set-top converter box 20 receives the request and transmits it along with the channel and converter box identification information to the head-end 14 for processing.
When the headend 14 receives a channel hyperlink information request from a subscriber, the communication controller 70 passes the channel ID information to the terminal processor 96, which identifies a downstream channel 21 on which the requested channel hyperlink information is to be transmitted. Accordingly, the end processor 96 instructs the rf tuner 94 to switch to the designated channel. The session manager 72 connects the user to an available active browser 74 and the front end processor 54 uses the channel and request time information to perform a lookup operation in the hyperlink database 28. In this example, processor 54 accesses the HTML data of cache 31, which corresponds to the URL information identified by the hyperlink ID tag of channel A at the exact time that the hyperlink request is made. The HTML data is then downloaded by the browser 74 to the user on the selected downstream channel for display on his television set 24. If the multiple active browser and pre-caching features of the present invention are employed, the entire process from actuation of the hyperlink button 25 to display of the downloaded information on the user's television set 24 takes only a few seconds, in view of the fact that the user is quickly connected to an active browser application and the downloaded internet-based hyperlink information has been pre-cached in the cache 31.
Once the user has finished browsing for downloaded information, they either activate the hyperlink button 25 on the keyboard 23, close the web page, or if they are using a mouse-type input device, they point to a back or exit button on the television display screen and click. Accordingly, the session manager 72 closes the browser application 74 that has been authorized for the user, and the terminal processor 96 switches the tuner 94 back to the previously selected channel so that the user can resume viewing the video broadcast.
In summary, the present invention provides a convenient, user-friendly device that enables users to quickly access other information that is internet-based or related to the content of a currently viewed television broadcast program and view the information on their television sets without requiring expensive computer systems or the skill necessary to operate such systems. It should be appreciated that while the preferred embodiment of the present invention is specifically designed for accessing program content associated with internet-based information in a cable or other television distribution system, the channel hyperlink concepts of the present invention embodied in the preferred embodiment may be applied to any type of communication medium in which one or more messages containing a transmitted signal are played or received by one or more users who are able to initiate a hyperlink request to access other information associated with the information contained in the transmitted signal. For example, the concept of hyperlinks may also be applied to radio broadcasts, where users employing personal computers or the like can hyperlink to other information that is internet-based or specific to the currently received radio broadcast. Likewise, the hyperlink concept may be applied to a pager signal distribution system where a user can hyperlink to an information source containing information that the pager signal transmitter wishes the receiver to access upon receipt of a predetermined pager signal.
In view of the foregoing, it will therefore be understood that the scope of the invention as defined by the following claims is not limited to the preferred embodiments, and that numerous additional changes and modifications may be made thereto without departing from the spirit and scope of the invention as defined by the following claims.