ES2296978T3 - Control de una aplicacion interactiva en un flujo de datos. - Google Patents
Control de una aplicacion interactiva en un flujo de datos. Download PDFInfo
- Publication number
- ES2296978T3 ES2296978T3 ES02755579T ES02755579T ES2296978T3 ES 2296978 T3 ES2296978 T3 ES 2296978T3 ES 02755579 T ES02755579 T ES 02755579T ES 02755579 T ES02755579 T ES 02755579T ES 2296978 T3 ES2296978 T3 ES 2296978T3
- Authority
- ES
- Spain
- Prior art keywords
- data
- carousel
- service
- interactive application
- flow
- 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.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/08—Systems for the simultaneous or sequential transmission of more than one television signal, e.g. additional information signals, the signals occupying wholly or partially the same frequency band, e.g. by time division
-
- 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/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8545—Content authoring for generating interactive applications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/468—Specific access rights for resources, e.g. using capability register
-
- 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/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
- H04N21/4345—Extraction or processing of SI, e.g. extracting service information from an MPEG stream
-
- 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/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
- H04N21/4348—Demultiplexing of additional data and video streams
- H04N21/4349—Demultiplexing of additional data and video streams by extracting from data carousels, e.g. extraction of software modules from a DVB carousel
-
- 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/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
- H04N21/4351—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream involving reassembling additional data, e.g. rebuilding an executable program from recovered modules
-
- 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/438—Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
- H04N21/4383—Accessing a communication channel
-
- 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/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4433—Implementing client middleware, e.g. Multimedia Home Platform [MHP]
-
- 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
- H04N21/8173—End-user applications, e.g. Web browser, game
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Television Systems (AREA)
Abstract
Método para controlar una aplicación interactiva que comprende recibir un flujo de datos que comprende una aplicación interactiva, supervisar dicho flujo de datos para identificar un cambio en dicho flujo y en respuesta a dicho cambio, evitar que dicha aplicación interactiva acceda a ficheros, identificar ficheros presentes en dicho flujo de datos y permitir que dicha aplicación interactiva sólo acceda a aquellos ficheros presentes en dicho flujo de datos.
Description
Control de una aplicación interactiva en un
flujo de datos.
Esta invención se refiere a un método y un
aparato para controlar una aplicación interactiva. Particularmente,
aunque no exclusivamente, el aparato es un circuito integrado que
forma parte de un receptor de televisión digital.
Un receptor digital recibe una señal de
radiodifusión digital que normalmente comprende componentes de
video, audio y datos. El componente de datos está dotado de una
manera de tipo "carrusel" repetitivo con módulos que se
descargan por el receptor como y cuando se requieren. Los módulos
contienen normalmente aplicaciones interactivas escritas en el
guión (script) de programación JAVA.
El documento WO 01/11869 A (KONINKL PHILIPS
ELECTRONICS NV) da a conocer un método para distribuir aplicaciones
independientes a través de la señal de video de programa de
radiodifusión, en el que la aplicación interactiva es un JAVA
applet.
En caso de que un usuario desee acceder a una
aplicación interactiva a través del receptor digital, entonces esta
funcionalidad está disponible a través de una interfaz de usuario,
normalmente un control a distancia. Estas aplicaciones interactivas
son tales como guías electrónicas de programa, información de tipo
"teletexto" y aplicaciones que se refieren al contenido que va
a emitirse. Este último tipo de aplicación sería por ejemplo cuando
el usuario estuviera viendo la cobertura de un torneo de golf,
diagramas detallados de cada hoyo del recorrido, estadísticas
acerca de los golfistas participantes, una tabla de líderes en
tiempo real, etc. También son posibles aplicaciones que supongan
una comunicación en dos direcciones, por ejemplo comprar y apostar.
El receptor digital está dotado de un canal de retorno, normalmente
a través de la red telefónica para facilitar esta comunicación en
dos direcciones.
Sin embargo, el software para ejecutar estas
aplicaciones interactivas se proporciona al receptor digital a
través del componente de datos de la señal de radiodifusión. Los
JAVA applet que constituyen las aplicaciones interactivas están
dedicados a cada canal de radiodifusión y se emiten repetitivamente
por el transmisor en forma de carrusel. Una vez que un usuario
selecciona una aplicación interactiva el módulo de conexión debe
comenzar a adquirir los JAVA applet necesarios para poder ejecutar
la aplicación.
En caso de que haya algún cambio en el flujo de
datos, por ejemplo cuando el usuario cambia de canal, entonces el
receptor digital necesita poder adaptarse a la nueva circunstancia
de un flujo de datos nuevo. Los receptores digitales habituales o
bien abandonan la aplicación interactiva que está ejecutándose
actualmente o bien la aplicación interactiva fallará una vez que
requiera ficheros que no estén presentes en el flujo de datos.
Ninguno de estos resultados proporciona una operación satisfactoria
para el usuario del receptor de televisión digital.
Por tanto es un objetivo de la invención mejorar
la técnica conocida.
Según un primer aspecto de la invención se
proporciona un método para controlar una aplicación interactiva,
que comprende recibir un flujo de datos, que comprende una
aplicación interactiva, que supervisa dicho flujo de datos para
identificar un cambio en dicho flujo y en respuesta a dicho cambio,
evitar que dicha aplicación interactiva acceda a ficheros,
identificar ficheros presentes en dicho flujo de datos y permitir
que dicha aplicación interactiva acceda sólo a aquellos ficheros
presentes en dicho flujo de datos.
Según un segundo aspecto de la invención se
proporciona un aparato para controlar una aplicación interactiva
que comprende medios de recepción para recibir un flujo de datos que
comprende una aplicación interactiva, medios de supervisión para
supervisar dicho flujo de datos y para controlar dicha aplicación
interactiva para evitar que la aplicación interactiva acceda a
ficheros que siguen un cambio en el flujo de datos, para identificar
ficheros presentes en el flujo de datos y para permitir que dicha
aplicación interactiva acceda sólo a aquellos ficheros presentes en
dicho flujo de datos.
El método puede conseguirse mediante un elemento
de programa informático, instalado en un hardware adecuado o
almacenado en un soporte de grabación. El aparato puede comprender
un circuito integrado.
Debido a la invención es posible controlar una
aplicación interactiva de manera que siguiendo un cambio en el
flujo de datos que soporta la aplicación interactiva, la aplicación
interactiva continuará ejecutándose de la mejor manera posible a
partir de los ficheros disponibles a la misma. El cambio en el flujo
de datos puede deberse por ejemplo a una interrupción en la
radiodifusión de datos o a un usuario que cambia de canal en el
receptor del flujo de datos. En caso de que la aplicación
interactiva requiera un fichero que no esté presente en el flujo de
datos, en vez de fallar inmediatamente porque el fichero no esté
presente, la aplicación interactiva "bloquea" la espera al
fichero que debe llegar. El hilo de programa que está haciendo la
petición no continúa la ejecución hasta que el fichero vuelva a
estar presente, o se determina que el fichero está permanentemente
no disponible. Sin embargo, continúan ejecutándose otros hilos de
programa.
Ahora se describirán realizaciones de la
invención, sólo a modo de ejemplo, con referencia a los dibujos
adjuntos, en los que:
la figura 1 es un diagrama esquemático de un
módulo de conexión conectado a un dispositivo de visualización,
y
la figura 2 es un diagrama de flujo de un método
para controlar una aplicación interactiva.
En la figura 1, el módulo 10 de conexión
comprende medios de recepción en la forma de un receptor 12 para
recibir una señal 14 de radiodifusión digital. El módulo de conexión
también comprende medios de procesamiento, en la forma de una UCP
16, para procesar la señal 14. El módulo de conexión incluye además
componentes tales como un decodificador 20, una memoria 22 RAM y
una memoria 24 caché. El decodificador 20 desmultiplexa la señal 14
de radiodifusión. El componente de video se pasa al dispositivo 26
de visualización y el componente de audio se pasa a altavoces (no
representados). Un usuario del módulo 10 de conexión selecciona, a
través de una interfaz de usuario adecuada, el canal que desea ver,
y se adquiere el contenido apropiado y proporciona al usuario.
La señal 14 incluye en sí misma un flujo de
datos que comprende una aplicación interactiva. El flujo de datos
puede comprender múltiples aplicaciones interactivas, según se
desee. El aparato para controlar la aplicación interactiva
comprende medios 12 de recepción para recibir el flujo de datos que
comprende la aplicación interactiva, y la UCP 16, que actúa como
medio de supervisión para supervisar el flujo de datos. El aparato
comprende normalmente un circuito integrado que forma parte del
receptor 10 de televisión digital.
Se requiere una técnica para mantener el acceso
a servicios de carrusel de datos de radiodifusión cuando se cambia
el servicio actual. Los sistemas de televisión digital incluyen
mecanismos para la radiodifusión de datos genéricos a través de
entrega en carrusel. Un ejemplo importante es el carrusel de objetos
DVB definido para los estándares de televisión digital DVB. Estos
mecanismos están volviéndose más importantes ya que subyacen a la
nueva generación de servicios interactivos, incluyendo
MHEG-5, DVB MHP y OCAP. En estos sistemas la
radiodifusión de datos incluye uno o más sistemas de fichero de
radiodifusión en los que los componentes de los sistemas de fichero
se transmiten al receptor 10 en forma de carrusel (es decir,
repetida). El receptor 10 intenta recuperar los contenidos de los
sistemas de fichero analizando el flujo de datos entrante. El
sistema de fichero contendrá activos y un código ejecutable para
una o más aplicaciones asociadas al servicio que está presentándose
al usuario.
En sistemas tales como MHP es posible permitir
que una aplicación se ejecute con más de un servicio. Por ejemplo,
una guía electrónica de programa para un paquete de servicios de un
proveedor de servicios continuará ejecutándose cuando el usuario
conmute entre servicios del paquete. Sin embargo, como los datos de
carrusel están conectados al servicio original utilizado,
actualmente estos datos se hacen inaccesibles una vez se seleccione
un servicio nuevo. Esto impone restricciones graves a las
capacidades de la aplicación, y la mayoría de las aplicaciones no
podrá recuperarse de esta retirada repentina del acceso.
Por tanto se requiere un mecanismo para el
traspaso fluido del acceso al carrusel desde un servicio a otro. El
fin es que la aplicación no debería percibir el cambio en el
encaminamiento a los datos del carrusel.
Actualmente, DVB especifica un método para
soportar un sistema de ficheros jerárquico dentro de un flujo de
transporte DVB. Esto se utiliza para la radiodifusión de datos.
Puede utilizarse para soportar cualquier dato del tipo que
normalmente se almacenaría en un sistema de ficheros informático.
Con frecuencia se utiliza para soportar ficheros de datos para
sistemas de radiodifusión interactivos. Por ejemplo es el método
elegido para emitir objetos MHEG-5 en la
implementación terrestre en el Reino Unido de DVB y se utiliza para
ficheros de clase y sus datos asociados en la especificación MHP de
DVB. El sistema ha sido diseñado para proporcionar una solución al
problema de un transporte eficaz por una conexión en serie de un
sistema de ficheros jerárquico. Puede analizarse sintácticamente y
la estructura del directorio jerárquico, los nombres de ficheros y
el contenido de los ficheros pueden recuperarse en el receptor. Los
sistemas de ficheros en carrusel se transmiten como parte de un
"servicio", en el que un servicio se define como un conjunto de
flujos elementales de varios tipos que pretenden presentarse al
usuario como un todo. El concepto de un programa de televisión es un
ejemplo de un servicio que contiene flujos de audio y video. Los
datos del carrusel pueden transmitirse una vez en un flujo de
transporte pero pueden ser una parte de más de un servicio dentro
del flujo de transporte. Sin embargo, lógicamente se considera que
el carrusel es una entidad separada en cada uno de los servicios
cuyos datos están contenidos en el mismo.
El decodificador de carrusel (situado dentro de
la UCP 16) tiene dos partes diferentes:
1. Un lector de flujo. Decodifica los datos de
los flujos del servicio actual en un formato útil. Normalmente,
esta parte almacena "módulos" de datos solicitados en un
"caché de módulo" en la memoria del receptor, y
2. Un controlador del sistema de ficheros.
Recibe peticiones desde las aplicaciones que se ejecutan en el
receptor, e intenta hallar los datos solicitados en el caché de
módulo, o pasa en una petición de búsqueda al lector de flujo.
Normalmente la memoria en el receptor 10 está
limitada, por lo que no es posible introducir el carrusel completo
en la memoria por lectura. Por lo tanto, normalmente se aplica una
estrategia de memoria caché para intentar y asegurar que los
módulos que más probablemente vayan a solicitarse se almacenen en
memoria caché. Esto tiene un gran efecto sobre el rendimiento de la
aplicación porque las latencias de búsqueda del carrusel de
radiodifusión son normalmente de muchos segundos.
\newpage
Las aplicaciones que se ejecutan en el receptor
pueden desear acceder a los datos de un carrusel en un servicio
mientras que simultáneamente decodifican un servicio separado. Un
ejemplo son las aplicaciones MHP no relacionadas con el servicio.
Estas aplicaciones empiezan en un servicio y utilizan el carrusel en
ese servicio pero entonces podrían hacer que el decodificador
conmute a otro servicio. En estas situaciones la parte de lector de
flujo del decodificador se vuelve inoperable porque las fuentes de
datos en el servicio anterior ya no están disponibles. Esto afecta
gravemente a la operación de la aplicación, y en la mayoría de los
casos no puede garantizarse que la aplicación continúe funcionando
sin error. Sin embargo, en muchos casos el servicio nuevo contendrá
los mismos datos de carrusel que el servicio inicial, de modo que
realmente hay una fuente de datos posible. Esta invención propone
un método mediante el que la parte de lector de flujo del
decodificador puede mantenerse operacional tras un cambio de
servicio, identificando si hay una fuente de datos equivalente para
el carrusel, y por tanto garantizar una operación de aplicación
aceptable.
Esta invención se centra en la familia de
mecanismos de carrusel de objetos DSMCC y su uso en MHP, aunque las
ideas inventivas se aplican a cualquier mecanismo de radiodifusión
de datos basado en carrusel que presente los mismos datos dentro de
varios servicios o programas diferentes.
La opción presentada en el presente documento es
comparar el servicio actual con el servicio inicial en el que se
montó el carrusel y hacer el mayor esfuerzo para mantenerlo
interconectado a los flujos de datos que son comunes a ambos
servicios. Obsérvese que esta solución sólo es útil cuando haya un
auténtico compartimiento de flujos de datos entre servicios. Si no
hay solapamiento, el carrusel permanece "perdido". Sin embargo,
esta opción nueva permite que el radiodifusor optimice la
radiodifusión para aquellas aplicaciones que utilizan estas
características. En el presente documento se tratan dos
realizaciones. Tratan el asunto de identificar qué elementos de
datos pueden compartirse entre servicios en dos niveles
diferentes.
En ambas realizaciones, la UCP 16 controla la
aplicación interactiva para evitar que la aplicación interactiva
acceda a ficheros siguiendo un cambio en el flujo de datos (tal como
se produce por un cambio de canal por un usuario). La UCP 16
identifica los ficheros presentes en el flujo de datos y permite que
la aplicación interactiva acceda sólo a aquellos ficheros presentes
en el flujo de datos. Este método se ilustra en la figura 2.
\vskip1.000000\baselineskip
Forma de realización
1
Una primera realización considera al
decodificador de carrusel como un servidor que se ejecuta en el
dispositivo que está actualizándose a partir del flujo. El servidor
proporciona acceso al sistema de ficheros para aplicaciones que se
ejecutan en los dispositivos y tiene dos modos de ejecución, en
ambos el decodificador proporciona los últimos datos que tiene,
pero sólo en un modo el decodificador recibe actualizaciones desde
el flujo. La conmutación entre servicios produce transiciones entre
estos modos. El carrusel sólo puede pasar al estado de ejecución
completa cuando el servicio contiene la fuente de datos de carrusel
completa. El carrusel tiene un número de estados específicos, y
estos están enumerados a continuación con una definición.
- interconectado: punto de montaje del sistema
de ficheros creado. DSI PID registrado. El carrusel no está
interconectado con un servicio/PMT. No hay acceso al sistema de
ficheros.
- empezado: interconectar PMT con el carrusel.
Adquisición módulo/DSI/DII para operación normal empezada. Pueden
mantenerse peticiones del sistema de ficheros nuevas. El
localizador para el dominio de servicio se ajusta en este punto.
- parado: adquisición de módulo por filtrado de
secciones parada. El estado actual del sistema de ficheros está en
memoria, sometido a efectos de memoria caché. En caso de que se
compartan módulos con otro carrusel aún ejecutándose, estos
continuarán actualizándose.
- separado: carrusel separado del servicio.
Todos los elementos en memoria caché están liberados. Todos los
identificadores de fichero se vuelven no válidos.
En un entorno MHP la señalización de aplicación
disparará la transición inicial al estado empezado a través
de interconexión. La finalización de la aplicación moverá el
carrusel al estado separado. Un cambio de un servicio mueve
el carrusel en ese servicio al estado parado. Cualquiera de
los eventos enumerados en B.2.9 también mueve un carrusel a este
estado (es decir, esto es equivalente a "perdido"). Al
alcanzar un servicio nuevo el PMT se examina. Los algoritmos
descritos a continuación se utilizan para determinar si los datos
de módulo del servicio inicial pueden reutilizarse en el servicio
nuevo. Si se halla una comparación, entonces el carrusel se mueve
de vuelta al estado empezado y el carrusel reinicia la
operación en el servicio nuevo. Estas transiciones son invisibles
para la aplicación. Si no se halla una comparación, el carrusel
permanece en el estado parado. Pueden producirse intentos de
recuperar un carrusel perdido por otros motivos de una manera
dependiente de la plataforma. La mayoría de los motivos de la
pérdida original es bastante terminal por lo que un carrusel de este
tipo es un buen candidato para la separación forzada.
Tal como se ha explicado actualmente, un
carrusel parado puede moverse al estado separado por
el sistema. Esto debería ocurrir para carruseles de inicio una vez
destruida la Xlet y como último remedio para ejecutar las Xlet
cuando el decodificador de carrusel no puede recuperar memoria de
otra manera. El sistema debería intentar primero depurar elementos
inutilizados del caché de módulo.
El algoritmo elegido para determinar la
equivalencia de carruseles depende de cómo está señalizado el
conjunto de flujos elementales que posiblemente proporciona datos
de carrusel:
1. Contenido relacionado por el servicio. El
conjunto de flujos elementales de carrusel utilizado por los
carruseles en el servicio sólo está definido por la tabla de
etiquetas de asociación de los servicios. En este modelo, o todos o
ninguno de los carruseles en el servicio permanecen disponibles en
un cambio de servicio. Todos los flujos elementales con el tipo
(11) de mensajería DSMCC UN deberían tener bucles descriptores
idénticos y referirse al mismo PID como en el servicio original.
Pueden estar presentes entradas adicionales si se incluyeron en las
etiquetas de asociación diferidas del servicio original. En caso de
que el servicio original contenga un descriptor de etiqueta de
asociación diferida, entonces todas las entradas que se refieren a
flujos elementales o bien deben resolverse en el bucle de flujos
elementales o bien mantenerse idénticamente en el descriptor de
asociación diferida del servicio nuevo.
2. Contenido relacionado por el carrusel. En
este modelo cada carrusel en un servicio puede analizarse por
separado. El conjunto de flujos elementales utilizado por cada
carrusel se describe en el nivel más alto del carrusel, por ejemplo
como un "descriptor manifiesto" en el DSI. Todas las entradas
en este manifiesto se resolverían desde la etiqueta de asociación al
flujo elemental. Al alcanzar el servicio nuevo, el sistema
comprueba si el DSI contiene información adicional acerca de los
componentes del carrusel. Las etiquetas de asociación de los DII
del carrusel están enumeradas en este "descriptor manifiesto".
En caso de que esta información no esté presente, entonces se vuelve
al primer método anterior. Todas las entradas en esta lista se
resuelven desde etiquetas de asociación a PID al seleccionar el
servicio original. En caso de que este "descriptor manifiesto"
esté presente, entonces no es válido para los datos en el carrusel
para hacer referencia a cualquier otra etiqueta de asociación, los
objetos así referenciados deberían parecer imposibles de conseguir
en la abstracción del sistema de fichero. Al alcanzar el servicio
nuevo el sistema comprueba si el DSI está en el mismo PID como en
el servicio original y entonces resuelve todas las entradas
enumeradas en el PMT nuevo. En caso de que todas coincidan, según la
última muestra del PMT antes de abandonar ese servicio, esto es
suficiente para garantizar una equivalencia completa. Obsérvese que
la correlación de asociación etiqueta a PID puede cambiar a lo
largo del tiempo aunque esto no invalida el caché de carrusel
actual. Por tanto la comparación de PID debería hacerse basándose en
el último conocimiento disponible del servicio previo.
Realización
2
Una segunda realización (o refinación) es
permitir una mezcla de módulos "empezados" y "parados" en
el carrusel, en la situación en la que existe un desajuste en
algunas etiquetas de asociación aunque no en otras. En esta
situación sólo los módulos con una fuente de comparación continuarán
actualizándose a partir del flujo. Las otras entradas permanecerán
como estaban antes de la transición. No se permite que datos de los
PID "incorrectos" entren al sistema. Una manera de implementar
esto es realizar una traducción etiqueta-PID a
través de una tabla de consulta. Esta tabla se establece mediante
el servicio "maestro" inicial para el carrusel, rellenando en
la etiqueta de asociación y las columnas PID maestro de la tabla del
PMT. Cuando se opera en un servicio diferente, las entradas en el
PMT se correlacionan para dar una tercera columna "PID actual"
de la tabla. En todos los intentos para actualizar los módulos, en
caso de que haya un desajuste entre los PID maestro y los PID
actuales, la actualización falla. Las peticiones de adquisición
nuevas también fallan en un desajuste.
Para etiquetas de asociación diferidas, se
comparan los localizadores de los flujos en vez de los PID
directamente. Esto evita una consulta de PID posiblemente lenta en
cada comparación, sólo se resuelve tras una comparación con éxito.
El PMT del servicio original puede continuar supervisándose en el
servicio nuevo para seguir los cambios en el PID.
Con este modelo no existen estados empezados y
parados, sólo interconectados y separados. El localizador del
carrusel no cambia porque sigue ejecutándose de manera eficaz según
el servicio original aunque sólo accediendo a los datos disponibles
a través del servicio actual.
La presente invención permite conservar los
datos de módulo de carrusel a través de límites del servicio.
Algunos formatos de carrusel de objetos soportan el acceso a flujos
de medios (a través de objetos de flujo) e información de eventos
en tiempo real (eventos de flujo) así como ficheros de sistemas de
ficheros y objetos de directorio convencionales. Para estos otros
tipos de contenido, el acceso se habilita de manera similar
mediante un análisis de la correlación de etiquetas de asociación.
El hecho de bloquear el acceso a estos formatos tiene el efecto de
evitar el acceso a los datos de flujo actuales de una manera no
destructiva. Por ejemplo no se visualiza ningún video, pero no se
produce ningún error.
Los carruseles de múltiples objetos pueden
acceder a los mismos módulos de datos. Se supone en este caso que
cada carrusel de objetos sólo tiene un cliente. Así, por ejemplo, en
el caso de que dos aplicaciones accedan al mismo carrusel de
objetos, entonces existen realmente dos estructuras de datos del
carrusel de objetos separadas. Esto permite descartar el caso en
que un cliente de un carrusel de objetos desea trasladarse a un
servicio nuevo, pero el otro cliente no lo desea.
La invención se aplica en primer lugar en el
campo de las radiodifusiones de televisión digital. Este es la
primera área en la que se produce una distribución de radiodifusión
amplia de datos a través de carruseles y en la que existe un
requisito de acceder a estos datos desde más de un "servicio"
(donde servicio significa una colección de elementos de datos
procesados en conjunto). Evidentemente, estos mecanismos también se
aplican en la radiodifusión de radio digital, y de hecho en redes
de radiodifusión de datos puras.
A partir de la presente relevación, muchas otras
modificaciones y variaciones se harán evidentes para los expertos
en la técnica. Tales modificaciones y variaciones pueden implicar
otras características que ya se conocen en la técnica y que pueden
utilizarse en vez de o adicionalmente a características ya dadas a
conocer en el presente documento.
Claims (8)
1. Método para controlar una aplicación
interactiva que comprende recibir un flujo de datos que comprende
una aplicación interactiva, supervisar dicho flujo de datos para
identificar un cambio en dicho flujo y en respuesta a dicho cambio,
evitar que dicha aplicación interactiva acceda a ficheros,
identificar ficheros presentes en dicho flujo de datos y permitir
que dicha aplicación interactiva sólo acceda a aquellos ficheros
presentes en dicho flujo de datos.
2. Método según la reivindicación 1, en el que
dicho flujo de datos se incluye en una señal de radiodifusión.
3. Método según la reivindicación 1 ó 2, en el
que dicho método se ejecuta mediante un programa informático.
4. Método según la reivindicación 3, en el que
dicho programa informático se ejecuta mediante un receptor de
televisión digital.
5. Método según la reivindicación 4, en el que
dicho cambio ser produce cuando dicho receptor de televisión
digital cambio de canal.
6. Aparato para controlar una aplicación
interactiva, que comprende medios de recepción para recibir un flujo
de datos que comprende una aplicación interactiva, medios de
supervisión para supervisar dicho flujo de datos y para controlar
dicha aplicación interactiva para evitar que la aplicación
interactiva acceda a ficheros que siguen un cambio en el flujo de
datos, para identificar ficheros presentes en el flujo de datos y
permitir que dicha aplicación interactiva acceda sólo a aquellos
ficheros presentes en dicho flujo de datos.
7. Aparato según la reivindicación 6,
comprendiendo dicho aparato un circuito integrado.
8. Aparato según la reivindicación 7, en el que
dicho circuito integrado forma parte de un receptor de televisión
digital.
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GBGB0122585.3A GB0122585D0 (en) | 2001-09-19 | 2001-09-19 | Control of an interactive application |
| GB0122585 | 2001-09-19 | ||
| GBGB0214735.3A GB0214735D0 (en) | 2001-09-19 | 2002-06-25 | Control of an interactive application |
| GB0214735 | 2002-06-25 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2296978T3 true ES2296978T3 (es) | 2008-05-01 |
Family
ID=26246564
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES02755579T Expired - Lifetime ES2296978T3 (es) | 2001-09-19 | 2002-09-16 | Control de una aplicacion interactiva en un flujo de datos. |
Country Status (8)
| Country | Link |
|---|---|
| US (1) | US7917921B2 (es) |
| EP (1) | EP1430397B1 (es) |
| KR (1) | KR100940460B1 (es) |
| CN (1) | CN1311347C (es) |
| AT (1) | ATE378631T1 (es) |
| AU (1) | AU2002321784B2 (es) |
| ES (1) | ES2296978T3 (es) |
| WO (1) | WO2003025746A1 (es) |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1244310A1 (en) * | 2001-03-21 | 2002-09-25 | Canal+ Technologies Société Anonyme | Data referencing system |
| WO2004021138A2 (en) * | 2002-08-30 | 2004-03-11 | Wink Communications, Inc. | Carousel proxy |
| KR20070024496A (ko) * | 2004-02-23 | 2007-03-02 | 힐크레스트 래보래토리스, 인크. | 보안 미디어 컴퓨팅 환경을 위한 비디오 출력 생성 방법,컴퓨터 비디오 시스템, 케이블 데이터 처리 시스템, 및케이블 데이터 입력 카드 |
| EP1763957A1 (en) * | 2004-06-30 | 2007-03-21 | Koninklijke Philips Electronics N.V. | Content managing module and apparatus comprising such content managing module as well as method for controlling interactive applications |
| WO2006028132A1 (ja) * | 2004-09-08 | 2006-03-16 | Matsushita Electric Industrial Co., Ltd. | 映像データとアプリケーションとを連動させて再生する再生装置、再生方法、及びプログラム |
| WO2006049185A1 (ja) * | 2004-11-02 | 2006-05-11 | Matsushita Electric Industrial Co., Ltd. | アプリケーションプログラム実行装置 |
| WO2007004161A1 (en) * | 2005-06-30 | 2007-01-11 | Koninklijke Philips Electronics, N.V. | Method and system for providing conditional access to data in an mhp or ocap broadcast system |
| KR20070108324A (ko) * | 2006-02-09 | 2007-11-09 | 삼성전자주식회사 | 휴대형 디지털 비디오 방송 방통융합 서비스 시스템에서핸드오버 방법 및 장치 |
| KR101319546B1 (ko) * | 2006-11-21 | 2013-10-21 | 삼성전자주식회사 | 영상표시장치 및 그의 엑스렛 제공 방법 |
| KR101109603B1 (ko) * | 2007-03-29 | 2012-01-31 | 삼성전자주식회사 | 응용 프로그램 실행 방법 및 장치 |
| US8087047B2 (en) | 2007-04-20 | 2011-12-27 | United Video Properties, Inc. | Systems and methods for providing remote access to interactive media guidance applications |
| US9104991B2 (en) * | 2010-07-30 | 2015-08-11 | Bank Of America Corporation | Predictive retirement toolset |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4580285A (en) * | 1983-09-07 | 1986-04-01 | Sprague Electric Company | Scanning AM radio with discriminator-driven-scan-stop-circuit |
| US5434678A (en) * | 1993-01-11 | 1995-07-18 | Abecassis; Max | Seamless transmission of non-sequential video segments |
| US5561637A (en) * | 1995-09-12 | 1996-10-01 | International Business Machines Corporation | Pace control for multicasting in a video server environment |
| WO1998035468A2 (en) * | 1997-01-27 | 1998-08-13 | Benjamin Slotznick | System for delivering and displaying primary and secondary information |
| DE69941142D1 (de) * | 1998-05-06 | 2009-09-03 | Sun Microsystems Inc | Verarbeitungsmaschine und verarbeitungsverfahren |
| JP2000032414A (ja) | 1998-07-16 | 2000-01-28 | Sony Corp | チャンネル設定方法及び受信装置 |
| US6668158B1 (en) * | 1998-07-16 | 2003-12-23 | Sony Corporation | Control method, control apparatus, data receiving and recording method, data receiver and receiving method |
| US20020091816A1 (en) * | 1998-12-23 | 2002-07-11 | Altan J. Stalker | Broadcast data access system for multimedia clients in a broadcast network architecture |
| KR100745996B1 (ko) * | 1999-05-20 | 2007-08-06 | 삼성전자주식회사 | 디지털 방송 시스템 및 그 제어 방법 |
| US7069571B1 (en) * | 1999-06-15 | 2006-06-27 | Wink Communications, Inc. | Automated retirement of interactive applications using retirement instructions for events and program states |
| CN1166176C (zh) * | 1999-08-05 | 2004-09-08 | 皇家菲利浦电子有限公司 | 用作服务器分配广播的独立应用程序的电视系统和分配广播的独立应用程序的方法 |
| US9668011B2 (en) * | 2001-02-05 | 2017-05-30 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Single chip set-top box system |
| US20020144279A1 (en) * | 2001-03-30 | 2002-10-03 | Guojun Zhou | Method and apparatus for providing custom television channels to viewers |
-
2002
- 2002-08-14 US US10/218,364 patent/US7917921B2/en active Active
- 2002-09-16 KR KR1020047003970A patent/KR100940460B1/ko not_active Expired - Lifetime
- 2002-09-16 WO PCT/IB2002/003819 patent/WO2003025746A1/en not_active Ceased
- 2002-09-16 AT AT02755579T patent/ATE378631T1/de not_active IP Right Cessation
- 2002-09-16 CN CNB028182537A patent/CN1311347C/zh not_active Expired - Lifetime
- 2002-09-16 AU AU2002321784A patent/AU2002321784B2/en not_active Expired
- 2002-09-16 ES ES02755579T patent/ES2296978T3/es not_active Expired - Lifetime
- 2002-09-16 EP EP02755579A patent/EP1430397B1/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| KR100940460B1 (ko) | 2010-02-04 |
| US7917921B2 (en) | 2011-03-29 |
| US20030070165A1 (en) | 2003-04-10 |
| AU2002321784B2 (en) | 2008-03-06 |
| CN1555524A (zh) | 2004-12-15 |
| KR20040035817A (ko) | 2004-04-29 |
| ATE378631T1 (de) | 2007-11-15 |
| WO2003025746A1 (en) | 2003-03-27 |
| CN1311347C (zh) | 2007-04-18 |
| EP1430397B1 (en) | 2007-11-14 |
| EP1430397A1 (en) | 2004-06-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2296978T3 (es) | Control de una aplicacion interactiva en un flujo de datos. | |
| KR100262845B1 (ko) | 가상채널을사용하는디지털방송시스템 | |
| CN101188668B (zh) | 广播信号处理方法及广播信号处理装置 | |
| ES2806154T3 (es) | Aparato receptor, método de recepción, y programa | |
| EP2658251A1 (en) | Receiving device, broadcasting system and program | |
| US20100235858A1 (en) | Service browser process and related system | |
| EP2103121A1 (en) | Apparatus and method for configuring and executing function of application appropriate to broadcast-receiving device | |
| JP5909325B2 (ja) | 受信装置、放送システム及びプログラム | |
| US20080077681A1 (en) | Method and apparatus for upgrading software of digital broadcasting receiver | |
| ES2302828T5 (es) | Procedimiento y aparato para la adquisición y la monitorización mejoradas de secciones de tabla de información de evento | |
| AU2002321784A1 (en) | Control of an interactive application in a data stream | |
| EP1843586A2 (en) | Method of transmitting interactive television | |
| US20080129878A1 (en) | Digital television receiver and method for processing the digital television signal | |
| WO2000079787A1 (en) | Method and receiver for managing the consistency of service lists in digital television system | |
| JP5092608B2 (ja) | 受信装置 | |
| EP1662390A2 (en) | Control of an interactive application | |
| KR20070097185A (ko) | 방송 수신기 및 데이터 방송 애플리케이션 운용 방법 | |
| ES2247015T3 (es) | Procedimiento de datos digitales de multiples flujos de datos. | |
| ES2214912T3 (es) | Procedimiento y dispositivo para gestion de datos de servicio en un sistema de television. | |
| ES2384787T3 (es) | Procedimiento de gestión de informaciones de servicio en una televisión digital y receptor asociado | |
| KR101088121B1 (ko) | 컨텐츠 전송 시스템 내의 수신기, 및 이 수신기 레벨에서 서비스 리스트를 관리하는 방법 | |
| JP2005503703A5 (es) | ||
| KR20100056173A (ko) | 화면 제어 방법 및 그 장치 | |
| US7688916B2 (en) | Method and apparatus for initialization in digital broadcasting receiver | |
| KR20090126769A (ko) | 방송 수신기 및 방송 데이터 수신 방법 |