WO2003001375A1 - Extension d'un logiciel dans un recepteur/decodeur de television numerique - Google Patents
Extension d'un logiciel dans un recepteur/decodeur de television numerique Download PDFInfo
- Publication number
- WO2003001375A1 WO2003001375A1 PCT/FR2002/002193 FR0202193W WO03001375A1 WO 2003001375 A1 WO2003001375 A1 WO 2003001375A1 FR 0202193 W FR0202193 W FR 0202193W WO 03001375 A1 WO03001375 A1 WO 03001375A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- software
- data
- extension
- plug
- manager
- Prior art date
Links
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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
Definitions
- the present invention relates to a method of software extension by software extension. More specifically, the software can be navigation software in a digital television receiver / decoder. The present invention also relates to a digital television receiver / decoder comprising navigation software and an extension of this software.
- Software can generally be defined as being a series of instructions which can be executed by a microprocessor machine in order to exploit the resources of this machine.
- Software can be extended by means of a software extension which cooperates with the software by exchanging data and processing this data.
- the software extension is also known by the English name of "Plug-in".
- a navigation software also known under the English name of "browser" makes it possible to use a computer to consult data stored on a remote server connected to the computer by a network.
- This data is in a format recognized by the browser, such as the widely used HTML format (from the English HyperText Markup Language).
- the HTML data is contained in a file and allows, once loaded onto the computer, the browser generates an HTML page on a computer screen.
- This HTML page can include text layout, references to other HTML pages, images or sequences of images, sounds ...
- the navigation software can be extended by one or more plug-ins.
- the plug-in makes it possible to process data of a determined type supplied with an HTML page or referenced in it.
- the functionality of the navigation software is increased by the plug-in which allows the processing of data of a specific type which cannot be processed by the navigation software alone. This allows in particular to develop the navigation software to adapt to new forms of disseminated data.
- the navigation software and the plug-in exchange data.
- the plug-in data to be processed by the plug-in can for example be loaded via the navigation software and pass to the plug-in in a transition flow.
- the transition flow can contain the data in sequential form which makes it possible to pass the data as and when they are available.
- the transition flow will contain the data in an order defined by the plug-in.
- random access mode assumes that the remote server can provide the data in the defined order and on request. Browsers and their plug-ins are becoming more and more common on digital television receivers / decoders.
- the receiver / decoder is a device making it possible in particular to receive a stream of digital data corresponding to audio and video signals but also to information and software, in particular HTML pages.
- the receiver / decoder includes means for decoding the audio and video data and an output for transmitting the audio and video to a television set.
- the receiver / decoder also makes it possible to execute software such as the navigation software and the plug-in, the latter exploiting, for example, HTML pages received in the digital data stream.
- the navigation software and the plug-in are integrated into a middle layer of software called middleware.
- the iddleware also integrates other software making it possible to provide the user with services such as for example an electronic program guide or the display of a television program.
- the middleware is executed on top of a low software layer called the operating system.
- An objective of the invention is to provide a plug-in solution particularly suited to an on-board environment such as that of a digital television decoder / receiver.
- the subject of the present invention is a method of extending software by means of a software extension, the software extension making it possible to process data of a determined type, the method comprising at least the following steps:
- a variant of the invention provides a method of extending software by extending said software in a digital television receiver / decoder, the extension making it possible to process data of a determined type, the software being integrated into a kernel software in native code and the extension being coded in a language which can be interpreted by a virtual machine of the receiver / decoder, the method comprising: - the execution of an extension manager making it possible to select and initiate the execution of 'an extension,
- the inventive method comprises loading and storing data of the determined type into a memory of the receiver / decoder from a storage reference.
- the inventive method comprises the destruction by the extension manager of the extension once the data of determined type have been processed to free the memory.
- the subject of the invention is also a digital television receiver / decoder comprising:
- Figure 1 contains a schematic representation of software layers present in a digital television decoder / receiver.
- Kernel software 1 integrates navigation software 2 for processing pages of information coded for example in HTML and received at an input of the decoder / receiver (not shown).
- the kernel software 1 also integrates virtual machine software 3 which makes it possible to interpret application code 4 which is part of an upper software layer.
- the core software 1 and the integrated navigation 2 and virtual machine software 3 are typically developed in an advanced programming language such as for example the C language, then compiled in a so-called native language which can be directly executed on top of the system. operating instructions (not shown) of the receiver / decoder. Compiling in native code gives maximum execution speed. However, it forces to freeze the selection of integrated software from kernel 1 software before compilation.
- An application 4 is written in a language which can be directly interpreted by the virtual machine 3. Among the languages interpreted there are for example Pantalk and JAVA. An application 4 can for example be downloaded into a data stream at the input of the receiver / decoder (not shown), then stored in a volatile memory to be executed if necessary.
- Device software 5 can be addressed by the kernel software 1 in order to access the physical devices (not shown) made available in the receiver / decoder, such as for example a modem, a display device or a device for loading the data received at the input of the receiver / decoder.
- the software for devices 5 is generally stored in a non-volatile memory and delivered by the manufacturers of receivers / decoders.
- a program / application interface layer 6 makes it possible to define a specific environment for the applications 4 so that the latter can communicate with the kernel software 1 and or the software integrated into it.
- Interface layer 6 is often referred to as API from the English Application Programmer Interface.
- the interface layer 6 is executed in native code, that is to say that it was originally developed in an advanced programming language such as the C language, then compiled in native code for maximum execution speed.
- the interface layer 6 can in this case be compiled together with the code of the kernel software 1 and of the integrated software.
- the interface layer 6 is written in interpretable code so that it can be executed by the virtual machine 3.
- the interface layer 6 can then easily be modified, for example by downloading new code into a data stream. at the input of the receiver / decoder.
- a digital television operator retains the possibility of offering a scalable program / application interface 6 according to his needs.
- the interface layer 6 is composed on the one hand of native code, that is to say of a compiled code with fast execution, and on the other hand of code in interpretable language which can easily be put up to date.
- the set comprising the core software 1, the integrated software including the navigation software 2 and the virtual machine 3, and the interface layer 6 is often grouped under the name of Middleware (which in English means "middleware") since these software are logically interleaved between the lower layers of software close to the physical resources of the receiver / decoder, including the device software 5, and the upper layers of software including the applications 4.
- Middleware which in English means "middleware”
- the plug-in 7 is software making it possible to process data of a specific type supplied with an HTML page.
- the plug-in 7 can therefore be considered as an extension of the navigation software 2.
- plug-in data The data to be processed by the plug-in (plug-in data) is not necessarily sent at the same time as the HTML page.
- the plug-in data are either contained in the file on the HTML page, or referenced by an address on the HTML page. This address is commonly known as the Universal Resource Locator URL (which stands for Universal Resource Identifier) and is preceded by a mark specific to HTML such as ⁇ EMBED>,
- a generic example of plug-in parameters and options accompanying a mark preceding a URL is as follows: - Location URL: address of the data / file containing the data
- - MIME type the type of data to be processed by the plug-in - Alignment: the type of alignment of the display on the screen (left, right, top, bottom)
- a plug-in 7 may or may not give rise to the creation of a window in which the result of the processing of the plug-in data will be displayed.
- the creation of the window depends on the values assigned to the plug-in parameters and options. So for example if the processing of plug-in data results in a video sequence, this can be displayed in an independent window having a defined frame and thickness. Another possibility would be to display the video sequence directly in the window in which the navigation software displays the HTML page containing the mark and the URL address of the plug-in data.
- There are therefore several types of plug-in display and in particular the following three: integrated (or embedded in English), concealed (or hidden in English), or full page (or full-page in English).
- the built-in type provides for the plug-in to be displayed in the same window as the HTML page.
- the display of the plug-in is in fact carried out in a pane of the window displaying the HTML page.
- the size of the pane can be adjusted with the plug-in parameters.
- the hidden type does not provide for display of the plug-in. This type is used when the plug-in data processing does not produce graphics.
- the full-page type provides for the display in a new window independent of the window displaying the HTML page.
- a plug-in 7 can be coded as well in an advanced programming language and compiled in native code, as in a language which will be interpreted by the virtual machine 3.
- the implementation of the plug-in 7 according to the invention is done in a language interpretable by the virtual machine 3.
- the plug-in 7 is part of applications 4 and can for example be coded in JAVA when the virtual machine interprets JAVA. Therefore plug-in 7 can be considered as an application extension of software. The implementation of the plug-in 7 is done while respecting the environment defined in the program / applications interface layer 6.
- a software application extension such as for example a plug-in 7 can by its nature be downloaded into a volatile memory of the receiver / decoder, executed by the virtual machine 3 then destroyed in order to free the volatile memory.
- a manager of application extensions 8 makes it possible to select a plug-in 7, to download it or load it into memory in order to execute it to process plug-in data. Once the plug-in 7 has finished running, the application extension manager 8 takes care of destroying the plug-in so that the volatile memory is freed up for other application extensions or applications 4.
- the application extension manager 8 receives a request to process a specific type of data before selecting the appropriate application extension for processing this specific type of data.
- the request can for example come from the navigation software 2 processing an HTML page and identifying a URL preceded by a specific mark of a plug-in.
- the application extension manager 8 uses the request to initiate the loading and execution of the corresponding plug-in 7.
- the application extension manager 8 indicates to the plug-in 7 a means of accessing the plug-in data.
- the application extension manager 8 is content to indicate to it a means of access to the plug-in data.
- the means of accessing the plug-in data generally corresponds to a storage reference.
- the latter references the location where the plug-in data is stored.
- Plug-in data can by example have been downloaded and stored at an address in a volatile memory or a mass memory of the receiver / decoder.
- the plug-in data can also correspond to the content of a file whose name is listed in a file directory used by the decoder receiver. Plug-in data may also be available on a remote server.
- the application extensions manager 8 logically interfaces between an application extension such as the plug-in 7 and an integrated software such as navigation software 2 or even an application 4. It can be coded entirely in a language which will be interpreted by the virtual machine 3 when it is interfaced with an application 4 or even be partially coded in a compilable language so as to be partially integrated into the kernel software 1 in native code when it is interfaced with an integrated software such as the navigation software 2. In another embodiment, the application extensions manager 8 is implemented entirely in compilable code and its native code integrated into the kernel software 1.
- Plug-in data exchange to a plug-in can be done in at least two modes called Normal or Random access, data can be obtained from an input data stream of the receiver / decoder or from a memory of the receiver / decoder: - Normal mode: the plug-in data reach the plug-in 7 in a sequential order as the data becomes available.
- the plug-in data to be sent to plug-in 7 is specified by the plug-in.
- the plug-in data are transmitted in a particular order according to the specifications of the plug-in.
- This mode allows in particular to implement stop, reverse and / or fast forward functions when displaying a video sequence.
- This mode requires an intervention from the server side to the dissemination of plug-in data, insofar as the server must be able to receive and interpret instructions from the plug-in 7.
- the navigation software 2 transmits to the plug-in
- the data can then on instruction of the plug-in be accessed at the place indicated by the storage reference.
- the storage reference indicates a server external to the receiver / decoder then the plug-in data are downloaded from this server or read from a memory of the receiver / decoder if the data had already been downloaded beforehand.
- the storage reference indicates a memory address specific to the receiver / decoder
- the data is accessed from this memory address.
- This address can, for example, correspond to the name and location of a file, the location being described in relation to a file directory accessible in the receiver / decoder. Plug-in 7 can thus directly access this file.
- the plug-in may plan to erase the plug-in data at its location in order to free up the capacity storage.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0108398 | 2001-06-26 | ||
FR0108398A FR2826471A1 (fr) | 2001-06-26 | 2001-06-26 | Extension d'un logiciel dans un recepteur/decodeur de television numerique |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2003001375A1 true WO2003001375A1 (fr) | 2003-01-03 |
Family
ID=8864766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/FR2002/002193 WO2003001375A1 (fr) | 2001-06-26 | 2002-06-25 | Extension d'un logiciel dans un recepteur/decodeur de television numerique |
Country Status (2)
Country | Link |
---|---|
FR (1) | FR2826471A1 (fr) |
WO (1) | WO2003001375A1 (fr) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103777920A (zh) * | 2012-10-23 | 2014-05-07 | Ca公司 | 基于数据特性来识别对应指令的数据处理系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0911728A1 (fr) * | 1997-10-27 | 1999-04-28 | Sun Microsystems, Inc. | Méthode et appareil pour fournir des décodeurs de media enfichables |
US5913027A (en) * | 1996-07-02 | 1999-06-15 | Hitachi, Ltd. | Data processing method for a computer system including computers connected via a communication path to each other and computer-readable recording media for use with the computers |
US6052732A (en) * | 1994-12-20 | 2000-04-18 | Sun Microsystems, Inc. | System for dynamically loading object viewer from client or server |
WO2000079757A2 (fr) * | 1999-06-18 | 2000-12-28 | Epicrealm Operating Inc. | Procede et appareil pour des communications client-serveur utilisant un client a capacite restreinte pour une liaison a faible debit |
-
2001
- 2001-06-26 FR FR0108398A patent/FR2826471A1/fr active Pending
-
2002
- 2002-06-25 WO PCT/FR2002/002193 patent/WO2003001375A1/fr not_active Application Discontinuation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6052732A (en) * | 1994-12-20 | 2000-04-18 | Sun Microsystems, Inc. | System for dynamically loading object viewer from client or server |
US5913027A (en) * | 1996-07-02 | 1999-06-15 | Hitachi, Ltd. | Data processing method for a computer system including computers connected via a communication path to each other and computer-readable recording media for use with the computers |
EP0911728A1 (fr) * | 1997-10-27 | 1999-04-28 | Sun Microsystems, Inc. | Méthode et appareil pour fournir des décodeurs de media enfichables |
WO2000079757A2 (fr) * | 1999-06-18 | 2000-12-28 | Epicrealm Operating Inc. | Procede et appareil pour des communications client-serveur utilisant un client a capacite restreinte pour une liaison a faible debit |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103777920A (zh) * | 2012-10-23 | 2014-05-07 | Ca公司 | 基于数据特性来识别对应指令的数据处理系统 |
Also Published As
Publication number | Publication date |
---|---|
FR2826471A1 (fr) | 2002-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2021232817A1 (en) | Methods, systems, apparatus, products, articles and data structures for cross-platform digital content | |
US9569555B2 (en) | Method for adding a user-selectable function to a hyperlink | |
JP4989018B2 (ja) | ウェブコンテンツのビューを変更する技法 | |
CN100437552C (zh) | 执行标记文档applet的设备和方法 | |
EP1943638A1 (fr) | Procede de gestion de polices de caracteres a l'interieur de scenes multimedia, programme d'ordinateur et terminal correspondants | |
US20080155425A1 (en) | Browser Renderable Toolbar | |
CA2462431A1 (fr) | Navigateur a logique d'adaptation contextuelle | |
EP2643961A1 (fr) | Communication entre deux applications web | |
EP1585037B1 (fr) | Procédé de reconnaissance et de référencement pour accès aux objets dynamiques dans les pages de navigation internet | |
WO2003001375A1 (fr) | Extension d'un logiciel dans un recepteur/decodeur de television numerique | |
EP1388134A1 (fr) | Procede et systeme de gestion de donnes destinees a etre stockees dans une carte a puce programmable | |
EP2219113A2 (fr) | Procédé d'affichage, dispositif et produit programme d'ordinateur correspondant | |
FR2826761A1 (fr) | Procede d'analyse d'un document represente dans un langage de balisage | |
EP1997040A1 (fr) | Procédé, dispositif et système de gestion d'informations structurées au sein d'une scène graphique | |
JP2004021304A (ja) | クライアント・サーバ形式のダウンロードシステム | |
WO2000022815A1 (fr) | Gestionnaire d'applications avec jeu d'instructions de gestion variable | |
WO2003038610A1 (fr) | Installation de programme compile notamment dans une carte a puce | |
EP3398345B1 (fr) | Procédé et dispositif de traitement de flux multimédia pour vérification des droits d'accès | |
FR3071641B1 (fr) | Procede de configuration d'un element securise tel qu'une carte electronique | |
WO2002103980A2 (fr) | Procede et systeme de diffusion d'images numeriques | |
CN117932173A (zh) | 一种图片跳转服务的系统、方法和装置 | |
FR2913276A1 (fr) | Procede et dispositif de communication. | |
CN110909107A (zh) | 一种基于Zeppelin呈现地图的方法、设备、存储介质 | |
FR2796511A1 (fr) | Telecommande d'execution d'une fonction dans un serveur | |
FR2787897A1 (fr) | Procede et dispositif d'ajout d'information a un fichier informatique |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SI SK SL TJ TM TN TR TT TZ UA UG US UZ VN YU ZA ZM ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
ENP | Entry into the national phase |
Ref document number: 2004106604 Country of ref document: RU Kind code of ref document: A Ref document number: 2004106610 Country of ref document: RU Kind code of ref document: A Ref document number: 2004106612 Country of ref document: RU Kind code of ref document: A |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
122 | Ep: pct application non-entry in european phase | ||
NENP | Non-entry into the national phase |
Ref country code: JP |
|
WWW | Wipo information: withdrawn in national office |
Country of ref document: JP |