ES2353007T3 - Método para grabación de datos, método para recuperar conjuntos de datos, archivo de datos, estructura de datos y soporte de grabación. - Google Patents
Método para grabación de datos, método para recuperar conjuntos de datos, archivo de datos, estructura de datos y soporte de grabación. Download PDFInfo
- Publication number
- ES2353007T3 ES2353007T3 ES03796040T ES03796040T ES2353007T3 ES 2353007 T3 ES2353007 T3 ES 2353007T3 ES 03796040 T ES03796040 T ES 03796040T ES 03796040 T ES03796040 T ES 03796040T ES 2353007 T3 ES2353007 T3 ES 2353007T3
- Authority
- ES
- Spain
- Prior art keywords
- length
- klv
- data
- pointer
- retro
- 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 description 19
- 230000001186 cumulative effect Effects 0.000 claims description 9
- 238000011084 recovery Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000009191 jumping Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
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/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/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/235—Processing of additional data, e.g. scrambling of additional data or processing content descriptors
-
- 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/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8455—Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Television Signal Processing For Recording (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management Or Editing Of Information On Record Carriers (AREA)
Abstract
Método para grabar datos encapsulados (Ve,Vm) que pueden ser recuperados en orden opuesto al de grabación, incluyendo dicho método las etapas sucesivas de: a) grabar, como contenedor de datos, un elemento codificado en KLV que comprende - una primera clave (Ke, Km) que indica un tipo de datos encapsulados; - un primer indicador de longitud (Le, Lm) sobre la longitud de los datos encapsulados; - los datos encapsulados (Ve,Vm); caracterizado por: b) Grabar, después del elemento codificado en KLV, como un puntero relativo al comienzo del contenedor de datos precedente, un elemento codificado en KLV de retro-puntero que tiene una longitud de retro-puntero y que comprende: - una segunda clave (Kbp) que indica otros datos encapsulados que son de tipo retro-puntero; - un segundo indicador de longitud (Lbp) sobre la longitud de los otros datos encapsulados; - como los otros datos encapsulados (Vbp) un valor de longitud (Ie) del elemento codificado en KLV o un valor de longitud acumulada (It, Im) de la mencionada longitud del elemento codificado en KLV y la longitud de retro-puntero; y - repetir las etapas a) y b).
Description
[0001] La solicitud de patente europea EP 0794667 A2 se
refiere a un método de procesamiento de video digital que
comprende disponer un paquete de entrada en el que están
grabadas posiciones de paquetes previos.
[0002] La invención tiene como objetivo a una estructura de
datos de fácil acceso a datos encapsulados (sean estos video,
audio y/o metadatos) tanto en dirección hacia delante o como
hacia atrás.
[0003] Con este fin, la invención propone un método para
grabar de datos encapsulados que pueden ser recuperados en un
orden opuesto al orden de grabación, con sucesivas etapas de:
-grabar un elemento KLV que comprende:
-una primera clave indicando el tipo de datos
encapsulados;
-un primer indicador de longitud sobre la longitud de
los datos encapsulados y
-los datos encapsulados;
comprendiendo además dicho método:
-grabar, inmediatamente después del elemento KLV, como un
puntero relativo al comienzo del contenedor de datos
precedente, un elemento KLV de retro-puntero que tiene una
longitud de retro-puntero y que comprende:
-una segunda clave indicando otros datos encapsulados de
tipo de retro-puntero;
-un segundo indicador de longitud sobre la longitud de
los otros datos encapsulados;
-como los otros datos encapsulados, un valor de longitud
de dicho elemento KLV o la longitud acumulada del valor de
longitud de dicho elemento KLV y la longitud del elemento de
retro-puntero;
-repetir las etapas de grabación de un elemento KLV y
grabación de un elemento KLV de retro-puntero.
[0004] Preferiblemente, el método también tiene una o ambas
de las etapas siguientes:
-grabación del segundo indicador de longitud;
-grabación de la segunda clave que indica otros datos
encapsulados de tipo de retro-puntero.
[0005] Este método de grabación permite leer fácilmente
hacia atrás, los conjuntos de datos con el siguiente método
concurrentemente propuesto por la invención: un método para
recuperar un elemento KLV que tiene en un soporte una
longitud de elemento KLV en un orden contrario al orden de
grabación a partir de un elemento KLV accedido actualmente,
que comprende etapas de:
- -
- acceder a un elemento retro-puntero que tiene una longitud de retro-puntero y que precede al mencionado elemento KLV accedido;
- -
- acceder a una clave que indica que los datos encapsulados son de tipo retro-puntero;
-lectura, como datos encapsulados, de un valor que
puede ser bien la longitud de elemento KLV o la longitud
acumulada de la longitud del elemento KLV y la longitud del
elemento retro-puntero;
-acceder al mencionado elemento KLV usando dicho valor.
[0006] De manera preferida, el método además comprende la
lectura de un indicador de longitud sobre la longitud de los
datos encapsulados antes de leer los datos encapsulados.
[0007] La invención por tanto propone un archivo de datos que
comprende bloques consecutivos, comprendiendo sucesivamente
cada bloque:
- -
- un contenedor de datos que tiene una longitud de contenedor;
-una clave que indica el tipo de datos encapsulados;
- -
- un indicador de longitud sobre la longitud de los datos encapsulados y
-los datos encapsulados;
- -
- un elemento KLV retro-puntero que tiene una longitud de retro-puntero y que comprende
-una clave de retro-puntero;
-un indicador de longitud;
-como los otros datos encapsulados, un valor que puede
ser o la longitud del elemento KLV o la longitud acumulada de
dicha longitud del elemento KLV, y la mencionada longitud del
retro-puntero; y
-un soporte portador, como un archivo de datos.
La invención además proporciona una estructura de datos
que tiene sucesivamente:
- -
- un elemento KLV con una longitud de elemento KLV (le; lm) dada y comprendiendo:
-una clave que indica el tipo de datos encapsulados;
- -
- un indicador de longitud sobre la longitud de los datos encapsulados y
-los datos encapsulados; y
- -
- un elemento KLV retro-puntero con una longitud de retro-puntero que comprende;
-una clave del retro-puntero;
-un indicador de longitud;
-como otros datos encapsulados un valor que es la
longitud de elemento KLV o la longitud acumulada de la
longitud de elemento KLV y la longitud de retro-puntero.
Preferiblemente, la estructura de datos tiene uno o ambos
de los siguientes campos:
-los otros indicadores de longitud;
-la clave de retro-puntero.
[0008] Gracias al elemento KLV retro-puntero situado
inmediatamente después del elemento KLV e indicativo de su
longitud, el salto desde el final del elemento KLV (por
ejemplo, el comienzo del siguiente elemento KLV) al comienzo
del elemento KLV es rápido y sencillo, lo cual facilita la
lectura hacia atrás del archivo.
[0009] La invención también propone codificaciones KLVL y
KLVLK.
[0010] Otras características de la invención aparecerán a la
luz de la siguiente descripción de las realizaciones
preferentes de la invención hecha con referencia a las
figuras detalladas donde:
- -
- La figura 1 representa una primera realización de la estructura de datos de acuerdo a la invención;
- -
- La figura 2 representa una segunda realización de la estructura de datos de acuerdo a la invención;
- -
- La figura 3 representa un ejemplo de la novedosamente propuesta codificación KLVL;
- -
- La figura 4 representa un ejemplo de la novedosamente propuesta codificación KLVLK. [0011] La figura 1 muestra una estructura de datos que puede ser usada particularmente para grabar de datos de extracto donde el número de octetos por contenedor puede variar. Por ejemplo, el extracto es un conjunto de tramas de datos de video comprimido con longitud desigual. En esta aplicación particular la estructura de datos de la figura 1, es utilizada por una grabadora de video cuando graba una secuencia de video. Esta estructura de datos es utilizada de una manera similar por un reproductor de video que reproduce la secuencia de video. [0012] Cada trama de la secuencia de video está codificada en KLV; esto es por tanto descrito por un campo clave Ke indicando que esos datos son datos de video, por ejemplo, datos de video codificados en MPEG, un campo longitud Le,
indica la longitud de esos datos de video y un campo valor Ve
contiene los datos de video (extracto).
[0013] Después de cada trama del conjunto, un elemento KLV
retro-puntero es insertado. Este elemento KLV retro-puntero
es un puntero relativo al comienzo de las tramas precedentes
(esto es, al contenedor de datos precedente). Su función es
indicada con su clave Kbp y su valor Vbp indica la longitud de
la trama de video precedente (o hablando de una forma más
genérica del contenedor de datos precedentes). Por ejemplo,
su valor es la longitud Ie del elemento codificado en KLV
representando la trama (Vbp=Ie). Como posible variación, la
longitud total (acumulada) It del elemento KLV de extracto y
el elemento KLV retro-puntero podrían ser utilizados en su
lugar.
[0014] Habitualmente, el campo longitud Lbp representa la
longitud del campo valor Vbp. Una solución práctica es tener
una longitud Lbp fija para el elemento retro-puntero, pero
una longitud variable también es posible como se explica más
adelante.
[0015] Cuando se graban 3 tramas F1, F2 y F3, un registrador
de video que utiliza la estructura de datos de la figura 1
grabará así la siguiente secuencia:
KeL1F1KbpLbpI1KeL2F2KbpLbpI2KeL3F3KbpLbpI3, donde Li es la longitud
de los datos codificados Fi e Ii es la longitud del elemento
KLV (Ke Li Fi) que contiene los datos codificados Fi.
[0016] Estos conjuntos de datos pueden ser fácilmente
recuperados por un reproductor de video en direcciones hacia
delante y hacia atrás como se explica más adelante.
[0017] Cuando el reproductor de video lee los conjuntos en
dirección hacia delante (esto es en la misma dirección en la
que los conjuntos fueron grabados), la estructura KLV del
archivo facilita saltar elementos. Particularmente, los
elementos KLV retro-punteros pueden ser saltados fácilmente
usando su campo longitud Lbp.
[0018] El reproductor de video puede también leer fácilmente
los conjuntos en dirección hacia atrás. Asumiendo que el
elemento KLV actualmente accedido es el que representa la
trama F3, el acceso al elemento KLV retro-puntero precedente
KbpLbpI2 es inmediato cuando la longitud Lbp es fija. Mediante
la lectura del valor I2 del elemento KLV retro-puntero, el
reproductor de video puede entonces acceder inmediatamente al
elemento KLV precedente representativo de la trama F2
saltando I2 octetos hacia atrás.
[0019] El reproductor de video puede o leer el contenido del
elemento KLV KeL2F2 para decodificar la trama F2 o saltar
inmediatamente hacia atrás a la trama F1 con un utilización
similar del elemento retro- untero KbpLbpI1.
[0020] Gracias a la utilización de los elementos retropunteros, el salto rápido de trama a trama hacia atrás es
posible, con la opción cada vez de decodificar o no la trama.
Los elementos retro-punteros son por tanto particularmente
útiles para permitir un modo rápido hacia atrás que muestre
sólo alguna de las imágenes encontradas.
[0021] Debe tenerse en cuenta que los elementos retropunteros proporcionan esta ventaja incluso cuando su longitud
Lbp no es fija. En este caso, el elemento KLV retro-puntero
precedente puede ser accedido a través de búsquedas hacia
atrás de la clave Kbp. Esto es, por supuesto, mucho más
rápido que buscar hacia atrás la clave extracto precedente Ke
cuando el elemento KLV retro-puntero es mucho más corto que
el elemento KLV trama (extracto).
[0022] Es también posible codificar el retro-puntero con
codificación KLVL o codificación KLVLK como se describe más
adelante. Como explicábamos, estos tipos de codificación
permiten leer el elemento en dirección hacia delante o hacia atrás. [0023] En el ejemplo antes mencionado, la utilización del elemento retro-puntero ha sido descrito en asociación con los datos de extracto. Por supuesto, tal elemento retro-puntero puede ser usado de modo similar con metadatos o cualquier otro tipo de datos. [0024] La figura 2 muestra un ejemplo de utilización de un elemento retro-puntero asociado con metadatos. [0025] Un conjunto de K metadatos V1,….., Vk son codificados en KLV y combinados como el campo valor Vm del elemento KLV generalmente denominado “elemento KLV conjunto de metadatos”. El elemento conjunto de metadatos tiene un campo clave específico Km y un campo longitud que indica la longitud del campo valor Vm. [0026] Un elemento KLV retro-puntero KbpLbpVbp sigue inmediatamente al elemento KLV conjunto de metadatos KmLmVm. La clave Kbp indica que el presente elemento KLV es un puntero relativo al comienzo del elemento KLV precedente (o contenedor de datos), en este caso el comienzo del conjunto de metadatos. El campo longitud Lbp indica la longitud del campo valor Vbp la cual es igualmente indicativa de la longitud Im del elemento KLV precedente, en este caso el conjunto de metadatos. [0027] Cuando los datos son grabados por un registrador como se representa de izquierda a derecha (dirección hacia delante) en la figura 2, estos pueden ser fácilmente accesibles (y posiblemente leídos) por un reproductor en ambas direcciones hacia delante y hacia atrás como se explica ahora. [0028] En la dirección hacia delante, Km es el primero accedido, informando el reproductor que el conjunto de datos accedido es un conjunto de metadatos. El reproductor puede o
utilizar el siguiente campo longitud Lm para saltar el
conjunto de metadatos, o leer el campo valor Vm para
realmente acceder a uno o varios metadatos.
[0029] Si el conjunto de metadatos se salta, el reproductor
encuentra el elemento KLV retro-puntero, identifica éste como
- tal
- gracias a su clave Kbp y lo salta gracias al campo
- longitud Lbp.
- [0030]
- Por otro lado, si el campo valor Vm es realmente
leído, el reproductor puede acceder fácilmente a los
metadatos V1,…, Vk, uno a uno en dirección hacia delante
gracias a su estructura KLV. Entonces, el reproductor accede
al elemento KLV retro-puntero y salta éste como se describió
anteriormente.
[0031] En dirección hacia atrás, el reproductor tiene que
identificar que datos componen el elemento retro-puntero.
Como se describió anteriormente, una solución práctica es
decidir de antemano que los elementos retro-punteros tengan
una longitud fija. El reproductor puede en este caso llevar
esta longitud fija en la dirección hacia atrás y así acceder
a la clave Kbp.
[0032] Incluso en casos donde la longitud del elemento retropuntero puede variar, el reproductor puede fácilmente acceder
a la clave Kbp buscándola hacia atrás. Es por supuesto más
rápido, más fácil y mucho más fiable buscar hacia atrás una
clave dada (Kbp) que intentar leer el conjunto de metadatos
hacia atrás (lo cual consistiría en buscar cualquier posible
clave entre una gran cantidad de datos, sabiendo que nuevos
metadatos con sus correspondientes nuevas claves pueden ser
introducidos).
[0033] Como se ha explicado previamente, el retro-puntero
puede ser también codificado en KLVL o en KLVLK.
[0034] Cuando el elemento retro-puntero es identificado, el
campo valor Vbp es leido con el valor Im y el reproductor
consecuentemente salta Lm octetos hacia atrás accediendo por
lo tanto inmediatamente al elemento KLV conjunto de metadatos
KmLmVm.
[0035] El reproductor puede entonces o leer el elemento
conjunto de metadatos bien adquiriendo algunos de los
metadatos (en dirección hacia delante, como se explicó
anteriormente) o ignorar el conjunto de metadatos y continuar
la lectura hacia atrás accediendo al nuevo elemento KLV
retro-puntero como KbpLbpI3 en la figura 1.
[0036] Como una posible alternativa a la figura 2, el
elemento retro-puntero KbpLbpVbp podrían ser considerado como
parte del conjunto de metadatos kmLmVm. Los principios de
funcionamiento continuarían siendo los mismos, tanto en
dirección hacia delante como hacia atrás. En este caso, sin
embargo, si el campo valor Vbp aún representa la longitud de
los elementos de todos los conjuntos de metadatos, el
reproductor tiene que deducir por si mismo la longitud del
elemento retro-puntero desde el valor Vbp antes de saltar
hacia atrás. Otras variaciones son factibles mientras el
campo valor Vbp sea indicativo de la longitud en octetos
entre el comienzo del contenedor de datos (aquí clave Km) y
el elemento retro-puntero (clave Kbp).
[0037] El elemento retro-puntero ha sido diseñado en el
ejemplo previo para saltar hacia atrás sobre el conjunto
total de metadatos pero naturalmente es posible proveer
elementos retro-punteros para saltar hacia atrás sobre
subconjuntos de metadatos dentro del conjunto de metadatos.
[0038] La figura 1 y la figura 2 proponen el uso del elemento
retro-puntero para simplificar enormemente la lectura hacia
atrás del conjunto de datos, particularmente datos
codificados en KLV en un archivo MXF.
[0039] Ventajosamente, el encabezamiento de este archivo
tiene una bandera (por ejemplo un bit) que indica donde o no
son usados los elementos retro-punteros en el archivo. Otra
información, como por ejemplo la utilización de
codificaciones KLVL o KLVLK o la longitud fija del elemento
retro-puntero (si existe) podría incluirse en el
encabezamiento de archivo. El encabezamiento puede adjuntarse
al archivo como metadatos.
[0040] Lo siguiente es una descripción de codificaciones KLVK
y KLVKL que son propuestas por la invención. Aunque éstas son
preferiblemente aplicadas sólo a los elementos retro-punteros
como se describió en la descripción anterior, se pueden
aplicar a cualquier clase de datos.
[0041] La figura 3 representa una codificación KLVL de varios
elementos metadatos dando un ejemplo de codificación KLVL.
Cada elemento representa una información dada (o parámetro)
teniendo un valor Vi. Para ser transportado y recuperado,
cada conjunto de datos es encapsulado como se describe más
adelante.
[0042] Una clave Ki (por ejemplo codificada en 16 octetos) es
determinada para indicar que clase de información es
representada por cada elemento. La longitud (por ejemplo en
octetos) de los datos representativos de la información o
valor Vi, se determina también como indicador de longitud Li
(por ejemplo codificado en 4 octetos).
[0043] Al grabar los metadatos, el registrador escribe para
cada elemento la siguiente secuencia (en el orden indicado):
Ki Li Vi Li. Con el ejemplo de longitud-octeto de antes, la
secuencia Ki Li Vi Li es (24 + Li) octetos de longitud.
[0044] En el ejemplo representado en la figura 3, las 3
siguientes piezas (elementos) de información de metadatos son
consideradas:
-título de la grabación (clave K1) codificado en 256
octetos (L1 significa 256) definido en datos V1;
-técnica de compresión de video (clave K2) codificado
en 2 octetos (L2 significa 2) definido en datos V2;
-duración en segundos de la grabación (clave K3)
codificada en 4 octetos (L3 significa 4) definido en datos
V3.
[0045] El registrador de video grabará estos metadatos de
acuerdo a la siguiente secuencia: K1 L1 V1 L1 K2 L2 V2 L2 K3
L3 V3 L3 como se ilustra en la figura 3.
[0046] Los metadatos son por supuesto escritos incluidos en
una estructura mayor como la provista por el formato de
intercambio de material, por ejemplo como se describe en la
solicitud de patente WO 02/21845. Sin embargo, la
codificación KLV se sustituye por codificación KLVL al menos
para algunos de los elementos.
[0047] Cuando otra máquina lee el archivo, los metadatos
pueden ser accedidos.
[0048] Si el archivo de video-audio se lee en dirección hacia
delante (esto es en la misma dirección en la que fue
grabado), la clave K1 es la primera leída, luego se lee la
longitud L1, permitiendo determinar la longitud en octetos de
los datos V1 y así leer el valor V1. Los 4 octetos (L1)
siguientes a V1 son ignorados y puede accederse a K2. Las
demás recuperaciones de metadatos pueden hacerse de manera
similar.
[0049] Si el archivo de video-audio se lee en dirección hacia
atrás, la longitud L3 es la primera a la que se accede. Esta
da inmediatamente la longitud de octetos a leer como valor
V3. Una vez el valor V3 es leído, los siguientes 4 octetos en
dirección hacia atrás (también representados como L3) son
ignorados y entonces se accede a K3. V3 y K3 son así
inmediatamente determinados cuando se lee hacia atrás sin
necesidad de una tabla de índice.
[0050] Por supuesto, las demás recuperaciones de metadatos en
dirección hacia atrás son llevadas a cabo con la misma simple
combinación: L2 es leído, dando de este modo la posibilidad
de leer V2; la aparición de L2 entre V2 y K2 es ignorada y se
lee K2. Finalmente, L1 es leída, dando de ese modo
inmediatamente acceso al valor L1 y saltando los 4 octetos de
L1 a la clave K1.
[0051] Como se muestra con este ejemplo, la codificación KLVL
permite la fácil recuperación de datos encapsulados (v)
cuando la secuencia KLVL es leída o en dirección hacia
delante o en dirección hacia atrás.
[0052] Como una posible variación, cuando se lee por segunda
vez el campo indicador de longitud L (o en dirección hacia
- delante
- o hacia atrás), ésta puede ser comparada con la
- primera
- lectura del indicador de longitud (en lugar de
- simplemente
- ignorar la segunda lectura del indicador de
longitud como se describió anteriormente). Esto permite
comprobar si el archivo tiene el formato esperado y sin
errores, y por lo tanto si el algoritmo propuesto de salto
hacia atrás de los datos, está todavía sincronizado con la
codificación KLVL del archivo.
[0053] De manera equiparable, la codificación KLVLK se
obtiene con la grabación de un elemento Vi de acuerdo a la
siguiente secuencia: Ki Li Vi Li Ki.
[0054] La figura 4 representa la codificación KLVLK de varios
elementos metadatos dados, como un ejemplo de codificación
KLVLK. Cada elemento representa una información dada (o
parámetro) que tiene un valor Vi. Para ser transportado y
recuperado, cada conjunto de datos es encapsulado como se
describe a continuación.
[0055] Una clave Ki (por ejemplo codificada en 16 octetos) se
determina para indicar que clase de información es
representada por el elemento. La longitud (por ejemplo en
octetos) de datos representativa de la información o el valor
Vi también es determinada como indicador de longitud Li (por
ejemplo codificado en 4 octetos).
[0056] Al grabar los metadatos, el registrador escribe para
cada elemento la siguiente secuencia (en el orden indicado):
Ki Li Vi Li Ki. Con el ejemplo de longitud en octetos
anterior, la secuencia Ki Li Vi Li, es (40 + Li) octetos de
largo.
[0057] En el ejemplo descrito en la figura 4, las dos
siguientes piezas (elementos) de información de metadatos son
consideradas:
-título de la grabación (clave K1) codificado en 256
octetos (L1 significa 256) definido en datos V1;
-técnica de compresión de video (clave K2) codificado
en 2 octetos (L2 significa 2) definido en datos V2.
[0058] El registrador de video grabará estos metadatos de
acuerdo a la siguiente secuencia: K1 L1 V1 L1 K1 K2 L2 V2 L2
K2 como se ilustra en la figura 4.
[0059] Cuando otra máquina lee el archivo, puede accederse a
los metadatos.
[0060] Si el archivo de video-audio se lee en la dirección
hacia delante (esto es en la misma dirección en la que fue
grabado), la clave K1 es la primera leída, luego se lee la
longitud L1 permitiendo determinar la longitud en octetos de
los datos V1 y así leer el valor V2. Los 20 octetos (L1K1)
siguientes a V1 son ignorados y K2 puede ser accesible. Las
demás recuperaciones de metadatos pueden hacerse de manera
similar.
[0061] Si el archivo de video-audio se lee en dirección hacia
atrás, la clave K2 es la primera accesible entonces la
longitud L2 es leída permitiendo la longitud en octetos de
los datos V2 y por tanto leer el valor V2. Los restantes 20
octetos (L2K2) pueden ser ignorados.
[0062] Las demás recuperaciones de metadatos en dirección
hacia atrás son llevadas a cabo con la misma combinación. De
hecho, como la grabación es simétrica con la codificación
KLVLK, la lectura hacia atrás utiliza el mismo algoritmo que
5 la lectura hacia delante y es por tanto tan simple como aquella. [0063] Como una posible variación, cuando se lee por segunda vez los campos indicador de longitud L y de clave K (tanto en dirección hacia delante como hacia atrás), ésta puede ser
10 comparada con los primeros indicadores de longitud y clave leídos (en lugar de simplemente ignorarlos como se describió anteriormente). Esto permite comprobar si el archivo tiene el formato esperado y sin errores, y por tanto si el algoritmo propuesto está todavía sincronizado con la codificación KLVL
15 del archivo. [0064] La invención no está limitada a las realizaciones arriba descritas. Se pueden hacer variaciones a estas realizaciones sin alejarse del ámbito de la invención.
La lista de referencias citada por el solicitante lo es
solamente para utilidad del lector, no formando parte de
los documentos de patente europeos. Aún cuando las
referencias han sido cuidadosamente recopiladas, no pueden
excluirse errores u omisiones y la OEP rechaza toda
responsabilidad a este respecto.
Documentos de patente citados en la descripción
• EP 0794667 A2 [0001] • WO 0221845 A [0046]
Claims (9)
- REIVINDICACIONES1. Método para grabar datos encapsulados (Ve,Vm) que pueden ser recuperados en orden opuesto al de grabación, incluyendo dicho método las etapas sucesivas de:a) grabar, como contenedor de datos, un elemento codificado en KLV que comprende-una primera clave (Ke, Km) que indica un tipo de datos encapsulados;-un primer indicador de longitud (Le, Lm) sobre la longitud de los datos encapsulados;-los datos encapsulados (Ve,Vm);caracterizado por:b) Grabar, después del elemento codificado en KLV, como un puntero relativo al comienzo del contenedor de datos precedente, un elemento codificado en KLV de retro-puntero que tiene una longitud de retro-puntero y que comprende:-una segunda clave (Kbp) que indica otros datos encapsulados que son de tipo retro-puntero;-un segundo indicador de longitud (Lbp) sobre la longitud de los otros datos encapsulados;-como los otros datos encapsulados (Vbp) un valor de longitud (Ie) del elemento codificado en KLV o un valor de longitud acumulada (It, Im) de la mencionada longitud del elemento codificado en KLV y la longitud de retro-puntero; y-repetir las etapas a) y b).
-
- 2.
- Método de acuerdo a la reivindicación 1, donde después del elemento codificado en KLV de retro-puntero, se graba de nuevo el segundo indicador de longitud.
-
- 3.
- Método de acuerdo a la reivindicación 2, donde después del segundo indicador de longitud, se graba de nuevo la segunda clave.
-
- 4.
- Método para recuperar un elemento codificado en KLV (Ke,Le,Ve; Km,Lm,Vm) que ha sido grabado de acuerdo a la reivindicación 1, presentando en un soporte, una longitud de elemento KLV en orden opuesto al orden de grabación a partir de un elemento KLV actualmente accedido, incluyendo dicho método las etapas de:
-acceder a la segunda clave (kbp) indicando que los datos encapsulados son de tipo retro-puntero y donde los datos encapsulados tienen una longitud fija;-lectura de los otros datos encapsulados (Vbp) que indican la longitud acumulada (It) del mencionado elemento KLV y de la mencionada longitud de retro-puntero;-acceder al elemento KLV saltando un cierto número de octetos más hacia atrás, donde el número de octetos es igual al mencionado valor de longitud acumulada (4). - 5. Método para recuperar un elemento codificado en KLV (Ke,Le,Ve; Km,Lm,Vm) que ha sido grabado de acuerdo a la reivindicación 1, presentando en un soporte una longitud de elemento KLV, en orden opuesto al orden de grabación a partir de un elemento KLV actualmente accedido, incluyendo dicho método etapas de:-acceder a la segunda clave (kbp) indicando que los datos encapsulados son de tipo retro-puntero y donde los datos encapsulados tienen una longitud no fija;
- -
- lectura de un segundo indicador de longitud (Lbp) sobre la longitud de los datos encapsulados antes de leer el valor (Vbp);
- -
- lectura de los otros datos encapsulados (Vbp) que indican la longitud acumulada (It) del mencionado elemento KLV y de la mencionada longitud de retro-puntero;
-acceder al elemento KLV saltando un cierto número de octetos más hacia atrás, donde el número de octetos es igual al mencionado valor de longitud acumulada (4). - 6. Archivo de datos comprende bloques sucesivos, comprendiendo sucesivamente cada bloque:-un elemento codificado en KLV, como contenedor de datos, que comprende:-una primera clave (Ke, Km) que indica un tipo de datos encapsulados;-un primer indicador de longitud (Le, Lm) sobre la longitud de los datos encapsulados;-los datos encapsulados (Ve,Vm);caracterizado por:-después del elemento codificado en KLV, como puntero relativo al comienzo del contenedor de datos precedente, un elemento codificado en KLV de retro-puntero que tiene una longitud de retro-puntero y que comprende:-una segunda clave (Kbp) que indica otros datos encapsulados son de tipo retro-puntero;-un segundo indicador de longitud (Lbp) sobre la longitud de los otros datos encapsulados;-como los otros datos encapsulados (Vbp), un valor de longitud (Ie) del elemento codificado en KLV o un valor de longitud acumulada (It, Im) de la mencionada longitud del elemento codificado en KLV y de la longitud del retropuntero;
-
- 7.
- Archivo de datos de acuerdo a la reivindicación 6, donde al mencionado elemento codificado en KLV de retropuntero se adjunta el segundo indicador de longitud para representar un formato codificado en KLVL.
-
- 8.
- Archivo de datos de acuerdo a la reivindicación 6, donde al mencionado elemento codificado en KLV de retropuntero KLV, se adjuntan el segundo indicador de longitud y la segunda clave para representar un formato codificado en KLVLK.
-
- 9.
- Soporte que contiene un archivo de datos de acuerdo a una de las reivindicaciones de 6 a 8.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP02293016 | 2002-12-06 | ||
EP02293016A EP1427213A1 (en) | 2002-12-06 | 2002-12-06 | Method for recording data , method for retrieving sets of data, data file, data structure and recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2353007T3 true ES2353007T3 (es) | 2011-02-24 |
Family
ID=32309496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES03796040T Expired - Lifetime ES2353007T3 (es) | 2002-12-06 | 2003-11-21 | Método para grabación de datos, método para recuperar conjuntos de datos, archivo de datos, estructura de datos y soporte de grabación. |
Country Status (9)
Country | Link |
---|---|
US (1) | US8526776B2 (es) |
EP (2) | EP1427213A1 (es) |
JP (2) | JP4565499B2 (es) |
AT (1) | ATE481821T1 (es) |
AU (1) | AU2003298308A1 (es) |
CA (1) | CA2505741C (es) |
DE (1) | DE60334242D1 (es) |
ES (1) | ES2353007T3 (es) |
WO (1) | WO2004054267A2 (es) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3891295B2 (ja) * | 2003-07-09 | 2007-03-14 | ソニー株式会社 | 情報処理装置および方法、プログラム記録媒体、並びにプログラム |
EP1680784A1 (en) * | 2003-10-24 | 2006-07-19 | Koninklijke Philips Electronics N.V. | Forward and backward reproduction of a signal from stream data |
TWI312962B (en) * | 2006-08-11 | 2009-08-01 | Quanta Comp Inc | Method and apparatus for estimating audio length of audio file |
KR20080057972A (ko) * | 2006-12-21 | 2008-06-25 | 삼성전자주식회사 | 프리뷰 기능을 갖는 멀티미디어 데이터 인코딩/디코딩 방법및 장치 |
US10037148B2 (en) * | 2016-01-05 | 2018-07-31 | Microsoft Technology Licensing, Llc | Facilitating reverse reading of sequentially stored, variable-length data |
US10191693B2 (en) | 2016-10-14 | 2019-01-29 | Microsoft Technology Licensing, Llc | Performing updates on variable-length data sequentially stored and indexed to facilitate reverse reading |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4210961B1 (en) * | 1971-10-08 | 1996-10-01 | Syncsort Inc | Sorting system |
US4633391A (en) * | 1983-10-21 | 1986-12-30 | Storage Technology Partners Ii | Extended index for digital information storage and retrieval device |
EP0622002B1 (en) * | 1992-09-22 | 1998-08-26 | Sony Corporation | Digital video signal processing apparatus and method |
FR2754956B1 (fr) | 1996-10-18 | 1998-11-20 | Leroy Somer Moteurs | Dispositif de regulation d'un alternateur synchrone sans balais |
FR2777834B1 (fr) | 1998-04-28 | 2000-06-23 | Valeo | Actionneur electromecanique pour boite de vitesse |
EP1148728A1 (en) * | 2000-04-05 | 2001-10-24 | THOMSON multimedia | Trick play signal generation for a digital video recorder |
US6792433B2 (en) * | 2000-04-07 | 2004-09-14 | Avid Technology, Inc. | Indexing interleaved media data |
JP4273636B2 (ja) * | 2000-06-30 | 2009-06-03 | ソニー株式会社 | 情報記録装置及び方法、情報記録システム |
GB2366926A (en) * | 2000-09-06 | 2002-03-20 | Sony Uk Ltd | Combining material and data |
US7149750B2 (en) * | 2001-12-19 | 2006-12-12 | International Business Machines Corporation | Method, system and program product for extracting essence from a multimedia file received in a first format, creating a metadata file in a second file format and using a unique identifier assigned to the essence to access the essence and metadata file |
-
2002
- 2002-12-06 EP EP02293016A patent/EP1427213A1/en not_active Withdrawn
-
2003
- 2003-11-21 JP JP2004558096A patent/JP4565499B2/ja not_active Expired - Lifetime
- 2003-11-21 US US10/537,463 patent/US8526776B2/en active Active
- 2003-11-21 WO PCT/EP2003/050869 patent/WO2004054267A2/en active Application Filing
- 2003-11-21 DE DE60334242T patent/DE60334242D1/de not_active Expired - Lifetime
- 2003-11-21 AT AT03796040T patent/ATE481821T1/de not_active IP Right Cessation
- 2003-11-21 EP EP03796040A patent/EP1568231B1/en not_active Expired - Lifetime
- 2003-11-21 AU AU2003298308A patent/AU2003298308A1/en not_active Abandoned
- 2003-11-21 CA CA2505741A patent/CA2505741C/en not_active Expired - Fee Related
- 2003-11-21 ES ES03796040T patent/ES2353007T3/es not_active Expired - Lifetime
-
2010
- 2010-06-21 JP JP2010140364A patent/JP5164183B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US20060153524A1 (en) | 2006-07-13 |
EP1568231B1 (en) | 2010-09-15 |
EP1427213A1 (en) | 2004-06-09 |
EP1568231A2 (en) | 2005-08-31 |
DE60334242D1 (de) | 2010-10-28 |
WO2004054267A2 (en) | 2004-06-24 |
JP2010283837A (ja) | 2010-12-16 |
JP4565499B2 (ja) | 2010-10-20 |
JP2006509433A (ja) | 2006-03-16 |
AU2003298308A1 (en) | 2004-06-30 |
US8526776B2 (en) | 2013-09-03 |
WO2004054267A3 (en) | 2005-02-17 |
ATE481821T1 (de) | 2010-10-15 |
CA2505741A1 (en) | 2004-06-24 |
CA2505741C (en) | 2013-01-08 |
JP5164183B2 (ja) | 2013-03-13 |
AU2003298308A8 (en) | 2004-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9338390B2 (en) | Method and apparatus for synchronizing data streams containing audio, video and/or other data | |
ES2895384T3 (es) | Encabezado de fragmentos que incorpora indicadores binarios y campos de longitud variable correlacionados | |
CN100556110C (zh) | 使用信息文件的快进特技模式和倒退特技模式 | |
CN101673574B (zh) | 记录介质,再现设备,程序 | |
CN1965577B (zh) | 数据记录设备、方法和数据再现设备、方法 | |
ES2364755T3 (es) | Aparato de generación de trenes de información , procedimiento de generación de trenes de información, aparato de codificación, procedimiento de codificación, medio de grabación y programa para los mismos. | |
CN101842840B (zh) | 记录媒体、再现装置、记录装置、再现方法及记录方法 | |
EP2574049B1 (en) | Recording medium, reproducing apparatus, and reproducing method | |
CN1781149B (zh) | 具有用于管理文本字幕数据重现的数据结构的记录媒体以及记录和重现的方法和装置 | |
ES2290706T3 (es) | Metodo para codificar la longitud de gama de repeticiones de un tren de datos de mapa de bits. | |
AR015089A1 (es) | Metodo para grabar y reproducir uno o mas programas de video y/o audio digital | |
CN100531347C (zh) | 在记录介质上记录静止图像的方法 | |
RU2006137708A (ru) | Носитель записи, способ и устройство для воспроизведения потоков текстовых субтитров | |
US9838757B2 (en) | Method to transmit video data in a data stream and associated metadata | |
CN106231348A (zh) | 一种gop数据的回放方法、装置和系统 | |
ES2353007T3 (es) | Método para grabación de datos, método para recuperar conjuntos de datos, archivo de datos, estructura de datos y soporte de grabación. | |
EP1039750A3 (en) | Video storage and retrieval apparatus | |
US9436551B2 (en) | Method for codec-based recovery of a video using a cluster search | |
KR20050012328A (ko) | 고밀도 광디스크의 프레젠테이션 그래픽 데이터 관리 및재생방법과 그에 따른 고밀도 광디스크 | |
EP1058265A1 (en) | Method and apparatus for reverse playback of a digital data stream | |
JP5306415B2 (ja) | ビデオサーバ、mxfファイル再生方法 | |
RU2006116579A (ru) | Способ формирования потока данных с возможностью произвольного доступа и соответствующий способ его декодирования | |
JP2005192008A5 (es) | ||
WO2011089276A1 (es) | Método y sistema de análisis de archivos multimedia | |
TH73315A (th) | การเก็บข้อมูลแบบบีบอัด |