TELEVISION SYSTEM ADAPTED TO FUNCTION AS SERVER FOR DISTRIBUTING BROADCASTED STAND-ALONE APPLICATIONS

Abstract: A television system that is configured to function as a server for distributing broadcasted stand-alone applications to an external device. The broadcasted stand-alone application can be included in a broadcast program video signal or in a data stream broadcast over a dedicated data delivery channel. In a presently contemplated implementation, the broadcasted stand-alone application is a Java applet and the external device is Java-enabled. In one embodiment, the television system stores the stand-alone application prior to transmission to the external device, and displays application identification information sufficient to inform a viewer of different stand-alone applications that are available for downloading to the external device. The television system also preferably provides a mechanism for enabling the viewer to select any one or more of the different stand-alone applications that are available for downloading to the external device. In a particularly contemplated embodiment, the external device is an intelligent remote controller, e.g., the Philips "Pronto" iRCD.

Description: Television system adapted to function as server for distributing broadcasted stand-alone applications. BACKGROUND OF THE INVENTION The present invention relates generally to television systems, and more particularly, to a television system that is adapted to distribute broadcasted stand-alone applications (e.g., Java applets) to external devices, such as intelligent remote control devices (iRCDs), Personal Digital Assistants (PDAs), stand-alone game machines, and the like. Computers that are adapted or configured to distribute files, applications, and data to other computers or devices, e.g., via a network (such as a LAN, WAN, the Internet, etc.), are commonly referred to as "servers". Servers of a wide variety of different types and configurations are well-known. Interactive television systems that receive and re-transmit interactive program information to a remote, hand-held device to enable the television system user/viewer to interact with a game, sports, education, or other broadcast television program are also well- known. For example, U.S. Patent Number 4,592,546, issued on June 3, 1986, discloses an interactive television system in which interactive program information is inserted in the Vertical Blanking Interval (VBI) of a broadcast NTSC television signal, received by the television receiver or set-top box, and then downloaded to a viewer's hand-held device. The interactive program information includes game play or other interactive instructions that enable the viewer to use the hand-held device to play a game of skill with remote participants in conjunction with a live event. The disclosure of U.S. Patent Number 4,592,546 is herein incorporated by reference, in its entirety, for all purposes. U.S. Patent Number 5,343,239, issued to Lappington et al. on August 30, 1994, discloses a transaction-based interactive television system that enables a viewer to interactively participate in an interactive television program while channel surfing between programs, without any discontinuity. The interactive program information is inserted in the VBI of the broadcast television signal and is received and decoded by a set-top decoder, which then transmits the decoded program information via an infrared (IR) link to a handheld device. The hand-held device is designed to run a proprietary high level command language that executes a command or instruction data stream delivered thereto by the set-top decoder via the IR link, in order to thereby enable the viewer to participate in the interactive program. The disclosure of U.S. Patent Number 5,343,239 is herein incorporated by reference, in its entirety, for all purposes. However, the presently available technology does not provide a television system that is adapted to distribute broadcasted stand-alone applications (e.g., Java applets) to external devices, such as intelligent remote control devices (iRCDs), Personal Digital Assistants (PDAs), stand-alone game machines, and the like. This constitutes a significant shortcoming of the presently available technology. Based upon the above and foregoing, it can be appreciated that there presently exists a need in the art to overcome the above-identified significant shortcoming of the presently available technology. The present invention fulfills this need in the art. SUMMARY OF THE INVENTION The present invention encompasses, in one of its aspects, a television system that is configured to function as a server for distributing broadcasted stand-alone applications to an external device. The broadcasted stand-alone application can be included in a broadcast program video signal or in a data stream broadcast over a dedicated data delivery channel. In a presently contemplated implementation, the broadcasted stand-alone application is a Java applet and the external device is Java-enabled. In one embodiment, the television system stores the stand-alone application prior to transmission to the external device, and displays application identification information sufficient to inform a viewer of different stand-alone applications that are available for downloading to the external device. The television system also preferably provides a mechanism for enabling the viewer to select any one or more of the different stand-alone applications that are available for downloading to the external device. In a particularly contemplated embodiment, the external device is an intelligent remote controller, e.g., the Philips "Pronto" iRCD. In one embodiment, the lifetime of the stand-alone application is tied to a duration of time that a viewer remains tuned to the selected channel. In another embodiment, the stand-alone application is broadcasted over a premium or a pay-per-view channel. In yet another embodiment, the stand-alone application includes advertising content. In another of its aspects, the present invention encompasses a television system that includes a data processor; a memory; a tuner that is selectively tunable to a selected channel over which a signal that includes stand-alone applications are broadcast; a data extractor that is adapted to extract the broadcast stand-alone applications from the signal received by the tuner, and to supply the extracted stand-alone applications to the data processor; a transmitter; and, a television display. The data processor is programmed to store the extracted stand-alone applications in the memory, to selectively retrieve the stand-alone applications from the memory, and to supply the retrieved stand-alone applications to the transmitter. The transmitter is adapted to transmit the retrieved stand-alone applications that it receives from the data processor, to an external device. In a presently contemplated embodiment, the data processor is programmed to create and maintain a separate file for each stand-alone application that it stores in the memory, including sufficient information to enable a viewer to identify the stand-alone application, or at least to create an organized database of the stand-alone applications that is stores in the memory, including sufficient application identification information to enable a viewer to identify the stand-alone application. Preferably, the data processor is programmed to retrieve and display the application identification information on the television display in order to enable the viewer to identify the stand-alone applications that are available for downloading. In one embodiment, the television system further includes an additional tuner, and the data processor is further programmed to periodically tune the additional tuner to the selected channel, whereby the stand-alone applications broadcast over the selected channel are periodically extracted and stored in the memory. In yet another of its aspects, the present invention encompasses a method that includes receiving a broadcasted stand-alone application at a television system, and transmitting the received broadcasted stand-alone application from the television system to an external device. In one embodiment, the method further includes storing the received broadcasted stand-alone application prior to transmitting the received broadcasted stand-alone application from the television system to an external device. BRIEF DESCRIPTION OF THE DRAWINGS The above and other objects, features, and advantages of the present invention will become apparent from the following detailed description read in conjunction with the accompanying drawing, in which the FIGURE depicts a functional block diagram of a television system constructed in accordance with an exemplary embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION The following terms, as used herein throughout, including the specification and the claims, are hereby defined as follows: (A) "television system" is intended to mean and encompass any type of broadcast television system whose primary purpose is to receive and display broadcast video signals, including, but not limited to, any type of digital, analog, or hybrid air, cable, or satellite broadcast television system. Further, the term "television system" is intended to mean and encompass a television receiver and/or a cable or satellite set-top converter and/or decoder box, and any appurtenant hardware that enables the reception and display of a broadcast video signal; (B) "broadcast" is intended to mean and encompass the transmission ("casting") of any digital, analog, or hybrid signal over any medium (e.g., air, cable, fiber optic, wire, wireless, etc.) to a multiple ("broad") number of television systems, and is not limited to any particular type of signal or transmission medium; (C) "data processor" is intended to mean and encompass any type of data processor, including, but not limited to, digital signal processors (DSPs), microcontrollers, microprocessors, state machines, field programmable logic arrays (FPLAs), field programmable gate arrays (FPGAs), and any other machine, apparatus, device, circuit, or circuit elements that are capable of receiving and processing any type of data; (D) "stand-alone application" is intended to mean and encompass any executable software code, computer program or applet that can be independently executed and run by a recipient device without any further interaction between the user of the recipient device and the television system, i.e., without any required further involvement of the television system; and, (E) "external device" is intended to mean and encompass any device that is external to the essential components of the television system that are required to enable the television system to receive and display video signals, including, but not limited to, a remote control device (RCD) (also sometimes referred to as the remote control unit (RCU) or remote controller (RC)) that is used by a television viewer to operate the television system (e.g., the "Pronto" intelligent RC sold by Philips Electronics); a stand-alone hand-held device such as a personal video game machine (e.g., the "Game Boy" personal video game machine sold by Nintendo), or a Personal Digital Assistant (PDA) (e.g., the "Nino" PDA sold by Philips Electronics); or any other machine or device that is equipped with a data processor that is capable of running a stand-alone application. In overview, the present invention relates to and encompasses a television system that is configured, programmed, or adapted to function as a server for distributing broadcast stand-alone applications (e.g., Java applets) to an external device. In accordance with the present invention, the television system receives stand-alone applications via a broadcast channel (e.g., in the VBIs of a broadcast television program signal) or via separate digital data feeds or broadcasts (e.g., through one or more channels dedicated to digital data deliver}' services), or the like. In a presently contemplated implementation, the television system stores the received stand-alone applications in a local memory and then displays the title and/or category and/or descriptions of the stored, stand-alone applications, either automatically when a viewer tunes to a particular channel or channels and or upon request by the viewer, to thereby allow the viewer to select any one or more of the stored stand-alone applications for downloading to the external device. Of course, the external device and the television system must communicate with one another using a mutually understood communications protocol, e.g., a standard communications protocol such as the infrared (IR) RC5 protocol. After the external device has downloaded the stand-alone application from the television system (server), it can execute and run the downloaded, stand-alone application without any further viewer- or machine- interaction with the television system. For example, to illustrate the point, the viewer can download a video game to a stand-alone video game machine, then take the stand-alone video game machine on a vacation to a remotely distant location, and then play the downloaded video game while on vacation. In other words, the external device would be equipped with the appropriate engine and resources to interpret and run (i.e., execute) the downloaded stand-alone application without having to receive any further information or instructions from the television system, and without the viewer having to interact with a television program being broadcast over the television system. The stand-alone applications could be written in any appropriate programming language, although it is presently contemplated that Java or other open-platform ("universal") programming language that can be universally understood and run by any "Java-enabled" device, would preferably be utilized. In this connection, Java applets can be easily and efficiently disseminated with the television system of the present invention without any major hardware modifications to existing and readily available television system hardware. Of course, depending upon the desired data rate, available bandwidth, particular application, and/or various other factors, a higher-level and/or proprietary programming language may be deemed most appropriate. In this regard, the present invention is not limited to any particular hardware and/or software implementation or environment. With reference now to the FIGURE, there can be seen a functional block diagram of a television system 10 constructed in accordance with an exemplary embodiment of the present invention. The television system 10 includes: a data processor 20 (which can conveniently be, but is not limited to, the system microprocessor that resides in the television receiver or set-top box); a memory 30 (e.g., a DRAM, SRAM, EEPROM, flash memory, or other type of semiconductor memory device, which can suitably be either separate from or part of the data processor 20); a tuner 40 (of course, television systems with more than one tuner, e.g., Picture-In-Picture (PIP) systems, are also possible); a data extractor/converter 50 (e.g., a decoder, descrambler and/or decryption engine); a remote controller (RC) interface (I/F) module 60 that receives control signals (e.g., IR RC5 protocol commands) from a remote controller 70 and interprets and translates the received control signals, and then transmits the translated control signals (e.g., commands) to the appropriate logic elements within the television receiver and/or set-top box (e.g., the data processor 20), to effectuate control of designated functions or operations of the television system 10; a transmitter 75 that is capable of transmitting (e.g., via IR, RF, and/or other signaling techniques) digital data streams to an external device equipped with a compatible receiver (the transmitter 75 can be part of the RC I/F module 60 - - whether it is separate from or part of the RC I/F module 60 is not limiting to the present invention); and, a television display 80 (e.g., a CRT). In accordance with a presently contemplated exemplary implementation of the present invention, the tuner 40 is tuned to a channel selected by the viewer to receive a broadcast program video signal which includes a stand-alone application(s), e.g., a Java applet(s). The data extractor/converter 50 functions to extract the stand-alone application(s) from the broadcast program video signal (e.g., by descrambling, decoding, decrypting and/or translating/converting the digital data extracted from the broadcast program video signal), and to then supply the extracted stand-alone application(s) to the data processor 20. The data processor 20 can be programmed to recognize the extracted stand-alone applications that it receives from the data extractor/converter 50, and to then store the stand-alone applications in an organized manner in the memory 30 to create an easily searchable applications database. In this regard, a separate application file or record can be created and maintained for each stand-alone application received, with each application file or record containing different data fields describing different characteristics or aspects of the stand- alone application stored therein. For example, the title of the stand-alone application can be specified in one data field; the category (e.g., game, educational, business, entertainment and/or other application categories) of the stand-alone application can be specified in another data field; the resources required to run the stand-alone application, e.g., the memory and processor speed requirements, and the programming language (e.g., Java) used to code the stand-alone application, can be specified in another data field; pricing information for the stand-alone application can be specified in another data field; the length of the data field containing the code for the stand-alone application can be specified in another data field; a brief description of the content of the stand-alone application can be specified in another data field; an advertisement data field can be used for storing targeted advertising to at least partially offset the cost of the product (i.e., the stand-alone application); and/or terms and conditions for use and/or purchase of the stand-alone application can be specified in yet another data field. Of course, the manner in which the database is organized, including the number and types of data fields employed, is not limiting to the present invention. In fact, an implementation of the present invention is possible in which the stand-alone applications are extracted from the broadcast program video signal (or received via a separate data feed or broadcast digital data delivery service channel) and then directly forwarded to the external device (i.e., without being first sent to the data processor and without any involvement of the data processor); or alternatively, in which the stand-alone applications are temporarily stored (e.g., in an asynchronous FIFO buffer memory), and then forwarded to the external device. Returning to the exemplary implementation depicted in the FIGURE, when the viewer tunes to the selected channel(s) over which the stand-alone applications are broadcast, the television system 10 can be programmed to automatically display a "menu" listing the stand-alone applications that are available for downloading (e.g., by title and/or category and/or content description, etc.) when the viewer tunes to that channel(s) and/or the television system 10 can be programmed to only display the "menu" listing the stand-alone applications that are available for downloading upon request from the viewer, e.g., based upon commands issued by the viewer through a remote controller 90 which can suitably be of conventional design and construction. The viewer can then select (e.g., using the directional arrow keys and the "Enter" key on the remote controller 90) the stand-alone application or applications that he/she chooses to download, whereby the selected stand-alone application(s) will then be downloaded by the television system 10 to an external device. As was mentioned previously, the remote controller 90 can also function as the external device, e.g., the Philips "Pronto" intelligent remote controller, but this is certainly not limiting to the present invention. For example, the remote controller 90 can be a standard remote controller that does not have the capability of executing (running) downloaded standalone applications, but which is only used by the viewer in the conventional manner to operate the television system, i.e., to issue commands to the television system via an IR or RF or other communication link, in which case, a separate external device must be used to download and run the stand-alone applications. Alternatively, the remote controller can be used to download (and store, if desired) the stand-alone applications, and to then re-transmit them (e.g., at a later time) to another external device. The external device must have the capability of receiving data transmitted by the television system (i.e., to download the stand-alone applications), and must have the capability of interpreting and running the executable code of the stand-alone applications that it downloads. In this regard, as was previously mentioned, the external device can be an intelligent remote controller (RC) (such as the "Pronto" intelligent RC sold by Philips Electronics); a stand-alone hand-held device such as a personal video game machine (e.g., the "Game Boy" personal video game machine sold by Nintendo), or a Personal Digital Assistant (PDA) (e.g., the "Nino" PDA sold by Philips Electronics); or any other machine or device that is equipped with a data processor that is capable of running a stand-alone application. As was also mentioned previously, in a presently contemplated implementation of the present invention, the stand-alone applications are Java applets, thus necessitating that the external device be Java-enabled for this implementation. In the exemplary implementation of the present invention depicted in the FIGURE, the remote controller 90 also serves as the external device, although this is of course not limiting to the present invention. It is presently contemplated that the Philips "Pronto" intelligent RC would be particularly suited for this application, since it has a built-in touch-screen display, both receive and transmit IR ports, a programmable data processor, and a recharging/communications dock. In PIP-equipped television systems, the system can be programmed to periodically tune the "secondary" tuner (i.e., the tuner not being used to tune to the primary channel of interest to the viewer, e.g., the "larger" picture) to the particular channel(s) over which the stand-alone applications are broadcast, e.g., at fixed periodic intervals and/or whenever it is detected that the PIP mode is not invoked by the viewer (whereby the "secondary" tuner is available for use). In this manner, a repository of currently available stand-alone applications will always remain immediately available for downloading without the viewer having to incur any delay or wait. Several techniques are presently contemplated for financially rewarding the provider of the broadcast stand-alone applications (e.g., the cable system operator, the cable network, the application originator or distributor, or any other entity) to thereby promote the economic viability of this system. For example, the lifetime of each downloaded stand-alone application could be tied to the time that the viewer stays tuned to a particular channel (or set of channels), e.g., the channel over which the stand-alone application was broadcast, to thereby capture or bind the viewer to that particular channel(s) for the period of time that the viewer is running the downloaded stand-alone application. For example, a disable/kill/delete command could be executed to end the application upon the viewer switching channels or turning the television system off. A television or cable network could use this mechanism to increase their viewership, which translates into higher advertising revenues. Alternatively, or additionally, the broadcast stand-alone applications can be delivered via a premium channel(s) that the viewer would have to subscribe to (i.e., would have to pay for) and/or via a pay-per-view channel(s), whereby the viewer would have to pay for the broadcast stand-alone application(s) that he/she selects (the applications could be sold individually or in "packages" or the viewer could pay a fixed price for a prescribed period of time (e.g., one or two hours) during which the viewer would be free to download any application from the menu). Alternatively, or additionally, advertising content could be embedded into the broadcast stand-alone applications so that the supplier of the applications could generate significant advertising revenues upon distribution of the applications (e.g., each advertiser could pay a fixed amount per customer that downloads the application in which their advertisement(s) is contained). Although presently contemplated and exemplary embodiments and implementations of the present invention have been described in detail hereinabove, it should be clearly understood that many variations and/or modifications of the basic inventive concepts taught herein, which may appear to those skilled in the pertinent art, will still fall within the spirit and scope of the present invention, as defined in the appended claims.

Claims: CLAIMS: 1. A television system (10) mat is configured to function as a server for distributing broadcasted stand-alone applications to an external device (90). 2. The television system (10) as set forth in Claim 1, wherein the broadcasted stand-alone application is a Java applet and the external device (90) is Java-enabled. 3. The television system (10) as set forth in Claim 1, wherein the external device (90) comprises an intelligent remote controller. 4. A television system (10), comprising: a data processor (20); a memory (30); a tuner (40) that is selectively tunable to a selected channel over which a signal that includes stand-alone applications are broadcast; a data extractor (50) that is adapted to extract the broadcast stand-alone applications from the signal received by the tuner (40), and to supply the extracted standalone applications to the data processor (20); a transmitter (75); a television display (80); wherein the data processor (20) is programmed to store the extracted standalone applications in the memory (30), to selectively retrieve the stand-alone applications from the memory (30), and to supply the retrieved stand-alone applications to the transmitter (75); and, wherein the transmitter (75) is adapted to transmit the retrieved stand-alone applications that it receives from the data processor (20), to an external device (90). 5. The television system (10) as set forth in Claim 4, wherein the data processor (20) is programmed to create and maintain a separate file for each stand-alone application that it stores in the memory (30), including sufficient information to enable a viewer to identify the stand-alone application. 6. The television system (10) as set forth in Claim 4, wherein the data processor (20) is programmed to create an organized database of the stand-alone applications that is stores in the memory (30), including sufficient application identification information to enable a viewer to identify the stand-alone application. 7. The television system (10) as set forth in Claim 6, wherein the data processor (20) is programmed to retrieve and display the application identification information on the television display (80) in order to enable the viewer to identify the stand-alone applications that are available for downloading. 8. The television system (10) as set forth in Claim 4, further comprising an additional tuner, wherein the data processor (20) is programmed to periodically tune the additional tuner to the selected channel, whereby the stand-alone applications broadcast over the selected channel are periodically extracted and stored in the memory (30). 9. The television system (10) as set forth in Claim 4, wherein the lifetime of at least selected ones of the stand-alone applications is tied to a duration of time that a viewer remains tuned to the selected channel. 10. The television system (10) as set forth in Claim 4, wherein the selected channel is a premium channel or a pay-per-view channel. 11. The television system (10) as set forth in Claim 4, wherein at least selected ones of the stand-alone applications include advertising content. 12. A method, comprising: receiving a broadcasted stand-alone application at a television system (10); and, transmitting the received broadcasted stand-alone application from the television system (10) to an external device (90). 13. The method as set forth in Claim 12, further comprising storing the received broadcasted stand-alone application prior to transmitting the received broadcasted standalone application from the television system (10) to an external device (90). 14. The method as set forth in Claim 12, wherein the broadcasted stand-alone application is a Java applet and the external device (90) is Java-enabled.

Inventors: LEERMAKERS RENE, LEERMAKERS, RENE
Applicants: KONINKL PHILIPS ELECTRONICS NV, KONINKLIJKE PHILIPS ELECTRONICS N.V.
Application year: 2000
Main classification: H04N5
IPC codes: G06F13, H04H1, H04N5, H04N7