ES2383276T3 - Dispositivo y procedimiento de codificación de imágenes - Google Patents
Dispositivo y procedimiento de codificación de imágenes Download PDFInfo
- Publication number
- ES2383276T3 ES2383276T3 ES11163451T ES11163451T ES2383276T3 ES 2383276 T3 ES2383276 T3 ES 2383276T3 ES 11163451 T ES11163451 T ES 11163451T ES 11163451 T ES11163451 T ES 11163451T ES 2383276 T3 ES2383276 T3 ES 2383276T3
- Authority
- ES
- Spain
- Prior art keywords
- image
- upper limit
- data
- encoded
- time
- 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
- 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/4302—Content synchronisation processes, e.g. decoder synchronisation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/102—Programmed access in sequence to addressed parts of tracks of operating record carriers
- G11B27/105—Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/28—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
- G11B27/32—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
- G11B27/322—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier used signal is digitally coded
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- 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/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/23614—Multiplexing of additional data and video streams
-
- 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/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/242—Synchronisation processes, e.g. processing of PCR [Programme Clock References]
-
- 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
- H04N21/42646—Internal components of the client ; Characteristics thereof for reading from or writing on a non-volatile solid state storage medium, e.g. DVD, CD-ROM
-
- 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/432—Content retrieval operation from a local storage medium, e.g. hard-disk
- H04N21/4325—Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
-
- 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/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4334—Recording operations
-
- 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
-
- 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/8146—Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
- H04N21/8153—Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics comprising still images, e.g. texture, background image
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/84—Television signal recording using optical recording
- H04N5/85—Television signal recording using optical recording on discs or drums
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
- G11B2220/25—Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
- G11B2220/2537—Optical discs
- G11B2220/2541—Blu-ray discs; Blue laser DVR discs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/21—Intermediate information storage
- H04N1/2104—Intermediate information storage for one or a few pictures
- H04N1/2112—Intermediate information storage for one or a few pictures using still video cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/91—Television signal processing therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/7921—Processing of colour television signals in connection with recording for more than one processing mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N9/804—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components
- H04N9/8042—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback involving pulse code modulation of the colour picture signal components involving data reduction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/79—Processing of colour television signals in connection with recording
- H04N9/80—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
- H04N9/82—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only
- H04N9/8205—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback the individual colour picture signal components being recorded simultaneously only involving the multiplexing of an additional signal and the colour video signal
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Databases & Information Systems (AREA)
- Television Signal Processing For Recording (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
Abstract
Un dispositivo de codificación de imágenes (2000) que codifica una imagen que ha de ser codificada, comprendiendo dicho dispositivo de codificación de imágenes: una unidad de establecimiento (2001) configurada para establecer un primer límite superior y un segundo límite superior a un mismo valor cuando un nivel es igual o inferior a un valor de referencia predeterminado, y para establecer el primer límite superior de forma superior al segundo límite superior cuando el nivel es superior a un valor de referencia predeterminado, indicando el primer límite superior un límite superior de la cantidad de códigos por fotograma fijo durante la codificación de la imagen que ha de ser codificada como un fotograma fijo e indicando el segundo límite superior un límite superior de la cantidad de códigos por fotograma en movimiento durante la codificación de la imagen que ha de ser codificada como un fotograma en movimiento, y siendo el nivel un parámetro que indica un valor de límite superior de parámetros de codificación que incluyen una velocidad binaria, una velocidad de marco y un tamaño de imagen; una unidad de codificación (1001) configurada para codificar, basándose en el nivel, la imagen que ha de ser codificada, así como para cumplir el primer límite superior durante la codificación de la imagen que ha de ser codificada como el fotograma fijo, y para codificar, basándose en el nivel, la imagen que ha de ser codificada, así como para cumplir el segundo límite superior durante la codificación de la imagen que ha de ser codificada como fotograma en movimiento; y una unidad de salida (1003) configurada para transmitir el fotograma fijo y el fotograma en movimiento que están codificados.
Description
Dispositivo y procedimiento de codificación de imágenes.
Campo técnico
La presente invención se refiere a un dispositivo de codificación de imágenes, a un dispositivo de decodificación de imágenes y a similares y, en particular, a la codificación y decodificación de un flujo que incluye una imagen en movimiento y una imagen fija. Además, la presente invención se refiere a un soporte de paquetes que garantiza accesibilidad aleatoria en el momento de la reproducción.
A continuación se describe un Videodisco DVD (en lo sucesivo, denominado simplemente “DVD”) de una tecnología convencional.
La FIG. 1 es un diagrama que muestra la estructura de un DVD. Como se muestra en la parte inferior de la FIG. 1, el disco DVD incluye un espacio de direcciones lógicas entre el área de entrada y el área de salida. En el espacio de direcciones lógicas, en la parte superior se almacena información de volumen del sistema de ficheros y en las áreas subsiguientes se almacenan datos de aplicación, tales como vídeo y audio.
El sistema de ficheros, que es un sistema de ficheros que se ajusta a ISO9660 y al Formato de Disco Universal (UDF), es un mecanismo para representar datos en un disco por medio de unidades denominadas directorios y ficheros. Incluso en un ordenador personal (PC) de uso diario, datos almacenados en el disco duro en forma de directorios y ficheros se representan en el ordenador a través de un sistema de ficheros denominado FAT o NTFS, como consecuencia del cual se mejora el grado de utilización.
Tanto UDF como ISO9660 (que a veces se denominan conjuntamente “Puente UDF”) se usan en DVDs y el controlador del sistema de ficheros puede leer los datos de UDF o ISO9660. En el caso de DVD-RAM/R/RW, que son discos DVD regrabables, la lectura, la grabación y el borrado de datos son físicamente posibles a través de dichos sistemas de ficheros.
Los datos almacenados en un DVD se pueden ver, a través del puente UDF, como directorios o ficheros, como se muestra en la parte izquierda superior de la FIG. 1. Justo debajo del directorio raíz (“ROOT” en la FIG. 1), está colocado un directorio denominado “VIDEO_TS”, donde se almacenan datos de aplicación del DVD. Los datos de
aplicación se almacenan como ficheros múltiples. Los siguientes son algunos de los principales ficheros:
VIDEO_TS.IFO fichero de información de control de reproducción de disco
VTS_01_0.IFO fichero de información de control de reproducción del conjunto #1 de títulos de vídeo
VTS_01_0.VOB fichero de flujo del conjunto #1 de títulos de vídeo
Hay dos tipos de extensiones especificadas. “IFO” indica que el fichero correspondiente almacena información de control de reproducción. “VOB” indica que el fichero correspondiente almacena un flujo de MPEG que son datos de AV. La información de control de reproducción es información que incluye información para producir interactividad (técnica para cambiar dinámicamente el estado de reproducción según una operación de usuario) utilizada para el DVD, así como información, tal como metadatos, que está unida a un título o a un flujo de AV. La información de control de reproducción del DVD se denomina información de navegación en general.
Los ficheros de información de control de reproducción incluyen “VIDEO_TS.IFO” destinado a la gestión de todo el disco y “VTS_01_0.IFO” que es la información de control de reproducción de un conjunto de títulos de vídeo individual (un único disco DVD puede almacenar varios títulos, es decir, diferentes películas y películas con diferentes versiones). “01”, en el cuerpo del nombre del fichero, indica el número del conjunto de títulos de vídeo. Cuando el número de un conjunto de títulos de vídeo es #2, por ejemplo, el nombre del fichero es “VTS_02_0.IFO”.
La parte derecha superior de la FIG. 1 muestra un espacio de navegación de DVD en la capa de aplicación del DVD, es decir, un espacio de estructuras lógicas en el que se muestra la información de control de reproducción que se ha descrito anteriormente. La información de “VIDEO_TS.IFO” se muestra en el espacio de navegación de DVD como Información de Gestor de Vídeo (VMGI). La información de control de reproducción que existe para cada “VTS_01_0.IFO” o para cada conjunto de títulos de vídeo, se muestra en el espacio de navegación de DVD como Información de Conjunto de Títulos de Vídeo (VTSI).
VTSI describe Información de Cadena de Programas (PGCI) que es información sobre una secuencia de reproducción denominada una Cadena de Programas (PGC). La PGCI está formada por un grupo de células y un tipo de información de programación denominada una orden. Cada célula representa una parte o todos los segmentos de un VOB (que es una abreviatura de Objeto de Vídeo y que incluye un flujo de MPEG). La reproducción de una célula significa reproducir segmentos del VOB especificados por medio de dicha célula.
Una orden, que se procesa por medio de una máquina virtual capaz-DVD, es similar a Java Script (marca registrada) ejecutado en un navegador. No obstante, una orden de DVD se diferencia de un Java Script (marca registrada) en que, mientras que Java Script lleva a cabo controles de ventana y navegador (por ejemplo, abre una nueva ventana de navegador), además de operaciones lógicas, una orden de DVD solo lleva a cabo el control de reproducción de títulos de AV, tal como la especificación de un capítulo que se va a reproducir, además de operaciones lógicas.
Cada célula incluye, como su información interna, la dirección de inicio y la dirección de fin (dirección de almacenamiento lógico en el disco) de un VOB almacenado en el disco. Un reproductor lee los datos usando dicha información descrita en la célula sobre la dirección de inicio y la dirección de fin del VOB y reproduce los datos leídos.
La FIG. 2 es un diagrama esquemático para describir la información de navegación insertada en el flujo de AV. La interactividad, que es característica de un DVD, no se produce solo por medio de la información de navegación almacenada en el “VIDEO_TS. IFO” y el “VTS_01_0. IFO” que se han descrito anteriormente; varias partes de información importante se multiplexan en el VOB junto con datos de vídeo y datos de audio, usando portadores dedicados denominados paquetes de navegación (en lo sucesivo, denominados paquete(s) de navegación o NV_PCK).
A continuación, se ofrece una descripción de un menú como un simple ejemplo de interactividad. En la pantalla de menú aparecen varios botones. Para cada uno de dichos botones se define un procedimiento que se llevará a cabo cuando se seleccione y active dicho botón. En el menú está seleccionado un botón (el hecho de que el botón esté seleccionado se indica al usuario por medio de un color semitransparente superpuesto en dicho botón de un modo realzado). El usuario se puede desplazar a cualquiera de los botones situados encima, debajo, a la derecha o a la izquierda del botón actualmente seleccionado, usando la tecla Arriba/Abajo/Derecha/Izquierda del control remoto. Usando la tecla Arriba/Abajo/Derecha/Izquierda del control remoto, el usuario mueve el realce a un botón que el usuario desea seleccionar y activar y, a continuación, determina (pulsa la tecla Determinación). Por consiguiente, se activa un programa de la orden correspondiente. En general, la reproducción del capítulo o título correspondiente se activa por medio de la orden.
La parte izquierda superior de la FIG. 2 muestra una perspectiva general de la información de control almacenada en NV_PCK. NV_PCK incluye información de color de realce e información de botón de cada botón. La información de color de realce describe información de gama de colores, que especifica un color semitransparente de un realce que se va a superponer. Cada información de botón describe: información de área rectangular, que es información sobre la posición de cada botón; información de desplazamiento, que indica un movimiento de un botón a otro botón (especificación de un botón de destino correspondiente a una selección de usuario de la tecla Arriba/Abajo/Derecha/Izquierda) e información de orden de botón (una orden que se ejecutará cuando se seleccione dicho botón).
Como se muestra en la parte central derecha superior de la FIG. 2, un realce en el menú se genera como una imagen de superposición. La imagen de superposición es una imagen que se genera dando un color especificado por la información de gama de color a la información de área rectangular de la información de botón. Dicha imagen de superposición se visualiza en la pantalla sobrepuesta en la imagen de fondo que se muestra en la parte derecha de la FIG. 2.
El menú del DVD se ejecuta del modo que se ha descrito anteriormente. La razón por la que una parte de los datos de navegación se inserta en el flujo usando NV_PCK es para permitir que la información de menú se actualice dinámicamente en sincronización con el flujo (por ejemplo, para permitir que el menú se visualice solo entre cinco y diez minutos en mitad de la reproducción de la película) y para ejecutar el menú del DVD sin problemas incluso para una aplicación que es posible que tenga un problema de tiempos de sincronización. Otra razón importante es mejorar el grado de manejo del usuario, por ejemplo, almacenando en NV_PCK información para dar soporte a una reproducción especial, a fin de reproducir y decodificar fácilmente datos de AV incluso cuando un DVD se reproduce de un modo especial, tal como reproducción durante el avance rápido y reproducción durante el rebobinado.
La FIG. 3 es un diagrama conceptual que muestra un VOB que es un flujo de DVD. Como se muestra en el dibujo, cada dato, tal como, vídeo, audio y subtítulos (como se muestra en A) está paquetizado y estructurado en paquetes (como se muestra en B), en función del estándar de sistemas de MPEG (ISO/IEC13818-1), y multiplexado para que sea un único flujo de programas de MPEG (como se muestra en C). NV_PCK, que incluye una orden de botón para producir interactividad, como se ha descrito anteriormente, se multiplexa a la vez.
La multiplexación del sistema de MPEG se caracteriza porque, mientras que cada dato que se va a multiplexar forma una cadena de bits basada en su orden de decodificación, los datos que se van a multiplexar, es decir, datos de vídeo, datos de audio y datos de subtítulo no necesariamente forman una cadena de bits en el orden de reproducción. Esto es atribuible al hecho de que un modelo de decodificador para un flujo de sistema de MPEG multiplexado (por lo general, denominado un Decodificador de Objetivo de Sistemas o un STD (se muestra en D de la FIG. 3) tiene memorias intermedias de decodificador correspondientes a los flujos elementales respectivos obtenidos demultiplexando los datos multiplexados y dichos datos demultiplexados se almacenan temporalmente en las respectivas memorias intermedias de decodificador hasta el momento de la decodificación. El tamaño de las memorias intermedias de decodificador especificado por el estándar de Vídeo-DVD difiere en función del flujo elemental. El tamaño de la memoria intermedia para datos de vídeo es de 232KB, el tamaño de la memoria intermedia para datos de audio es de 4KB y el tamaño de la memoria intermedia para datos de subtítulo es de 52KB.
Es decir, los datos de subtítulo que se multiplexan junto con los datos de vídeo no necesariamente se decodifican o reproducen en los mismos tiempos.
Además, existe el estándar de disco Blu-ray (BD) como estándar de DVD de próxima generación.
Si bien un DVD está destinado a la distribución de paquetes de vídeo con calidad de imagen estándar (calidad de imagen de definición estándar), así como a la grabación de emisiones analógicas (el formato de Grabación de Vídeo DVD), un BD es capaz de grabar emisiones digitales con calidad de imagen de alta definición (el formato Regrabable de Disco Blu-ray, en lo sucesivo, denominado el BD-RE).
No obstante, dado que el formato BD-RE da amplio soporte a la grabación de emisiones digitales, no se optimiza la información que da soporte a la reproducción especial o similar. Teniendo en cuenta que el vídeo de alta definición se distribuirá en el futuro por medio de distribución de paquetes a velocidad superior que la de las emisiones digitales (el formato BD-ROM), existirá la necesidad de un mecanismo que avise a un usuario incluso en el momento de reproducción especial.
La información de soporte para reproducción especial (mapa de tiempos) del formato BD-RE se describe en el documento de patente 1.
Documento de patente 1: Solicitud de patente japonesa, abierta a consulta por el público, nº 2000-228656.
En la patente estadounidense US6229849 se describe un límite superior de un intervalo utilizable de una memoria intermedia de VBV que se determina a partir de un tiempo de retardo preestablecido de la memoria intermedia de VBV y de una velocidad binaria designada. Se calcula una cantidad de bits objetivo de un fotograma (i) y una cantidad de ocupación de datos del VBV en el momento en que se codifica un fotograma (j+1) y se corrige la cantidad de bits objetivo T(j) para codificar el fotograma (j) de manera que la cantidad de ocupación de datos del VBV del fotograma (j+1) esté continuamente dentro del intervalo limitado. Con esto, incluso cuando se establece una velocidad binaria de codificación baja, el retardo debido a la memoria intermedia de VBV de un tiempo de retardo predeterminado o superior no llega a un tiempo de retardo preestablecido o superior. Por consiguiente, se puede producir un codificador de MPEG adecuado para una emisión en directo en el que no se desea el problema del tiempo de retardo.
En la patente estadounidense US6.195.503 se describe un aparato de grabación/reproducción de imágenes y sonido fácil de usar con un ordenador personal o similar, para grabar/reproducir datos comprimidos de imagen y sonido de manera fácil y cómoda por cuanto se refiere a reproducción, operaciones de edición y similares. Un fotograma fijo y un sonido se introducen en un terminal de entrada de imágenes y en un terminal de entrada de sonido, respectivamente. El fotograma fijo introducido se comprime según el sistema JPEG por medio de un códec JPEG y se graba en un dispositivo de grabación a través de una unidad de separación múltiplex como datos comprimidos de fotograma fijo. Además, el sonido introducido se comprime según el sistema de audio MPEG por medio de un códec MPEG y se graba en el dispositivo de grabación a través de una unidad de separación múltiplex como datos comprimidos de sonido. Un controlador controla el procedimiento de compresión y la grabación, mediante una señal de control, a través de un terminal de entrada de señal de selección de modo o un terminal de entrada de activación de disparador.
Problemas que se solucionarán con la invención
El soporte de almacenamiento de información convencional tiene el problema de que una imagen fija no se puede codificar en una imagen de alta calidad dado que tanto una imagen en movimiento como una imagen fija tienen el mismo valor límite superior correspondiente a la cantidad de códigos por fotograma.
Por ejemplo, MPEG-4 AVC especifica el valor máximo correspondiente a la cantidad de códigos por fotograma. Una especificación de aplicación, tal como la correspondiente a BD, usa, como el valor límite superior de la cantidad de códigos por fotograma, el valor especificado por MPEG-4 AVC o el valor establecido exclusivamente en la aplicación. Se puede controlar el valor límite superior usando un parámetro conocido como Índice de Compresión Mínimo (MinCR) especificado por el estándar MPEG-4 AVC. MinCR es un parámetro que indica el límite inferior de un índice de compresión de un fotograma codificado respecto a la imagen original. Por ejemplo, cuando MinCR es 2, indica que la cantidad de códigos por fotograma codificado es la mitad del tamaño de datos de la imagen original o inferior.
En el soporte de almacenamiento de información convencional, se usan los mismos valores de MinCR tanto para una aplicación de imágenes en movimiento como para una aplicación de imágenes fijas. La cantidad de procesos que se van a llevar a cabo en el momento de decodificar datos codificados es considerable en el caso de una imagen en movimiento. Por lo tanto, MinCR se determina de manera que se garantiza una operación, especialmente en el peor de los casos, cuando la cantidad de operaciones que se van a llevar a cabo en el momento de decodificar un fotograma es el valor límite superior especificado por un estándar. Por el contrario, en el caso de imágenes fijas es más importante la calidad de imagen que la cantidad de procesos que se llevan a cabo en el momento de la decodificación, dado que un intervalo de visualización de imágenes fijas es mayor que el de una imagen en movimiento. No obstante, debido al hecho de que la cantidad de códigos aumenta como resultado de codificar una imagen fija en una imagen de alta calidad, surge un problema con el soporte de almacenamiento de información convencional, que usa los mismos valores de MinCR para imágenes fijas y para una imagen en movimiento, siendo el problema que no se puede asignar una cantidad suficiente de códigos a un fotograma, especialmente en el momento de la intracodificación.
Un objetivo de la presente invención es proporcionar un dispositivo de codificación de imágenes y un dispositivo de decodificación de imágenes que puedan codificar y decodificar una imagen fija en una imagen con mayor calidad de imagen que la de una imagen en movimiento cuando hay una combinación de una imagen en movimiento e imágenes fijas.
Medios para solucionar los problemas
Con el fin de lograr el objetivo anterior, se propone el dispositivo de codificación de imágenes de la presente invención tal como se define en la reivindicación 1.
Cabe señalar que el procedimiento de codificación de imágenes según la presente invención se define en la reivindicación 2.
Como se ha descrito anteriormente, el dispositivo de codificación de imágenes, el dispositivo de decodificación de imágenes y similares de la presente invención presentan la ventaja de poder reproducir imágenes fijas con alta calidad de imagen en el momento de reproducción de imágenes fijas, a la vez que se suprime la cantidad de procesos que lleva a cabo el dispositivo de reproducción en el momento de reproducción de imágenes en movimiento, estableciendo un límite superior mayor para la cantidad de códigos por imagen fija que el de la imagen en movimiento. Por lo tanto, la presente invención tiene un gran valor práctico.
Breve descripción de los dibujos
La FIG. 1 es un diagrama que muestra una estructura de un DVD.
La FIG. 2 es un diagrama que muestra una estructura de realce.
La FIG. 3 es un diagrama que muestra un ejemplo de multiplexación de un DVD.
La FIG. 4 un diagrama para describir un indicador que indica que un valor de MinCR específico se aplica a un
fragmento, así como para describir una estructura de datos de una primera forma de realización.
La FIG. 5 es un diagrama de flujo que ilustra operaciones que se llevan a cabo en un procedimiento de
multiplexación.
La FIG. 6 es un diagrama de bloques que muestra una estructura de un dispositivo de multiplexación.
La FIG. 7A es un diagrama para describir un primer procedimiento de reproducción para reproducción de una
imagen fija.
La FIG. 7B es un diagrama para describir un segundo procedimiento de reproducción para reproducción de una
imagen fija.
La FIG. 8 es un diagrama de flujo que muestra el primer procedimiento de reproducción para reproducción de una
imagen fija.
La FIG. 9 es un diagrama de flujo que muestra el segundo procedimiento de reproducción para reproducción de una
imagen fija.
La FIG. 10 es un diagrama jerárquico que muestra datos en un HD-DVD.
La FIG. 11 es un diagrama que muestra una estructura de un espacio lógico en el HD-DVD.
La FIG. 12 es un diagrama de bloques que muestra una perspectiva general de un reproductor de HD-DVD.
La FIG. 13 es un diagrama de bloques que muestra una estructura del reproductor de HD-DVD.
La FIG. 14 es un diagrama para describir un espacio de aplicación en el HD-DVD.
La FIG. 15 es un diagrama que muestra una estructura de un flujo de MPEG (VOB).
La FIG. 16 es un diagrama que muestra una estructura de cada paquete.
La FIG. 17 es un diagrama para describir una relación entre un flujo de AV y una estructura de reproductor.
La FIG. 18 es un diagrama de modelos que muestra un suministro continuo de datos de AV a una memoria
intermedia de pista.
La FIG. 19 es un diagrama que muestra una estructura de un fichero de información de VOB.
La FIG. 20 es un diagrama para describir un mapa de tiempos.
La FIG. 21 es un diagrama que muestra una estructura de un fichero de lista de reproducción.
La FIG. 22 es un diagrama que muestra una estructura de un fichero de programas correspondiente a una lista de
reproducción.
La FIG. 23 es un diagrama que muestra una estructura de un fichero de información de gestión relacionado con todo
el disco BD.
La FIG. 24 es un diagrama que muestra una estructura de un fichero para grabar un controlador de eventos
globales.
La FIG. 25 es un diagrama que muestra un ejemplo de un evento de tiempo.
La FIG. 26 es un diagrama que muestra un ejemplo de un evento de usuario.
La FIG. 27 es un diagrama para describir un ejemplo de un controlador de eventos globales.
La FIG. 28 es un diagrama que muestra una estructura de una máquina virtual.
La FIG. 29 es un diagrama que muestra una tabla de variables de reproductor.
La FIG. 30 es un diagrama que muestra un ejemplo de un controlador de eventos (para un evento de tiempo).
La FIG. 31 es un diagrama que muestra un ejemplo de un controlador de eventos (para un evento de usuario).
La FIG. 32 es un diagrama de flujo que muestra procedimientos básicos de reproductor.
La FIG. 33 es un diagrama de flujo que muestra procedimientos de reproducción de lista de reproducción.
La FIG. 34 es un diagrama de flujo que muestra procedimientos de eventos.
La FIG. 35 es un diagrama de flujo que muestra procedimientos de subtítulo.
La FIG. 36 es un diagrama para describir una relación entre el mapa de tiempos e imágenes fijas.
La FIG. 37 es un diagrama para describir un indicador que indica si un fotograma al que se va a hacer referencia se
puede decodificar o no.
La FIG. 38 es un diagrama para describir un indicador que indica que todas las entradas se refieren a fotogramas I.
La FIG. 39 es un diagrama para describir una diferencia entre una aplicación de imágenes en movimiento y una
proyección de diapositivas.
La FIG. 40 es un diagrama para describir un indicador que garantiza que se hace referencia a todos los fotogramas
I.
La FIG. 41 es un diagrama que muestra una estructura de datos de una imagen fija conforme a MPEG-4 AVC.
La FIG. 42 es un diagrama para describir un procedimiento de reproducción para imágenes fijas conforme a MPEG-4
AVC.
La FIG. 43A muestra un formato físico de ejemplo de un disco flexible como un soporte de almacenamiento propiamente dicho. La FIG. 43B muestra una vista externa del disco flexible visto desde la parte delantera, su vista transversal
esquemática y el disco flexible propiamente dicho.
La FIG. 43C muestra una estructura necesaria para almacenar el programa en el disco flexible FD y leer el programa
del mismo.
201 Disco BD 202 Lector óptico 203 Memoria de almacenamiento de programas 204 Memoria de almacenamiento de información de gestión 205 Memoria de almacenamiento de AV 206 Unidad de proceso de programa 207 Unidad de proceso de información de gestión 208 Unidad de proceso de presentación 209 Mapa de imágenes 210 Mapa de vídeos 211 Unidad de proceso de composición 301 Memoria de almacenamiento de programas 302 Procesador de programa 303 Gestor de UOP 304 Memoria de almacenamiento de información de gestión 305 Procesador de escenario 306 Controlador de presentaciones 307 Reloj 308 Memoria de imagen 309 Memoria intermedia de pista 310 Demultiplexor 311 Procesador de imagen 312 Procesador de vídeo 313 Procesador de sonido 314 Mapa de imágenes 315 Mapa de vídeos 316 Unidad de proceso de composición 317 Controlador de unidad de disco 1001 Unidad de decodificación 1002 Unidad de multiplexación de sistemas 1003 Unidad de combinación 2000 Dispositivo de multiplexación 2001 Unidad de determinación de información de MinCR 2002 Unidad de generación de información de MinCR 2003 Unidad de creación de información de gestión 3207 Convertidor reductor de imágenes en movimiento 3215 Convertidor reductor de subtítulos 3223 Convertidor reductor de imágenes fijas 3228 Convertidor reductor de audio S101 Etapa de inserción de disco S102 Etapa de lectura de BD.INFO S103 Etapa de lectura de BD.PROG S104 Etapa de generación de primer evento S105 Etapa de ejecución de controlador de eventos S201 Etapa de aceptación de UOP S202 Etapa de generación de evento de UOP
S203 Etapa de determinación de llamada de menú
S204 Etapa de generación de eventos S205 Etapa de ejecución de controlador de eventos S301 Etapa de inicio de reproducción de lista de reproducción S302 Etapa de lectura de información de lista de reproducción (XXX.PL) S303 Etapa de lectura de programa de reproducción (XXX.PROG) S304 Etapa de inicio de reproducción de células S305 Etapa de inicio de reproducción de AV S401 Etapa de inicio de reproducción de AV S402 Etapa de lectura de información de VOB (YYY.VOBI) S403 Etapa de lectura de VOB (YYY.VOB) S404 Etapa de inicio de reproducción de VOB S405 Etapa de fin de reproducción de VOB S406 Etapa de determinación de existencia de célula siguiente S501 Etapa de inicio de reproducción de lista de reproducción S502 Etapa de determinación de fin de reproducción de lista de reproducción S503 Etapa de determinación de tiempo de eventos de tiempo S504 Etapa de generación de eventos S505 Etapa de ejecución de controlador de eventos S601 Etapa de inicio de reproducción de lista de reproducción S602 Etapa de determinación de fin de reproducción de lista de reproducción S603 Etapa de determinación de aceptación de UOP S604 Etapa de generación de eventos de UOP S605 Etapa de determinación de llamada de menú S606 Etapa de determinación de período de validez de eventos de usuario S607 Etapa de generación de eventos S608 Etapa de ejecución de controlador de eventos S701 Etapa de inicio de reproducción de lista de reproducción S702 Etapa de determinación de fin de reproducción de lista de reproducción S703 Etapa de determinación de inicio de representación de subtítulos S704 Etapa de representación de subtítulos S705 Etapa de determinación de fin de visualización de subtítulos S706 Etapa de borrado de subtítulos
A continuación se describen formas de realización de la presente invención haciendo referencia a los dibujos.
(Primera forma de realización)
La presente forma de realización describe un soporte de almacenamiento de información y un dispositivo de reproducción para el mismo que pueden codificar una imagen fija en una imagen de alta calidad a la vez que se reduce la cantidad de procesos que se van a llevar a cabo en el momento de reproducir una imagen en movimiento de un soporte de paquetes, tal como un BD-ROM.
El soporte de almacenamiento de información de la presente forma de realización aplica diferentes valores de MinCR a una imagen en movimiento y a imágenes fijas; se establece un valor de MinCR mayor para una imagen en movimiento teniendo en cuenta la cantidad de procesos que se llevan a cabo en el momento de la decodificación y para imágenes fijas se establece un valor de MinCR menor que el de la imagen en movimiento a fin de garantizar que un fotograma codificado tiene el tamaño de fotograma que es suficiente como fotograma de alta calidad.
La FIG. 4 muestra una estructura de datos de ejemplo del soporte de almacenamiento de información de la presente forma de realización.
En la información de gestión de flujo de la información de gestión de BD, información de atributos de un fragmento se indica en un objeto de datos conocido como ClipInfo. Cabe señalar que un fragmento se refiere a un fichero de datos de AV. Por ejemplo, un fichero que almacena un flujo de imágenes fijas de MPEG-4 AVC es un fragmento. A fin de indicar que se aplican diferentes valores de MinCR a una imagen en movimiento y a imágenes fijas, es necesaria información que indique el valor de MinCR de cada fragmento. Por lo tanto, información que indica el valor de MinCR que se va a aplicar a un fragmento al que se va a hacer referencia se añade a ClipInfo. En este caso, el valor de MinCR que se va a aplicar a un fragmento se indica almacenando información de indicador que indica si un fragmento al que se va a hacer referencia es un fragmento de imágenes en movimiento o un fragmento de imágenes fijas, suponiendo que valores de MinCR que se van a aplicar a un fragmento de imágenes fijas y a un fragmento de imágenes en movimiento se determinen con anterioridad. Haciendo referencia a un ejemplo de la FIG. 4, al menos un fragmento de imágenes fijas y un fragmento de imágenes en movimiento se almacenan en el disco y se hace referencia a dichos fragmentos desde ClipInfo#1 y ClipInfo#2, respectivamente. En este caso, información de indicador que indica que el fragmento es un fragmento de imágenes fijas se almacena en ClipInfo#1 e información de indicador que indica que el fragmento es un fragmento de imágenes en movimiento se almacena en ClipInfo#2. Mediante referencia a dicha información de indicador, se puede obtener el valor de MinCR de fotogramas que forman un fragmento. En un ejemplo que se muestra en la FIG. 4, se puede lograr tanto la mejora de la calidad de las imágenes fijas como la reducción de la cantidad de procesos que se llevan a cabo en el momento de decodificar una imagen en movimiento, estableciendo 2 como el MinCR del fragmento de imágenes fijas y estableciendo 4 como el MinCR del fragmento de imágenes en movimiento. Cabe señalar que los valores de MinCR que se usan en este caso son únicamente ejemplos y, por lo tanto, se puede usar una combinación de otros valores. En una aplicación que permite que el dispositivo de reproducción dedique una cantidad de procesos adicionales, se puede usar el mismo valor de MinCR para imágenes fijas y para una imagen en movimiento. Además, valores de MinCR también se pueden indicar preparando varias combinaciones de valores de MinCR para imágenes fijas y para una imagen en movimiento y haciendo uso de un parámetro que indica una de las combinaciones especificadas. Además, un fragmento puede ser un flujo de transporte de sistema de MPEG-2 o un flujo que se obtiene estructurando en paquetes datos de AV de flujo de programa.
Cabe señalar que en ClipInfo existe un campo conocido como application_type, que indica el tipo de una aplicación para reproducir un fragmento. Dicho campo puede indicar si la aplicación es para una imagen en movimiento o para imágenes fijas y cuando la aplicación es para imágenes fijas, dicho campo puede indicar si la aplicación es una aplicación basada en tiempo o una aplicación navegable. En este caso, “basada en tiempo” indica que imágenes fijas se visualizan en un intervalo predeterminado y “navegable” indica que el usuario puede determinar los tiempos
para visualizar imágenes fijas por medio de esta aplicación. Por lo tanto, cuando el valor de campo de application_type indica aplicación de imágenes fijas basada en tiempo o navegable, se puede aplicar un valor de MinCR para imágenes fijas, mientras que cuando el valor de campo indica una aplicación de imágenes en movimiento, se puede aplicar un valor de MinCR para una imagen en movimiento.
Cabe señalar que valores de MinCR se pueden cambiar no solo entre una imagen en movimiento e imágenes fijas, sino también entre fragmentos de diferentes imágenes en movimiento. Por ejemplo, cuando se incluyen vídeo principal y vídeo secundario, se puede establecer un valor de MinCR menor para el vídeo principal a fin de codificarlo en vídeo de alta calidad y establecer un valor de MinCR mayor para el vídeo secundario teniendo en cuenta la cantidad de procesos. En este caso, información que indica los valores de MinCR de los fragmentos respectivos se usa como información que indica los valores de MinCR respectivos, en lugar de usar información de indicador que indica si las imágenes son imágenes fijas o una imagen en movimiento.
Cabe señalar que el parámetro que indica el límite superior de la cantidad de códigos de una imagen en movimiento
o de una imagen fija no se limita a MinCR y, por lo tanto, se puede usar otro parámetro, tal como indicar directamente el valor límite superior correspondiente a la cantidad de códigos como tamaño de datos.
Asimismo, cabe señalar que la información que indica el valor límite superior de la cantidad de códigos por fotograma de un fragmento se puede almacenar en información de gestión de BD distinta a ClipInfo o se puede almacenar en datos codificados. En el caso de almacenar la información en datos codificados, dicha información se puede almacenar para cada unidad de acceso aleatorio, tal como un Grupo de Fotogramas (GOP). En el caso de MPEG-4 AVC, por ejemplo, se puede utilizar una unidad de datos de almacenamiento de datos de usuario. La unidad de datos para almacenamiento de datos de usuario incluye: una unidad de Capa de Abstracción de Red (NAL) con un tipo específico; un mensaje de Información Potenciadora Suplementaria (SEI) para almacenar datos de usuario y similares. Además, el valor límite superior de la cantidad de códigos por fotograma se puede cambiar en una unidad distinta de un fragmento, tal como una unidad de acceso aleatorio.
Asimismo, cabe señalar que cuando se determina, en el momento de decodificar una imagen en movimiento, que el tiempo necesario para decodificar los datos codificados de un fotograma excede de una longitud de tiempo predeterminada o de un intervalo de visualización de fotograma, algunos dispositivos de reproducción de datos se saltan la decodificación de dicho fotograma y empiezan a decodificar el fotograma siguiente. Alternativamente, incluso cuando se puede dar el peor caso en el momento de la decodificación, la decodificación de una imagen fija se salta, en consecuencia, en algunos casos en el momento de reproducir imágenes fijas almacenadas en el soporte de almacenamiento de información de la presente forma de realización. Esto se debe a que el límite superior de la cantidad de códigos de una imagen fija pasa a ser mayor que la de una imagen en movimiento y el tiempo necesario para decodificar aumenta en relación con un aumento de la cantidad de códigos. El intervalo de visualización de imágenes fijas es, normalmente, mayor que el de una imagen en movimiento. Por lo tanto, incluso cuando la decodificación no termina hasta un tiempo de inicio de visualización predeterminado, la degradación de la calidad de reproducción se puede limitar a menos visualizando imágenes fijas una vez terminada la decodificación de las mismas. Por lo tanto, en el momento de decodificar imágenes fijas, incluso cuando la decodificación de las mismas no ha terminado en un tiempo de inicio de visualización predeterminado, solo se tienen que visualizar una vez terminada la decodificación de las mismas, sin saltarse la decodificación de las mismas.
Cabe señalar que si bien la descripción anterior se ofrece para el BD, el mismo procedimiento se puede usar para un soporte de almacenamiento de información siempre que dicho soporte de almacenamiento de información puede almacenar imágenes fijas e imágenes en movimiento. Asimismo, el esquema de codificación no se limita a MPEG-4 AVC y, por lo tanto, la presente invención es también aplicable a Vídeo MPEG-2, así como a VC-1, que actualmente está normalizando la Society of Motion Picture and Television Engineers (Sociedad de Ingenieros de Cine y Televisión – SMPTE).
La FIG. 5 es un diagrama de flujo que muestra un procedimiento de multiplexación para crear datos almacenados en el soporte de almacenamiento de información de la presente forma de realización. El procedimiento de multiplexación de la presente forma de realización se diferencia de un procedimiento de multiplexación convencional en que el procedimiento de multiplexación de la presente forma de realización incluye una etapa de cambio entre valores de MinCR dependiendo del tipo de un fragmento (Etapa S2001, Etapa S2002 y Etapa S2003) y una etapa de preparación de información de indicador que identifica un valor de MinCR y que lo incorpora en información de gestión (Etapa S2004 y Etapa S2005).
En primer lugar, en la Etapa S2001, se determina si un fragmento que se va a generar es un fragmento de imágenes en movimiento o un fragmento de imágenes fijas. Cuando el fragmento es un fragmento de imágenes fijas, el procedimiento pasa a la Etapa S2002 a fin de establecer un valor de MinCR predeterminado para el fragmento de imágenes fijas, mientras que cuando el fragmento es un fragmento de imágenes en movimiento, el procedimiento pasa a la Etapa S2003 y se establece un valor de MinCR predeterminado para el fragmento de imágenes en movimiento. A continuación, en la Etapa S1001, fotogramas que forman el fragmento se codifican de manera que se cumpla el valor de MinCR establecido en la Etapa S2002 o en la Etapa S2003 y el procedimiento pasa a la Etapa S1002. En la Etapa S1002, se realiza la multiplexación de sistemas de los datos codificados en la Etapa S1001. En el BD, un flujo de transporte de MPEG-2 se usa como un esquema de multiplexación de sistemas. A continuación en la Etapa S2004, se genera información de indicador que identifica el valor de MinCR aplicado a los fotogramas que forman el fragmento y en la Etapa S2005 se genera información de gestión que incluye la información de indicador generada en la Etapa S2004. Por último, en la Etapa S1003, se combina la información de gestión y los datos codificados mediante multiplexación de sistemas y se transmiten los datos resultantes. En este caso, cuando se combina la información de gestión y los datos codificados mediante multiplexación de sistemas, se pueden almacenar en ficheros independientes o se pueden almacenar conjuntamente en el mismo fichero. Cuando se almacenan en ficheros independientes, la información de gestión y los datos codificados mediante multiplexación de sistemas se pueden almacenar en el mismo directorio. Cabe señalar que el valor de MinCR para imágenes fijas solo se tiene que establecer en la Etapa S2001 en función de la velocidad binaria, del nivel y del perfil del flujo. En este caso, el nivel es un parámetro que indica el valor límite superior indicado por medio de un parámetro de codificación tal como velocidad binaria, velocidad de trama y tamaño de imagen, mientras que el perfil es un parámetro que especifica una combinación de herramientas que se pueden usar en el momento de la codificación. Por ejemplo, cuando la velocidad binaria de un flujo es relativamente baja, se puede asignar el mismo valor de MinCR tanto a imágenes fijas como a una imagen en movimiento, dado que la velocidad de trama de la imagen en movimiento es suficiente para terminar la decodificación, incluso cuando se establece un valor de MinCR bajo (cuando la cantidad límite superior de códigos se establece alta). Por el contrario, cuando la velocidad binaria es relativamente alta, se puede dar alta calidad de imagen a imágenes fijas estableciendo un valor de MinCR menor para imágenes fijas que para una imagen en movimiento (estableciendo una cantidad límite superior alta de códigos). La información que identifica el valor de MinCR puede ser distinta a la información de indicador y, por lo tanto, se puede almacenar directamente el valor límite superior de la cantidad de códigos por fotograma. Mientras que, en el caso de manejar varios fragmentos, se repiten los procedimientos de la Etapa S2001 a S2005 y la información de gestión y los datos codificados mediante multiplexación de sistemas se pueden combinar y transmitir en la Etapa S1003 una vez terminada la multiplexación de sistemas y la generación de la información de gestión correspondiente a todos los fragmentos.
Además, a diferencia de una imagen en movimiento, es aconsejable tardar relativamente más tiempo para apreciar cada imagen de las imágenes fijas y, por lo tanto, un intervalo de visualización se puede establecer para que sea igual o superior a un valor predeterminado. En este caso, la codificación de la Etapa S1001 se puede llevar a cabo de manera que los tiempos de visualización de imágenes fijas contiguas en el orden de decodificación sean iguales
o superiores a un valor predeterminado. Cabe señalar que dado que el tiempo de decodificación y el tiempo de visualización se establecen en la Etapa S1002, los tiempos de visualización de imágenes fijas contiguas en el orden de decodificación solo se pueden establecer en la Etapa S1002 para que sean iguales o superiores a un valor predeterminado. Cuando se hace esto, no es necesario, en la Etapa S1001, tener en cuenta intervalos entre tiempos de visualización en el momento de codificar una imagen de entrada.
Cabe señalar que se pueden multiplexar datos tales como audio y gráficos con una imagen en movimiento o con imágenes fijas, sin embargo, en este caso no se ofrece una descripción relativa a esto.
LA FIG. 6 es un diagrama de bloques que muestra la estructura de un dispositivo de multiplexación 2000 que realiza el procedimiento de multiplexación de la presente forma de realización. El dispositivo de multiplexación 2000 incluye una unidad de determinación de MinCR 2001, una unidad de generación de información de MinCR 2002, una unidad de codificación 1001, una unidad de multiplexación de sistemas 1002, una unidad de creación de información de gestión 2003 y una unidad de combinación 1003. El dispositivo de multiplexación 2000 se diferencia de un dispositivo de multiplexación convencional en que el dispositivo de multiplexación 2000 incluye la unidad de determinación de MinCR 2001 y la creación de información de MinCR 2002 y en que la unidad de creación de información de gestión 2003 crea información de gestión que incluye información de indicador para identificar un valor de MinCR.
A continuación, se ofrece una descripción de una operación de cada una de las unidades. La unidad de determinación de MinCR determina un valor de MinCR que se va a aplicar a fotogramas que forman un fragmento, en función de un atributo de fragmento ClipChar que indica si el fragmento es un fragmento de imágenes en movimiento o un fragmento de imágenes fijas, e introduce el valor de MinCR determinado cr en la unidad de codificación 1001 y en la unidad de generación de información de MinCR 2002. La unidad de codificación 1001 codifica un dato de imagen o imagen en movimiento introducido Vin en función del valor de MinCR cr determinado por medio de la unidad de determinación de MinCR e introduce los datos codificados Cdata en la unidad de multiplexación de sistemas 1002. La unidad de multiplexación de sistemas 1002 realiza la multiplexación de sistemas de los datos codificados Cdata e introduce los datos multiplexados resultantes Mdata en la unidad de combinación 1003. Mientas que, la unidad de creación de información de MinCR crea información de MinCR crInf, que es información de indicador para identificar el valor de MinCR aplicado a los fotogramas que forman el fragmento, en función del valor de MinCR, e introduce la información resultante en la unidad de creación de información de gestión 2003. La unidad de creación de información de gestión obtiene, de la unidad de multiplexación de sistemas 1002, información de flujo StrInf que se usa para generar información de gestión de los datos multiplexados Mdata, crea la información de gestión CtrInf que incluye la información de MinCR crInf y transmite la información de gestión creada CtrInf a la unidad de combinación 1003. La unidad de combinación 1003 combina la información de gestión CtrInf y los datos multiplexados Mdata y transmite los datos resultantes como datos de registro Dout. Cabe señalar que la información de flujo StrInf se puede introducir de la unidad de codificación 1001 en la unidad de creación de información de gestión 2003.
La generación de datos codificados y la multiplexación de sistemas o la creación de información de gestión se llevan a cabo por medio de dispositivos independientes en el caso de creación de datos mediante el uso de una herramienta de autoría. No obstante, incluso en tal caso, las operaciones de los respectivos dispositivos se pueden diseñar para que sean igual que las respectiva unidades del dispositivo de multiplexación 2000.
A continuación, se ofrece una descripción del procedimiento de reproducción. Cuando la cantidad de códigos de una imagen fija es mayor que la de una imagen en movimiento, puede ocurrir que la decodificación de las imágenes fijas no pueda terminar en el período de decodificación entre el Sello de Tiempo de Decodificación (DTS) y el Sello de Tiempo de Presentación (PTS), si bien depende de la capacidad de proceso de un dispositivo de reproducción. A fin de que imágenes fijas se puedan reproducir y transmitir normalmente, incluso en tal caso, en la presente forma de realización imágenes fijas se reproducen usando un primer o un segundo procedimiento de reproducción que se describen a continuación.
La FIG. 7A es un diagrama para describir el primer procedimiento de reproducción para reproducir imágenes fijas. En el dibujo, DTS1 denota el tiempo indicado por un sello de tiempo de decodificación incluido en la cabecera de un paquete (denominado paquete de PES) que lleva códigos de una imagen fija pic1 e indica el tiempo en el que se debería iniciar la decodificación de la imagen fija pic1. PTS1 denota el tiempo indicado por un sello de tiempo de presentación incluido en la cabecera del paquete que lleva los códigos de la imagen fija pic1 e indica el tiempo en el que se debería iniciar la presentación (salida o visualización) de la imagen fija pic1. Lo mismo es de aplicación a DTS2 y a DTS3, así como a PTS2 y a PTS3.
En el dibujo, se ilustra que la decodificación de una imagen fija pic2 se inicia en el tiempo indicado por DTS2 y termina después del tiempo indicado por PTS2. En el primer procedimiento de reproducción, cuando la decodificación de una imagen fija no ha terminado antes del tiempo indicado por su PTS, la presentación de dicha imagen fija se inicia en el tiempo de la cuadrícula de trama que viene justo después del tiempo en el que ha terminado la decodificación.
Como se ha descrito anteriormente, en el primer procedimiento de reproducción, cuando la decodificación de una imagen fija se inicia en el tiempo indicado por el sello de tiempo de decodificación incluido en la imagen fija codificada y la decodificación de la imagen fija no ha terminado en el tiempo indicado por el sello de tiempo de presentación, se añade un margen al sello de tiempo de presentación de manera que la imagen fija decodificada se transmite en el tiempo indicado por el sello de tiempo de presentación con el margen añadido.
La FIG. 7B es un diagrama para describir el segundo procedimiento de reproducción para reproducir imágenes fijas. En el segundo procedimiento de reproducción: se añade un margen a DTS, la decodificación de una imagen fija se inicia en el tiempo con el margen añadido y la imagen fija decodificada se transmite en el tiempo indicado por PTS.
La FIG. 8 es un diagrama de flujo que muestra el primer procedimiento de reproducción para reproducir un flujo de imágenes fijas. Como se muestra en el dibujo, en el primer procedimiento de reproducción se lleva a cabo lo siguiente: la decodificación de un fotograma de imágenes fijas (pic_N) se inicia en el tiempo indicado por DTS del pic_N (S3001); se determina si la decodificación del fotograma de imágenes fijas (pic_N) ha terminado o no en su PTS (PTS_N) (S3002), cuando ha terminado la decodificación, el fotograma de imágenes fijas decodificado (pic_N) se transmite en el tiempo indicado por PTS (PTS_N) (S3003) y, cuando no ha terminado la decodificación, el fotograma de imágenes fijas decodificado (pic_N) se transmite en el tiempo de la cuadrícula de trama que viene justo después de la terminación de la decodificación (S3004).
Como se ha descrito anteriormente, el primer procedimiento de reproducción permite cambiar de manera flexible y dinámica el tiempo en el que se debería transmitir una imagen fija dependiendo de la cantidad de códigos de la imagen fija, dado que el tiempo real de salida se retarda solo cuando se retarda la decodificación de la imagen fija.
La FIG. 9 es un diagrama de flujo que muestra el segundo procedimiento de reproducción para reproducir un flujo de imágenes fijas. Como se muestra en el dibujo, en el segundo procedimiento de reproducción se lleva a cabo lo siguiente: se determina si un flujo es o no un flujo de imágenes fijas (S4001), cuando el flujo es un flujo de imágenes fijas, la decodificación de un fotograma (pic_N) se inicia en el tiempo que es anterior al tiempo indicado por DTS solo en una cantidad predeterminada de tiempo T (S4002) y cuando el flujo no es un flujo de imágenes fijas (es decir, el flujo es un flujo de imágenes en movimiento) la decodificación del fotograma se inicia en el tiempo indicado por DTS (S4003). En este caso, la cantidad predeterminada de tiempo T es un margen añadido a DTS. La cantidad predeterminada de tiempo T se define de manera que el tiempo desde el tiempo indicado por DTS con el margen añadido hasta el tiempo indicado por PTS es mayor que el tiempo necesario para decodificar una imagen fija con la cantidad máxima de códigos.
El segundo procedimiento de reproducción permite reproducir una imagen fija adecuadamente en el tiempo indicado por PTS sin retardar la salida de la imagen fija, dado que el tiempo para iniciar la decodificación se establece anterior al tiempo indicado por DTS.
Cabe señalar que, si bien en la FIG. 9 el tiempo para iniciar la decodificación de todas las imágenes fijas se establece anterior, el tiempo para iniciar la decodificación se puede establecer anterior solo cuando la cantidad de códigos de una imagen fija excede de un valor umbral. Por ejemplo, en la FIG. 7, cuando la cantidad de códigos de pic1 y pic3 es igual o inferior a un valor umbral y la cantidad de códigos de pic2 excede del valor umbral, los tiempos para iniciar la decodificación del pic1 y del pic3 son los tiempos indicados por DTS1 y DTS3, respectivamente. Mientras que, el tiempo para indiciar la decodificación del pic2 es (DTS2-T). Además, el procedimiento de la Etapa S4002 se puede llevar a cabo solo cuando un parámetro, tal como tamaño de imagen, velocidad binaria y nivel, excede de un valor umbral predeterminado.
Cabe señalar que el primer y el segundo procedimiento de reproducción que se muestran en la FIG. 8 y en la FIG. 9 se llevan a cabo por medio de una unidad de gestión de presentación 208 de la FIG. 12, de un procesador de vídeo de la FIG. 13 y de la FIG. 17 o de una unidad de proceso de combinación de la FIG. 13 y se incluyen en la Etapa S404 de la FIG. 33.
<Estructura de datos lógicos en disco>
La FIG. 10 es un diagrama que muestra la estructura de un BD-ROM y, más en particular, que muestra un disco BD
(104) que es un soporte de disco, así como la estructura de datos (101, 102 y 103) almacenados en el disco. Almacenados en el disco BD (104) hay: datos de AV (103), datos de información de gestión de BD (102) que incluyen información de gestión de datos de AV, una secuencia de reproducción de AV y similares y un programa de reproducción de BD (101) para producir interactividad. A efectos de las ilustraciones, la presente forma de realización describe el disco BD centrándose en una aplicación de AV para reproducir el contenido de AV de una película, sin embargo, lo mismo es de aplicación al caso en que el disco BD se usa a otros efectos.
La FIG. 11 es un diagrama que muestra las estructuras de directorios y ficheros de los datos lógicos almacenados en el disco BD que se ha descrito anteriormente. Como en el caso de otros discos ópticos, tales como DVDs y CDs, el disco BD tiene áreas de almacenamiento que están formadas en espiral en una dirección desde el radio interior hacia el radio exterior, así como un espacio de direcciones lógicas para almacenar datos lógicos entre el área de entrada, en el radio interior, y el área de salida, en el radio exterior. En el área más interior del área de entrada hayun área especial denominada un Área de Corte de Ráfaga (BCA), de la que solo se pueden leer datos por medio de una unidad de disco. Dado que la aplicación no puede leer esta área, a veces se usa, por ejemplo, para técnicas de protección de derechos de autor o similares.
En el espacio de direcciones lógicas, información de sistema de ficheros (volumen) se almacena en la parte superior del espacio, y datos de aplicación, tales como datos de vídeo, se almacenan en las áreas subsiguientes. El sistema de ficheros, que es un sistema de ficheros conforme al UDF y a la ISO9660, como se ha descrito en “Técnica Anterior”, es un sistema para leer los datos lógicos almacenados usando estructuras de directorios y ficheros, al
igual que en los PCs normales.
Según las estructuras de los directorios y ficheros en el disco BD de la presente forma de realización, un directorio BDVIDEO está situado justo debajo del directorio raíz (ROOT). Dicho directorio es un directorio que almacena datos tales como contenido de AV e información de gestión (101, 102 y 103 que se muestran en la FIG. 10) almacenados en el BD.
En el directorio BDVIDEO se almacenan siete tipos de ficheros que se describen a continuación.
Fichero BD.INFO (este nombre de fichero es fijo)
Este fichero forma parte de la “información de gestión de BD” y almacena información relacionada con todo el disco BD. Es el primer fichero que se va a leer por medio de un reproductor de BD.
BD.PROG (este nombre de fichero es fijo)
Este fichero forma parte del “programa de reproducción de BD” y almacena información de control de reproducción
relacionada con todo el disco BD.
XXX.PL (en el que “XXX” es variable y la extensión “PL” es fija).
Este fichero forma parte de la “información de gestión de BD” y almacena información de listas de reproducción que es un escenario (secuencia de reproducción). Existe un fichero para cada lista de reproducción.
XXX.PROG (en el que “XXX” es variable y la extensión “PL” es fija)
Este fichero forma parte del “programa de reproducción de BD” y almacena información de control de reproducción
para cada lista de reproducción, como se ha descrito anteriormente. La lista de reproducción correspondiente se identifica por medio de un nombre de cuerpo de fichero (identificado por medio de una concordancia “XXX”).
YYY.VOB (en el que “YYY” es variable y la extensión “VOB” es fija)
Este fichero forma parte de los “datos de AV” y almacena un VOB (un VOB como el que se ha descrito en “Técnica
Anterior). Existe un fichero para cada VOB.
YYY.VOBI (en el que “YYY” es variable y la extensión “VOBI” es fija)
Este fichero forma parte de la “información de gestión de BD” y almacena información de gestión de flujo relacionada
con un VOB que son datos de AV. El VOB correspondiente se identifica por medio del nombre de cuerpo de fichero
(identificado por la concordancia “YYY”).
ZZZ.PNG (en el que “ZZZ” es variable y la extensión “PNG” es fija)
Este fichero forma parte de los “datos de AV” y almacena datos de imagen PNG (que es un formato de imagen normalizado por W3C y se pronuncia “pe ene ge”) para construir subtítulos y un menú. Existe un fichero para cada imagen PNG.
<Estructura del reproductor>
A continuación, haciendo referencia a la FIG. 12 y a la FIG. 13, se ofrece una descripción de un reproductor que reproduce el disco BD que se ha descrito anteriormente.
La FIG. 12 es un diagrama de bloques que muestra una función global del reproductor.
Datos almacenados en un disco BD (201) se leen a través de un lector óptico (202). Cada dato leído se transfiere a una memoria dedicada, que depende del tipo de dicho dato. El programa de reproducción de BD (el contenido de
fichero de “BD.PROG” o “XXX.PROG”) se transfiere a la memoria de almacenamiento de programas (203), la información de gestión de BD (“BD.INFO”, “XXX.PL” o “YYY.VOBI”) se transfiere a la memoria de almacenamiento de información de gestión (204) y los datos de AV (“YYY.VOB” o “ZZZ.PNG”) se transfieren a la memoria de
almacenamiento de AV (205), respectivamente.
El programa de reproducción de BD almacenado en la memoria de almacenamiento de programas (203) se procesa por medio de la unidad de proceso de programa (206), la información de gestión de BD almacenada en la memoria de almacenamiento de información de gestión (204) se procesa por medio de la unidad de proceso de información de gestión (207) y los datos de AV almacenados en la memoria de almacenamiento de AV (205) se procesan por medio de la unidad de proceso de presentación (208), respectivamente.
La unidad de proceso de programa (206) recibe, de la unidad de proceso de información de gestión (207), información sobre una lista de reproducción que se va a reproducir e información de eventos, tales como tiempos para ejecutar un programa y, a continuación, ejecuta el programa. En el programa, se puede cambiar dinámicamente la lista de reproducción enviando, a la unidad de proceso de información de gestión (207), una instrucción para reproducir una lista de reproducción. La unidad de proceso de programa (206) recibe un evento del usuario, es decir, una petición de una tecla de control remoto, y ejecuta un programa correspondiente al evento de usuario, si hay alguno.
La unidad de proceso de información de gestión (207), en respuesta a una instrucción de la unidad de proceso de programa (206), analiza la información de gestión y la lista de reproducción correspondientes de un VOB correspondiente a la lista de reproducción y da instrucciones a la unidad de proceso de presentación (208) para que reproduzca los datos de AV objetivo. Además, la unidad de proceso de información de gestión (207) recibe información de tiempos de referencia de la unidad de proceso de presentación (208) y da instrucciones a la unidad de proceso de presentación (208) para que finalice la reproducción de los datos de AV en función de dicha información de tiempos, además de generar un evento, para la unidad de proceso de programa (206), que indica los tiempos para ejecutar el programa.
La unidad de proceso de presentación (208), que tiene decodificadores correspondientes respectivamente para vídeo, audio y subtítulos/imágenes (imágenes fijas), decodifica y transmite los datos de AV según una instrucción de la unidad de proceso de información de gestión (207). En el caso de datos de vídeo y de subtítulos/imágenes, se representan en los respectivos mapas dedicados, es decir, el mapa de vídeos (210) y el mapa de imágenes (209) una vez decodificados y compuestos por medio de una unidad de proceso de composición (211) y las imágenes compuestas se transmiten a un dispositivo de visualización, tal como una televisión.
El reproductor de BD, según se muestra en la FIG. 12, tiene una estructura de dispositivo que se basa en las respectivas estructuras de los datos almacenados en el disco BD que se muestra en la FIG. 10.
La FIG. 13 es un diagrama de bloques que muestra una estructura detallada del reproductor que se ha descrito anteriormente. En la FIG. 13, la memoria de almacenamiento de AV (205) corresponde a una memoria de imagen
(308) y a una memoria intermedia de pista (309), la unidad de proceso de programa (206) corresponde a un procesador de programa (302) y a un gestor de UOP (303), la unidad de proceso de información de gestión (207) corresponde a un procesador de escenario (305) y a un controlador de presentaciones (306) y la unidad de proceso de presentación (208) corresponde a un reloj (307), a un demultiplexor (310), a un procesador de imagen (311), a un procesador de vídeo (312) y a un procesador de sonido (313), respectivamente.
Los datos de VOB (flujo de MPEG) y datos de imagen (PNG) leídos del disco BD (201) se almacenan respectivamente en la memoria intermedia de pista (309) y en la memoria de imagen (308). El demultiplexor (310) demultiplexa los datos de VOB almacenados en la memoria intermedia de pista (309) en función del tiempo que indica el reloj (307) y envía los datos de vídeo al procesador de vídeo (312) y los datos de audio al procesador de sonido (313), respectivamente. El procesador de vídeo (312) y el procesador de sonido (313) están formados por una memoria intermedia de decodificador y un decodificador, como especifica el estándar de sistema MPEG. Es decir, los datos de vídeo y los datos de audio introducidos desde el demultiplexor (310) se almacenan temporalmente en las respectivas memorias intermedias de decodificador y se decodifican por medio de los respectivos decodificadores correspondientes según el reloj (307).
La PNG almacenada en la memoria de imagen (308) se procesa usando dos procedimientos que se describen a continuación. En primer lugar, cuando los datos de imagen son datos de subtítulo, el controlador de presentaciones
(306) da una instrucción sobre tiempos de decodificación. Tras recibir la información de tiempos del reloj (307), el procesador de escenario (305) da instrucciones, cuando es el momento de visualizar los subtítulos (cuando es el momento de iniciar/finalizar la visualización), al controlador de presentaciones (306) para que visualice o para que no visualice los subtítulos, de manera que los subtítulos se visualicen de un modo apropiado. El procesador de imagen (311), tras recibir una instrucción del controlador de presentaciones (306) para decodificar/visualizar los datos de imagen, lee los datos de PNG correspondientes de la memoria de imagen (308), los decodifica y representa los datos decodificados en el mapa de imágenes (314).
En segundo lugar, cuando los datos de imagen son datos de menú, el procesador de programa (302) da una instrucción sobre tiempos de decodificación. Todos los tiempos en que el procesador de programa (302) da una instrucción para decodificar los datos de imagen dependen del programa de BD procesado por medio del procesador de programa (302) y, por lo tanto, no se determinan simplemente.
Como se ha descrito en relación con la FIG. 12, los datos de imagen y los datos de vídeo se transmiten, respectivamente, al mapa de imágenes (314) y al mapa de vídeos (315) una vez decodificados y se transmiten una vez compuestos por medio de la unidad de proceso de composición (316).
Mientras que la información de gestión (información de escenario e información de gestión de AV) leída del disco BD
(201) se almacena en la memoria de almacenamiento de información de gestión (304), la información de escenario (“BD.INFO” y “XXX.PL”) se lee y procesa por medio del procesador de escenario 305. Además, la información de gestión de AV (“YYY.VOBI”) se lee y se procesa por medio del controlador de presentaciones (306).
El procesador de escenario (305) analiza la información de la lista de reproducción y notifica al controlador de presentaciones (306) un VOB al que hace referencia la lista de reproducción correspondiente y la posición de
reproducción de dicho VOB. El controlador de presentaciones (306) analiza la información de gestión (“YYY.VOBI”)
de dicho VOB objetivo y da instrucciones al controlador de unidad de disco (317) para que lea el VOB objetivo.
Según la instrucción del controlador de presentaciones (306), el controlador de unidad de disco (317) lee los datos de AV objetivo moviendo el lector óptico. La lectura de datos de AV se almacena en la memoria de imagen (308) o en la memoria intermedia de pista (309), como se ha descrito anteriormente.
El procesador de escenario (305) supervisa el tiempo que indica el reloj (307) y transmite al procesador de programa
(302) un evento en los tiempos establecidos en la información de gestión.
El programa de BD (“BD.PROG” o “XXX.PROG”) almacenado en la memoria de almacenamiento de programas
(301) se ejecuta por medio del procesador de programa (302). El procesador de programa (302) procesa el programa de BD cuando se envía un evento desde el procesador de escenario (305) o cuando se envía un evento desde el gestor de UOP (303). El gestor de UOP (303) genera un evento para el procesador de programa (302) cuando se envía una petición del usuario usando una tecla de control remoto.
<Espacio de aplicación>
La FIG. 14 es un diagrama que muestra un espacio de aplicación en el BD.
En el espacio de aplicación en el BD, una lista de reproducción (PlayList) sirve de unidad de reproducción. Cada lista de reproducción, que es una concatenación de células (Cell), incluye un escenario estático que es una secuencia de reproducción determinada por el orden de concatenación de células y un escenario dinámico descrito por el programa. A menos que el programa realice un cambio dinámico de un escenario, las células de la lista de reproducción se reproducen en el orden de concatenación y la terminación de la reproducción de todas las células marca la terminación de la reproducción de dicha lista de reproducción. Además, el programa puede cambiar objetivos de reproducción cuando la reproducción y la descripción se realizan fuera de la lista de reproducción, así como en función de la selección del usuario o del estado del reproductor. Un ejemplo típico de esto es el menú. En el BD, un menú se puede definir como un escenario que se va a reproducir según una selección del usuario y la lista de reproducción se puede seleccionar dinámicamente por medio del programa.
En este caso, el programa se refiere a un controlador de eventos que se ejecuta por medio de un evento de tiempo o un evento de usuario.
Eventos de tiempo son eventos que se generan en función de información de tiempos insertada en una lista de reproducción. Un ejemplo de eventos de tiempo es un evento enviado del procesador de escenario (305) al procesador de programa (302), que se ha descrito en relación con la FIG. 13. Cuando se proporciona un evento de tiempo, el procesador de programa (302) ejecuta un controlador de eventos asociado al ID correspondiente. Como se ha descrito anteriormente, se puede, para un programa que se va a ejecutar, dar una instrucción para reproducir otra lista de reproducción. En este caso, el programa detiene la reproducción de la lista de reproducción actual para reproducir otra lista de reproducción.
Eventos de usuario son eventos que genera el usuario mediante operaciones de teclas remotas y se clasifican, en líneas generales, en dos tipos. Eventos de usuario de un primer tipo son eventos de selección de menú que se generan accionando teclas de cursor (la tecla Arriba/Abajo/Derecha/Izquierda o la tecla “Determinación”). Controladores de eventos correspondientes a eventos de selección de menú son eficaces solo durante un período limitado indicado en una lista de reproducción (el período de validez de cada controlador de eventos se establece como una de la información de la lista de reproducción). Cuando se pulsa la tecla Arriba/Abajo/Derecha/Izquierda o la tecla “Determinación” en el control remoto, se realiza una búsqueda de un controlador de eventos eficaz. Cuando hay un controlador de eventos eficaz, se ejecuta dicho controlador de eventos, mientras que cuando no hay un controlador de eventos eficaz, se ignora el evento de selección de menú.
Eventos de usuario de un segundo tipo son eventos de llamada de menú que se generan accionando la tecla
“Menú”. Cuando se genera un evento de llamada de menú, se llama a un controlador de eventos globales. El
controlador de eventos globales es un controlador de eventos que siempre es eficaz sin depender de las listas de reproducción. Usando esta función, se puede implementar una llamada de menú de DVD (por ejemplo, una función de llamada de (datos) audio o un menú de subtítulos durante la reproducción de un título y reanudar la reproducción del título en el punto de suspensión tras realizar un cambio en los (datos) de audio o (datos) de subtítulo).
Una célula (Cell), que es una unidad que constituye un escenario estático de una lista de reproducción, representa el total o una parte de los segmentos de reproducción de un VOB (flujo de MPEG). Cada célula incluye los segmentos de reproducción de un VOB como información sobre tiempo de inicio de reproducción y tiempo de fin de reproducción. Información de gestión de VOB (VOBI), que está emparejada a un VOB individual, incluye un mapa de tiempos (TimeMap o TMAP), que es información de tabla que indica direcciones de almacenamiento correspondientes a tiempos de reproducción de datos. El uso de un mapa de tiempos permite obtener la dirección de
inicio de lectura y la dirección de fin de lectura dentro de un VOB (es decir, el “YYY.VOB” objetivo) en función del
tiempo de inicio de reproducción y del tiempo de fin de reproducción del VOB que se ha descrito anteriormente. El mapa de tiempos se describe detalladamente más adelante.
<Detalles sobre un VOB>
La FIG. 15 es un diagrama que muestra la estructura de un flujo de MPEG (VOB) que se usa en la presente forma de realización.
Como se muestra en la FIG. 15, un VOB está formado por varias Unidades de Objeto de Vídeo (VOBUs). Una VOBU sirve de una unidad de reproducción de un flujo multiplexado que adicionalmente incluye datos de audio de un Grupo de Fotogramas (GOP) en un flujo de vídeo MPEG. La duración de reproducción de una VOBU es de 1,0 segundos o inferior y, normalmente, de aproximadamente 0,5 segundos.
El paquete de TS (Paquete de Flujo de Transporte de MPEG-2) en el encabezamiento de una VOBU almacena una cabecera de secuencia, que va seguida de una cabecera de GOP y de un fotograma I (Intracodificado), de manera que la decodificación se puede iniciar a partir de dicho fotograma I. Además, en el mapa de tiempos se gestiona: la dirección de un paquete de TS que incluye la parte de encabezamiento del primer fotograma I de la VOBU (dirección de inicio); la dirección de un paquete de TS que incluye la última parte del fotograma I, empezando con la dirección de inicio (dirección de fin) y el tiempo de inicio de reproducción de dicho fotograma I (PTS). Por consiguiente, se proporciona una entrada del mapa de tiempos para cada paquete de TS en el encabezamiento de una VOBU.
Cada VOBU incluye paquetes de vídeo (V_PTK) y paquetes de audio (A_PTK). Cada paquete es de 188 bytes. Aunque no se ilustra en la FIG. 15, se proporciona un Sello de Tiempo de Llegada (ATS) justo antes de cada paquete de TS. El ATS indica un tiempo relativo en el que dicho paquete de TS se proporciona al decodificador.
Se asigna un ATS para cada paquete de ATS dado que la velocidad de sistema de este flujo de TS no es una velocidad fija, sino una velocidad variable. En general, cuando se usa una velocidad de sistema fija, se inserta un paquete de TS ficticio, denominado un paquete NULO. No obstante, es conveniente una velocidad variable a fin de almacenar imágenes de alta calidad en un volumen de almacenamiento limitado y un flujo de TS con un ATS está almacenado en el BD.
La FIG. 16 es un diagrama que muestra la estructura de cada paquete de TS.
Como se muestra en la FIG. 16, un paquete de TS está formado por una cabecera de paquete de TS, un campo de adaptación y una carga útil. Un Identificador de Paquete (PID) está almacenado en la cabecera de paquete de TS, con lo que se identifica el tipo de información almacenada en el paquete de TS. Una Referencia de Reloj de Programa (PCR) está almacenada en el campo de adaptación. La PCR es un valor de referencia de un reloj de referencia (denominado Reloj de Tiempo de Sistema, STC) de un dispositivo que decodifica el flujo. Normalmente, el dispositivo demultiplexa el flujo de sistema en los tiempos indicados por la PCR y reconstruye varios flujos, tales como un flujo de audio. Un paquete de PES está almacenado en la carga útil.
Almacenado en la cabecera de paquete de PES hay un Sello de Tiempo de Decodificación (DTS) y un Sello de Tiempo de Presentación (PTS). El DTS indica los tiempos de decodificación de un fotograma/una trama de audio almacenados en el paquete de PES y el PTS indica tiempos de presentación, tales como los tiempos de salida de vídeo/audio. Cada dato elemental, tal como datos de vídeo y datos de audio, está almacenado en un área dealmacenamiento de datos, denominada una Carga Útil de Paquete de PES de un paquete de PES, secuencialmente desde la parte superior. Asimismo, almacenado en la cabecera de paquete de PES hay un ID (stream_id) que identifica el tipo del flujo al que corresponden los datos almacenados en la carga útil.
Los detalles de un flujo de TS se especifican por medio de la ISO/IEC13818-1. Lo característico del BD es que se asigna un ATS para cada paquete de TS.
<Almacenamiento intercalado de un VOB>
A continuación, haciendo referencia a la FIG. 17 y a la FIG. 18, se ofrece una descripción de almacenamiento intercalado de un fichero VOB.
La parte superior de la FIG. 17 muestra una parte de la estructura del reproductor que se ha descrito anteriormente. Como se muestra en el dibujo, datos del disco BD se introducen, a través del lector óptico, en la memoria intermedia de pista cuando es un VOB, es decir, un flujo de MPEG, mientras que se introducen en la memoria de imagen cuando son PNG, es decir, datos de imagen.
La memoria intermedia de pista es una memoria intermedia FIFO y cada dato de VOB introducido en la misma se envía al demultiplexor en el orden de entrada. En ese momento, cada paquete de TS se extrae de la memoria intermedia de pista, según el ATS que se ha descrito anteriormente, y se envía al procesador de vídeo o al procesador de sonido a través del demultiplexor. Mientras que, por cuanto se refiere a los datos de imagen, el controlador de presentaciones da instrucciones de qué imagen se va a representar. Cuando los datos de imagen que se usan para representación son datos de imagen de subtítulos, dichos datos de imagen se borran de la memoria de imagen una vez usados. Por otro lado, cuando los datos de imagen que se usan para representación son datos de imagen de menú, dichos datos de imagen se mantienen almacenados en la memoria de imagen mientras tiene lugar la representación del menú. La representación del menú depende de una operación del usuario y, por lo tanto, cuando una parte del menú se vuelve a visualizar o se sustituye por otra imagen según una operación del usuario, se facilita la decodificación de los datos de imagen que se van a volver a visualizar permitiendo que los datos de imagen de menú se mantengan almacenados en la memoria de imagen mientras tiene lugar la representación del menú.
La parte inferior de la FIG. 17 muestra el almacenamiento intercalado de un fichero VOB y de ficheros PNG en el disco BD. En general, en una ROM, tal como un CD-ROM y un DVD-ROM, datos de AV formados por una serie de unidades de reproducción continua que se van a reproducir secuencialmente, se almacenan de manera contigua. Siempre que los datos se almacenen de manera contigua, la unidad de disco simplemente tiene que leer los datos secuencialmente y suministrar los datos leídos a los respectivos decodificadores. No obstante, cuando dichos datos contiguos se almacenan en el disco de manera discontinua, la unidad de disco tiene que buscar unidades continuas individuales y, por lo tanto, existe la posibilidad de que el suministro de datos se detenga dado que la lectura de datos se detiene mientras tiene lugar la búsqueda. Se prefiere que datos de un fichero VOB estén almacenados en áreas contiguas en el BD. Datos tales como datos de subtítulo, que se reproducen en sincronización con datos de vídeo almacenados en un VOB, se tienen que leer del disco BD con algún procedimiento, como en el caso de un fichero VOB.
Los procedimientos de lectura de datos de subtítulo incluyen un procedimiento de lectura conjunta de todos los datos de imagen de subtítulos (ficheros PNG) antes de iniciar la reproducción de un VOB. No obstante, no es razonable usar este procedimiento, dado que es necesaria una memoria de gran capacidad.
En vista de esto, la presente forma de realización hace uso de un procedimiento en el que un fichero VOB se divide en varios bloques y se almacena intercalándolo con datos de imagen. La parte inferior de la FIG. 17 ilustra dicho almacenamiento intercalado.
Colocando apropiadamente un fichero VOB dividido y datos de imagen de manera intercalada, se pueden almacenar datos de imagen en la memoria de imagen en los tiempos necesarios sin tener que usar una memoria temporal de gran capacidad, como se ha descrito anteriormente. No obstante, la lectura de datos de VOB se suspende durante la lectura de datos de imagen.
La FIG. 18 es un diagrama para describir un modelo, que soluciona este problema, para el suministro continuo de datos de VOB usando la memoria intermedia de pista.
Como se ha descrito anteriormente, datos de VOB se acumulan en la memoria intermedia de pista una vez. Suponiendo que la velocidad a la que los datos se introducen en la memoria intermedia de pista sea Va y la velocidad a la que los datos salen de la memoria intermedia de pista sea Vb, la cantidad de datos acumulados en la memoria intermedia de pista seguirá aumentando, cuando la diferencia entre Va y Vb sea Va>Vb, siempre que los datos se lean del disco BD de manera continua.
Supongamos, como se muestra en la parte superior de la FIG. 18, que un área de almacenamiento de VOBs contiguos empieza con la dirección lógica “a1” y termina con la dirección lógica “a2”. Supongamos, asimismo, que datos de imagen se almacenan en un área entre “a2” y “a3” y que datos de VOB no se pueden leer en dicha área.
La parte inferior de la FIG. 18 muestra el interior de la memoria intermedia de pista. El eje lateral indica tiempo y el eje vertical indica la cantidad de datos acumulados en la memoria intermedia de pista. Tiempo “t1” indica el momento
en el que se inicia la lectura de datos, estando los datos almacenados en “a1”, que es el punto de inicio del área de
almacenamiento de VOBs contiguos. En ese momento y a partir de ese momento, los datos se van a almacenar en la memoria intermedia de pista a la velocidad de Va-Vb. Huelga decir que, esta velocidad equivale a una diferencia entre las velocidades a las que los datos se introducen en la memoria intermedia de pista y salen de la misma. Tiempo “t2” indica el tiempo en que se leen los datos, estando los datos almacenados en “a2” que es el punto de fin del área de almacenamiento de VOBs contiguos. Es decir, durante el período a partir del tiempo “t1” y el tiempo “t2”,
la cantidad de datos acumulados en la memoria intermedia de pista aumenta a la velocidad de Va-Vb. La cantidad
de datos acumulados en el tiempo “t2” (B(t2)) se determina con la Ecuación 1 siguiente:
B(t2) = (Va-Vb) x (t2-t1) (Ecuación 1)
Después de esto, dado que datos de imagen están almacenados hasta las direcciones “a3” en el disco BD, no se introducen datos en la memoria intermedia de pista y, por lo tanto, la cantidad de datos de la memoria intermedia de pista disminuye a una velocidad de salida de “-Vb”. Esto continúa hasta que se llega al punto de lectura “a3”, que corresponde a “t3” en tiempo.
En este caso lo que importa es que existe la posibilidad de que la reproducción del VOB se detenga si la cantidad de datos acumulados en la memoria intermedia de pista es 0 antes del tiempo “t3”, puesto que significa que no se van a suministrar datos de VOB a los decodificadores. No obstante, cuando en el tiempo “t3” quedan datos en la memoria
intermedia de pista, significa que la reproducción de VOB continúa sin detenerse. Una condición relativa a esto se representa con la Ecuación 2 siguiente: B(t2) ≥ -Vb x (t3-t2) (Ecuación 2)
Es decir, se debería determinar la posición de cada dato de imagen (datos no VOB) de manera que se cumpla la
Ecuación 2.
<Estructura de datos de navegación>
Haciendo referencia a las FIGS. 19 a 25, se ofrece una descripción de la estructura de los datos de navegación
(información de gestión de BD) en el BD.
La FIG. 19 es un diagrama que muestra una estructura interna de un fichero de información de gestión de VOB
(“YYY.VOBI”).
La información de gestión de VOB incluye información de atributos de flujo (Attribute) del VOB y un mapa de tiempos. Cada atributo de flujo incluye un atributo de vídeo (Video) y atributos de audio (Audio#0 a Audio#m). Dado que un VOB puede incluir varios flujos de audio, hay una indicación del número de flujos de audio (Number).
A continuación se indican los campos incluidos en el atributo de vídeo (Video) y posibles valores incluidos en los respectivos campos: Modo de compresión (Coding): MPEG1 MPEG2 MPEG4 MPEG-4 AVC (Codificación de Vídeo Avanzada) Resolución (Resolution): 1920 x 1080 1440 x 1080 1280 x 720 720 x 480 720 x 565
Formato (Aspect)
4:3
16:9 Velocidad de trama (Framerate) 60 59,94 (60/1,001) 50 30 29,97 (30/1,001) 25 24 23,976 (24/1,001) A continuación se indican los campos incluidos en cada uno de los atributos de audio (Audio) y posibles valores
incluidos en los respectivos campos: Modo de compresión (Coding): AC3 MPEG1 MPEG2 LPCM Número de canales (Ch.): 1 a 8 Atributo lingüístico (Language): El mapa de tiempos (TMAP), que es una tabla que contiene información correspondiente a cada VOBU, incluye el
número de VOBUs (Number) del VOB e información de VOBU de cada una de dichas VOBUs (VOBU#1 a VOBU#n). Cada información de VOBU está formada por: la dirección I_start del primer paquete de TS de la VOBU (el inicio de un fotograma I; la dirección de desplazamiento que indica el final de dicho fotograma I (I_end) y el tiempo de inicio de reproducción de dicho fotograma I (PTS).
La dirección de fin real del fotograma I se puede usar como el valor de I_end, en lugar de usar el valor de desplazamiento, es decir, el tamaño del fotograma I.
La FIG. 20 es un diagrama para describir los detalles de cada información de VOBU. Como se conoce, flujos de vídeo MPEG se comprimen, en algunos casos, a una velocidad binaria variable para almacenarlos con alta calidad de imagen y, por lo tanto, no existe simple correlación entre su duración de reproducción y tamaño de datos. Por el contrario, dado que el AC3, que es un estándar de compresión para audio, lleva a cabo la compresión a una velocidad binaria fija, una relación entre duración y cada dirección se puede representar por medio de una expresión lineal. La duración de visualización de cada trama de datos de vídeo MPEG es fija. Por ejemplo, la duración de visualización de una trama en el caso de NTSC es de 1/29,97 segundos, sin embargo, el tamaño de datos de cada trama después de la compresión difiere mucho de trama a trama dependiendo de la característica gráfica y del tipo de fotograma que se use para la compresión, es decir, si una trama es un
fotograma I, un fotograma P o un fotograma B. Por lo tanto, en el caso de vídeo MPEG, es imposible representar una relación entre duración y cada dirección por medio de una expresión lineal.
De hecho, es imposible representar la duración y cada tamaño de datos por medio de una expresión lineal en el caso de un flujo de sistema MPEG, es decir, un VOB, en el que datos de vídeo MPEG están multiplexados. Debido a esto, en un VOB, la duración y cada dirección están asociadas entre sí en un mapa de tiempos (TMAP).
Como se ha descrito anteriormente, cuando se proporciona determinada información de tiempos se lleva a cabo lo siguiente: primero, detectar a qué VOBU pertenece dicho tiempo (comprueba el PTS de cada VOBU); saltar a la VOBU cuyo TMAP incluye el PTS inmediatamente anterior a dicho tiempo (dirección especificada por medio de I_start); llevar a cabo la decodificación a partir del primer fotograma I de la VOBU y visualizar fotogramas empezando con el fotograma correspondiente a dicho tiempo.
A continuación, haciendo referencia a la FIG. 21, se ofrece una descripción de una estructura interna de información
de listas de reproducción (“XXX.PL”).
La información de listas de reproducción está formada por una lista de células (CellList) y una lista de eventos (EventList).
La lista de células (CellList) es una secuencia de células que se van a reproducir de la lista de reproducción, en la que las células se reproducen en el orden de descripción en la lista. La lista de células (CellList) está formada por el número de células (Number) e información de célula de cada una de dichas células (Cell#1 a Cell#n).
La información de célula (Cell#) incluye un nombre de fichero VOB (VOBName), tiempo de inicio (In) y tiempo de fin (Out) del VOB y una tabla de subtítulos (SubtitleTable). Tanto el tiempo de inicio (In) como el tiempo de fin (Out) se representan por medio de un número de trama del VOB y se puede obtener la dirección de datos de VOB necesaria para reproducción usando el mapa de tiempos que se ha descrito anteriormente.
La tabla de subtítulos (SubtitleTable) es una tabla que contiene información sobre subtítulos que se van a reproducir en sincronización con el VOB. Los subtítulos pueden estar en varios idiomas, como en el caso de audio, y la tabla de subtítulos (SubtitleTable) incluye el número de idiomas (Number), que es la primera información en la misma y va seguida de tablas correspondientes a los respectivos idiomas (Language#1 a Language#k).
La tabla correspondiente a cada idioma (Language#) está formada por información de idioma (Lang), el número de información de subtítulos que se va a visualizar individualmente (Number) e información de subtítulos que se va a visualizar individualmente (Speech#1 a Speech#j). Cada información de subtítulos (Speech#) está formada por: el nombre de fichero de datos de imagen correspondiente (Name); el tiempo de inicio de visualización (In) de los subtítulos y el tiempo de fin de visualización (Out) de los subtítulos y una posición de visualización de los subtítulos (Position).
La lista de eventos (EventList) es una tabla que define eventos que tienen lugar en la lista de reproducción. La lista de eventos incluye el número de eventos (Number), que va seguido de eventos individuales (Evnet#1 a Evnet#m). Cada evento (Event#) está formado por el tipo del evento (Type), el ID del evento (ID) y el tiempo en que tiene lugar el evento (Time) y el período de validez (Duration).
La FIG. 22 es un diagrama que muestra una tabla de controladores de eventos (“XXX.PROG”) que contiene controladores de eventos (por evento de tiempo y evento de usuario para selección de menú) de cada lista de reproducción.
La tabla de controladores de eventos contiene el número de programas/controladores de eventos definido (Number) y programas/controladores de eventos individuales (Program#1 a Program#n). Cada programa/controlador de eventos (Program#) incluye la definición del inicio del controlador de eventos (<event_handler> tag) y el ID del controlador eventos (ID) que está emparejado con el ID del evento como se ha descrito anteriormente. El programa se describe en los corchetes { } que van a continuación de Function. Los eventos (Event#1 a Event#m) almacenados en la lista de eventos que se ha descrito anteriormente (EventList) de “XXX.PL” se identifican usando el ID (IDs) de los controladores de eventos correspondientes de “XXX.PROG”.
A continuación, haciendo referencia a la FIG. 23, se ofrece una descripción de una estructura interna de información relativa a todo el disco BD (“BD.INFO”).
La información relativa a todo el disco BD está formada por una lista de títulos (TitleList) y una tabla de eventos (EventList) para eventos globales.
La lista de títulos (TitleList) incluye el número de títulos del disco (Number), que va seguido de información de título de cada uno de dichos títulos (Title#1 a Title#n). Cada información de título (Title#) incluye una tabla de listas de reproducción (PLTable) que contiene listas de reproducción del título y una lista de capítulos (Chapterlist) que contiene capítulos del título. La tabla de listas de reproducción (PLTable) incluye el número de listas de reproducción del título (Number) y los nombres de listas de reproducción (Name), es decir, los nombres de fichero de las respectivas listas de reproducción.
La lista de capítulos (Chapterlist) está formada por el número de capítulos incluidos en el título (Number) e información de capítulo de cada uno de dichos capítulos (Chapter#1 a Chapter#n). Cada información de capítulo (Chapter#) incluye una tabla de células (CellTable) que contiene células incluidas en el capítulo. La tabla de células (CellTable) está formada por el número de células (Number) e información de entrada de células de cada una de dichas células (CellEntry#1 a CellEntry#k). Cada información de entrada de células (CellEntry#) está formada por el nombre de la lista de reproducción que incluye la célula y el número de célula de la lista de reproducción.
La lista de eventos (EventList) incluye el número de eventos globales (Number) e información sobre cada uno de dichos eventos globales. En este caso cabría señalar que el primer evento global definido se denomina un primer evento (FirstEvent) y dicho evento se lee primero cuando el disco BD se introduce en el reproductor. Información de evento correspondiente a un evento global incluye únicamente el tipo del evento (Type) y el ID del evento (ID).
La FIG. 24 es un diagrama que muestra una tabla que contiene programas de controladores de eventos globales
(“BD.PROG”).
El contenido de esta tabla es el mismo que el contenido de la tabla de controladores de eventos que se ha descrito en relación con la FIG. 22.
<Mecanismo de Aparición de Eventos>
Haciendo referencia a las FIGS. 25 a 27, se ofrece una descripción de un mecanismo de aparición de eventos.
La FIG. 25 es un diagrama que muestra un ejemplo de un evento de tiempo.
Como se ha descrito, un evento de tiempo se define en la lista de eventos (EventList) de la información de listas de
reproducción (“XXX.PL”). Cuando un evento se define como un evento de tiempo, es decir, un evento cuyo tipo de evento (Type) es “TimeEvent”, se transmite un evento de tiempo con el ID “Ex1” al procesador de programa desde el procesador de escenario en el tiempo de generación de eventos (“t1”). El procesador de programa busca un controlador de eventos con el ID de evento “EX1” y ejecuta dicho controlador de eventos objetivo. Por ejemplo, en la
presente forma de realización se ejecuta un evento tal como la representación o similar de dos imágenes de botón.
La FIG. 26 es un diagrama que muestra un ejemplo de un evento de usuario para operación de menú. Como se ha descrito anteriormente, un evento de usuario para operación de menú también se define en la lista de eventos (EventList) de la información de listas de reproducción (“XXX.PL”). Cuando se define un evento como un evento de usuario, es decir, un evento cuyo tipo de evento (Type) es “UserEvent”, dicho evento de usuario está listo en el tiempo de generación de eventos (“t1”). En ese momento, todavía no se ha generado el evento propiamente dicho. Dicho evento está en el estado listo durante el período indicado por medio de su información de período de validez (Duration).
Como se muestra en la FIG. 26, cuando el usuario pulsa la tecla Arriba/Abajo/Derecha/Izquierda o la tecla
“Determinación” en el control remoto, el gestor de UOP, primero, genera un evento de UOP y lo envía al procesador
de programa. El procesador de programa transmite dicho evento de UOP al procesador de escenario. El procesador de escenario comprueba si existe o no algún evento de usuario que sea eficaz en el momento de recibir el evento de UOP. Cuando existe un evento de usuario eficaz, el procesador de escenario genera un evento de usuario y lo transmite al procesador de programa. El procesador de programa busca un controlador de eventos con el ID de
evento “Ev1” y ejecuta dicho controlador de eventos objetivo. Por ejemplo, en la presente forma de realización se
inicia la reproducción de la lista de reproducción #2.
El evento de usuario generado no incluye información para identificar qué tecla del control remoto ha pulsado el usuario. Información sobre la tecla de control remoto seleccionada se notifica al procesador de programa por medio del evento de UOP y se almacena en el registro SPRM (8) del reproductor virtual. Comprobando el valor de dicho registro se puede llevar a cabo un proceso de bifurcación en el programa del controlador de eventos.
La FIG. 27 es un diagrama que muestra un ejemplo de un evento global.
Como se ha descrito anteriormente, un evento global se define en la lista de eventos (EventList) de la información
relativa a todo el disco BD (“BD.INFO”). Cuando se identifica un evento como un evento global, es decir, un evento cuyo tipo de evento (Type) es “GlobalEvent”, dicho evento se genera únicamente cuando el usuario ha llevado a cabo una operación de tecla de control remoto.
Cuando el usuario pulsa la tecla “Menú”, el gestor de UOP primero genera un evento de UOP y lo transmite al procesador de programa. El procesador de programa transmite dicho evento de UOP al procesador de escenario. A continuación, el procesador de escenario genera un evento global correspondiente a dicho evento de UOP y lo envía al procesador de programa. El procesador de programa busca un controlador de eventos con el ID de evento “menú” y ejecuta dicho controlador de eventos objetivo. Por ejemplo, en la presente forma de realización se inicia la reproducción de la lista de reproducción #3.
Cabe señalar que, en la presente forma de realización, se da por supuesto que el número de teclas de “Menu” es uno, sin embargo puede haber varias teclas de menú como en el caso de un reproductor de DVD. Se puede dar soporte a dicho caso definiendo un ID correspondiente a cada tecla de menú.
<Máquina de reproducción virtual>
Haciendo referencia a la FIG. 28 se ofrece una descripción de la estructura funcional de un procesador de programa.
El procesador de programa es un módulo de proceso que tiene una máquina de reproducción virtual en el mismo. Dicha máquina de reproducción virtual tiene la función de dar soporte a BDs y no depende de la implementación de un reproductor de BD. Es decir, se garantiza que la máquina de reproducción virtual realiza la misma función, independientemente del reproductor de BD.
En líneas generales, la máquina de reproducción virtual tiene dos funciones: funciones de programación y variables de reproductor (registros). En las funciones de programación, dos propiedades que se describen a continuación se definen como funciones propias de BD según Java Script:
Función de enlace: detener la reproducción actual e iniciar la reproducción a partir de una lista de reproducción, célula o tiempo especificados.
Link (PL#, Cell#, time)
PL#: Nombre de lista de reproducción
Cell#: Número de célula
time: tiempo de inicio de reproducción de la célula
Función de representación de PNG: representar, en el mapa de imágenes, datos de PNG especificados
Draw (File, X, Y)
File: Nombre de fichero PNG
X: Posición en la coordenada X
Y: Posición en la coordenada Y Función de liberación de mapa de imágenes: liberar un área especificada en un mapa de imágenes Clear (X, Y, W, H)
X: Posición en la coordenada X
Y: Posición en la coordenada Y
W: Anchura en la dirección X
H: Anchura en la dirección Y
Variables de reproductor incluyen parámetros de sistema (SPRMs) que indican el estado del reproductor y parámetros generales (GPRMs) que se pueden usar a efectos generales.
La FIG. 29 muestra una lista de parámetros de sistema (SPRMs)
- SPRM (0):
- Código de idioma
- SPRM (1):
- Número de flujo de audio
- SPRM (2):
- Número de flujo de subtítulo.
- SPRM (3):
- Número de ángulo
- SPRM (4):
- Número de título
- SPRM (5):
- Número de capítulo
- SPRM (6):
- Número de programa
- SPRM (7):
- Número de célula
- SPRM (8):
- Nombre de tecla
- SPRM (9):
- Temporizador de navegación
- SPRM (10):
- Tiempo de reproducción actual
SPRM (11): Modo de mezcla de audio de reproductor para Karaoke SPRM (12): Código de país para gestión parental SPRM (13): Nivel parental SPRM (14): Configuración de reproductor (vídeo) SPRM (15): Configuración de reproductor (audio) SPRM (16): Código de idioma para flujo de audio SPRM (17): Código de idioma para flujo de audio (extensión) SPRM (18): Código de idioma para flujo de subtítulo SPRM (19): Código de idioma para flujo de subtítulo (extensión) SPRM (20): Código de región de reproductor SPRM (21): reservado SPRM (22): reservado SPRM (23): Estado del reproductor SPRM (24): reservado SPRM (25): reservado SPRM (26): reservado SPRM (27): reservado SPRM (28): reservado SPRM (29): reservado
SPRM (30): reservado SPRM (31): reservado Cabe señalar que, en la presente forma de realización, las funciones de programación se definen según Java Script,
sin embargo, dichas funciones de programación se pueden definir en función de otras funciones de programación, tales como B-Shell y Perl Script que se usan en OSs tales como OS UNIX (marca registrada), en lugar de definirlas según Java Script. Es decir, la presente invención no se limita al uso de Java Script para sus definiciones.
<Ejemplo de Programa>
La FIG. 30 y la FIG. 31 son diagramas que muestran ejemplos de programas como controladores de eventos.
La FIG. 30 es un diagrama que muestra un ejemplo de un menú que tiene dos botones de selección.
El programa que se ilustra en la parte izquierda de la FIG. 30 se ejecuta en función del evento de tiempo superior de
la célula (PlayList#1. Cell#1). En este caso, “1” se establece a uno de los parámetros generales GPRM (0) por
defecto. GPRM (0) se usa en el programa para identificar el botón seleccionado. En la condición inicial, es un valor inicial que indica que se selecciona el botón 1 situado en la parte izquierda.
A continuación, usando una función de representación Draw, se representa la PNG del botón 1 y del botón 2. El
botón 1 se forma representando la imagen PNG “1black.png” que se extiende desde las coordenadas (10, 200) como el punto de inicio (esquina superior izquierda). El botón 2 se forma representando la imagen PNG “2white.png” que se extiende desde las coordenadas (330, 200) como el punto de inicio (esquina superior izquierda).
Por lo tanto, el programa que se ilustra en la parte derecha de la FIG. 30 se ejecuta en función del último evento de tiempo de la célula actual. En este programa se especifica, usando la función Link, que la célula se debería reproducir nuevamente desde la parte superior.
La FIG. 31 es un diagrama que muestra un ejemplo de un controlador de eventos para un evento de usuario para selección de menú. Programas correspondientes a cada una de las teclas de control remoto, cuando se selecciona cualquiera de la tecla “Izquierda”, la tecla “Derecha” y la tecla “Determinación”, se describen en el controlador de eventos. Como se ha descrito en relación con la FIG. 26, cuando el usuario pulsa una tecla de control remoto, se genera un evento de usuario y, a continuación, se activa el controlador de eventos que se muestra en la FIG. 31. En dicho controlador de eventos, se lleva a cabo un proceso de bifurcación usando el valor de GPRM (0) para identificar el botón seleccionado y usando SPRM (8) para identificar la tecla de control remoto seleccionada.
Condición 1) cuando se selección el botón 1 y se selecciona la tecla “Derecha”
GPRM (0) se restablece a 2 con el fin de cambiar el botón seleccionado actualmente al botón 2 de la derecha. Se vuelven a representar las imágenes del botón 1 y del botón 2, respectivos.
Condición 2) cuando se selecciona la tecla “Determinación (OK)” y se selecciona el botón 1
Se inicia la reproducción de la lista de reproducción #2.
Condición 3) cuando se selecciona la tecla “Determinación (OK)” y se selecciona el botón 2
Se inicia la reproducción de la lista de reproducción #3.
La ejecución se realiza como sigue.
<Flujo de procedimientos de reproductor>
A continuación, haciendo referencia a las FIGS. 32 a 35, se ofrece una descripción del flujo de procedimientos que
se llevan a cabo por medio del reproductor.
La FIG. 32 es un diagrama que muestra el flujo de procedimientos básicos hasta la reproducción de datos de AV.
Cuando se inserta el disco BD (S101), el reproductor de BD carga y analiza el fichero BD.INFO (S102) y, a
continuación, carga el BD.PROG (S103). Tanto el BD.INFO como el BD.PROG se almacenan una vez en la memoria de almacenamiento de información de gestión y se analizan por medio del procesador de escenario.
A continuación, el procesador de escenario genera el primer evento en función de la información de primer evento (FirstEvent) del fichero BD.INFO (S104). El procesador de programa recibe el primer evento generado y ejecuta un controlador de eventos correspondiente a dicho evento (S105).
Se prevé que la información de listas de reproducción que se deberían reproducir primero esté almacenada en el controlador de eventos correspondiente al primer evento. Si no hay instrucciones para reproducir una lista de reproducción, el reproductor se mantiene esperando un evento de usuario sin reproducir nada (S201). Cuando el reproductor de BD recibe una operación de control remoto del usuario, el gestor de UOP hace que el gestor de programas inicie la ejecución del evento de UOP (S202).
El gestor de programas determina si dicho evento de UOP es o no un evento de tecla de menú (S203). Cuando el evento de UOP es un evento de tecla de menú, el gestor de programas transmite el evento de UOP al procesador de escenario y el procesador de escenario genera un evento de usuario (S204). El procesador de programa ejecuta un controlador de eventos correspondiente a dicho evento de usuario generado (S205).
La FIG. 33 muestra el flujo de procedimientos desde la reproducción de una PL hasta la reproducción de un VOB.
Como se ha descrito anteriormente, la reproducción de la lista de reproducción se inicia por medio de un controlador de primer evento o un controlador de eventos globales (S301). El procesador de escenario carga y analiza la
información de listas de reproducción “XXX.PL” como información necesaria para reproducir la lista de reproducción que se va a reproducir (S302) y carga la información de programas “XXX.PROG” correspondiente a dicha lista de
reproducción (S303). A continuación, el procesador de escenario da instrucciones para la reproducción de una célula en función de la información de célula registrada en la lista de reproducción (S304). Dado que la reproducción de la célula significa que hay una petición del procesador de escenario al controlador de presentaciones, el controlador de presentaciones inicia la reproducción de los datos de AV (S305).
Cuando se inicia la reproducción de los datos de AV (S401), el controlador de presentaciones carga y analiza el fichero de información (XXX.VOBI) del VOB correspondiente a la célula que se va a reproducir (S402). Haciendo referencia al mapa de tiempos, el controlador de presentaciones identifica la primera VOBU que se va a reproducir y la dirección de dicha VOBU y notifica dicha dirección al controlador de unidad de disco y el controlador de unidad de disco lee los datos de VOB objetivo (S403). En consecuencia, los datos de VOB se envían a los decodificadores y se inicia la reproducción de dichos datos (S404).
La reproducción del VOB continúa hasta que se llega al final de los segmentos de reproducción de dicho VOB (S405), a lo que sigue la reproducción de la célula siguiente S304. Si no sigue ninguna célula, se detiene la reproducción (S406).
La FIG. 34 muestra el flujo de procedimientos de eventos una vez iniciada la reproducción de los datos de AV.
El reproductor de BD es un reproductor accionado por evento. Cuando se inicia la reproducción de una lista de reproducción, se activan, respectivamente, procedimientos de eventos correspondientes a evento de tiempo, a evento de usuario y a visualización de subtítulos y los procedimientos de eventos se ejecutan en paralelo con los mismos.
Los procedimientos de las etapas S500 son un flujo de procedimientos de eventos de tiempo.
Una vez iniciada la reproducción de la lista de reproducción (S501) y llevada a cabo una etapa de comprobación de si la reproducción de la lista de reproducción ha finalizado o no (S502), el procesador de escenario comprueba si es
o no el momento para la aparición de eventos de tiempo (S503). Cuando es el momento para la aparición de eventos de tiempo, el procesador de escenario genera un evento de tiempo (S504) y el procesador de programa recibe dicho evento de tiempo y ejecuta el controlador de eventos correspondiente (S505).
Los procedimientos vuelven de nuevo a la Etapa S502 en los siguientes casos y se repiten los procedimientos que se han descrito anteriormente: no es el momento para la aparición de eventos de tiempo en la Etapa S503 y una vez ejecutado el controlador de eventos en la Etapa S504. Mientras que, cuando el resultado de la comprobación de la Etapa S502 es que ha finalizado la reproducción de la lista de reproducción, se cancelan manualmente los procedimientos de eventos de tiempo.
Los procedimientos de las etapas S600 son un flujo de procedimientos de eventos de usuario.
Una vez iniciada la reproducción de la lista de reproducción (S601) y llevada a cabo una etapa de comprobación de si la reproducción de la lista de reproducción ha finalizado o no (S602), el procedimiento pasa a una etapa de comprobación de si se ha aceptado o no alguna UOP (S603). Cuando se ha aceptado una UOP, el gestor de UOP genera un evento de UOP (S604) y el procesador de programa recibe dicho evento de UOP y comprueba si el evento de UOP recibido es o no una llamada de menú (S605). Cuando el evento de UOP es una llamada de menú, el procesador de programa hace que el procesador de escenario genere un evento (S607) y el procesador de programa ejecuta el controlador de eventos correspondiente (S608).
Cuando el resultado de la comprobación de la Etapa S605 es que el evento de UOP no es una llamada de menú, indica que el evento de UOP es un evento que se genera accionando una tecla de cursor o la tecla “Determinación”. En este caso, el procesador de programa determina si el tiempo actual está o no dentro del período de validez del evento de usuario (S606). Cuando el tiempo actual está dentro del período de validez del evento de usuario, el procesador de escenario genera un evento de usuario (S607) y el procesador de programa ejecuta el controlador de eventos correspondiente (S608).
Los procedimientos vuelven de nuevo a la Etapa S602 en los siguientes casos y se repiten los procedimientos que se han descrito anteriormente: el resultado de la comprobación de la Etapa S603 es que no se ha aceptado ninguna UOP; en la Etapa S606 se determina que el tiempo actual no está dentro del período de validez del evento de usuario y una vez ejecutado el controlador de eventos en la Etapa S608. Mientras que, cuando el resultado de la comprobación de la Etapa S602 es que ha finalizado la reproducción de la lista de reproducción, se cancelan manualmente los procedimientos de eventos de usuario.
La FIG. 35 muestra el flujo de procedimientos de subtítulos.
Una vez iniciada la reproducción de la lista de reproducción (S701) y llevada a cabo una etapa de comprobación de si la reproducción de la lista de reproducción ha finalizado o no (S702), el procedimiento pasa a una etapa de comprobación de si el tiempo actual es o no el momento para iniciar la representación de subtítulos (S703). Cuando el tiempo actual es el momento para iniciar la representación de subtítulos, el procesador de escenario da instrucciones al controlador de presentaciones para que represente subtítulos y el controlador de presentaciones da instrucciones al procesador de imagen para que represente subtítulos (S704). Cuando el resultado de la comprobación de la Etapa S703 es que el tiempo actual no es el momento para iniciar la representación de subtítulos, se comprueba si el tiempo actual es o no el momento para finalizar la visualización de los subtítulos (S705). Cuando el resultado de la comprobación es que el tiempo actual es el momento para finalizar la visualización de los subtítulos, el controlador de presentaciones da instrucciones al procesador de imagen para que borre los subtítulos y el procesador de imagen borra los subtítulos representados en el mapa de imágenes (S706).
Los procedimientos vuelven a la Etapa S702 en los siguientes casos y se repiten los procedimientos que se han descrito anteriormente: una vez llevada a cabo la representación de subtítulos en la etapa S704; una vez llevado a cabo el borrado de subtítulos en la Etapa S706 y el resultado de la comprobación de la Etapa S705 es que el tiempo actual no es el momento para finalizar la visualización de los subtítulos. Mientras que, cuando el resultado de la comprobación de la Etapa S702 es que ha finalizado la reproducción de la lista de reproducción, se cancelan manualmente los procedimientos de subtítulos.
(Segunda forma de realización)
A continuación, se ofrece una descripción de la segunda forma de realización de la presente invención.
La segunda forma de realización es una descripción para realizar una proyección de diapositivas de imágenes fijas usando la aplicación que se ha descrito anteriormente. Básicamente, los detalles de la segunda forma de realización se basan en la primera forma de realización. Por lo tanto, la segunda forma de realización se centra en diferencias o partes ampliadas.
<Referencia a fotograma I>
La FIG. 36 muestra una relación entre una proyección de diapositivas (aplicación de imágenes fijas) y un mapa de tiempos. Normalmente, una proyección de diapositivas se compone solo de imágenes fijas (fotogramas I). El mapa de tiempos incluye la posición e información de tamaño de los datos de imágenes fijas. Cuando se elija una imagen fija determinada, dicha única imagen fija se visualizará tras extraer los datos necesarios y enviarlos al decodificador. Normalmente, una proyección de diapositivas no necesariamente se visualiza en el orden de las imágenes como es el caso de una imagen en movimiento, dado que su orden de visualización difiere dependiendo de una interacción de usuario. A fin de garantizar que se lleva a cabo una visualización de imágenes a partir de cualquier imagen se usan fotogramas I, que están intracodificados y se pueden decodificar por sí mismos.
No obstante, a fin de reducir la cantidad de datos, también se puede realizar una proyección de diapositivas usando fotogramas P, que están comprimidos con relación a fotogramas I, y usando fotogramas B, que están comprimidos con relación a dos o más fotogramas anteriores/posteriores.
No obstante, fotogramas P y fotogramas B no se pueden decodificar sin los fotogramas a los que se refieren. Debido a esto, un fotograma P o un fotograma B posicionado en el centro no se puede decodificar incluso cuando se desea que la reproducción se inicie a partir de dichos fotogramas en respuesta a una interacción de usuario. En vista de esto, como se muestra en la FIG. 37, se proporciona un indicador que indica que un fotograma indicado en el mapa de tiempos es un fotograma I y que no se refiere a ningún fotograma. La referencia a dicho indicador posibilita conocer: que, cuando una imagen determinada no necesita imágenes de referencia o, dicho de otro modo, dicha imagen se puede decodificar por sí misma, se puede llevar a cabo la decodificación y visualización a partir de dicha imagen independientemente de sus imágenes anteriores y posteriores que se visualicen y que, cuando una imagen determinada necesita un imagen de referencia, dicha imagen no se puede visualizar dependiendo de su orden de visualización, dado que la imagen no se puede visualizar a menos que sus imágenes relacionadas se hayan decodificado con anterioridad a dicha imagen.
Cabe señalar que, en todo el mapa de tiempos, indicadores que indican que fotogramas a los que se hace referencia desde el mapa de tiempo son siempre fotogramas I o, dicho de otro modo, que cualquier fotograma se puede decodificar por sí mismo, se pueden almacenar en el mapa de tiempos como se muestra en la FIG. 38 o en una parte de la información de navegación relacionada. Cuando no está establecido un indicador de este tipo, una entrada del mapa de tiempos no necesariamente indica un fotograma I y, por lo tanto, no hay garantías de que el fotograma al que se hace referencia se pueda decodificar.
Cabe señalar que si bien la descripción anterior se ha ofrecido usando un fotograma I en función de un flujo de vídeo MPEG-2, se puede usar un fotograma de Regeneración de Decodificador Instantánea (IDR) en el caso de MPEG-4 AVC (también denominado H.264 o JVT).
<Garantía para referencia de todos los fotogramas I>
La FIG. 39 muestra una diferencia entre una aplicación de imágenes en movimiento y una aplicación de imágenes fijas (una proyección de diapositivas). Como se muestra en (a) de la FIG. 39, en el caso de la aplicación de imágenes en movimiento, una vez iniciada la reproducción, los fotogramas subsiguientes se decodificarán secuencialmente. Por lo tanto, no es necesario establecer una referencia hecha desde el mapa de tiempos para todos los fotogramas I y basta con establecer una entrada del mapa de tiempos únicamente al menos en un punto a partir del que se desea que se inicie la reproducción.
(b) de la FIG. 39 muestra un ejemplo de una proyección de diapositivas. En el caso de la proyección de diapositivas, es necesario visualizar imágenes fijas sin visualizar el vídeo anterior y posterior independientemente de su orden, en respuesta a una operación de usuario, tal como una operación de salto. Debido a esto, datos de fotogramas I que se van a visualizar no se pueden transmitir al decodificador sin analizar realmente todo el flujo, a menos que haya entradas registradas en el mapa de tiempos para todos los fotogramas I. Esto tiene como resultado un rendimiento reducido. Si hay una entrada en el mapa de tiempos para cada fotograma I, se puede hacer un acceso directo solo a los datos de los fotogramas I necesarios a fin de leer dichos datos y transmitirlos al decodificador. Esto tiene como resultado una eficacia de acceso favorable, así como un rendimiento favorable dado que se necesita menos tiempo antes de que se visualicen los fotogramas.
Si se puede identificar que existen entradas para todos los fotogramas I, se puede conocer el alcance de los datos que se van a leer haciendo referencia a la entrada correspondiente del mapa de tiempos cuando se accede a cualquier fotograma I. En consecuencia, no existe la necesidad de hacer análisis innecesarios de los fotogramas anteriores y posteriores.
Cuando no se garantiza que existen entradas para todos los fotogramas I y cuando se especifica que se visualice un fotograma I no registrado en el mapa de tiempos, es necesario extraer los datos necesarios a la vez que se analizan sus fotogramas anteriores y posteriores en el flujo. Esto tiene como resultado una eficacia de acceso reducida y un rendimiento reducido dado que se tarda tiempo en visualizar los fotogramas.
En vista de esto, proporcionando un indicador que indica si hay garantía o no de que se hace referencia a todos los fotogramas I desde el mapa de tiempos, como se muestra en la FIG. 40, resulta posible identificar si el análisis de los fotogramas anteriores y posteriores en el flujo es necesario o no analizando los datos fijos y, por lo tanto, un indicador de este tipo es eficaz.
Cabe señalar que un indicador de este tipo es eficaz no solo para una aplicación de imágenes fijas, tal como una proyección de diapositivas, sino también para una aplicación de imágenes en movimiento y que un indicador de este tipo puede servir para garantizar que la reproducción se puede iniciar a partir de cualquier fotograma I.
(Tercera forma de realización)
En la segunda forma de realización se ha descrito que se puede usar MPEG-4 AVC como un esquema de codificación para implementar una aplicación de imágenes fijas. Imágenes fijas conforme a MPEG-4 AVC se especifican como Fotogramas Fijos de AVC no del estándar MPEG-4 AVC propiamente dicho, sino de un estándar de extensión para MPEG-4 AVC del sistema de MPEG-2 (ISO/IEC13818-1Modificación3). No obstante, la especificación del sistema MPEG-2 no especifica un procedimiento de reproducción de imágenes fijas. Debido a esto, no se pueden determinar los tiempos para visualizar imágenes fijas MPEG-4 AVC en el momento de reproducirlas y, por lo tanto, un dispositivo de reproducción visualiza dichas imágenes fijas en tiempos arbitrarios. Por consiguiente, surge el problema de que no se puede garantizar la compatibilidad de las operaciones de reproducción entre dispositivos. La presente forma de realización describe una estructura de datos de imágenes fijas y un procedimiento de visualización de la misma para aplicar MPEG-4 AVC a una aplicación de imágenes fijas.
Se especifica que Fotogramas Fijos de AVC del estándar de sistema MPEG-2 incluyen: un fotograma de IDR; un Conjunto de Parámetros de Secuencia (SPS) al que hace referencia el fotograma de IDR y un Conjunto de Parámetros de Fotograma. La FIG. 41 muestra una estructura de datos de un imagen fija conforme a MPEG-4 AVC (en lo sucesivo denominada una imagen fija de AVC) según la presente forma de realización. Cada casilla del dibujo muestra una Unidad de Abstracción de Red (unidad de NAL). La imagen fija de AVC deberá incluir, sin excepción, una unidad de NAL de FIN de secuencia. Dado que Fin de Secuencia es información de identificación que indica el final de una secuencia de MPEG-4 AVC, se puede definir un procedimiento de visualización único para imágenes fijas de AVC, que no está definido por el estándar MPEG-4 AVC, colocando una unidad de NAL de Fin de Secuencia que marque el final de la secuencia. En este caso, se da por supuesto que el orden en que aparece cada unidad de NAL se especifica con el orden definido por el estándar MPEG-4 AVC. Cabe señalar que al final de una imagen fija de AVC se puede colocar una unidad de NAL de fin de flujo en lugar de colocar un fin de secuencia.
A continuación, haciendo referencia a la FIG. 42, se describe un procedimiento para visualizar imágenes fijas de AVC. En una aplicación de imágenes fijas, es necesario especificar el tiempo de visualización de una imagen fija y la duración de visualización de una imagen fija. El tiempo de visualización (Sello de Tiempos de Presentación: PTS) de una imagen fija de AVC se obtiene de una mapa de tiempos o de la cabecera de un paquete de Flujo Elemental Paquetizado (PES). En este caso, cuando los tiempos de visualización de todas las imágenes fijas están indicados en el mapa de tiempos, se pueden obtener tiempos de visualización mediante referencia solo al mapa de tiempos. Durante un período de tiempo desde el tiempo de visualización de la imagen fija de AVC Nth hasta el tiempo de visualización de la imagen fija de AVC N+1th, la visualización de la imagen fija de AVC Nth se congela o, dicho de otro modo, la imagen fija de AVC Nth se visualiza reiteradamente.
Cuando se reproducen imágenes fijas de AVC, es aconsejable poder obtener la velocidad de trama de los datos de las imágenes fijas de AVC. Según MPEG-4 AVC, la velocidad de visualización de un flujo de imágenes en movimiento se puede indicar como Información de Usabilidad de Vídeo (VUI) de un SPS. Más específicamente, se hace referencia a los tres campos siguientes: num_units_in_tick, time_scale y fixed_frame_rate_flag. En este caso, time_scale indica una escala de tiempo. La time_scale de un reloj que funciona a 30000 Hz se puede representar, por ejemplo, como 30000. num_units_in_tick es una unidad básica que indica el tiempo en que funciona un reloj. Por ejemplo, suponiendo que num_units_in_tick de un reloj cuya time_scale es 30000 sea 1001, se puede mostrar que el período fundamental en el que funciona el reloj es 29,97 Hz. Además, estableciendo fixed_frame_rate_flag, se puede mostrar que la velocidad de trama es fija. En MPEG-4 AVC, el uso de estos campos posibilita mostrar un valor diferencial entre los tiempos de visualización de dos fotogramas consecutivos. En la presente forma de realización, estos campos se usan para mostrar la velocidad de trama a la que una imagen fija de AVC se visualiza reiteradamente. En primer lugar, estableciendo 1 a fixed_frame_rate_flag, se muestra que la velocidad de trama es fija. A continuación, en caso de establecer la velocidad de trama a 23,976 Hz, num_units_in_tick se establece a 1001 y time_scale se establece a 24000, por ejemplo. Es decir, estos dos campos se establecen de manera que la velocidad de trama = time_scale/num_units_in_tick. Además, a fin de garantizar la existencia de una VUI y los tres campos anteriores de la VUI, tanto vui_parameters_present_flag del SPS como timing_info_present_flag de la VUI se establecen a 1. Cuando la imagen fija de AVC Nth es la última imagen fija de AVC, la visualización de la misma se congelará hasta que un programa predetermine que se inicie una operación de usuario, la siguiente operación o similar. Cabe señalar que un procedimiento para establecer la velocidad de trama no se limita al uso de time_scale/num_units_in_tick. En el caso de un flujo de imágenes en movimiento conforme a MPEG-4 AVC, por ejemplo, time_scale/num_units_in_tick indica una velocidad de campo (parámetro que indica intervalos a los que se visualizan los campos) y, por consiguiente, la velocidad de trama se indica por medio de time_scale/num_units_in_tick/2. Por lo tanto, la velocidad de trama de imágenes fijas se puede establecer como time_scale/num_units_in_tic/2.
La velocidad de trama que se indica según el procedimiento anterior coincidirá con el valor de velocidad de trama indicado en la información de gestión de BD. Más específicamente, la velocidad de trama coincidirá con el valor indicado por el campo frame_rate de SteamCodingInfo.
Cabe señalar que se puede obtener el período de visualización en el que una imagen fija de AVC se visualiza reiteradamente a partir de la velocidad de trama que se indica según el procedimiento anterior. Dicho período de visualización se puede establecer como un múltiplo entero de una cuadrícula de trama o una cuadrícula de campo. En este caso, “cuadrícula” se refiere a los tiempos en que se puede visualizar una trama o un campo. Esto garantiza la reproducción sincronizada con otra fuente de vídeo, tal como vídeo y gráficos. En este caso, la cuadrícula de trama o cuadrícula de campo se genera en función de la velocidad de trama de un flujo específico, tal como vídeo. Además, el valor diferencial entre los tiempos de visualización de la imagen fija de AVC Nth y la imagen fija de AVC N+1th se pueden establecer como un múltiplo entero de una cuadrícula de trama o una cuadrícula de campo.
El mapa de tiempos de la segunda forma de realización se usa como mapa de tiempos al que se hará referencia en el momento de reproducir imágenes fijas de AVC.
Además, en el formato BD-ROM y similares, estos campos se pueden omitir especificando los valores por defecto de num_units_in_tick, time_scale y fixed_frame_rate_flag.
No está permitido cambiar la resolución dentro de un flujo en el caso de un flujo de vídeo. No obstante, en el caso de un flujo de imágenes fijas, puede estar permitido cambiar la resolución dentro de un flujo dado que la gestión de memoria intermedia se puede realizar en una operación de decodificación sin problemas, incluso si se cambia la resolución. En este caso, la resolución se indica en un campo dentro del SPS.
Cabe señalar que la estructura de datos y el procedimiento de reproducción de la presente forma de realización también son aplicables a un esquema de codificación distinto al de MPEG-4 AVC en caso de que dicho esquema de codificación haga uso de una estructura de datos similar.
(Cuarta forma de realización)
Además, si un programa para ejecutar el soporte de almacenamiento de información, su procedimiento de codificación, procedimiento de decodificación y procedimiento de multiplexación, según se presenta en cada una de las formas de realización que se han mencionado anteriormente, se almacena en un soporte de almacenamiento, tal como un disco flexible, se pueden llevar a cabo fácilmente, en un sistema informático independiente, los procedimientos que se presentan en las respectivas formas de realización.
Las FIGS. 43A a 43C son diagramas que ilustran cuando el procedimiento de codificación y el procedimiento de decodificación de cada una de las formas de realización anteriores se llevan a cabo en un sistema informático usando un programa almacenado en un soporte de almacenamiento, tal como un disco flexible.
La FIG. 43B muestra una vista externa del disco flexible visto desde la parte delantera, su vista transversal esquemática y el disco flexible propiamente dicho, mientras que la FIG. 43A ilustra un formato físico de ejemplo del disco flexible como un soporte de almacenamiento propiamente dicho. El disco flexible FD está contenido en una carcasa F y una pluralidad de pistas Tr están formadas concéntricamente en la superficie del disco flexible en la dirección radial desde la periferia, estando dividida cada pista en 16 sectores Se en la dirección angular. Por lo tanto, en el disco flexible que almacena el programa que se ha mencionado anteriormente, el programa anterior está almacenado en un área asignada a tal efecto en el disco flexible FD.
Mientras que, la FIG. 43C muestra la estructura necesaria para almacenar el programa en el disco flexible FD y leerlo del mismo. Cuando el programa, que realiza el procedimiento de codificación y el procedimiento de decodificación, se vaya a almacenar en el disco flexible FD, dicho programa se grabará mediante el uso del sistema informático Cs a través de una unidad de disco flexible. Mientras que, cuando el procedimiento de reproducción y el procedimiento de almacenamiento que realizan el procedimiento de codificación y el procedimiento de decodificación a través del programa almacenado en el disco flexible, se vayan a construir en el sistema informático por medio del programa del disco flexible, el programa se leerá del disco flexible a través de la unidad de disco flexible y, posteriormente, se transferirá al sistema informático.
La descripción anterior se ha ofrecido dando por supuesto que un soporte de almacenamiento es el disco flexible, sin embargo, también se puede usar un disco óptico. Además, el soporte de almacenamiento no se limita a esto y también se pueden usar otros soportes, tales como una tarjeta de CI y un casete ROM capaces de almacenar un programa.
Los bloques funcionales que se muestran en los diagramas de bloques de la FIG. 6, FIG. 12, FIG. 13 y similares, normalmente, se logran en forma de circuito integrado o LSI. Cada una de estas partes puede estar en varios microcircuitos o también puede estar en un microcircuito (por ejemplo, los bloques funcionales distintos a memoria pueden estar en un microcircuito). En este caso, se usa la denominación LSI, sin embargo, también se puede denominar CI, LSI de sistema, súper LSI o ultra LSI según el grado de integración.
El procedimiento de incorporar los bloques funcionales en un circuito integrado no se limita a la LSI y se puede realizar con una línea privada o un procesador genérico. Tras la fabricación de la LSI, se puede utilizar una Matriz de Puertas Programables de Campo (FPGA) que es programable o un procesador reconfigurable cuya LSI permite la reconfiguración de la conexión y el establecimiento de una célula de circuito.
Además, junto con la llegada de la técnica para incorporar los bloques funcionales en un circuito integrado que sustituye a la LSI, debido a un avance en la tecnología de semiconductores u otra técnica derivada de ésta, la integración de los bloques funcionales se puede realizar usando la tecnología recién llegada. Como uno de los ejemplos se puede citar la biotecnología.
De los bloques funcionales, solo una unidad que almacena datos se puede construir de manera independiente sin que se incorpore en una forma de microcircuito, como en el caso del soporte de almacenamiento 115 de las formas de realización.
Cabe señalar que en cada bloque funcional de los diagramas de bloques, tales como los que se muestran en las FIGS. 6, 12 y 13, así como de los diagramas de flujo, tales como los que se muestran en las FIGS. 5, 7 a 9, 32 y 33, partes principales también se pueden implementar como un procesador o un programa.
Como se ha descrito anteriormente, se puede usar el procedimiento de codificación de imágenes y el procedimiento de decodificación de imágenes, que se presentan en las formas de realización que se han descrito anteriormente, en cualquiera de los dispositivos/sistemas que se han descrito anteriormente, logrando, de ese modo, los efectos que se han descrito en las formas de realización que se han descrito anteriormente.
Aplicabilidad industrial
Aplicabilidad industrial
La presente invención es adecuada para un dispositivo de codificación o para un dispositivo de decodificación que codifican o decodifican un imagen, y adecuada para un servidor de red que distribuye una imagen en movimiento, para un terminal de red que recibe la imagen en movimiento distribuida, para una cámara digital que puede grabar y reproducir una imagen en movimiento, para un teléfono móvil equipado con una cámara, para un dispositivo para grabar/reproducir un disco óptico, tal como un BD, una PDA, un ordenador personal, y similares.
Claims (3)
- REIVINDICACIONES1. Un dispositivo de codificación de imágenes (2000) que codifica una imagen que ha de ser codificada, comprendiendo dicho dispositivo de codificación de imágenes:una unidad de establecimiento (2001) configurada para establecer un primer límite superior y un segundo límite superior a un mismo valor cuando un nivel es igual o inferior a un valor de referencia predeterminado, y para establecer el primer límite superior de forma superior al segundo límite superior cuando el nivel es superior a un valor de referencia predeterminado, indicando el primer límite superior un límite superior de la cantidad de códigos por fotograma fijo durante la codificación de la imagen que ha de ser codificada como un fotograma fijo e indicando el segundo límite superior un límite superior de la cantidad de códigos por fotograma en movimiento durante la codificación de la imagen que ha de ser codificada como un fotograma en movimiento, y siendo el nivel un parámetro que indica un valor de límite superior de parámetros de codificación que incluyen una velocidad binaria, una velocidad de marco y un tamaño de imagen;una unidad de codificación (1001) configurada para codificar, basándose en el nivel, la imagen que ha de ser codificada, así como para cumplir el primer límite superior durante la codificación de la imagen que ha de ser codificada como el fotograma fijo, y para codificar, basándose en el nivel, la imagen que ha de ser codificada, así como para cumplir el segundo límite superior durante la codificación de la imagen que ha de ser codificada como fotograma en movimiento; yuna unidad de salida (1003) configurada para transmitir el fotograma fijo y el fotograma en movimiento que están codificados.
- 2. Un procedimiento de decodificación de imágenes para codificar una imagen que ha de ser codificada, comprendiendo dicho procedimiento de codificación de imágenes:establecer (S2003) un primer límite superior y un segundo límite superior a un mismo valor cuando un nivel es igual o inferior a un valor de referencia predeterminado y establecer (S2002) el primer límite superior de forma superior al segundo límite superior cuando el nivel es superior a un valor de referencia predeterminado, indicando el primer límite superior un límite superior de la cantidad de códigos por fotograma fijo durante la codificación de la imagen que ha de ser codificada como un fotograma fijo e indicando el segundo límite superior un límite superior de la cantidad de códigos por fotograma en movimiento durante la codificación de la imagen que ha de ser codificada como un fotograma en movimiento, y siendo el nivel un parámetro que indica un valor de límite superior de parámetros de codificación que incluyen una velocidad binaria, una velocidad de marco y un tamaño de imagen;codificar (S1001), basándose en el nivel, la imagen que ha de ser codificada, así como cumplir el primer límite superior durante la codificación de la imagen que ha de ser codificada como el fotograma fijo, y codificar, basándose en el nivel, la imagen que ha de ser codificada, así como cumplir el segundo límite superior durante la codificación de la imagen que ha de ser codificada como fotograma en movimiento; ytransmitir (S1003) el fotograma fijo y el fotograma en movimiento que están codificados.
- 3. Un procedimiento de grabación para grabar, en un medio de grabación (FD, F), datos codificados obtenidos al codificar una imagen que ha de ser codificada, comprendiendo dicho procedimiento de grabación:las etapas del procedimiento de codificación de imágenes según la reivindicación 2; ygrabar en el medio de grabación los datos codificados transmitidos.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2004237526 | 2004-08-17 | ||
| JP2004237526 | 2004-08-17 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2383276T3 true ES2383276T3 (es) | 2012-06-19 |
Family
ID=35907403
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES05770411T Expired - Lifetime ES2373605T3 (es) | 2004-08-17 | 2005-08-09 | Dispositivo de codificación de imágenes y dispositivo de decodificación de imágenes. |
| ES11163451T Expired - Lifetime ES2383276T3 (es) | 2004-08-17 | 2005-08-09 | Dispositivo y procedimiento de codificación de imágenes |
Family Applications Before (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES05770411T Expired - Lifetime ES2373605T3 (es) | 2004-08-17 | 2005-08-09 | Dispositivo de codificación de imágenes y dispositivo de decodificación de imágenes. |
Country Status (8)
| Country | Link |
|---|---|
| US (3) | US7680182B2 (es) |
| EP (2) | EP1784014B1 (es) |
| JP (2) | JP4197725B2 (es) |
| CN (4) | CN100539672C (es) |
| AT (2) | ATE528920T1 (es) |
| ES (2) | ES2373605T3 (es) |
| PL (2) | PL2357814T3 (es) |
| WO (1) | WO2006019014A1 (es) |
Families Citing this family (34)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8582659B2 (en) * | 2003-09-07 | 2013-11-12 | Microsoft Corporation | Determining a decoding time stamp from buffer fullness |
| US8391672B2 (en) * | 2004-02-06 | 2013-03-05 | Panasonic Corporation | Recording medium, reproduction device, program, and reproduction method |
| US20080002947A1 (en) * | 2004-02-06 | 2008-01-03 | Wataru Ikeda | Recording medium, reproduction device, program and reproduction method |
| DE602005017824D1 (de) * | 2004-06-02 | 2009-12-31 | Panasonic Corp | Aufzeichnugsmedium, Wiedergabegerät, Programm und Verfahren zur Wiedergabe |
| US20070189732A1 (en) * | 2006-02-10 | 2007-08-16 | Sai Pothana | System and method for reconstructing MPEG-2 start codes from AVC data |
| KR100754736B1 (ko) * | 2006-02-10 | 2007-09-03 | 삼성전자주식회사 | 영상 수신 시스템에서 영상 프레임의 재생 방법 및 그 장치 |
| JP2008022405A (ja) * | 2006-07-14 | 2008-01-31 | Sony Corp | 画像処理装置および方法、並びに、プログラム |
| WO2010032419A1 (ja) * | 2008-09-18 | 2010-03-25 | パナソニック株式会社 | 画像復号装置、画像符号化装置、画像復号方法、画像符号化方法およびプログラム |
| JP5532726B2 (ja) * | 2009-07-31 | 2014-06-25 | ソニー株式会社 | 記録媒体製作方法、記録媒体及び記録媒体の再生装置 |
| JP2011053655A (ja) * | 2009-08-07 | 2011-03-17 | Sanyo Electric Co Ltd | 画像表示制御装置およびそれを搭載した撮像装置、ならびに画像処理装置およびそれを用いた撮像装置 |
| KR101750048B1 (ko) | 2009-11-13 | 2017-07-03 | 삼성전자주식회사 | 변속 재생 서비스 제공 방법 및 장치 |
| KR101777347B1 (ko) * | 2009-11-13 | 2017-09-11 | 삼성전자주식회사 | 부분화에 기초한 적응적인 스트리밍 방법 및 장치 |
| KR101786051B1 (ko) | 2009-11-13 | 2017-10-16 | 삼성전자 주식회사 | 데이터 제공 방법 및 장치와 데이터 수신 방법 및 장치 |
| KR101750049B1 (ko) * | 2009-11-13 | 2017-06-22 | 삼성전자주식회사 | 적응적인 스트리밍 방법 및 장치 |
| US8731053B2 (en) * | 2009-11-18 | 2014-05-20 | Tektronix, Inc. | Method of multiplexing H.264 elementary streams without timing information coded |
| KR101737084B1 (ko) * | 2009-12-07 | 2017-05-17 | 삼성전자주식회사 | 메인 콘텐트에 다른 콘텐트를 삽입하여 스트리밍하는 방법 및 장치 |
| KR101777348B1 (ko) * | 2010-02-23 | 2017-09-11 | 삼성전자주식회사 | 데이터 전송 방법 및 장치와 데이터 수신 방법 및 장치 |
| KR20110105710A (ko) * | 2010-03-19 | 2011-09-27 | 삼성전자주식회사 | 복수의 챕터를 포함하는 콘텐트를 적응적으로 스트리밍하는 방법 및 장치 |
| WO2011135704A1 (ja) * | 2010-04-28 | 2011-11-03 | 富士通株式会社 | 動画出力装置、動画出力方法、および動画出力プログラム |
| KR101837687B1 (ko) | 2010-06-04 | 2018-03-12 | 삼성전자주식회사 | 콘텐트의 품질을 결정하는 복수의 인자에 기초한 적응적인 스트리밍 방법 및 장치 |
| US20110317034A1 (en) * | 2010-06-28 | 2011-12-29 | Athreya Madhu S | Image signal processor multiplexing |
| JP2012060238A (ja) * | 2010-09-06 | 2012-03-22 | Sony Corp | 動画像処理装置、動画像処理方法およびプログラム |
| TWI491262B (zh) * | 2010-09-14 | 2015-07-01 | Alpha Imaging Technology Corp | 影像編碼積體電路及其影像編碼資料傳輸方法 |
| KR20120058770A (ko) * | 2010-11-30 | 2012-06-08 | 한국전자통신연구원 | 지능형 감시 시스템에서의 이벤트 정보 생성 장치 및 그 방법과 이벤트 정보 검색 장치 및 그 방법 |
| JP5848993B2 (ja) * | 2012-03-06 | 2016-01-27 | 株式会社メガチップス | 画像処理装置 |
| US10003803B1 (en) | 2012-04-18 | 2018-06-19 | Matrox Graphics Inc. | Motion-based adaptive quantization |
| US10003802B1 (en) | 2012-04-18 | 2018-06-19 | Matrox Graphics Inc. | Motion-based adaptive quantization |
| US8873872B1 (en) | 2012-04-18 | 2014-10-28 | Matrox Graphics Inc. | Division of entropy coding in codecs |
| PL2843945T3 (pl) * | 2012-04-23 | 2020-07-27 | Sun Patent Trust | Sposób kodowania obrazów, sposób dekodowania obrazów, urządzenie do kodowania obrazów, urządzenie do dekodowania obrazów oraz urządzenie do kodowania/dekodowania obrazów |
| EP2865181A1 (en) * | 2012-06-21 | 2015-04-29 | Telefonaktiebolaget LM Ericsson (Publ) | Apparatus and method for coding a video signal |
| JP6203515B2 (ja) * | 2013-03-29 | 2017-09-27 | 株式会社メガチップス | 画像処理装置 |
| WO2015105003A1 (ja) | 2014-01-08 | 2015-07-16 | ソニー株式会社 | 復号装置および復号方法、並びに、符号化装置および符号化方法 |
| JP6501127B2 (ja) * | 2014-06-30 | 2019-04-17 | ソニー株式会社 | 情報処理装置および方法 |
| US10360695B1 (en) | 2017-06-01 | 2019-07-23 | Matrox Graphics Inc. | Method and an apparatus for enabling ultra-low latency compression of a stream of pictures |
Family Cites Families (24)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| IT1241184B (it) * | 1990-03-02 | 1993-12-29 | Cselt Centro Studi Lab Telecom | Perfezionamenti ai sistemi ibridi di codifica di segnali video. |
| JP2979900B2 (ja) * | 1993-05-26 | 1999-11-15 | 日本ビクター株式会社 | 記録媒体 |
| JP2921358B2 (ja) * | 1993-10-06 | 1999-07-19 | 富士ゼロックス株式会社 | 画像符号化装置 |
| JPH08168553A (ja) * | 1994-12-19 | 1996-07-02 | Daiichi Shokai Co Ltd | パチンコ機の遊技盤における球誘導機構 |
| JP2885108B2 (ja) | 1994-12-28 | 1999-04-19 | 日本電気株式会社 | オーディオビデオ復号化装置 |
| JP3661711B2 (ja) | 1995-04-27 | 2005-06-22 | ソニー株式会社 | 画像符号化方法および装置 |
| JPH0923421A (ja) | 1995-07-06 | 1997-01-21 | Hitachi Ltd | 動画像の表示処理方法および表示処理装置 |
| US5959672A (en) * | 1995-09-29 | 1999-09-28 | Nippondenso Co., Ltd. | Picture signal encoding system, picture signal decoding system and picture recognition system |
| JP3389807B2 (ja) * | 1997-02-17 | 2003-03-24 | 株式会社日立製作所 | 画像音声記録再生装置 |
| CN1280798C (zh) | 1997-09-17 | 2006-10-18 | 松下电器产业株式会社 | 光盘的重现设备和重现方法 |
| US6249545B1 (en) * | 1997-10-14 | 2001-06-19 | Adam S. Iga | Video compression decompression and transmission |
| WO1999025122A2 (en) * | 1997-11-07 | 1999-05-20 | Koninklijke Philips Electronics N.V. | Coding a sequence of pictures |
| GB2337392B (en) | 1997-12-08 | 2002-04-17 | Sony Corp | Coding device and method |
| JP3209171B2 (ja) * | 1998-01-08 | 2001-09-17 | 日本電気株式会社 | 動画像符号化装置 |
| JP3530372B2 (ja) * | 1998-02-17 | 2004-05-24 | 三洋電機株式会社 | 画像記録再生装置 |
| US6895048B2 (en) * | 1998-03-20 | 2005-05-17 | International Business Machines Corporation | Adaptive encoding of a sequence of still frames or partially still frames within motion video |
| JP2000125301A (ja) * | 1998-10-20 | 2000-04-28 | Nec Eng Ltd | 画像符号化装置 |
| CA2289958C (en) | 1998-11-19 | 2003-01-21 | Tomoyuki Okada | Information recording medium, apparatus and method for recording or reproducing data thereof |
| JP3058870B1 (ja) | 1999-02-05 | 2000-07-04 | 株式会社次世代デジタルテレビジョン放送システム研究所 | Afc回路 |
| JP4599740B2 (ja) | 2000-04-21 | 2010-12-15 | ソニー株式会社 | 情報処理装置および方法、記録媒体、プログラム、並びに記録媒体 |
| JP2003304499A (ja) * | 2002-04-08 | 2003-10-24 | Pioneer Electronic Corp | 情報記録媒体、情報記録装置及び方法、情報再生装置及び方法、情報記録再生装置及び方法、記録又は再生制御用のコンピュータプログラム、並びに制御信号を含むデータ構造 |
| JP3888622B2 (ja) | 2002-06-20 | 2007-03-07 | 株式会社リコー | 画像記録装置、画像記録方法、プログラム及び情報記録媒体 |
| JP2004146885A (ja) * | 2002-10-21 | 2004-05-20 | Matsushita Electric Ind Co Ltd | 合成画像符号化装置及び方法 |
| JP4221669B2 (ja) * | 2004-09-06 | 2009-02-12 | ソニー株式会社 | 記録装置および方法、記録媒体、並びにプログラム |
-
2005
- 2005-08-09 CN CNB2005800251244A patent/CN100539672C/zh not_active Expired - Lifetime
- 2005-08-09 US US11/660,335 patent/US7680182B2/en active Active
- 2005-08-09 ES ES05770411T patent/ES2373605T3/es not_active Expired - Lifetime
- 2005-08-09 EP EP20050770411 patent/EP1784014B1/en not_active Expired - Lifetime
- 2005-08-09 ES ES11163451T patent/ES2383276T3/es not_active Expired - Lifetime
- 2005-08-09 CN CN2009101645648A patent/CN101626478B/zh not_active Expired - Fee Related
- 2005-08-09 CN CN2009101645652A patent/CN101626479B/zh not_active Expired - Lifetime
- 2005-08-09 EP EP20110163451 patent/EP2357814B1/en not_active Expired - Lifetime
- 2005-08-09 JP JP2006531661A patent/JP4197725B2/ja not_active Expired - Lifetime
- 2005-08-09 WO PCT/JP2005/014593 patent/WO2006019014A1/ja not_active Ceased
- 2005-08-09 PL PL11163451T patent/PL2357814T3/pl unknown
- 2005-08-09 AT AT05770411T patent/ATE528920T1/de not_active IP Right Cessation
- 2005-08-09 AT AT11163451T patent/ATE557541T1/de active
- 2005-08-09 PL PL05770411T patent/PL1784014T3/pl unknown
- 2005-08-09 CN CN2009101645667A patent/CN101626480B/zh not_active Expired - Fee Related
-
2007
- 2007-07-26 JP JP2007194349A patent/JP4714191B2/ja not_active Expired - Lifetime
-
2009
- 2009-10-30 US US12/609,341 patent/US8526491B2/en not_active Expired - Fee Related
- 2009-10-30 US US12/609,457 patent/US20100046611A1/en not_active Abandoned
Also Published As
| Publication number | Publication date |
|---|---|
| WO2006019014A1 (ja) | 2006-02-23 |
| EP1784014A1 (en) | 2007-05-09 |
| US20100046610A1 (en) | 2010-02-25 |
| EP1784014A4 (en) | 2009-03-18 |
| US7680182B2 (en) | 2010-03-16 |
| EP1784014B1 (en) | 2011-10-12 |
| PL2357814T3 (pl) | 2012-10-31 |
| CN101626478A (zh) | 2010-01-13 |
| US20100046611A1 (en) | 2010-02-25 |
| US20080101457A1 (en) | 2008-05-01 |
| EP2357814B1 (en) | 2012-05-09 |
| ATE557541T1 (de) | 2012-05-15 |
| JP2007336573A (ja) | 2007-12-27 |
| ES2373605T3 (es) | 2012-02-07 |
| CN101626479B (zh) | 2011-04-13 |
| CN101626478B (zh) | 2011-11-16 |
| JP4714191B2 (ja) | 2011-06-29 |
| JP4197725B2 (ja) | 2008-12-17 |
| CN1989767A (zh) | 2007-06-27 |
| PL1784014T3 (pl) | 2012-03-30 |
| EP2357814A1 (en) | 2011-08-17 |
| ATE528920T1 (de) | 2011-10-15 |
| CN101626480B (zh) | 2011-04-13 |
| CN101626480A (zh) | 2010-01-13 |
| US8526491B2 (en) | 2013-09-03 |
| CN101626479A (zh) | 2010-01-13 |
| JPWO2006019014A1 (ja) | 2008-05-08 |
| CN100539672C (zh) | 2009-09-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2383276T3 (es) | Dispositivo y procedimiento de codificación de imágenes | |
| ES2362787T3 (es) | Aparato y procedimiento de codificación de imágenes en movimiento. | |
| US10687038B2 (en) | Recording medium, playback device, and playback method | |
| KR100833641B1 (ko) | 정보 기억 매체, 정보 재생 장치, 정보 재생 방법 및네트워크 통신 시스템 | |
| BRPI0719335A2 (pt) | mÉtodo de codificaÇço de imagem em movimento, dispositivo de codificaÇço de imagem em movimento, mÉtodo de gravaÇço de imagem em movimento, meio de gravaÇço, mÉtodo de reproduÇço de imagem em movimento, dispositivo de reproduÇço de imagem em movimento, e sistema de reproduÇço de imagem em movimento | |
| ES2275521T3 (es) | Orden de titulos en una grabacion de video dvd en tiempo real. | |
| ES2272294T3 (es) | Numeracion de celulas y objetos de video. | |
| AU2003269518B2 (en) | Recording medium having data structure for managing reproduction of multiple audio streams recorded thereon and recording and reproducing methods and apparatuses | |
| CN106463149A (zh) | 记录介质、再现方法以及再现装置 | |
| US7840121B2 (en) | Recording medium having data structure for managing reproduction of multiple graphics streams recorded thereon and recording and reproducing methods and apparatuses | |
| US7346267B2 (en) | Video and audio reproduction apparatus | |
| JP2007235185A (ja) | ランダムアクセスに適した情報記録媒体、およびその記録/再生装置、記録/再生方法 | |
| JP2006087081A (ja) | 画像符号化装置、画像復号化装置 | |
| JP2007128641A (ja) | 情報処理装置、情報処理方法及びプログラム、記録媒体、並びにデータ構造 | |
| JP2006013726A (ja) | 情報記録媒体、およびその記録/再生装置、記録/再生方法 | |
| KR20060073448A (ko) | 정보 기록 매체, 정보 재생 장치 및 정보 재생 방법 |