ES2234729T3 - Metodo y dispositivo para decodificar un flujo de datos de video en modos especiales de reproduccion. - Google Patents
Metodo y dispositivo para decodificar un flujo de datos de video en modos especiales de reproduccion.Info
- Publication number
- ES2234729T3 ES2234729T3 ES01110699T ES01110699T ES2234729T3 ES 2234729 T3 ES2234729 T3 ES 2234729T3 ES 01110699 T ES01110699 T ES 01110699T ES 01110699 T ES01110699 T ES 01110699T ES 2234729 T3 ES2234729 T3 ES 2234729T3
- Authority
- ES
- Spain
- Prior art keywords
- image
- images
- decoding
- reconstruction
- buffer
- 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
- 238000000034 method Methods 0.000 title claims abstract description 50
- 239000000872 buffer Substances 0.000 claims abstract description 97
- 230000015654 memory Effects 0.000 claims description 33
- 239000000543 intermediate Substances 0.000 claims description 23
- 230000002457 bidirectional effect Effects 0.000 claims description 5
- 238000012795 verification Methods 0.000 claims description 2
- 238000012544 monitoring process Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 26
- 230000002441 reversible effect Effects 0.000 description 10
- 238000012546 transfer Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000011094 buffer selection Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 108090000623 proteins and genes Proteins 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Classifications
-
- 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
- H04N5/92—Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/78—Television signal recording using magnetic recording
- H04N5/782—Television signal recording using magnetic recording on tape
- H04N5/783—Adaptations for reproducing at a rate different from the recording rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/007—Transform coding, e.g. discrete cosine transform
-
- 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
-
- 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
- H04N9/8045—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 using predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
- H04N5/78—Television signal recording using magnetic recording
- H04N5/781—Television signal recording using magnetic recording on disks or drums
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Television Signal Processing For Recording (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
Método para decodificar imágenes de vídeo comprimidas en un dispositivo de decodificación de vídeo que incluye una fuente de acceso aleatorio de imágenes de vídeo codificadas, un decodificador de vídeo y una pluralidad de memorias intermedias de reconstrucción para almacenar las imágenes codificadas, caracterizado por las etapas de: establecer un orden de decodificación de imágenes; ordenar a dicho decodificador de vídeo que decodifique una imagen cuando esté disponible una memoria intermedia de reconstrucción.
Description
Método y dispositivo para decodificar un flujo de
datos de vídeo en modos especiales de reproducción.
En un sistema en el que se almacena un flujo de
datos de vídeo MPEG en un dispositivo de almacenamiento (por
ejemplo un disco duro HDD integrado en un equipo decodificador de
vídeo digital doméstico) que puede reproducirse y presentarse
mediante la utilización de un decodificador MPEG, el usuario espera
naturalmente la posibilidad de disfrutar de modalidades de
reproducción especial, como reproducción inversa a distintas
velocidades.
La presentación en dirección inversa de una
secuencia de vídeo codificada mediante MPEG resulta un problema de
difícil solución, teniendo en cuenta que en una estructura de flujo
de datos MPEG, una unidad de acceso a vídeo que corresponda a datos
que representan una imagen codificada, puede depender de las
imágenes transmitidas anteriormente. De hecho, las unidades de
acceso a vídeo se envían en un orden que facilita su decodificación
para ser presentadas en la dirección de avance correcta. De este
modo, basta con tres memorias intermedias de reconstrucción para
decodificar el flujo de datos en esta dirección.
Cuando se precisa la reproducción en dirección
inversa, tanto a velocidad normal como a velocidad acelerada, una
solución consiste en decodificar todas las imágenes
correspondientes a un grupo de imágenes (por lo general 12 imágenes)
antes de presentar ninguna imagen perteneciente a este grupo de
imágenes. La última imagen (por orden de presentación en la
dirección de avance de dicho grupo) puede muy bien depender de la
primera imagen del grupo, que es una imagen
intra-tipo. Tan sólo podrán presentarse algunas de
estas imágenes decodificadas, dependiendo de la velocidad de
reproducción.
Los decodificadores de vídeo habituales llevan a
cabo una decodificación de imagen por cada período de presentación
(por ejemplo, 40 ms). Esto no puede adaptarse a un modo de
reproducción especial.
El documento
EP-A2-0725399 revela un método y un
aparato para la reproducción inversa a velocidades normal, lenta y
fotograma a fotograma, utilizando tres memorias de fotogramas para
almacenar y decodificar fotogramas de vídeo en un orden fijo.
El objeto de la invención consiste en un método
para decodificar imágenes de vídeo comprimidas en un dispositivo de
decodificación de vídeo que incluye una fuente de acceso aleatorio
de imágenes de vídeo codificadas, un decodificador de vídeo y una
pluralidad de memorias intermedias de reconstrucción para el
almacenamiento de las imágenes decodificadas, caracterizado por las
siguientes fases:
- -
- establecer un orden de decodificación de imágenes en función del modo de presentación;
- -
- ordenar a dicho decodificador de vídeo de forma asíncrona para que decodifique una imagen, sujeto a la disponibilidad de una memoria intermedia de reconstrucción. Tan pronto como está disponible una memoria intermedia de reconstrucción, se decodifica la siguiente imagen de la cola. El decodificador no decodifica una imagen por cada período de presentación, sino que anticipa la decodificación de imágenes en un orden predefinido. Este es un factor importante, sobre todo en el caso de la reproducción inversa en modo especial, ya que en algunos casos una imagen dada puede depender de cuatro o más imágenes que deben ser todas ellas decodificadas previamente.
De acuerdo con la realización, el método también
incluye las siguientes fases:
- -
- bloquear el acceso a una memoria intermedia de reconstrucción que contiene una imagen a presentar hasta que se haya presentado dicha imagen;
- -
- ordenar la decodificación de una imagen adicional tan pronto como se disponga de una memoria intermedia de reconstrucción no bloqueada.
De este modo, la decodificación está controlada
por el proceso de presentación: este proceso es el que desbloquea
el acceso a memorias intermedias de reconstrucción y controla
cuándo se va a decodificar la siguiente imagen.
De acuerdo con una realización, la fase de
establecimiento de un orden de decodificación de imágenes comprende
las siguientes fases:
- -
- determinación de la lista de imágenes a presentar de entre las imágenes incluidas en dicho flujo de datos;
- -
- determinación recursiva de las cadenas de indicadores correspondientes a dichas imágenes a presentar, e inserción de dichos indicadores en dicha lista de imágenes a presentar en el orden requerido para dichos indicadores de decodificación antes de las imágenes que dependan de dichos indicadores.
De acuerdo con una realización, el flujo de datos
de vídeo comprimidos incluye imágenes por orden de decodificación,
y el método incluye también las fases de determinación, para una
imagen bidireccional, de indicadores próximo y lejano, siendo dicho
indicador próximo la imagen que aparece en el flujo de datos más
cerca de dicha imagen bidireccional, y decodificándose dicho
indicador lejano con anterioridad a dicho indicador próximo.
De acuerdo con una realización, la fase de
determinación de un orden para la decodificación de las imágenes
incluye las fases de:
- -
- cargar una información predeterminada que describe los contenidos del flujo de datos de vídeo; y
- -
- obtener dicho orden de decodificación de las imágenes a partir de dicha información en función del modo de presentación seleccionado.
De acuerdo con una realización, el método incluye
asimismo la fase de selección de una memoria intermedia de
reconstrucción de entre memorias intermedias de reconstrucción
disponibles para el almacenamiento de una imagen decodificada,
llevándose a cabo dicha selección a fin de seleccionar la memoria
intermedia de reconstrucción disponible en la cual no se ha
almacenado desde hace más tiempo imagen decodificada alguna a
presentarse.
De acuerdo con una realización, el método también
incluye las fases de asignar un contador a cada memoria intermedia
de reconstrucción, de incrementar cada contador cada vez que se
presenta una imagen, de poner a cero un contador cuando se ha
presentado una imagen de su memoria intermedia asociada y de asignar
la memoria intermedia con el valor del contador más elevado a una
imagen a codificar.
De acuerdo con la realización preferida, el
método se lleva a cabo utilizando tan sólo tres memorias
intermedias de reconstrucción, pero no está necesariamente limitado
a dicho número.
De acuerdo con una realización, el método también
incluye las fases de verificación, con anterioridad a la
decodificación de una imagen, de sí dicha imagen ya se encuentra
presente en una de las memorias intermedias de reconstrucción y de
impedir una segunda decodificación de dicha imagen en este
caso.
Otro objeto de la invención es un dispositivo de
decodificación de vídeo caracterizado por:
- -
- una fuente de flujos de datos de vídeo comprimidos de acceso aleatorio que incluye imágenes codificadas;
- -
- medios de selección de las imágenes a codificar;
- -
- una pluralidad de memorias intermedias de reconstrucción para almacenar las imágenes decodificadas;
- -
- un decodificador de vídeo para decodificar las imágenes codificadas;
- -
- unos medios de comprobación de la disponibilidad para acceso de escritura a memorias intermedias de reconstrucción y de control de dicho decodificador de vídeo para decodificar una imagen seleccionada tan pronto como se disponga de una memoria intermedia de reconstrucción, en las que la disponibilidad de una memoria intermedia de reconstrucción viene determinada por el status de presentación de una imagen contenida en a codificar intermedia de reconstrucción.
La fuente de acceso aleatorio puede ser también
un área de almacenamiento intermedio conectada a una fuente
secuencial.
El método inventivo y el dispositivo permiten la
reproducción, en dirección inversa y a diferentes velocidades, de
un flujo de datos de vídeo grabado utilizando solamente tres
memorias intermedias de reconstrucción.
Para decodificar una imagen seleccionada, el
método de la invención determina y decodifica las imágenes
indicadoras de la imagen a presentar, utilizando un proceso
recursivo.
Ventajosamente, se utiliza una información
predeterminada sobre modos de reproducción especial que describe el
flujo de datos grabado a fin de determinar las imágenes
indicadoras. Esta información sobre modos de reproducción especial
puede adoptar la forma de una lista enlazada de descriptores de
imágenes que describen su tipo y la situación de los datos
relevantes en el flujo de datos grabado.
Se utiliza un mecanismo específico de asignación
de memorias intermedias para determinar qué memoria intermedia de
reconstrucción debe utilizarse para cada imagen.
El acceso de escritura a una memoria intermedia
que contenga una imagen que vaya a presentarse queda desactivado
hasta tanto se haya presentado dicha imagen.
En la descripción de una realización no
limitativa de la invención se apreciarán otras características y
ventajas de la invención. La realización queda ilustrada mediante
las siguientes figuras:
La figura 1 es un diagrama de bloques de un
receptor/decodificador de televisión digital.
La figura 2 es un diagrama del modelo de software
de la parte de software del receptor de la figura 1 que corresponde
al funcionamiento en el modo de reproducción especial.
La figura 3 es un organigrama del proceso global
de decodificación y presentación de vídeo.
La figura 4 es un diagrama del efecto del comando
"decodificar imagen".
La figura 5 es un organigrama que describe el
proceso de decodificación de una imagen en función de su tipo (I, P
o B).
La figura 6 es un organigrama del proceso de
selección de la memoria intermedia vacía de acuerdo con la
realización.
La figura 7 es una tabla que indica la ocupación
de la memoria intermedia y la actividad de decodificación y de
presentación para una ejemplo de reproducción inversa.
El receptor/decodificador de televisión digital 1
de la figura 1 incluye un circuito de corrección de errores
adelantado 2 alimentado por un sintonizador y un convertidor
analógico/digital (no mostrado). La señal digital corregida se
suministra a un demultiplexor de flujo de datos de transporte y a un
filtro 4. Este demultiplexor y filtro 4 están conectados al bus
central de comunicaciones 11 del receptor 1. Su función consiste en
seleccionar determinados paquetes del flujo de datos de transporte
(TS) existentes en el flujo de datos recibido y enviarlos a
diferentes aplicaciones del receptor. Con dicha finalidad, se
incluyen unos filtros programados por un microprocesador 10.
A los efectos de grabación de flujos de datos
MPEG, el receptor incluye un disco duro 12 conectado al bus 11 a
través de un interfaz 13, por ejemplo un interfaz EIDE. Una memoria
5 incluye diferentes memorias intermedias y áreas utilizadas para
almacenar y recuperar información procedente del disco duro.
La memoria 5 incluye memorias intermedias
circulares 15 a 23. Se utiliza un sistema FIFO de escritura 15 para
almacenar por orden de llegada desde el demultiplexor y filtro 4
los paquetes TS para su grabación en el disco duro 12. Se utiliza
un sistema FIFO de lectura para almacenar los paquetes TS leídos en
el disco duro. Los sistemas FIFO 15 y 16 se utilizan para grabar o
leer un sub-flujo del flujo de datos recibido
independientemente de la naturaleza del contenido de los paquetes
TS. Para la grabación, todos los paquete TS que se corresponden con
los criterios programados se filtran y se escriben en la FIFO de
escritura 15 antes de su transferencia al disco duro 12. Este modo,
se denomina modo de grabación de nivel de flujo de datos de
transporte, y será el modo utilizado en el resto de esta
descripción.
Para mayor información, cabe señalar que la
grabación también puede conseguirse a nivel de flujos de datos
elementales por paquetes (PES). Para este fin se utilizan las FIFOS
18 a 23. La memoria 5 también tiene una memoria intermedia para
modo de reproducción especial 17. Esta memoria intermedia es
utilizada por el analizador de flujos de datos 3 y por el
microprocesador durante la grabación para generar información en el
modo de reproducción especial que a su vez se graba en el disco
duro. Esta memoria intermedia también se utiliza durante la
reproducción para almacenar la información del modo de reproducción
especial leída desde el disco duro.
Pueden encontrarse más detalles de estos dos
modos en la ya mencionada solicitud de patente europea.
Para decodificar un flujo de datos, el receptor
1, también incluye los respectivos decodificadores de audio y vídeo
8 y 9 conectados a la memoria intermedia 11 bien a través de un
demultiplexor de flujo de datos de transporte y un analizador PES
6, o directamente a través del analizador PES 6. Dependiendo del
modo de grabación, la capa TS puede haber sido previamente eliminada
o no. La referencia 14 indica los circuitos de procesamiento de
vídeo requerida para generar señales de vídeo analógicas
susceptibles de ser presentadas.
Los datos comprimidos destinados al decodificador
de vídeo 9 se almacenan en una memoria intermedia de bit de entrada
25 a partir de la cual el decodificador 9 los lee en la medida
adecuada. Las imágenes reconstruidas se almacenan en una memoria de
reconstrucción 26 a la que accede el decodificador tanto para
lectura como para escritura. La memoria de reconstrucción de
acuerdo con la invención cuenta con tres memorias intermedias (A,
B, C) correspondiéndose cada una de ellas con una imagen
decodificada.
El receptor 1 también incluye una memoria no
volátil re-programable 24, que contiene el sistema
operativo del receptor, los controladores de dispositivos y otros
módulos de software. El microprocesador ejecuta el software del
receptor.
A los efectos de la presente descripción, la
información del modo de reproducción especial contiene para cada
unidad de acceso de vídeo almacenada en el disco y por el orden de
grabación el tipo de imagen (I, P o B) y el emplazamiento de la
correspondiente imagen, grupo de imágenes e información de
secuencia en el disco duro necesarios para decodificar una imagen.
La información del modo de reproducción especial está segmentada en
tres diferentes tipos de tablas: una tabla de índice temporal, una
tabla de descripción de unidades de vídeo y diversas unidades de
descripción de vídeo (VDUs), describiendo cada VDU el contenido de
un número determinado de grupos sucesivos de imágenes.
Un ejemplo de dicha información en modo de
reproducción especial se describe en la solicitud de patente
europea titulada "Método y dispositivo para decodificar un flujo
de video digital en un sistema de video digital mediante utilización
de inserción de cabecera ficticia" presentada a nombre de
THOMSON multimedia el 5 de abril de 2000.
La figura 2 muestra un diagrama del modelo del
software del receptor 1 de acuerdo con la presente realización.
Este incluye los siguientes elementos:
- Este módulo de software está a cargo del control global del proceso de decodificación. En función del modo de reproducción especial (hacia atrás / hacia delante, lento / rápido), este módulo especifica qué imagen debe transmitirse, decodificarse o presentarse. Por ejemplo, si el modo de reproducción especial seleccionado consiste en la reproducción hacia atrás a X veces la velocidad normal, este módulo determina, utilizando la tabla de índice temporal y las VDUs, qué imagen debe presentarse, el tipo de esta imagen (I, B, P) y, en el caso de una imagen de los tipos P o B, el resto de imágenes (indicadores) a decodificar de antemano. Este proceso se ejecuta de manera recursiva ya que la decodificación de indicadores puede requerir a su vez otros indicadores.
- El control global del modo de reproducción especial solicita la información del modo de reproducción especial al gestor de acceso a la información del modo de reproducción especial (véase más adelante).
- En función del algoritmo de decodificación recursiva, el control global del modo de reproducción especial ordena al gestor de acceso a los flujos de datos (véase más adelante) que transfiera a la memoria intermedia de entrada del decodificador de vídeo MPEG unidades de acceso a vídeo específicas.
- El módulo de control global del modo de reproducción especial mantiene una imagen virtual de la ocupación de la memoria intermedia de reproducción en cualquier etapa.
- Para decodificar una imagen en una determinada de las tres memorias intermedias de reproducción, ejecuta el proceso de selección de la memoria intermedia de reproducción descrito anteriormente en relación con los organigramas de las figuras 5 y 6 y envía una notificación al gestor de decodificación antes de transferir la imagen comprimida.
- El módulo de control global del modo de reproducción especial necesita información sobre el modo de reproducción especial relativa al flujo de datos grabado. Dicha información se almacena en la unidad de disco duro. El gestor de acceso a la información del modo de reproducción especial está a cargo de recopilar la información del disco duro y suministrarla al control global del modo de reproducción especial.
- Cada imagen individual a decodificar (tanto para su posterior presentación o no) debe transmitirse al decodificador de vídeo 9. Toda la información necesaria para acceder al contenido comprimido se suministra en las tablas de información del modo de reproducción especial. El gestor de acceso al flujo de datos se encarga de la transferencia de los datos de la imagen identificados por el control global del modo de reproducción especial desde la memoria 5 al decodificador de vídeo, transfiriendo sólo la información relevante de toda la leída en el disco duro por el controlador de transferencia de datos. El gestor de acceso al flujo de datos enviará una notificación al control global del modo de reproducción especial por cada imagen que deba decodificarse.
- El controlador de transferencia de datos se encarga de clasificar los contenidos de vídeo que han de suministrarse a la memoria 5 para su procesamiento por parte del gestor de acceso al flujo de datos. Normalmente, el controlador de transferencia de datos cargará uno o varios bloques desde el disco duro que contengan los datos relevantes y otros datos. En el caso en el que se inserta la información relativa al modo de reproducción especial junto con el flujo de datos, el controlador de transferencia de datos también se encarga de extraer la información sobre el modo de reproducción especial y de almacenarla en una memoria intermedia 17.
- El decodificador de vídeo notifica al gestor de decodificación de vídeo cada vez que recibe e identifica una nueva unidad de acceso al vídeo. El gestor de decodificación de vídeo ha recibido previamente a través de una cola desde el control general un comando completo ordenando y especificando la decodificación y/o la presentación de dicha imagen específica. En función de este comando, el gestor de decodificación de vídeo programa la decodificación de la imagen recién detectada y sí la imagen debe presentarse notifica al gestor de presentación a través de una cola que dicha imagen debe presentarse y la forma en que debe presentarse (campo superior o inferior primero, hacia delante o hacia atrás).
- Un descriptor de software de cada memoria intermedia de reconstrucción refleja el estado de cada memoria intermedia. Estos descriptores están compartidos por el gestor de decodificación de vídeo y por el gestor de presentación. Antes de programar una decodificación, el gestor de decodificación de vídeo comprueba si se encuentra disponible la memoria intermedia de reconstrucción que debe recibir esta imagen. De lo contrario, el gestor de decodificación de vídeo espera a que el gestor de presentación libere la memoria intermedia. A continuación, podrá programarse la decodificación en esta memoria intermedia y podrá bloquearse nuevamente el acceso a la memoria intermedia.
- Sí debe presentarse una imagen una vez decodificada, el gestor de decodificación de vídeo lo notificará al gestor de presentación. El gestor de presentación también desbloqueará memorias intermedias de reconstrucción bloqueadas, liberándolas para la decodificación de imágenes adicionales una vez que ya no son necesarias para presentar ninguna más.
- El decodificador de vídeo 9 puede suministrar un API (interfaz programable de aplicaciones) que permite ciertos tipos de controles y operaciones relativas a la decodificación y eventual presentación de imágenes individuales. Especialmente puede ordenarse al decodificador que decodifique una imagen individual y que, posteriormente, la presente en un momento dado y para un número determinado de intervalos de fotograma o que no la presente en absoluto.
La presentación de la imagen es un proceso
síncrono. Para un sistema de 50 Hz, el gestor de presentación
comprueba cada 40 ms qué imagen debe presentarse. Dicho de otro
modo, identifica la memoria intermedia de reconstrucción que
contiene la imagen a presentar.
Si la cola de notificación del gestor de
presentación, llenada por el gestor de decodificación de vídeo está
vacía, no habrá ninguna imagen disponible para su presentación. Se
repetirá la última imagen presentada hasta que deba presentarse una
nueva imagen.
Normalmente, el proceso de presentación es el
proceso más lento de la cadena. El resto de los procesos seguirán
el ritmo impuesto por el de presentación.
Dado que el proceso de decodificación es
asíncrono y puede ser muy rápido, cuando se decodifica una imagen a
presentar se bloquea su memoria intermedia de reconstrucción para
evitar que sea sobrescrita por imágenes posteriores antes de
haberla presentado realmente. Solamente el gestor de presentación
está autorizado a desbloquear una memoria intermedia cuando se
presenta la imagen y cuando se puede iniciar en la misma memoria
intermedia la reconstrucción de una nueva imagen. El gestor de
decodificación de vídeo espera a que el gestor de presentación
visualice las imágenes y libere memorias intermedias para
decodificar nuevas imágenes a solicitud del control global del modo
de reproducción especial.
La generación de solicitudes de decodificación
por parte del control global del modo de reproducción especial y su
suministro al decodificador por parte del gestor de acceso a flujos
de datos también suelen ser más rápidos que el proceso de
decodificación.
Dado que no sirve de nada ordenar la
decodificación de nuevas imágenes si la memoria intermedia de bits
del decodificador de vídeo está llena y no se le pueden suministrar
más datos comprimidos, el control global del modo de reproducción
especial y el suministro de imágenes codificadas por parte del
gestor de acceso a flujos de datos están sincronizados. El control
global del modo de reproducción especial solicita la transmisión de
una nueva imagen cuando es necesario y espera a que se complete la
transmisión antes de efectuar otra solicitud. El gestor de acceso a
flujos de datos notifica que se ha completado la transmisión al
proceso de control global del modo de reproducción especial.
El gestor de acceso a flujos de datos y el
control global esperan a que el decodificador de vídeo recupere
datos de la memoria intermedia de bits y el decodificador de vídeo,
bajo el control del gestor de decodificación de vídeo, espera a que
el gestor de presentación libere memorias intermedias. Finalmente,
todo el sistema seguirá el ritmo de presentación.
Para poder presentar en la pantalla, una imagen
MPEG debe haber sido previamente decodificada. El proceso de vídeo
puede dividirse en una serie de operaciones sucesivas. La figura 3
muestra un resumen del proceso general de vídeo para una imagen
dada. Varios de estos procesos pueden ejecutarse en paralelo en
diferentes fases de ejecución. Una primera operación consiste en la
identificación de la siguiente imagen a presentar. Por supuesto,
esto depende del tipo de modo de reproducción especial. Una vez que
se ha determinado dicha imagen, deberá decodificarse. Esta
operación puede implicar la decodificación recursiva de otras
imágenes. También depende de la disponibilidad de una o más
memorias intermedias de reconstrucción libres. La última operación
consiste en la presentación de la imagen decodificada.
La información del modo de reproducción especial,
de acuerdo con la presente realización, es una estructura de datos
que incluye elementos vinculados. Está compuesta por descriptores
de imagen vinculados entre sí de acuerdo con su orden en el flujo
de datos. Se recuerda al lector que el flujo, tal como se recibe (y
en este caso tal como se graba), contiene imágenes por orden de
decodificación, no por orden de presentación. Cada descriptor de
imagen facilita detalles acerca de una imagen del flujo de datos
codificados MPEG, así como suficiente información para localizar el
material comprimido de la imagen en la unidad de almacenamiento.
Cada imagen del flujo de datos se identifica mediante una ID de
imagen específica. En las figuras 3 y 4, dicha ID de imagen es
"N" y una función "Next(N)" devuelve una ID de
imagen. El procesamiento de la función Next(N) se basa en un
análisis de la información del modo de reproducción especial,
teniendo en cuenta el tipo de modo de reproducción especial a
presentar.
En el modo de reproducción normal, Next(N)
devuelve la ID de la siguiente imagen a presentar de acuerdo con el
orden normal de presentación (es decir, en relación con la
referencia temporal). En el modo de reproducción inversa,
Next(N) devuelve la ID de la imagen anterior de acuerdo con
el orden normal de presentación.
Para el funcionamiento a velocidad alta
(reproducción normal o inversa) deben saltarse imágenes, por lo que
Next(N) devuelve IDs de imágenes no consecutivas.
La función Next(N) es realizada por el
módulo de control global del modo de reproducción especial que,
conociendo el valor de N, utiliza las tablas del modo de
reproducción especial definidas en la solicitud de patente ya
mencionada para acceder a todos los datos necesarios para la
decodificación de una imagen.
Los modos especiales de reproducción a cámara
lenta (reproducción normal o inversa) están bajo el control del
gestor de presentación, ya que este modo de reproducción especial
simplemente implica una frecuencia de presentación inferior a una
imagen cada 40 ms.
La figura 4 muestra el principio del comando
DecodePicture (Decodificar imagen). El estado actual de memorias
intermedias de reconstrucción se representa a la izquierda del
diagrama. Cada una de memorias intermedias contiene ciertas
imágenes (X, Y, Z). El proceso DecodePicture garantiza que, sí se
aplica a una imagen N, uno de memorias intermedias contendrá
finalmente esta imagen solicitada, independientemente del contenido
de las otras dos memorias intermedias.
Como ya se ha indicado, una imagen MPEG puede
depender de otras imágenes y su decodificación puede exigir la
disponibilidad de imágenes ya reconstruidas. Una cadena de datos
codificados MPEG siempre contiene un número de puntos de entrada en
forma de intra-imágenes. Ninguna de las imágenes
posteriores a dicho punto de entrada puede depender de imágenes
anteriores al punto de entrada. La norma DVB especifica que estos
puntos de entrada deben tener lugar al menos cada 0,5 s. Los grupos
abiertos de imágenes constituyen un caso particular.
El comando DecodePicture se lleva a cabo de forma
recursiva como se muestra en el organigrama de la figura 5. Si la
decodificación de una imagen requiere la presencia de una o dos
imágenes previamente decodificadas, estas últimas imágenes se
decodificarán en primer lugar.
Si la imagen objetivo (PicID) no se encuentra aún
en memorias intermedias de reconstrucción necesitará ser
decodificada. Si la imagen identificada por PicID es del tipo
"P" o "B", su decodificación puede exigir la presencia de
indicadores anteriores y posteriores. Esta información está
disponible en las tablas de modos de reproducción espe-
cial.
cial.
La regla que facilita los indicadores de los
cuales depende la imagen a decodificar es muy sencilla: desplazarse
por la cadena de datos hacia atrás (es decir, hacia las unidades de
acceso a vídeo previamente grabadas); la primera imagen de los
tipos "P" o "I" encontrada es el indicador correspondiente
a la imagen actual. Esta imagen puede encontrarse utilizando la
información del modo de reproducción especial. Este indicador se
denomina "NearestID (ID más proximo)" en la figura
5.
Si la imagen identificada por PicID es una imagen
del tipo "P", NearestID es un indicador posterior en el
sentido de que la imagen NearestID se encuentra situada, en la
escala temporal y en el orden de presentación, con anterioridad a
la imagen identificada por PicID.
Si la imagen identificada por PicID es una imagen
del tipo "B", NearestID será un indicador anterior. De este
modo el indicador posterior se encuentra buscando más hacia atrás
la siguiente imagen de los tipos "I" o "P". Este indicador
posterior se denomina "FarthestID (ID más lejano)" en la
figura 5.
Para decodificar una imagen, si los indicadores
reconstruidos no existen en memorias intermedias de reconstrucción,
deberán construirse. En este caso el comando DecodePicture se
repite de manera recursiva para estas imá-
genes.
genes.
Antes de reconstruir una imagen B, puede ser
necesario decodificar hasta dos indicadores, a menos que ya se
hubiesen decodificado y se encontrasen presentes en la memoria
intermedia de reconstrucción. Como puede verse en la figura 5,
FarthestID se decodifica en primer lugar, seguido por NearestID.
Dado que NearestID puede también depender de FarthestID, esta
última se decodifica en primer lugar: de este modo se utiliza el
proceso y se evita la doble decodificación de la imagen
correspondiente a FarthestID. Por ejemplo, si se ha indicado una
imagen B a partir de dos imágenes P, la segunda imagen P en
términos temporales dependerá de la primera imagen P.
Una vez se ha construido FarthestID en una
memoria intermedia de reconstrucción, la memoria intermedia se
bloquea para impedir que el proceso de reconstrucción de NearestID
sobre-escriba FarthestID, que se conserva como un
resultado provisional.
Independientemente del modo de reproducción
seleccionado, sólo se utilizan tres memorias intermedias de
reconstrucción, como se explicará a continuación.
La decodificación de una
intra-imagen sólo requiere una memoria intermedia
libre, ya que no es necesario ningún indicador. La decodificación de
una imagen predictiva requiere un indicador: pueden utilizarse una
o dos memorias intermedias, en función de sí el indicador
decodificado de la imagen predictiva ya se encuentra presente en
otra memoria intermedia o no, es decir sí debe llevarse a cabo o no
una decodificación recursiva.
De las tres memorias intermedias, una de ellas
contiene la imagen que se está presentando actualmente. De este
modo, están disponibles dos memorias intermedias para decodificar
nuevas imágenes - suponiendo que no contengan una imagen que vaya a
presentarse con posterioridad a la imagen actual - y de este modo
podrá decodificarse cualquier imagen I o P sin afectar negativamente
a la presentación de la imagen actual.
Las imágenes B, por otra parte, requieren dos
indicadores. En grupos cerrados de imágenes, uno de los dos
indicadores (Indicador Más Próximo) dependerá del otro (Indicador
Más Lejano). Al decodificar en primer lugar el indicador más lejano,
seguido del indicador más próximo, sólo son necesarias dos memorias
intermedias para decodificar ambos indicadores. En grupos abiertos
de imágenes, ambos indicadores pueden ser independientes, pero
teniendo en cuenta que estos indicadores incluyen una imagen I
procedente del grupo actual de imágenes y una imagen P (o I)
procedente del grupo de imágenes anterior, sólo serán necesarios
dos memorias intermedias siempre que la imagen P o I del grupo de
imágenes anterior se haya decodificado en primer lugar.
Cuando la imagen actualmente presentada no es uno
de los indicadores de la siguiente imagen a presentar, asumiendo
que dicha siguiente imagen sea del tipo B, deberá reconstruirse en
la memoria intermedia que contiene la imagen actualmente
presentada. En los decodificadores actualmente disponibles, suele
ser posible comenzar a sobre-escribir una imagen
presentada antes de que se haya presentado en su totalidad. La
sobre-escritura podría comenzar, por ejemplo, 20 ms
después del inicio de la presentación. Si una imagen se presenta
durante varios períodos de fotograma, la
sobre-escritura por supuesto podrá efectuarse
durante el período del último fotograma.
De este modo se demuestra que cuando se
selecciona adecuadamente el orden de decodificación, sólo son
necesarios tres memorias intermedias de reconstrucción.
Cuando se han decodificado todos los indicadores
necesarios, debe seleccionarse una memoria intermedia de
reconstrucción disponible para recibir la nueva imagen a
decodificar y presentarse. En algunos casos puede no haber opciones
como en el caso de la decodificación de una imagen B: deben
utilizarse las tres memorias intermedias, una para el indicador
posterior, una para el indicador anterior y una para la propia
imagen B.
En el resto de los casos, debe seleccionarse una
memoria intermedia de las dos o tres disponibles.
La asignación de las tres memorias intermedias de
reconstrucción entre la presentación y la decodificación es
fundamental para el rendimiento del sistema en general. De hecho,
cuando no se selecciona la memoria intermedia adecuada, puede
introducirse un retardo adicional para decodificar una imagen dada.
Dependiendo de la potencia de procesamiento del decodificador de
vídeo, puede suceder que una imagen no se decodifique por completo
antes de presentarse.
Los inventores han determinado que a fin de
evitar demoras en la decodificación, la memoria intermedia que debe
seleccionarse para la imagen que se va a presentar es la memoria
intermedia libre que ha sido liberada por el proceso de
presentación hace más tiempo.
Para llevar a cabo este método de asignación, se
asocia un contador a cada elemento modelo de memoria intermedia.
Cuando se reconstruye en una memoria intermedia una imagen que se
va a presentar, el contador de esta memoria intermedia se pone a
cero y se incrementan los contadores de las otras memorias
intermedias. De acuerdo con la presente realización, la memoria
intermedia asignada a una nueva imagen es la memoria intermedia con
el mayor valor de contador.
La figura 6 es un organigrama del proceso de
asignación de memorias intermedias. Consiste en un recorrido
cíclico a través de todas las memorias intermedias, descartando
aquellas que estén bloqueadas porque contienen un indicador, y
seleccionando entre las desbloqueadas (en su caso) aquella cuyo
valor de contador es mayor.
Como se ha descrito anteriormente, el problema de
reordenación de la imagen y de asignación de memoria intermedia se
resuelve utilizando un modelo virtual como las siguientes
estructuras de datos, una para cada una de las tres memorias
intermedias de reconstrucción:
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
A continuación se describirá un ejemplo del
proceso de decodificación en modo de reproducción inversa, haciendo
referencia a la figura 7. Este ejemplo se refiere al caso de los
grupos de imágenes abiertos. Consideremos que el flujo de datos de
vídeo tiene la siguiente estructura:
...P'11-B'9-B'10-I2-B0-B1-P5-B3-B4-P8-B6-B7-P11-B9-B10-I''2-B''00-B''1...
donde I, P y B, respectivamente,
designan intra-imágenes, imágenes predictivas e
imágenes bidireccionales, designando el número asociado a cada letra
el orden normal de presentación en el grupo de imágenes. El eje de
tiempos discurre de izquierda a derecha, es decir que el grupo
"principal" de imágenes se presenta normalmente el
primero.
primero.
En la tabla 1 se muestran los indicadores de cada
imagen.
\vskip1.000000\baselineskip
La figura 7 indica el contenido de cada uno de
memorias intermedias A, B y C. La columna "Período de
Fotograma" cuenta los períodos de presentación de 40 ms
(independientemente de su grosor en la figura). El período "0"
se corresponde con el período de presentación de P11. La columna
"Imagen Presentada" indica qué imagen se ha presentado durante
el período de fotograma asociado. La "decodificación por período
de fotograma" indica el número de imágenes decodificadas a lo
largo de un período de 40 ms determinado. Las zonas grises indican
cuándo se presenta el contenido de una memoria intermedia
determinada.
En aras de la simplicidad, los períodos de
fotograma, los períodos de decodificación y los períodos de
ocupación de la memoria intermedia están alineados. Esto no es
necesariamente así en realidad. En primer lugar, el tiempo
necesario para decodificar una imagen depende de la imagen. En
segundo lugar, una imagen puede comenzar a presentarse antes de
estar completamente decodificada. Por ejemplo, si se indica que una
imagen B''1 está decodificada cuando está presentándose al mismo
tiempo, esto quiere decir que la presentación se inicia, como
pronto, 20 ms después de la decodificación de la imagen.
Supongamos que las imágenes P11 a B0 deben
presentarse por ese orden.
La figura 7 muestra todas las imágenes por orden
de decodificación (sí han de presentarse o no) lo cual se determina
mediante el proceso recursivo descrito anteriormente.
P11 depende de P8, que a su vez depende de P5,
que a su vez depende de I2. En consecuencia, I2 se decodifica en la
memoria intermedia A durante el período -4, P5 durante el período
-3, P8 también durante el período -3. Durante el período -4, se
presenta la imagen B''3, mientras que durante el período -3 se
presenta la imagen I''2. Como puede verse, la decodificación de una
imagen está limitada por la disponibilidad de memorias intermedias
no bloqueadas, y las imágenes se decodifican lo antes posible, en
el orden en que se necesitan.
Dado que en este ejemplo utilizamos grupos de
imágenes abiertos, P11 no se decodifica para ser presentado en este
punto, sino para servir como indicador de las imágenes B''1 y B''0.
El otro indicador de estas dos imágenes es I''2 que en ese momento
ya se encuentra presente en la memoria intermedia C. B''1 y B''0
pueden de este modo decodificarse y presentarse inmediatamente (es
decir, 20 ms después del inicio de la decodificación).
A continuación se presenta P11. Dado que ya se
encuentra presente en la memoria intermedia B, no debe llevarse a
cabo una nueva decodificación de esta imagen, por lo que puede
presentarse de inmediato.
Al término del período -1, la memoria intermedia
C pasa a estar disponible porque B''0 se ha decodificado y sus
indicadores, almacenados en memorias intermedias B y C, carecen de
utilidad. De este modo, se decodifica I2, como primer paso para la
decodificación de B10, dependiendo de I2, P5, P8 y P11. La
decodificación del resto de imágenes sigue un patrón similar.
Claims (10)
1. Método para decodificar imágenes de vídeo
comprimidas en un dispositivo de decodificación de vídeo que
incluye una fuente de acceso aleatorio de imágenes de vídeo
codificadas, un decodificador de vídeo y una pluralidad de memorias
intermedias de reconstrucción para almacenar las imágenes
codificadas, caracterizado por las etapas de:
establecer un orden de decodificación de
imágenes;
ordenar a dicho decodificador de vídeo que
decodifique una imagen cuando esté disponible una memoria
intermedia de reconstrucción.
2. Método de acuerdo con la reivindicación 1, que
incluye las etapas de:
bloquear el acceso a una memoria intermedia de
reconstrucción que contenga una imagen a presentar hasta la
presentación de esta imagen;
ordenar la decodificación de una imagen nueva
cuando se disponga de una memoria intermedia de reconstrucción no
bloqueada.
3. Método de acuerdo con una de las
reivindicaciones 1 a 2, en el que dicha fase de establecimiento de
un orden para la decodificación de las imágenes incluye las fases
de:
determinar una relación de las imágenes a
presentar de entre las imágenes de dicho flujo de datos;
determinar de manera recursiva cadenas de
indicadores para dichas imágenes a presentar, e insertar dichos
indicadores en dicha relación de imágenes a presentar en el orden
necesario para la decodificación de los indicadores antes de las
imágenes, dependiendo de dichos indicadores.
4. Método de acuerdo con una de las
reivindicaciones 1 a 3, en el que dicho flujo de datos de vídeo
comprimido incluye imágenes por orden de decodificación, y que
adicionalmente incluye las fases de determinación para una imagen
bidireccional de un indicador más próximo y un indicador más lejano,
donde dicho indicador más próximo es la imagen que aparece en el
flujo de datos más cercana a dicha imagen bidireccional,
decodificándose dicho indicador más lejano antes de dicho indicador
más próximo.
5. Método de acuerdo con una de las
reivindicaciones 1 a 4, en el que dicha fase de determinación del
orden de decodificación de las imágenes incluye las fases de:
cargar información predeterminada descriptiva del
contenido del flujo de datos de vídeo; y
obtener de dicho orden de codificación de
imágenes a partir de dicha información en función de un modo de
presentación seleccionado.
6. Método de acuerdo con una de las
reivindicaciones 1 a 5 que adicionalmente incluye la fase de
selección de una memoria intermedia de reconstrucción de entre
memorias intermedias de reconstrucción disponibles para el
almacenamiento de una imagen decodificada, llevándose a cabo dicha
selección para seleccionar la memoria intermedia de reconstrucción
disponible en la cual no se ha almacenado desde hace más tiempo
imagen decodificada alguna para su presentación.
7. Método de acuerdo con la reivindicación 6, que
incluye adicionalmente la fase de asignar un contador a cada
memoria intermedia de reconstrucción, de incrementar cada contador
cada vez que se presenta una imagen, de poner a cero el contador
cuando se presenta la imagen de su memoria intermedia asociada y de
asignar la memoria intermedia con el valor del contador mayor a una
imagen a decodificar.
8. Método de acuerdo con una de las
reivindicaciones 1 a 7, llevado a cabo utilizando solamente tres
memorias intermedias de reconstrucción.
9. Método de acuerdo con una de las
reivindicaciones 1 a 8, que también incluye las fases de
verificación, con anterioridad a la decodificación de una imagen,
de sí dicha imagen ya se encuentra presente en una de las memorias
intermedias de reconstrucción y, en ese caso, evitar una segunda
decodificación de dicha imagen.
10. Dispositivo de decodificación de vídeo
caracterizado por
una fuente de acceso aleatorio (12, 13) de un
flujo de datos de vídeo comprimidos que incluye imágenes
codificadas;
unos medios (10) para la selección de las
imágenes a decodificar;
una pluralidad de memorias intermedias de
reconstrucción (A, B, C) para almacenar las imágenes
decodificadas;
un decodificador de vídeo (9) para decodificar
las imágenes codificadas;
unos medios (10) para supervisar la
disponibilidad de acceso de escritura a memorias intermedias de
reconstrucción y para controlar dicho decodificador de vídeo a fin
de decodificar una imagen seleccionada cuando se dispone de una
memoria intermedia de reconstrucción, en los que la disponibilidad
de una memoria intermedia de reconstrucción viene determinada por
el status de la presentación de la imagen contenida en a codificar
intermedia de reconstrucción.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP00401381A EP1156674A1 (en) | 2000-05-19 | 2000-05-19 | Method and device for decoding a video data stream in special reproduction modes |
EP00401381 | 2000-05-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2234729T3 true ES2234729T3 (es) | 2005-07-01 |
Family
ID=8173691
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES01110699T Expired - Lifetime ES2234729T3 (es) | 2000-05-19 | 2001-05-02 | Metodo y dispositivo para decodificar un flujo de datos de video en modos especiales de reproduccion. |
Country Status (16)
Country | Link |
---|---|
US (1) | US7130526B2 (es) |
EP (2) | EP1156674A1 (es) |
JP (1) | JP5106722B2 (es) |
KR (1) | KR100788869B1 (es) |
CN (1) | CN1226873C (es) |
AT (1) | ATE286643T1 (es) |
AU (1) | AU777957B2 (es) |
BR (1) | BR0102043A (es) |
DE (1) | DE60108199T2 (es) |
ES (1) | ES2234729T3 (es) |
HK (1) | HK1038861B (es) |
HU (1) | HUP0101843A3 (es) |
MX (1) | MXPA01004843A (es) |
MY (1) | MY127087A (es) |
TW (1) | TW530494B (es) |
ZA (1) | ZA200103672B (es) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8559797B2 (en) | 2000-10-10 | 2013-10-15 | Broadcom Corporation | System and method for personal video recording |
US7177522B2 (en) * | 2000-10-10 | 2007-02-13 | Broadcom Corporation | System and method for personal video recording |
US6771274B2 (en) | 2002-03-27 | 2004-08-03 | Sony Corporation | Graphics and video integration with alpha and video blending |
US6847780B2 (en) | 2002-03-28 | 2005-01-25 | Sony Corporation | Trick-mode stream creation for personal video recording functions |
DK2278816T3 (da) | 2002-07-11 | 2013-05-21 | Panasonic Corp | Post-afkoder-buffer-styring til en H.264-SVC MPEG-bitstrøm |
AU2003256624A1 (en) * | 2002-07-26 | 2004-02-16 | Prediwave Corporation | On-the-fly mpeg trick mode processing |
US7577204B2 (en) * | 2002-11-15 | 2009-08-18 | Broadcom Corporation | Hits stream rewind |
US20040258160A1 (en) * | 2003-06-20 | 2004-12-23 | Sandeep Bhatia | System, method, and apparatus for decoupling video decoder and display engine |
JP2005017896A (ja) * | 2003-06-27 | 2005-01-20 | Canon Inc | 光走査装置及びそれを用いた画像形成装置 |
US8077778B2 (en) * | 2003-10-31 | 2011-12-13 | Broadcom Corporation | Video display and decode utilizing off-chip processor and DRAM |
KR100716970B1 (ko) * | 2003-12-08 | 2007-05-10 | 삼성전자주식회사 | 디지털 저장 미디어의 트릭 재생 방법 및 그에 적합한디지털 저장 미디어 구동기 |
US20050169376A1 (en) * | 2004-01-30 | 2005-08-04 | Pai Ramadas L. | Motion vector address computer error detection |
JP3919115B2 (ja) * | 2004-08-18 | 2007-05-23 | ソニー株式会社 | 復号化装置、復号化方法、復号化プログラム及び復号化プログラムが記録された記録媒体、並びにリバース再生装置、リバース再生方法、リバース再生プログラム及びリバース再生プログラムが記録された記録媒体 |
JP4780617B2 (ja) * | 2004-09-01 | 2011-09-28 | パナソニック株式会社 | 画像再生方法及び画像再生装置 |
EP1633128A1 (en) * | 2004-09-02 | 2006-03-08 | Deutsche Thomson-Brandt Gmbh | Method and apparatus for decoding encoded groups of pictures of a video sequence and presenting said video sequence and said groups of pictures in temporally backward direction |
TW200611256A (en) * | 2004-09-29 | 2006-04-01 | Quanta Storage Inc | Disk device with multimedia video interface |
US7885338B1 (en) * | 2005-04-25 | 2011-02-08 | Apple Inc. | Decoding interdependent frames of a video for display |
KR100765787B1 (ko) * | 2006-06-15 | 2007-10-12 | 삼성전자주식회사 | 압축 부호화된 영상 데이터 스트림의 재생 방법 및 그 장치 |
KR100841317B1 (ko) * | 2006-07-14 | 2008-06-26 | 엘지전자 주식회사 | 텔레비젼의 시스템 구동과 관련된 소프트웨어를 송수신하는 방법 및 그 장치 |
JP4902854B2 (ja) * | 2006-09-12 | 2012-03-21 | パナソニック株式会社 | 動画像復号化装置、動画像復号化方法、動画像復号化プログラム、動画像符号化装置、動画像符号化方法、動画像符号化プログラム、及び動画像符号化復号化装置 |
US8411734B2 (en) * | 2007-02-06 | 2013-04-02 | Microsoft Corporation | Scalable multi-thread video decoding |
US8265144B2 (en) * | 2007-06-30 | 2012-09-11 | Microsoft Corporation | Innovations in video decoder implementations |
US9648325B2 (en) | 2007-06-30 | 2017-05-09 | Microsoft Technology Licensing, Llc | Video decoding implementations for a graphics processing unit |
US8885729B2 (en) | 2010-12-13 | 2014-11-11 | Microsoft Corporation | Low-latency video decoding |
CN102572295B (zh) * | 2010-12-21 | 2014-04-02 | 新奥特(北京)视频技术有限公司 | 一种特效图调度方法 |
US9706214B2 (en) | 2010-12-24 | 2017-07-11 | Microsoft Technology Licensing, Llc | Image and video decoding implementations |
TWI606722B (zh) | 2011-06-30 | 2017-11-21 | 微軟技術授權有限責任公司 | 用於減少視訊編碼及解碼中之延遲的方法、系統及電腦可讀取媒體 |
US8731067B2 (en) | 2011-08-31 | 2014-05-20 | Microsoft Corporation | Memory management for video decoding |
US9819949B2 (en) | 2011-12-16 | 2017-11-14 | Microsoft Technology Licensing, Llc | Hardware-accelerated decoding of scalable video bitstreams |
EP2635025B1 (en) * | 2012-02-29 | 2015-04-08 | Advanced Digital Broadcast S.A. | Video processing method and video appliance implementing the method |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0795536A (ja) * | 1993-05-31 | 1995-04-07 | Toshiba Corp | 動画像逆再生装置及び方法 |
JP3128393B2 (ja) * | 1993-05-31 | 2001-01-29 | 三洋電機株式会社 | 圧縮動画像再生装置 |
US5892882A (en) * | 1994-03-23 | 1999-04-06 | Pioneer Electronic Corporation | Moving picture decoding device having a compressed picture data memory |
JP3607315B2 (ja) * | 1994-03-23 | 2005-01-05 | パイオニア株式会社 | 動画像復号化装置 |
JP3250588B2 (ja) * | 1994-07-12 | 2002-01-28 | ソニー株式会社 | データ再生装置 |
US6009231A (en) * | 1994-09-05 | 1999-12-28 | Sony Corporation | Reproduction of information using a ring buffer with read and write pointers separated from each other by substantially half of the total ring buffer capacity |
JPH08130715A (ja) * | 1994-10-31 | 1996-05-21 | Sony Corp | 画像再生装置 |
JPH08214265A (ja) * | 1995-01-31 | 1996-08-20 | Sony Corp | 符号化データの再生方法および再生装置 |
JP3491365B2 (ja) * | 1995-01-31 | 2004-01-26 | ソニー株式会社 | 符号化データ復号方法および復号装置 |
JP3484834B2 (ja) * | 1995-07-28 | 2004-01-06 | ソニー株式会社 | データ符号化/復号化方法および装置 |
GB9703470D0 (en) * | 1997-02-19 | 1997-04-09 | Thomson Consumer Electronics | Trick play reproduction of MPEG encoded signals |
US6453114B2 (en) * | 1997-02-18 | 2002-09-17 | Thomson Licensing Sa | Random picture decoding |
JP3860319B2 (ja) * | 1998-01-09 | 2006-12-20 | 株式会社東芝 | 画像再生方法及び装置 |
JP3132479B2 (ja) * | 1998-08-28 | 2001-02-05 | 日本電気株式会社 | 圧縮ストリーム復号化方法および圧縮ストリーム復号化装置 |
JP3130876B2 (ja) * | 1998-09-08 | 2001-01-31 | 日本電気アイシーマイコンシステム株式会社 | 画像再生装置及び画像再生方法 |
US6751400B1 (en) * | 1998-09-17 | 2004-06-15 | Sony Corporation | Reproducing method and apparatus |
-
2000
- 2000-05-19 EP EP00401381A patent/EP1156674A1/en not_active Withdrawn
-
2001
- 2001-05-02 AT AT01110699T patent/ATE286643T1/de not_active IP Right Cessation
- 2001-05-02 ES ES01110699T patent/ES2234729T3/es not_active Expired - Lifetime
- 2001-05-02 EP EP01110699A patent/EP1158796B1/en not_active Expired - Lifetime
- 2001-05-02 DE DE60108199T patent/DE60108199T2/de not_active Expired - Lifetime
- 2001-05-04 TW TW090110676A patent/TW530494B/zh not_active IP Right Cessation
- 2001-05-04 US US09/849,570 patent/US7130526B2/en not_active Expired - Fee Related
- 2001-05-04 HU HU0101843A patent/HUP0101843A3/hu unknown
- 2001-05-07 ZA ZA200103672A patent/ZA200103672B/xx unknown
- 2001-05-09 KR KR1020010025198A patent/KR100788869B1/ko not_active IP Right Cessation
- 2001-05-14 MX MXPA01004843A patent/MXPA01004843A/es active IP Right Grant
- 2001-05-15 AU AU43887/01A patent/AU777957B2/en not_active Ceased
- 2001-05-16 MY MYPI20012293 patent/MY127087A/en unknown
- 2001-05-17 JP JP2001147845A patent/JP5106722B2/ja not_active Expired - Fee Related
- 2001-05-18 BR BR0102043-9A patent/BR0102043A/pt not_active IP Right Cessation
- 2001-05-21 CN CNB011169907A patent/CN1226873C/zh not_active Expired - Fee Related
-
2002
- 2002-01-17 HK HK02100365.5A patent/HK1038861B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR100788869B1 (ko) | 2007-12-27 |
CN1226873C (zh) | 2005-11-09 |
MY127087A (en) | 2006-11-30 |
ATE286643T1 (de) | 2005-01-15 |
DE60108199T2 (de) | 2006-01-26 |
TW530494B (en) | 2003-05-01 |
HK1038861B (zh) | 2006-01-20 |
DE60108199D1 (de) | 2005-02-10 |
EP1156674A1 (en) | 2001-11-21 |
BR0102043A (pt) | 2001-12-18 |
JP5106722B2 (ja) | 2012-12-26 |
EP1158796B1 (en) | 2005-01-05 |
AU777957B2 (en) | 2004-11-04 |
AU4388701A (en) | 2001-11-22 |
US20020001458A1 (en) | 2002-01-03 |
HUP0101843A2 (en) | 2002-06-29 |
MXPA01004843A (es) | 2004-10-29 |
KR20010106226A (ko) | 2001-11-29 |
EP1158796A1 (en) | 2001-11-28 |
ZA200103672B (en) | 2001-11-15 |
HK1038861A1 (en) | 2002-03-28 |
JP2002027409A (ja) | 2002-01-25 |
US7130526B2 (en) | 2006-10-31 |
HUP0101843A3 (en) | 2003-08-28 |
CN1325234A (zh) | 2001-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2234729T3 (es) | Metodo y dispositivo para decodificar un flujo de datos de video en modos especiales de reproduccion. | |
ES2240976T3 (es) | Sistema de almacenamiento, recuperacion y distribucion de datos de multiples usuarios, que utiliza un almacenamiento distribuido de datos deun flujo continuo de datos. | |
US6526225B1 (en) | Disk-based digital video recorder | |
JP4375305B2 (ja) | 情報処理装置および情報処理方法、記録媒体、並びに、プログラム | |
ES2536681T3 (es) | Aparato de reproducción, método de reproducción, medio de grabación, aparato de grabación, método de grabación para grabar un flujo de vídeo y gráficos con información sobre recorte de gráficos | |
ES2275596T3 (es) | Aparato y metodos para grabar y reproducir datos de informacion. | |
KR20110098003A (ko) | 관리형 비휘발성 메모리의 어드레스 매핑을 위한 아키텍처 | |
TWI272588B (en) | Method for writing streaming audiovisual data to a disk drive | |
US7747143B2 (en) | Digital video recorder | |
US8230125B2 (en) | Methods for reserving index memory space in AVI recording apparatus | |
ES2201815T3 (es) | Procedimiento para registro y lectura simultaneos de un flujo de datos de audio y video digitales, y receptor para llevar a cabo dicho procedimiento. | |
EP0895167A2 (en) | Method and apparatus for interfacing with ram | |
JP4325194B2 (ja) | 記憶媒体へのアクセスを管理する装置及び方法 | |
ES2281102T3 (es) | Procedimiento de multiplexacion datos, multiplexor datos que utiliza el mismo, repetidor de datos multiples, procedimiento decodificacion datos multiples, dispositivo decodificacion datos multiples que utiliza el mismo, y medios de registro donde se registran los procedimientos. | |
ES2198978T3 (es) | Procedimiento para almacenar un flujo de datos de audio y video digital, dispositivo de almacenamiento y receptor para llevar a cabo dicho procedimiento. | |
ES2616309T3 (es) | Dispositivo de memoria virtual compartida auto-administrada para administrar al menos un flujo de datos multi-pista | |
ES2228645T3 (es) | Utilizacionde una memoria sdram como memoria de almacenamiento temporal de correccion y de pista en circuitos integrados frontales de dispositivos de grabacion o reproduccion. | |
US20040250039A1 (en) | System and method for using swappable storage for high data content multi-source data storage | |
US7451281B2 (en) | System and method for using swappable storage for storing program data | |
JPH0546461A (ja) | メモリカード装置 | |
JP2000050210A (ja) | バッファメモリ、バッファメモリ管理方法及び画像再生装置 | |
US20050244130A1 (en) | Device and method for delayed reading of digital video data | |
JPH0834481B2 (ja) | パケット交換機 | |
MXPA01006544A (es) | Proceso para el almacenamiento de corrientes de datos digitales de audio y video, dispositivo de almacenamiento y receptor para implementar el proceso | |
MXPA00010944A (es) | Metodo para almacenar audio y video digitales comprimidos |