AU740740B2 - Data processing system - Google Patents
Data processing system Download PDFInfo
- Publication number
- AU740740B2 AU740740B2 AU27709/97A AU2770997A AU740740B2 AU 740740 B2 AU740740 B2 AU 740740B2 AU 27709/97 A AU27709/97 A AU 27709/97A AU 2770997 A AU2770997 A AU 2770997A AU 740740 B2 AU740740 B2 AU 740740B2
- Authority
- AU
- Australia
- Prior art keywords
- receiver
- decoder
- application
- receiving
- decoder according
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
- 238000012545 processing Methods 0.000 title claims description 7
- 238000000034 method Methods 0.000 claims description 52
- 230000008569 process Effects 0.000 claims description 40
- 230000008878 coupling Effects 0.000 claims description 2
- 238000010168 coupling process Methods 0.000 claims description 2
- 238000005859 coupling reaction Methods 0.000 claims description 2
- 230000015654 memory Effects 0.000 description 24
- 230000006870 function Effects 0.000 description 20
- 230000002452 interceptive effect Effects 0.000 description 14
- 238000004148 unit process Methods 0.000 description 7
- 230000009471 action Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000000881 depressing effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000006163 transport media Substances 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/409—Device specific authentication in transaction processing
- G06Q20/4097—Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
- G06Q20/40975—Device specific authentication in transaction processing using mutual authentication between devices and transaction partners using encryption therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/007—Transform coding, e.g. discrete cosine transform
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F17/00—Coin-freed apparatus for hiring articles; Coin-freed facilities or services
- G07F17/0014—Coin-freed apparatus for hiring articles; Coin-freed facilities or services for vending, access and use of specific services not covered anywhere else in G07F17/00
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
- G11C16/105—Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N17/00—Diagnosis, testing or measuring for television systems or their details
- H04N17/004—Diagnosis, testing or measuring for television systems or their details for digital television systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/4367—Establishing a secure communication between the client and a peripheral device or smart card
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44236—Monitoring of piracy processes or activities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8166—Monomedia components thereof involving executable data, e.g. software
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/162—Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
- H04N7/163—Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing by receiver means only
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/167—Systems rendering the television signal unintelligible and subsequently intelligible
- H04N7/1675—Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17318—Direct or substantially direct transmission and handling of requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/426—Internal components of the client ; Characteristics thereof
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Accounting & Taxation (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- General Business, Economics & Management (AREA)
- General Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Quality & Reliability (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Discrete Mathematics (AREA)
- Virology (AREA)
- Biomedical Technology (AREA)
- Computer Graphics (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Circuits Of Receivers In General (AREA)
- Stored Programmes (AREA)
Description
WO 98/43433 PCT/EP97/02116 -1- DATA PROCESSING SYSTEM The present invention relates to receiver/decoders for digital television systems.
The advent of digital transmission systems intended primarily for broadcasting television signals, in particular but not exclusively satellite television systems, has opened up the possibility of using such systems for other purposes. One of these is to provide interactivity with the end user.
The present invention finds specific application in abroadcast digital television system in which received signals are passed through a receiver to a receiver/decoder and thence to a television set. The receiver/decoder decodes a compressed MPEG-type signal into a television signal for the television set. It is controlled by a remote controller handset, through an interface in the receiver/decoder.
One way of providing the interactivity described above is to run an application on the receiver/decoder through which the television signal is received. The code for the application could be permanently stored in the receiver/decoder. However, this would be rather limiting. Preferably, the receiver/decoder should be able to download the code for a required application. In this way, more variety may be provided, and applications can be updated as required without any action on the part of the user.
It is desirable to allow a number of different manufacturers to manufacture the receiver/decoder. Obviously all the manufacturers must satisfy certain common functional specifications, but subject to that, it is desirable to permit them to make their own choices with regard to the details of their designs, including the details of the hardware. However, the overall functioning of the receiver/decoder, and in particular the functional manner in which it processes applications, must be identical for all decoder/receivers. The design of those parts of its control system concerned with processing applications must therefore be common to all receiver/decoders, and should be the responsibility of the system operator rather than the hardware manufacturers.
-2- Summary of the Invention In accordance with one aspect of the invention there is disclosed a receiver/decoder for receiving broadcast signals, said receiver/decoder comprising: means for receiving signals from a plurality of ports and providing data to said ports; at least one application for controlling a function of the receiver/decoder in accordance with the received signals; and a virtual machine for processing data received from the receiving means and returning data thereto, wherein said virtual machine comprises an interpreter for interpreting said at least one application and executing said at least one interpreted application in accordance with the data received from said receiving means to control said function of the receiver/decoder.
Preferably the virtual machine means comprise an operating engine, a library of oo:o routines, an interpreter, storage means for storing a plurality of instruction sequences, 5 queue management means, and buffer management means.
Preferably, the receiver/decoder further comprises a plurality of interfaces for coupling to external units, said device manager means comprising at least one device means associated with either at least one interface or with at least one function of the •o receiver/decoder. Preferably also the device manager means include at least one device oo•• 20 means coupled to at least one device driver.
go Preferably the receiver/decoder includes a plurality of application sources each for providing an application for controlling the receiver/decoder and/or the television, and wherein the operating engine is located between the application sources and the logical device means, and includes queue means for receiving events generated through the device manager means and passing them to the engine. Preferably the operating engine comprises a plurality of process sequencer units associated with the device means, and means for extracting events from the queue means and actuating the associated process sequencer units accordingly. Preferably also there are filter means for matching an event against a list of event types before entering the event in the queue means. Preferably also the receiver/decoder further includes means for storing at least one application.
[R:\LIBOO]051 -3- Brief Description of the Drawings Preferred features of the present invention will now be described, purely by way of example, with reference to the accompanying drawings, in which: Figure 1 shows the overall architecture of a digital television system according to the preferred embodiment of the present invention; Figure 2 shows the architecture of an interactive system of the digital television system; Figure 3 shows the arrangement of files within a module downloaded into the memory of an interactive receiver/decoder; Figure 4 is a schematic diagram of interfaces of the receiver/decoder; Figure 5 shows the arrangement of memory volumes of the memory of the .•interactive receiver/decoder; Figure 6 is a functional block diagram of the receiver/decoder; and 0o00 Figure 7 shows certain components of the virtual machine and run time engine in more detail.
o Detailed Description An overview of a digital television system 1000 is shown in Figure 1. The i preferred embodiment of the invention includes a mostly conventional digital television system 2000 which uses the known MPEG-2 compression system to transmit compressed 20 digital signals. In more detail, MPEG-2 compressor 2002 in a broadcast centre receives a digital signal stream (typically a stream of video signals). The compressor 2002 is connected to a multiplexer and scrambler 2004 by linkage 2006. The multiplexer 2004 receives a plurality of further input signals, assembles one or more transport streams and transmits compressed digital signals to a transmitter 2008 of the broadcast centre via linkage 2010, which can of course take a wide variety of forms including telecom links.
The transmitter 2008 transmits electromagnetic signals via uplink 2012 towards a satellite transponder 2014, where they are electronically processed and broadcast via notional downlink 2016 to earth receiver 2018, conventionally in the form of a disk owned or rented by the end user. The signals received by receiver 2018 are transmitted to an integrated receiver/decoder 2020 owned or rented by the end user and connected to the end user's television set 2022. The receiver/decoder 2020 decodes the compressed MPEG-2 signal into a television signal for the television set 2022.
[R:\LIBOO]05150.doc:iad A conditional access system 3000 is connected to the multiplexer 2004 and the receiver/decoder 2020, and is located partly in the broadcast centre and partly in the decoder. It enables the end user to access digital television broadcasts from one or more broadcast suppliers. A smartcard, capable of deciphering messages relating to s commercial offers (that is, one or several television programmes sold by the broadcast supplier), can be inserted into the receiver/decoder 2020. Using the decoder 2020 and i •go 0o ogo [R:\LIBOO]051 WO 98/43433 PCT/EP97/02116 smartcard, the end user may purchase commercial offers in either a subscription mode or a pay-per-view mode.
An interactive system 4000, also connected to the multiplexer 2004 and the receiver/decoder 2020 and again located partly in the broadcast centre and partly in the decoder, enables the end user to interact with various applications via a modemmed back channel 4002.
Figure 2 shows the general architecture of the interactive television system 4000 of the digital television system 1000 of the present invention.
For example, the interactive system 4000 allows an end user to buy items from onscreen catalogues, consult local news and weather maps on demand and play games through his television set.
The interactive system 4000 comprises in overview four main elements: an authoring tool 4004 at the broadcast centre (or elsewhere) for enabling a broadcast supplier to create, develop, debug and test applications; an application and data server 4006 the broadcast centre, connected to the authoring tool 4004 for enabling a broadcast supplier to prepare, authenticate and format applications and data for delivery to the multiplexer and scrambler 2004 for insertion into the MPEG-2 transport stream (typically the private section thereof) to be broadcast to the end user; a virtual machine including a run time engine (RTE) 4008, which is an executable code installed in the receiver/decoder 2020 owned or rented by the end user for enabling an end user to receive, authenticate, decompress, and load applications into the working memory 2024 of the receiver/decoder 2020 for execution. The engine 4008 also runs resident, general-purpose applications. The engine 4008 is independent of the hardware and operating system; and a modemmed back channel 4002 between the receiver/decoder 2020 and the application and data server 4006 to enable signals instructing the server 4006 to insert data and applications into the MPEG-2 transport stream at the request of the end user.
WO 98/43433 PCT/EP97/02116 -6- The interactive television system operates using "applications" which control the functions of the receiver/decoder and various devices contained therein. Applications are represented in the engine 4008 as "resource files". A "module" is a set of resource files and data. Several modules may be required to make up an application. A "memory volume" of the receiver/decoder is a storage space for modules. An "interface" is used to download modules. Modules may be downloaded into the receiver/decode 2020 from the MPEG-2 transport stream.
The elements mentioned in the previous paragraph are now described in more detail.
For the purposes of this specification, an application is a piece of computer code for controlling high level functions of preferably the receiver/decoder 2020. For example, when the end user positions the focus of a remote controller on a button object seen on the screen of the television set 2022 and presses a validation key, the instruction sequence associated with the button is run.
An interactive application proposes menus and executes commands at the request of the end user and provides data related to the purpose of the application. Applications may be either resident applications, that is, stored in the ROM (or FLASH or other non-volatile memory) of the receiver/decoder 2020, or broadcast and downloaded into the RAM or FLASH memory of the receiver/decoder 2020.
Examples of applications are:- An Initiating Application. The receiver/decoder 2020 is equipped with a resident initiating application which is an adaptable collection of modules (this term being defined in more detail hereunder) enabling the receiver/decoder 2020 to be immediately operative in the MPEG-2 environment. The application provides core features which can be modified by the broadcast supplier if required. It also provides an interface between the resident application and downloaded applications.
0 A Startup Application. The startup application allows any application, either WO 98/43433 PCT/EP97/02116 -7downloaded or resident, to run on the receiver/decoder 2020. This application acts as a bootstrap executed on arrival of a service in order to start the application. Startup is downloaded into RAM and therefore can be updated easily. It can be configured so that'the interactive applications available on each channel can be selected and run, either iminediately after downloading or after preloading. In the case of preloading, the application is loaded into the memory 2024 and is activated by the startup when required.
0 A Program Guide. The Program Guide is an interactive application which gives full information about programming. For example, it may give information about, say, one week's television programmes provided on each channel of a digital television bouquet. By depressing a key on the remote controller 2026, the end user accesses an add-on screen, overlaid on the event shown on the screen of the television set 2022. This add-on screen is a browser giving information on the current and next events of each channel of the digital TV bouquet. By depressing another key on the remote controller 2026, the end user accesses an application which displays a list of information on events over one week. The end user can also search and sort events with simple and customised criteria. The end user can also access directly a selected channel.
e A Pay Per View application. The Pay Per View Application is an interactive service available on each PPV channel of the digital TV bouquet in conjunction with the conditional access system 3000. The end user can access the application using a TV guide or channel browser. Additionally, the application starts automatically as soon as a PPV event is detected on the PPV channel. The end user is then able to buy the current event either through his daughter smartcard 3020 or via the communication server 3022 (using a modem, a telephone and DTMF codes, MINITEL or the like). The application may be either resident in the ROM of the receiver/decoder 2020 or downloadable into the RAM of the decoder 2020.
A PC Download application. On request, an end user can download computer software using the PC download application.
0 A Magazine Browser application. The magazine browser application comprises WO 98/43433 PCT/EP97/02116 -8a cyclic video broadcast of images with end user navigation via on-screen buttons.
A Quiz application. The quiz application is preferably synchronised with a broadcast quiz programme. As an 'example, multiple choice questions are displayed on the screen of the television 2022, and the user can select an answer using the remote controller 2026. The quiz application can. inform the user whether the answer is correct or not, and can keep count of the user's score.
A Teleshopping application. In one example of the teleshopping application, offers of goods for sale are transmitted to the receiver/decoder 2020 and displayed on the television 2022. Using the remote controller, the user can select a particular item to buy. The order for the item is sent via the modemmed back channel 4002 to the application and data server 4006 or to a separate sales system the telephone number of which has been downloaded to the receiver/decoder, possibly with an order to debit the account for a credit card which has been inserted into one of the card readers 4036 of the receiver/decoder 2020.
A Telebanking application. In one example of the telebanking application, the user inserts a bank card into one of the card readers 4036 of the receiver/decoder 2020. The receiver/decoder 2020 dials up the user's bank, using a telephone number stored in the bank card or stored in the receiver/decoder, and then the application provides a number of facilities which can be selected using the remote controller 2026, for example for downloading via the telephone line a statement of account, transferring funds between accounts, requesting a cheque book, etc.
An Internet Browser application. In one example of the Intemrnet browser application, instructions from the user, such as a request to view a web page having a particular URL, are entered using the remote controller 2026, and these are sent by the modemmed back channel 4002 to the application and data server 4006. The appropriate web page is then included in the transmissions from the broadcast centre, received by the receiver/decoder 2020 via the uplink 2012, transponder 2014 and downlink 2016, and displayed on the television WO 98/43433 PCT/EP97/02116 -9- 2022.
Applications are stored in memory locations in the receiver/decoder 2020 and represented as resource files. The resource files comprise graphic object description unit files, variables block unit files, instruction sequence files, application files and data files.
The graphic object description unit files describe the screens, the man-machine interface of the application. The variables block unit files describe the data structures handled by the application. The instruction sequence files describe the processing operations of the applications. The application files provide the entry points for the applications.
The applications constituted in this way can use data files, such as icon library files, image files, character font files, colour table files and ASCII text files. An interactive application can also obtain on-line data by effecting inputs and/or outputs.
The engine 4008 only loads into its memory those resource files it needs at a given time. These resource files are read from the graphic object description unit, instruction sequence and application files; variables block unit files are stored in memory following a call to procedure for loading modules and remain locked there until a specific call to a procedure for unloading modules is made.
With reference to Figure 3, a module 4010, such as a tele-shopping module, is a set of resource files and data comprising the following: a single application file 4012; an undetermined number of graphic object description unit files 4014; an undetermined number of variables block unit files 4016; an undetermined number of instruction sequence files 4018; and where appropriate, data files 4020 such as icon library files, image files, character font files, colour table files and ASCII text files.
WO 98/43433 PCT/EP97/02116 10 In the MPEG data stream, each module comprises a group of MPEG tables. Each MPEG table may be formatted as a number of sections. In the MPEG data stream, each section has a "size" of up to 4 kbytes. For data transfer via the serial and parallel port, for example, modules similarly are split into tables and sections, the size of the section varying with the transport medium.
Modules are transported in the MPEG data stream in the form of data packets of typically 188 bytes within respective types of data stream, for example, video data streams, audio data streams and teletext data streams. Each packet is preceded by a Packet Identifier (PID) of 13 bits, one PID for every packet transported in the MPEG data stream. A programme map table,(PMT table) contains a list of the different data streams and defines the contents of each data stream according to the respective PID.
A PID may alert a device to the presence of applications in the data stream, the PID being identified using the PMT table.
With reference to Figure 4, the receiver/decoder 2020 includes several interfaces; specifically, a tuner 4028 for the MPEG signal flow, a serial interface 4030, a parallel interface 4032, and two card readers 4036, one for a smartcard forming part of the system and one for bank cards (used for making payments, home banking, etc). The receiver/decoder also includes an interface 4034 to a modemmed back channel 4002 to the television signal producer, so that the user can indicate preferences, etc back to the television signal (programme) producer.
A memory volume is a storage space for modules 4010. Such storage spaces are located in the memory 2024 of the receiver/decoder 2020. With reference to Figure the memory 2024 is divided into a RAM volume 4022, FLASH volume 4024, and ROM volume 4026, but this physical organization is distinct from the logical organization. The memory may further be divided into memory volumes associated with the various interfaces through which modules are downloaded into the receiver/decoder 2020, for example an MPEG volume for storing modules downloaded from the MPEG bitstream and a serial volume for storing modules received via a serial interface. From one point of view, the memory can be regarded as part of the WO 98/43433 PCT/EP97/02116 11 hardware; from another point of view, the memory can be regarded as supporting or containing the whole of the system shown apart from the hardware.
It is expected that the receiver/decoder may be designed and manufactured by various different manufacturers. It may therefore have various different hardware designs, though they will of course all conform to the same functional specification. It is therefore important that a given application behaves in the same way on every receiver/decoder, and that a receiver/decoder should execute all applications in the same, correct manner.
The system can be regarded a centred on a run time engine 4008 forming part of a virtual machine 4007. This is coupled to applications on one side (the "high level" side), and, on the other side (the "low level" side), via various intermediate logical units discussed below, to the receiver/decoder hardware 4061. The receiver/decoder hardware can be regarded as including the various ports or interfaces as discussed above (the interface 2030 for the handset 2026, the MPEG stream interface 4028, the serial interface 4030, the parallel interface 4032, the interfaces to the card readers 4036, and the interface 4034 to the modemmed back channel 4002).
With reference to Figure 6, various applications 4057 are coupled to the unit 4007; some of the more commonly used applications may be more or less permanently resident in the system, as indicated at 4057, while others will be downloaded into the system, eg from the MPEG data stream or from other ports as required.
The unit 4007 includes, in addition to the run time engine 4008, some resident library functions 4006 which include a toolbox 4058. The library contains miscellaneous functions in C language used by the engine 4008. These include data manipulation such as compression, expansion or comparison of data structures, line drawing, etc.
The library 4006 also includes information about firmware 4060 in the receiver/decoder 2020, such as hardware and software version numbers and available RAM space, and a function used when downloading a new device 4062. Functions can be downloaded into the library, being stored in Flash or RAM memory.
WO 98/43433 PCT/EP97/02116 12 The run time engine 4008 is coupled to a device manager 4068 which is coupled to a set of devices 4064 which are coupled to device drivers 4060 which are in turn coupled to the ports or interfaces. In broad terms, a device driver can be regarded as defining a logical interface, so that two different device drivers may be coupled to a common physical port. A device driver will normally be coupled to more than one device driver; if a device is coupled to a single device driver, the device will normally be designed to incorporate the full functionality required for communication, so that the need for a separate device driver is obviated. Certain devices may communicate among themselves.
As will be described below, there are 3 forms of communication from the devices 4064 up to the run time engine: by means of variables, buffers, and events which are passed to a set of event queues.
In terms of the designers or providers of these various functions, the applications will be generated by various service (programme) providers. The run time engine will be designed and provided by the system authority or designer. The device manager, the devices, and the device drivers will be provided by the receiver/decoder manufacturer (hardware provider). It will however be realized that this correspondence between the various levels of the receiver/decoder and the three levels of providers will not normally be precise. For example, the system authority will also in practice normally provide some of the applications, the receiver/decoder manufacturer may be involved in the logical device design, and so on.
Each function of the receiver/decoder 2020 is represented as a device 4062. Devices can be either local or remote. Local devices 4064 include smartcards, SCART connector signals, modems, serial and parallel interfaces, a MPEG video and audio player and an MPEG section and table extractor. Remote devices 4066, executed in a remote location, differ from local devices in that a port and procedure must be defined by the system authority or designer, rather than by a device and device driver provided and designed by the receiver/decoder manufacturer.
WO 98/43433 PCT/EP97/02116 13 When a new device 4062 is created, it can be installed in existing receiver/decoders 2020 by downloading the relevant application 4056 from the broadcast centre. This downloading is performed in the receiver/decoder 2020 by an application 4056 which checks the hardware and software versions and, if correct, loads the software module representing the new device 4062 and asks a procedure of the library 4006 to install the new device code within the firmware (in Flash memory). This can provide a flexible and secure installation of new functions within the receiver/decoder 2020 without affecting the rest of the software.
The device manager 4068 is a common software 'interface between the application 4056 and the specific functions of the receiver/decoder 2020. The device manager 4068 controls access to devices 4062, declares receipt of an unexpected event, and manages shared memory.
The run time engine 4008 runs under the control of the microprocessor and a common application programming interface. They are installed in every receiver/decoder 2020 so that all receiver/decoders 2020 are identical from the application point of view.
The engine 4008 runs applications 4056 -on the receiver/decoder 2020. It executes interactive applications 4056 and receives events from outside the receiver/decoder 2020, displays graphics and text, calls devices for services and uses functions of the library 4006 connected to the engine 4008 for specific computation.
The run time engine 4008 is an executable code installed in each receiver/decoder 2020, and includes an interpreter for interpreting and running applications. The engine 4008 is adaptable to any operating system, including a single task operating system (such as MS-DOS). The engine 4008 is based on process sequencer units (which take various events such as a key press, to carry out various actions), and contains its own scheduler to manage event queues from the different hardware interfaces. It also handles the display of graphics and text. A process sequencer unit comprises a set of action-groups. Each event causes the process sequencer unit to move from its current action-group to another action-group in dependence on the WO 98/43433 PCT/EP97/02116 14 character of the event, and to execute the actions of the new action-group.
As noted above, a logical channel is distinct from a physical port, so that there can for example be two different kinds of logical channel using the same physical port.
Events on those two logical channels will be passed to respective different process sequencer units. In addition, there can be two distinct logical channels of the same type using a physical port. In that case, each of the two channels will of course require its own process sequencer unit, so two instances (instantiations) of the same process sequencer unit will be created.
The engine 4008 comprises a code loader to load and download applications 4056 into the receiver/decoder memory 2028. Only the necessary code is loaded into the RAM or Flash memory, in order to ensure optimal use. The downloaded data is verified by an authentication mechanism to prevent any modification of an application 4056 or the execution of any unauthorized application. The engine 4008 further comprises a decompressor. As the application code (a form of intermediate code) is compressed for space saving and fast downloading from the MPEG-2 transport stream or via a built-in receiver/decoder mode, the code must be decompressed before loading it into the RAM. The engine 4008 also comprises an interpreter to interpret the application code to update various variable values and determine status changes, and an error checker.
The main loop of the engine 4008 extracts events from the queue means and actuates the associated process sequencer units accordingly. At every traverse of the main loop, a procedure is called up to receive external events (such as pressure on one of the remote control keys, reception of an MPEG-2 section or a message on a serial port) from the event interface. All events, whether input to the presentation function (discussed below) or received through an interface, pass through an event interface before being processed by the engine 4008. For each detected event, the procedure comprises a message, called an "event", which is put into one of 5 queues of the engine 4008, with respective priority levels 0 to 4. After the call to the event interface, which fills the queues with events, the engine 4008 searches the queues in WO 98/43433 PCT/EP97/02116 15 order of decreasing priority (from level 4 to level 0) for an event. The event so found is removed from the queue and used to actuate the process sequencer unit for which it is intended.
Before using the services of any device 4062, a program (such as an application instruction sequence) has to be declared as a "client", that is, a logical access-way to the device 4066 or the device manager 4068. The manager gives the client a client number which is referred to in all accesses to the device. A device 4066 can have several clients, the number of clients for each device 4066 being specified depending on the type of device 4066. A client is introduced'to the device 4066 by a procedure "Device: Open Channel". This procedure assigns a client number to the client. A client can be taken out of the device manager 4068 client list by a procedure "Device: Close Channel".
The access to devices 4062 provided by the device manager 4068 can be either synchronous or asynchronous. For synchronous access, a procedure "Device: Call" is used. This is a means of accessing data which is immediately available or a functionality which does not involve waiting for the desired response. For asynchronous access, a procedure "Device: 1/O" is used. This is a means of accessing data which involves waiting for a response, for example scanning tuner frequencies to find a multiplex or getting back a table from the MPEG stream. When the requested result is available, an event is put in the queue of the engine to signal its arrival. A further procedure "Device: Event" provides a means of managing unexpected events.
As noted above, the main loop of the run time engine is coupled to a variety of process sequencer units, and when the main loop encounters an appropriate event, control is temporarily transferred to one of the process sequencer units.
Communication between the run time engine and the applications is also performed largely via two types of process sequencer units, graphic object description unit process sequencer units and an instruction sequence process sequencer unit.
WO 98/43433 PCT/EP97/02116 16 The essentials of the operation of the process sequencer units can best be described by considering the operation of the graphic object description unit and instruction sequence process sequencer units; the operation of the other process sequencer units is similar. The graphic object description .unit process sequencer units manage the man-machine interface, and the instruction sequence process sequencer unit executes instruction sequences in response to instruction sequence execution requests received from the graphic object description unit process sequencer unit. (An instruction sequence is a sequence of decompressed intermediate code commands.) A presentation function communicating with the engine 4008 administers the presentation of text and graphics to the end user, and the presentation of end user actions to the engine 4008. The text and graphics are overlaid on the display on the television set 2022, and the user may interact with the application 4056 by means of a keyboard (using that term to include the remote controller 2026).
A graphic object description unit process sequencer unit receives query events from the television screen of the end user, and processes such a query by starting to read the corresponding interface file 4014. It then uses the graphic functions of the interface to trace the graphic object on the screen of the television set 2022. The end user can use the four arrow keys of the remote control 2026 to move around the graphic object. Every time that a key is pressed, an event is processed by the graphic object description unit process sequencer unit. When the user validates a choice using the VALID key on the remote control 2026, the code of the event is processed by the graphic object description unit process sequencer unit, which generates events requesting instruction sequences to be run and sends them to the instruction sequence process sequencer unit.
When the instruction sequence process sequencer unit receives a instruction sequence execution request from the graphic object description unit process sequencer unit, it reads the corresponding instruction sequence file 4018 and loads it entirely into memory. It then starts running the instruction sequence and continues until the instruction sequence is finished or until it encounters a function called rerouting.
WO 98/43433 PCT/EP97/02116 17 When the instruction sequence is finished, the system returns to cycle through the main loop for acquiring events and rescheduling.
There are also several downloading process sequencer units whose function is to process the various protocols linked to the different volumes containing applications 4056.
Referring to Fig. 7, the device manager includes a queue 100 into which events from the devices are passed for temporary storage. At suitable intervals, the virtual machine sends a signal to this queue to extract the first item from it. This event item is moved to a queue structure 101 in the virtual machine. Depending on the priority level of the event item, it is inserted into the appropriate one of the 5 queues 0 to 4.
Event items are extracted from the queue structure 101 by a queue selector unit 102 under the control of the run time engine.
When an event is selected from the queue structure 101, it is passed to a process sequencer unit engine 104, which consists of a process sequencer unit driver 105 and a set of process sequencer units 106. Each process sequencer unit is a set of actiongroups linked together, so that each step from one action-group to the next actiongroup is, in general, dependent on the current action-group and the nature of the event. Different process sequencer units have different sizes and complexities, including one in which the "next" action-group, ie the action-group to which the system steps on in response to an event, is dependent solely on the nature of the event but is independent of the current action-group. Also, as is shown at the right-hand side of the process sequencer units block, there may be several copies of a process sequencer unit, ie several identical process sequencer units, to deal eg with several separate data streams using identical protocols through a single port.
When an event is selected, it is passed to the appropriate process sequencer unit.
This selects the appropriate outlet from the current action-group on the process sequencer unit. This results in the appropriate next action-group being selected and the actions in that action-group being performed, involving eg the sending of a WO 98/43433 PCT/EP97/02116 18 message to the device manager or the execution of a instruction sequence. Actiongroups in the process sequencer unit can also send event messages to other process sequencer units.
If a instruction sequence is selected, the identification' of the instruction sequence is sent to a instruction sequence selector 107. This obtains the desired instruction sequence from a instruction sequence memory 108 and passes it to a instruction sequence interpreter 109, which executes the instruction sequence.
The system also includes a filter 110, which is loaded with event types eg from the process sequencer units 106. When an event item is passed from the queue 100 in the device manager to the queue structure 101 in the virtual machine, its type or character is matched against the list in the filter 110, and if it is of a type which is not recognized, it is rejected. This ensures that if say the device manager or the keyboard generates events of a type which the virtual machine cannot deal with, those events are not passed to the queue structure 101. (If events of this kind were passed to the queue structure 101, either they would accumulate in that queue structure or they might cause malfunctioning of the process sequencer unit engine 104.) It will be understood that the present invention has been described above purely by way of example, and modifications of detail can be made within the scope of the invention.
Each feature disclosed in the description, and (where appropriate) the claims and drawings may be provided independently or in any appropriate combination.
In the aforementioned preferred embodiments, certain features of the present invention have been implemented using computer software. However, it will of course be clear to the skilled man that any of these features may be implemented using hardware.
Furthermore, it will be readily understood that the functions performed by the hardware, the computer software, and such like are performed on or using electrical and like signals.
19 This page is intentionally blank 9
S
S
9.
9* [R:\LIBOO]051
Claims (12)
1. A receiver/decoder for receiving broadcast signals, said receiver/decoder comprising: means for receiving signals from a plurality of ports and providing data to said ports; at least one application for controlling a function of the receiver/decoder in accordance with the received signals; and a virtual machine for processing data received from the receiving means and 1o returning data thereto, wherein said virtual machine comprises an interpreter for interpreting said at least one application and executing said at least one interpreted S• •application in accordance with the data received from said receiving means to control said function of the receiver/decoder. 5
2. A receiver/decoder according to claim 1, wherein said virtual machine comprises an operating engine for processing data from the receiving means. i
3. A receiver/decoder according to claim 2, further comprising: ooa plurality of interfaces for coupling to external units; wherein oooo S 20 said receiving means comprises at least one logical device representing either an interface or a function of the receiver/decoder.
4. A receiver/decoder according to claim 3, wherein at least one of said logical devices is coupled to a device driver.
A receiver/decoder according to claim 3 or 4, wherein the operating engine is located between said at least one application and said at least one logical device, and includes a plurality of queues for receiving events generated by the receiving means and passing the events to the operating engine.
6. A receiver/decoder according to claim 5, wherein the operating engine comprises a plurality of process sequencer units associated with the device, and means for extracting events from the queues and actuating the associated process sequencer units accordingly. [R:\LIBOO]05150.doc:iad -21-
7. A receiver/decider according to claim 5 or 6, further comprising a filter for matching an event against a list of event types before entering the event in the queues.
8. A receiver/decoder according to any one of the preceding claims, wherein the virtual machine comprises a library of routines.
9. A receiver/decoder according to any one of the preceding claims, wherein the virtual machine comprises storage means for storing a plurality of instructions sequences.
10. A receiver/decoder according to any one of the previous claims, further including means for storing said at least one application.
11. A receiver/decoder according to any one of the preceding claims for a digital television system, comprising: 5s means for receiving a compressed MPEG-type signal; "means for decoding the received signal to provide a television signal; means for supplying the television signal to a television; and oo••a user input interface. ••go 20
12. A receiver/decoder for receiving broadcast signals substantially as herein described with reference to Figs. 1 to 7 of the accompanying drawings. DATED this Nineteenth Day of September, 2001 Canal+ Societe Anonyme Patent Attorneys for the Applicant SPRUSON FERGUSON [R:\LIBOO]05150.doc:iad
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP97400650 | 1997-03-21 | ||
EP97400650 | 1997-03-21 | ||
PCT/EP1997/002116 WO1998043433A1 (en) | 1997-03-21 | 1997-04-25 | Data processing system |
Publications (2)
Publication Number | Publication Date |
---|---|
AU2770997A AU2770997A (en) | 1998-10-20 |
AU740740B2 true AU740740B2 (en) | 2001-11-15 |
Family
ID=26070211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
AU27709/97A Ceased AU740740B2 (en) | 1997-03-21 | 1997-04-25 | Data processing system |
Country Status (13)
Country | Link |
---|---|
EP (1) | EP0968611A1 (en) |
JP (1) | JP2001518262A (en) |
CN (1) | CN1254478A (en) |
AU (1) | AU740740B2 (en) |
BR (1) | BR9714598A (en) |
CA (1) | CA2284011A1 (en) |
IL (1) | IL131947A0 (en) |
NO (1) | NO994540L (en) |
NZ (1) | NZ500206A (en) |
PL (1) | PL183663B1 (en) |
TR (1) | TR199902271T2 (en) |
WO (1) | WO1998043433A1 (en) |
ZA (1) | ZA973613B (en) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0893765A1 (en) | 1997-07-24 | 1999-01-27 | CANAL+ Société Anonyme | IEEE 1394 Set Top Box device driver |
EP0944257A1 (en) * | 1998-03-06 | 1999-09-22 | CANAL+ Société Anonyme | Multimedia terminal adapted for multiple users |
EP1067806A1 (en) * | 1999-07-09 | 2001-01-10 | CANAL+ Société Anonyme | Apparatus for and method of testing applications |
FR2809914B1 (en) * | 2000-06-06 | 2003-01-24 | Sagem | TELEVISION DECODER WITH ASSISTANCE |
EP1175058A1 (en) * | 2000-07-21 | 2002-01-23 | Alcatel | Processor system, and terminal, and network-unit, and method |
US11467856B2 (en) | 2002-12-12 | 2022-10-11 | Flexiworld Technologies, Inc. | Portable USB device for internet access service |
US7609402B2 (en) | 2001-01-19 | 2009-10-27 | Flexiworld, Inc. | Methods for universal data output |
US11204729B2 (en) | 2000-11-01 | 2021-12-21 | Flexiworld Technologies, Inc. | Internet based digital content services for pervasively providing protected digital content to smart devices based on having subscribed to the digital content service |
US20020078101A1 (en) | 2000-11-20 | 2002-06-20 | Chang William Ho | Mobile and pervasive output client device |
EP1304871A3 (en) * | 2001-08-21 | 2003-06-18 | Canal+ Technologies Société Anonyme | Method and apparatus for a receiver/decoder |
AU2003300880A1 (en) | 2002-12-12 | 2004-07-09 | Flexiworld Technologies, Inc. | Wireless communication between computing devices |
ATE372026T1 (en) * | 2003-03-04 | 2007-09-15 | Gamelogic Inc | CONDITIONAL ACCESS METHOD AND APPARATUS |
EP1618598A4 (en) | 2003-04-11 | 2008-07-16 | Flexiworld Technologies Inc | Autorun for integrated circuit memory component |
FR2882452B1 (en) * | 2005-02-18 | 2007-06-15 | Tv Card Soc Par Actions Simpli | DATA CARRIER AND SOFTWARE APPLICATION DEVELOPMENT ASSISTANCE METHOD FOR DIGITAL SIGNAL DIGITAL DECODER CHIP CARD |
US20060193337A1 (en) * | 2005-02-25 | 2006-08-31 | Toni Paila | Device management broadcast operation |
CN100420202C (en) * | 2005-10-20 | 2008-09-17 | 联想(北京)有限公司 | Computer management system and computer management method |
CN100454964C (en) * | 2006-02-28 | 2009-01-21 | 中国科学院声学研究所 | A method for loading a network interface module of a digital TV set-top box |
CN102510531A (en) * | 2011-10-20 | 2012-06-20 | 山东泰信电子有限公司 | Method for automatically identifying tuner and demodulator of digital television STB (Set Top Box) |
-
1997
- 1997-04-25 WO PCT/EP1997/002116 patent/WO1998043433A1/en not_active Application Discontinuation
- 1997-04-25 EP EP97921756A patent/EP0968611A1/en not_active Ceased
- 1997-04-25 PL PL97335775A patent/PL183663B1/en unknown
- 1997-04-25 AU AU27709/97A patent/AU740740B2/en not_active Ceased
- 1997-04-25 TR TR1999/02271T patent/TR199902271T2/en unknown
- 1997-04-25 BR BR9714598-0A patent/BR9714598A/en not_active IP Right Cessation
- 1997-04-25 IL IL13194797A patent/IL131947A0/en unknown
- 1997-04-25 CN CN97182174A patent/CN1254478A/en active Pending
- 1997-04-25 CA CA002284011A patent/CA2284011A1/en not_active Abandoned
- 1997-04-25 ZA ZA9703613A patent/ZA973613B/en unknown
- 1997-04-25 JP JP54476998A patent/JP2001518262A/en not_active Ceased
- 1997-04-25 NZ NZ500206A patent/NZ500206A/en unknown
-
1999
- 1999-09-17 NO NO994540A patent/NO994540L/en not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
CN1254478A (en) | 2000-05-24 |
NO994540L (en) | 1999-11-22 |
JP2001518262A (en) | 2001-10-09 |
ZA973613B (en) | 1998-03-23 |
CA2284011A1 (en) | 1998-10-01 |
AU2770997A (en) | 1998-10-20 |
PL183663B1 (en) | 2002-06-28 |
BR9714598A (en) | 2002-08-06 |
NO994540D0 (en) | 1999-09-17 |
NZ500206A (en) | 2002-08-28 |
WO1998043433A1 (en) | 1998-10-01 |
IL131947A0 (en) | 2001-03-19 |
TR199902271T2 (en) | 1999-12-21 |
EP0968611A1 (en) | 2000-01-05 |
PL335775A1 (en) | 2000-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU740740B2 (en) | Data processing system | |
EP0974230B1 (en) | Method of downloading of data to an mpeg receiver/decoder | |
AU742067B2 (en) | Extracting data sections from a transmitted data stream | |
JP2001518256A5 (en) | ||
US6360195B1 (en) | Television or radio control system development | |
AU742956B2 (en) | Television or radio control system development | |
AU742213B2 (en) | Access control system | |
KR20000076406A (en) | Data processing system | |
MXPA99008543A (en) | Data processing system | |
MXPA99008545A (en) | Access control system | |
EP1067455A1 (en) | Running and testing applications | |
CZ331899A3 (en) | Data processing system | |
MXPA99008546A (en) | Extracting data sections from a transmitted data stream | |
CZ331799A3 (en) | Access control system | |
MXPA99008547A (en) | Television or radio control system development | |
MXPA00000776A (en) | Ieee set top box device driver | |
MXPA00007900A (en) | Processing of digital picture data in a decoder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FGA | Letters patent sealed or granted (standard patent) | ||
MK14 | Patent ceased section 143(a) (annual fees not paid) or expired |