ES2300757T3 - Codificador de video y metodo de codificacion de video. - Google Patents
Codificador de video y metodo de codificacion de video. Download PDFInfo
- Publication number
- ES2300757T3 ES2300757T3 ES04723847T ES04723847T ES2300757T3 ES 2300757 T3 ES2300757 T3 ES 2300757T3 ES 04723847 T ES04723847 T ES 04723847T ES 04723847 T ES04723847 T ES 04723847T ES 2300757 T3 ES2300757 T3 ES 2300757T3
- Authority
- ES
- Spain
- Prior art keywords
- video
- mentioned
- buffer
- values
- segment
- 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 11
- 230000015654 memory Effects 0.000 claims description 49
- 230000005540 biological transmission Effects 0.000 claims description 15
- 230000008901 benefit Effects 0.000 description 5
- 238000013459 approach Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 208000028659 discharge Diseases 0.000 description 1
- 230000008014 freezing Effects 0.000 description 1
- 238000007710 freezing Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 238000012800 visualization 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/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/44004—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/15—Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
- H04N21/2401—Monitoring of the client buffer
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Color Television Systems (AREA)
- Studio Devices (AREA)
- Color Television Image Signal Generators (AREA)
- Vehicle Body Suspensions (AREA)
- Television Signal Processing For Recording (AREA)
- Apparatus For Making Beverages (AREA)
Abstract
Un codificador de video, que comprende: (a) un medio para definir un primer conjunto de múltiples valores (Ri) característicos de una velocidad binaria de transmisión, para una primera parte de un segmento de video; (b) un medio para definir un segundo conjunto de múltiples valores (Bi) característicos de un tamaño de memoria tampón, para la mencionada la primera parte del mencionado segmento de video; (c) un medio para definir un tercer conjunto de múltiples valores (Fi1, Di1) característicos de un llenado inicial de memoria tampón, para la mencionada primera parte del mencionado segmento de video, o característicos de un retardo hasta que se presenta la mencionada primera parte del mencionado segmento de video; (d) un medio para seleccionar uno del mencionado conjunto de primeros valores, uno del mencionado conjunto de segundos valores y uno del mencionado conjunto de terceros valores, de forma que la mencionada primera parte del mencionado segmento de video esté libre de una condición de subdesbordamiento y de una condición de desbordamiento; (e) un medio para definir un cuarto conjunto de múltiples valores (Fij, Dij) característicos de un llenado inicial de memoria tampón, para una segunda parte del mencionado segmento de video, o característicos de un retardo hasta que se presenta una segunda parte del mencionado segmento de video; y (f) un medio para seleccionar uno del mencionado conjunto de cuartos valores, tal que la mencionada segunda parte del mencionado segmento de vídeo esté libre de una condición de subdesbordamiento y de una condición de desbordamiento.
Description
Codificador de vídeo y método de codificación de
vídeo.
La presente invención se refiere a un
descodificador hipotético de referencia.
Un sistema de vídeo digital incluye un
transmisor y un receptor que ensambla vídeo que consta de audio,
imágenes y componentes auxiliares para una presentación coordinada
al usuario. El sistema transmisor incluye subsistemas para recibir
y comprimir los datos fuente digitales (los flujos de datos
elementales o de aplicación, que representan el audio, vídeo y
componentes de datos auxiliares de un programa); multiplexar los
datos procedentes de diversos flujos de datos elementales en un
solo flujo de bits de transporte; y transmitir los datos al
receptor. En el receptor, el flujo de bits de transporte es
desmultiplexado en sus flujos de datos elementales constitutivos.
Los flujos de datos elementales son descodificados, y los flujos de
datos de audio y vídeo son distribuidos como elementos de programa
sincronizados, al subsistema de presentación del receptor, para su
visualización como partes de un programa coordinado.
En muchos estándares de codificación de vídeo,
un flujo de bits compatible con el descodificador es descodificado
mediante un descodificador hipotético que está conectado
conceptualmente a la salida de un codificador, y consiste en una
memoria tampón de descodificador, un descodificador y una unidad de
visualización. Este descodificador virtual se conoce como
descodificador hipotético de referencia (HRD, hypothetical reference
decoder) en H.263, y como verificador de memoria tampón de vídeo
(VBV, vídeo buffering verifier) en MPEG-2. El
codificador crea un flujo de bits de tal forma que la memoria
tampón del descodificador hipotético no produce un desbordamiento
ni un subdesbordamiento.
Como resultado, la cantidad de datos que puede
solicitarse al receptor que almacene en memoria tampón, puede
exceder su capacidad (una condición desbordamiento de memoria), o
sus capacidades de caudal de tráfico. Alternativamente el receptor
puede no recibir, en una unidad de acceso de datos, todos los datos
a tiempo para la descodificación y la presentación sincronizada, lo
que en un instante concreto tiene como resultado que se pierde datos
en los flujos de datos de audio y vídeo, así como un funcionamiento
inconsistente (una condición de subdesbordamiento de memoria).
En las descodificadores hipotéticos de
referencia existentes, el flujo de bits de vídeo se recibe a una
velocidad binaria constante, dada (usualmente la velocidad promedio
en bits/segundo del flujo), y se almacena en la memoria tampón del
descodificador hasta que el llenado alcanza un nivel deseado. Tal
nivel deseado se denota como el llenado inicial de memoria tampón
del descodificador, y es directamente proporcional al retardo de
transmisión o de puesta funcionamiento (memoria tampón). En este
punto, el descodificador retira instantáneamente los bits para la
primera imagen de vídeo de la secuencia, descodifica los bits y
muestra la imagen. Los bits de las siguientes imágenes son también
retirados, descodificados, y visualizados instantáneamente en los
subsiguientes intervalos
temporales.
temporales.
Las descodificadores hipotéticos tradicionales
funcionan a velocidad binaria, memoria tampón y retardo inicial
fijos. Sin embargo, en muchas de las aplicaciones de vídeo actuales
(por ejemplo, emisión de vídeo en tiempo real a través de Internet
o de redes ATM) el ancho de banda disponible varía de acuerdo con la
ruta de acceso de la red (por ejemplo, dependiendo de como el
usuario conecte con la red: por módem, ISDN, DLS, cable, etc.) y
también fluctúa con el tiempo de acuerdo con las condiciones de la
red ( por ejemplo congestión, número de usuarios conectados, etc.).
Además, los flujos de bits de vídeo son distribuidos a una variedad
de dispositivos con diferentes capacidades de memoria tampón (por
ejemplo microteléfonos, PDAs, PCs, módulos de conexión,
reproductores de tipo DVD, etc.), y son creados para escenarios con
diferentes requisitos de retardo (por ejemplo emisión directa de
bajo retardo, descarga progresiva, etc.). Como resultado, estas
aplicaciones necesitan un descodificador hipotético de referencia
más flexible, que pueda descodificar un flujo de bits a diferentes
velocidades binarias máximas, y con diferentes tamaños de memoria
tampón y retardos de puesta en funcionamiento.
Jordi Ribas-Corbera y Philip A.
Chou, en un documento titulado "A Generalized Hypothetical
Reference Decoder For H.26L", el 4 de septiembre de 2001
propusieron el descodificador hipotético de referencia modificado.
El descodificador funciona de acuerdo con N conjuntos de velocidad y
parámetros de memoria tampón para un flujo de bits dado. Cada
conjunto caracteriza lo que se conoce como un modelo de cubeta con
goteo (leaky bucket) y contiene tres valores (R, B, F), donde R es
la velocidad binaria de transmisión, B es el tamaño memoria tampón
y F es el llenado inicial de memoria tampón del descodificador (F/R
es el retardo de memoria tampón inicial o de puesta en
funcionamiento). Un codificador puede crear un flujo de bits de
vídeo que esté contenido en ciertas cubetas con goteo deseadas N, o
puede simplemente computar los N conjuntos de parámetros después de
que ha sido generado el flujo de bits. El descodificador hipotético
de referencia puede interpolar entre los parámetros de cubeta con
goteo, y puede funcionar a cualquier velocidad binaria, memoria
tampón o retardo, máximos, deseados. Por ejemplo, dada una
velocidad de transmisión máxima R' el descodificador de referencia
puede seleccionar la memoria tampón y el retardo mínimos (de acuerdo
con los datos disponibles de la cubeta con goteo) con los que será
posible descodificar el flujo de bits sin sufrir desbordamiento o
subdesbordamiento de la memoria tampón. A la inversa, para un
tamaño dado de memoria tampón B', el descodificador hipotético
puede seleccionar la mínima velocidad de transmisión máxima
requerida, y funcionar en esta.
Hay beneficios en el uso de semejante
descodificador hipotético de referencia generalizado. Por ejemplo,
un proveedor de contenidos puede crear un flujo de bits una vez, y
un servidor puede distribuirlo a múltiples dispositivos de
diferentes capacidades, utilizando una variedad de canales de
velocidades máximas de transmisión, diferentes. O bien un servidor
y un terminal pueden negociar la mejor cubeta con goteo para las
condiciones de red dadas - por ejemplo, la que produzca el mínimo
retardo de puesta en funcionamiento (memoria tampón), o la que
requiera la menor velocidad máxima de transmisión para el tamaño de
datos de la memoria tampón del dispositivo.
Como se describe en el documento
VCEG-58, secciones 2.1 - 2.4, una cubeta con goteo
es un modelo para el estado (o llenado) de una memoria tampón de
codificador o de descodificador, en función del tiempo. Los llenados
de la memoria tampón del codificador y del descodificador son
mutuamente complementarios. Un modelo de cubeta con goteo está
caracterizado por tres parámetros (R, B, F), donde:
- \quad
- R es la velocidad binaria máxima (en bits por segundo) a la que entran los bits en la memoria tampón del descodificador. En escenarios de velocidad binaria constante, R es a menudo la velocidad binaria del canal y la velocidad binaria promedio del videoclip.
- \quad
- B es el tamaño de la cubeta o memoria tampón del descodificador (en bits) que suaviza las fluctuaciones de la velocidad binaria de vídeo. Este tamaño de memoria tampón no puede ser mayor que la memoria tampón física del dispositivo descodificador.
- \quad
- F es el llenado inicial de memoria tampón del descodificador (también en bits) antes de que el descodificador comience a retirar bits desde la memoria tampón. F y R determinan el retardo inicial o de puesta funcionamiento D, donde D = F / R segundos.
En un modelo de cubeta con goteo, los bits
entran en la memoria tampón a la velocidad R, hasta que el nivel de
llenado es F (es decir, durante D segundos), y a continuación se
retira instantáneamente b0 bits para la primera imagen. Los bits
siguen entrando en la memoria tampón a la velocidad R, y el
descodificador retira b1, b2, ..., bn-1 bits para
las siguientes imágenes, en ciertos momentos datos, típicamente
(pero no necesariamente) cada 1/M segundos, donde M es la
frecuencia de imagen del vídeo. La figura 1 ilustra el llenado de la
memoria tampón del descodificador a lo largo del tiempo, de un
flujo de bits que es modulado en una cubeta con goteo, de parámetros
(R, B, F).
Sea B_{i} el llenado de la memoria tampón del
descodificador inmediatamente antes de retirar b_{i} bits en el
instante t_{i}. Un modelo genérico de cubeta con goteo funciona de
acuerdo con las siguientes ecuaciones:
- B_{0}
- = \hskip0,2cm F
- B_{i+1}
- = \hskip0,2cm min(B, B_{i}-b_{i}+R(t_{i+1}-t_{i})), i = 0, 1, 2, ... \hskip2cm (1)
Típicamente, t_{i+1}, t_{i} = 1/M segundos,
donde M es la frecuencia de imagen (normalmente en imágenes/segundo)
para el flujo de bits.
Un modelo de cubeta con goteo con parámetros (R,
R, F) contiene un flujo de bits, si no hay subdesbordamiento de la
memoria tampón del descodificador. Debido a que los llenados de las
memorias tampón del codificador y del descodificador son
complementarios entre sí, esto es equivalente a la ausencia de
desbordamiento de la memoria tampón del codificador. Sin embargo,
se permite que la memoria tampón (la cubeta con goteo) del
codificador se vacíe, o equivalentemente que la memoria tampón del
descodificador se llene, momento en el cual no se transmite más
bits desde la memoria tampón del codificador a la memoria tampón del
descodificador. Así, la memoria tampón del descodificador detiene
la recepción de bits cuando está llena, razón por la cual está
incluido el operador min en la ecuación (1). Una memoria tampón de
descodificador llena, significa simplemente que la memoria tampón
del codificador está vacía.
Puede realizarse las siguientes
observaciones.
Un flujo de vídeo dado puede contenerse en
muchas cubetas con goteo. Por ejemplo, si un flujo de vídeo está
contenido en una cubeta con goteo con parámetros (R, B, F), estará
también contenido en una cubeta con goteo con una memoria tampón
mayor (R, B', F), B' >B, o en una cubeta con goteo con una
velocidad de transmisión máxima superior (R', B, F), R' >R.
Para cualquier velocidad binaria R' el sistema
puede siempre encontrar un tamaño de memoria tampón que contenga el
flujo de bits de vídeo (limitado en el tiempo). En el peor de los
casos (R' próximo a 0), será necesario que el tamaño de la memoria
tampón sea tan grande como el propio flujo de bits. Dicho de otra
forma, un flujo de bits de vídeo puede ser transmitido a cualquier
frecuencia (independientemente de la velocidad binaria promedio del
clip), siempre que el tamaño de la memoria tampón sea lo
suficientemente grande.
Se asume que el sistema fija la relación F = a B
para todas las cubetas con goteo, donde a es alguna fracción
deseada del llenado inicial de la memoria tampón. Para cada valor de
la velocidad binaria máxima R, el sistema puede hallar el tamaño
mínimo de memoria tampón B_{min} que contenga el flujo de bits,
utilizando la ecuación (1). En la figura 2 se muestra la
representación de la curva de valores R - B.
Por inspección, la curva de (R_{min},
B_{min}) para cualquier flujo de bits (como el de la figura 2) es
lineal a tramos, y convexa. Por lo tanto si se proporciona N puntos
de la curva, el descodificador puede interpolar linealmente los
valores para llegar a algunos puntos (R_{interp}, B_{interp})
que son ligeramente, pero con seguridad, mayores que (R_{min},
B_{min}). De este modo se puede reducir el tamaño de la memoria
tampón, y por consiguiente también el retardo, en un orden de
magnitud en relación con una sola cubeta con goteo que contenga el
flujo de bits en su frecuencia promedio. Alternativamente, para el
mismo retardo se puede reducir la frecuencia de transmisión máxima
mediante un factor cuatro, o posiblemente incluso mejorar la
relación señal frente a ruido en varios dB.
El verificador de memoria tampón de vídeo MPEG
(VBV) puede funcionar en dos modos: velocidad binaria constante
(CBR, constant bit rate) y velocidad binaria variable (VBR, variable
bit rate). MPEG-1 solo soporta el modo CBR,
mientras que MPEG-2 soporta ambos nodos.
El VBV funciona en modo CBR cuando el flujo de
bits está contenido en un modelo de cubeta con goteo de parámetros
(R, B, F) y:
R = R_{max} = velocidad binaria promedio del
flujo.
El valor de B es almacenado en el parámetro
sintáctico tamaño_de_memoria_tampón_vbv, utilizando una unidad
especial de tamaño (a saber, unidades de 16 x 1024 bits).
El valor de F/R es almacenado en el elemento
sintáctico retardo_vbv, asociado con la primera imagen de vídeo en
la secuencia, utilizando una unidad especial de tiempo (a saber,
número de períodos de un reloj de 90 kHz).
El llenado de la memoria tampón del
descodificador sigue las siguientes ecuaciones:
- B_{0}
- = \hskip0,2cm F
- B_{i+1}
- = \hskip0,2cm B_{i} - b_{i} + R_{max}/M, i = 0, 1, 2, ... \hskip3cm (2)
El codificador tiene que asegurar que B_{i} -
b_{i} es siempre mayor o igual que cero, siendo a la vez B_{i}
es siempre menor o igual que B. En otras palabras, el codificador
asegura que la memoria tampón del descodificador no presente un
desbordamiento ni un subdesbordamiento.
El VBV funciona en modo VBR cuando el flujo de
bits está limitado en un modelo de cubeta con goteo de parámetros
(R, B, F) y:
R = R_{max} = pico de la frecuencia máxima.
R_{max} es mayor que la frecuencia promedio del flujo de bits.
F = B, es decir la memoria tampón se llena
inicialmente.
El valor de R está representado en el parámetro
sintáctico tamaño_de_memoria_tampón_vbv, como en el caso de
CBR.
El llenado de la memoria tampón del
descodificador sigue las siguientes ecuaciones:
- B_{0}
- = \hskip0,2cm F
- B_{i+1}
- = \hskip0,2cm min(B, B_{i} - b_{i} + R_{max}/M, i = 0, 1, 2, ... \hskip2cm (3)
El codificador asegura que B_{i} - b_{i} es
siempre mayor o igual que cero. Es decir, el codificador debe
asegurar que en la memoria tampón del descodificador no presenta
subdesbordamiento. Sin embargo, en este caso de VBR el codificador
no necesita asegurar que la memoria tampón del descodificador no
presenta desbordamiento. Si la memoria tampón del descodificador se
llena, entonces se asume que la memoria tampón del codificador está
vacía y por tanto se deja de transmitir bits desde la memoria tampón
del codificador a la memoria tampón del descodificador.
El modo VBR es útil para dispositivos que pueden
leer datos hasta la frecuencia máxima R_{max}. Por ejemplo, un
DVD incluye clips de VBR en los que R_{max} es aproximadamente 10
Mb/s, lo que corresponde a la máxima velocidad de lectura de la
unidad de disco, incluso aunque la frecuencia promedio del flujo de
vídeo DVD sea de solo unos 4 Mb/s.
En referencia la figura 3A y a la figura 3B, se
muestra gráficos de llenado de la memoria tampón del descodificador,
para algunos flujos de bits operativos en modo CBR y VBR.
En líneas generales, el modo CBR puede
considerarse un caso especial de VBR donde se tiene que R_{max} es
la frecuencia promedio del clip.
El modelo hipotético de referencia para H.263 es
similar al modo CBR del VBV de MPEG discutido previamente, excepto
por lo siguiente.
El descodificador inspecciona de llenado de la
memoria tampón en ciertos intervalos temporales, y descodifica una
imagen tan pronto estén disponibles todos los bits para la imagen.
Este enfoque tiene como resultado un par de beneficios: (a) el
retardo se minimiza debido a que F es usualmente solo un poco mayor
que el número de bits para la primera imagen, y (b) si es común el
salto de imágenes, el decodificador simplemente espera hasta la
siguiente imagen disponible. Lo segundo se habilita también en el
modo de bajo retardo del VBV de MPEG.
La comprobación del desbordamiento de la memoria
tampón se realiza después de que los bits para una imagen son
retirados de la memoria tampón. Esto relaja la limitación de enviar
grandes imágenes I una vez cada cierto tiempo, pero hay un valor
máximo para la imagen mayor.
El HRD de H.263 puede esencialmente ser mapeado
a un tipo de modelo de cubeta con goteo, de bajo retardo.
Los descodificadores hipotéticos de referencia
existentes previamente, funcionan en un solo punto (R, B) de la
curva de la figura 2. Como resultado, estos descodificadores tienen
los siguientes inconvenientes: si la velocidad binaria disponible
en el canal R' es menor que la disponible en R (por ejemplo, esto es
común en la emisión en tiempo real por Internet y en la descarga
progresiva, o cuando se requiere transmitir un clip VBR en MPEG a
una frecuencia inferior al máximo), estrictamente hablando el
descodificador hipotético no sería capaz de descodificar el flujo
de
bits.
bits.
Si el ancho de banda disponible R' es mayor que
R (por ejemplo, esto es común también para la emisión en tiempo
real por Internet, así como para la reproducción local), los
descodificadores hipotéticos previos podrían funcionar en el modo
VBR y descodificarían el flujo de bits. Sin embargo, si hubiera
disponible más información sobre la curva Frecuencia - Memoria
Tampón, se reduciría significativamente el tamaño de memoria tampón
y el retardo asociado de puesta en funcionamiento, requerido para
descodificar el flujo de bits.
Si el tamaño físico de la memoria tampón en un
dispositivo descodificador es menor que R, el dispositivo no será
capaz de descodificar tal flujo de bits.
Si el tamaño de memoria tampón es mayor que B,
el dispositivo será capaz de descodificar el flujo de bits pero el
retardo de puesta en funcionamiento será el mismo.
De forma más general, un flujo de bits que se ha
generado de acuerdo con una cubeta con goteo (R, B, F) usualmente
no será susceptible de ser distribuido a través de diferentes redes
de velocidad binaria menor que R, y a una variedad de dispositivos
con tamaños de memoria tampón menores que B. Además, no será
minimizado el retardo de puesta en funcionamiento.
Un descodificador hipotético de referencia
generalizado (GHRD) puede funcionar dada la información de N modelos
de cubeta con goteo,
(4)(R_{1}, B_{1}, F_{1}),
(R_{2}, B_{2}, F_{2}), ..., (R_{N}, B_{N},
F_{N}),
cada uno de los cuales contiene el
flujo de bits. Sin perder generalidad, asumimos que estas cubetas
con goteo están ordenadas desde la menor a la mayor velocidad
binaria, es decir que R_{i} < R_{i + 1}. Asumimos también
que el codificador computa estos modelos de cubeta de goteo
correctamente, y por lo tanto B_{i} < B_{i} _{+
1}.
El valor deseado de N puede ser seleccionado
mediante el codificador. Si N = 1, el GHRD es esencialmente
equivalente al VBV del MPEG. El codificador puede elegir: (a)
preseleccionar valores de cubeta con goteo y codificar el flujo de
bits con un control de velocidad, asegurando que se satisface la
totalidad de las limitaciones de cubeta de goteo, (b) codificar el
flujo de bits y después utilizar la ecuación (1) para computar un
conjunto de cubetas con goteo que contiene el flujo de bits a N
diferentes valores de R, o (c) hacer ambas cosas. El primer enfoque
(a) puede aplicarse a transmisión en directo o bajo demanda,
mientras que (b) o (c) aplican solo a transmisión bajo demanda.
El número N de cubetas con goteo y los
parámetros de cubeta con goteo (4), son insertados en el flujo de
bits. De este modo, el descodificador puede determinar qué cubeta
con goteo desea utilizar, conociendo la velocidad binaria máxima
disponible para esta, y/o su tamaño físico de memoria tampón. Los
modelos de cubeta con goteo en (4), así como todos los modelos
linealmente interpolados o extrapolados, son de uso viable. La
figura 4 ilustra un conjunto de N modelos de cubeta con goteo, y
sus valores interpolados o extrapolados (R, B).
El tamaño de memoria tampón interpolado B entre
puntos k y k + 1, sigue la línea recta:
B =
{(R_{k+1}-R)/(R_{k+1}-R_{k})}B_{k}
+
{(R-R_{k})/(R_{k+1}-R_{k})}B_{k+1}
\hskip1,5cm
R_{k}<R<R_{k+1}
Análogamente, el llenado inicial de la memoria
tampón del descodificador F puede interpolarse linealmente:
F =
{(R_{k+1}-R)/(R_{k+1}-R_{k})}F_{k}
+
{(R-R_{k})/(R_{k+1}-R_{k})}F_{k+1}
\hskip1,7cm
R_{k}<R<R_{k+1}
La cubeta con goteo resultante con parámetros
(R, B, F) contiene el flujo de bits, debido al que el tamaño mínimo
de memoria tampón B_{min} es convexo tanto en R como en F, es
decir el tamaño mínimo de memoria tampón B_{min} correspondiente
a cualquier combinación convexa (R, F) = a (R_{k}, F_{k}) + (1 -
a) (R_{k+1}, F_{k+1}), 0 < a < 1, es menor o igual que B
= a B_{k} + (1 - a) B_{k + 1}.
Se observa que si R es mayor que R_{N}, la
cubeta con goteo (R, B_{N}, F_{N}) contendrá también el flujo
de bits, y por lo tanto B_{N} y F_{N} son el tamaño de memoria
tampón y el llenado inicial de la memoria tampón del
descodificador, recomendados cuando R > = R_{N}. Si R es menor
que R_{l} puede provocarse el límite superior B = B + (R_{l} -
R) T (y la vez se puede fijar F = B), donde T es la duración
temporal del flujo en segundos. Estos valores (R, B) fuera del
rango de los N puntos, se muestran también en la figura 4.
El documento Working Draft Number 2, revisión 0
(WD-2), del Joint vídeo Team de ISO/IEC MPEG y
ITU-T VCEG, incorpora muchos de los conceptos del
descodificador hipotético de referencia propuesto por Jordi
Ribas-Cobera et al., de Microsoft
Corporation, incorporado aquí como referencia. El documento
WD-2 es similar al descodificador propuesto por
Jordi Ribas-Cobera et al., de Microsoft
Corporation, aunque la sintaxis está algo modificada. Además,
WD-2 describe un algoritmo a modo de ejemplo para
computar B, y F para una frecuencia dada R.
La publicación de aplicación de patente de
EE.UU. número US 2003/0 053 416 A, describe el uso de dos modelos
de cubeta con goteo. El primer conjunto de parámetros de cubeta con
goteo, permitiría la transmisión del vídeo sobre un canal con
velocidad binaria constante, con un retardo de unos 22,5 segundos.
El segundo conjunto de parámetros de cubeta con goteo permitiría la
transmisión del vídeo sobre una red compartida, con una velocidad
máxima de 2500 kbps, o permitiría la reproducción local desde un CD
2x, con un retardo de unos 0,9 segundos.
Un documento de Ribas-Cobera,
J., et al, "A flexible decoder buffer model for JVT video
coding" Int. Conf. on Image processing ICIP 2002, volumen 2, 22
- 25 de septiembre de 2002, páginas 11 - 493 a 11 - 496, XP 002 375
851, revela un descodificador hipotético de referencia para JVT.
De acuerdo con un primer aspecto de la presente
invención, se proporciona un codificador de vídeo que incluye:
- (a)
- un medio para definir un primer conjunto de múltiples valores característicos de una velocidad binaria de transmisión, para una primera parte de un segmento de vídeo;
- (b)
- un medio para definir un segundo conjunto de múltiples valores característicos de un tamaño de memoria tampón, para la primera parte de segmento de vídeo;
- (c)
- un medio para definir un tercer conjunto de múltiples valores característicos de un llenado inicial de memoria tampón, para la primera parte de segmento de vídeo, o característicos de un retardo hasta que se presenta la primera parte del segmento de vídeo;
- (d)
- un medio para seleccionar uno del conjunto de primeros valores, uno del conjunto de segundos valores y uno del conjunto de terceros valores, de forma que la primera parte del segmento de vídeo esté libre de una condición de desbordamiento y de una condición de subdesbordamiento;
- (e)
- un medio para definir un cuarto conjunto de múltiples valores característicos de un llenado inicial de memoria tampón, para una segunda parte del segmento de vídeo, o característicos de un retardo hasta que se presenta una segunda parte del segmento de vídeo; y
- (f)
- un medio para seleccionar uno del conjunto de cuartos valores, de forma que la segunda parte del segmento de vídeo esté libre de una condición de subdesbordamiento y de una condición de desbordamiento.
\vskip1.000000\baselineskip
De acuerdo con otro aspecto de la presente
invención, se proporciona un método de codificación de vídeo que
incluye:
- (a)
- definir un primer conjunto de múltiples valores característicos de una velocidad binaria de transmisión, para una primera parte de un segmento de vídeo;
- (b)
- definir un segundo conjunto de múltiples valores característicos de un tamaño de memoria tampón, para la primera parte del segmento del vídeo;
- (c)
- definir un tercer conjunto de múltiples valores característicos de un llenado inicial de memoria tampón, para la primera parte del segmento de vídeo, o característicos de un retardo hasta que se presenta la primera parte del segmento de vídeo;
- (d)
- seleccionar uno del conjunto de primeros valores, uno del conjunto de segundos valores y uno del conjunto de terceros valores, de modo que la primera parte del segmento de vídeo esté libre de una condición de subdesbordamiento y de una condición de desbordamiento;
- (e)
- definir un cuarto conjunto de múltiples valores característicos de un llenado inicial de la memoria tampón, para una segunda parte del segmento de vídeo, o característicos de un retardo hasta que se presenta una segunda parte del segmento de vídeo; y
- (f)
- seleccionar uno del conjunto de cuartos valores, de forma que la segunda parte del segmento de vídeo esté libre de una condición de subdesbordamiento y de una condición de desbordamiento.
La figura 1 ilustra un llenado de memoria tampón
del descodificador.
La figura 2 ilustra una curva R - B.
las figuras 3A y 3B son representaciones del
llenado de la memoria tampón del descodificador, para algunos
flujos de bits operativos respectivamente en modos CBR y VBR.
La figura 4 ilustra un conjunto de M modelos de
cubeta con goteo, y sus valores interpolados o extrapolados (R,
B).
La figura 5 ilustra el almacenamiento inicial en
memoria tampón B_{j} del descodificador, para cualquier punto que
el usuario busque cuando la velocidad es R_{j}.
La figura 6 ilustra conjuntos de (R, B, F)
definidos en modo avance, para el flujo de vídeo concreto.
La figura 7 ilustra el llenado inicial de
memoria tampón (en bits) para un segmento de vídeo.
La figura 8 ilustra el criterio de selección en
un conjunto de 10 puntos para la figura 7.
La figura 9 ilustra criterios de selección.
La figura 10 ilustra reducciones en el
retardo.
Como se ha descrito previamente, el estándar JVT
(WD-2) permite el almacenamiento de (N >= 1)
cubetas con goteo, valores (R_{1}, B_{1}, F_{1}), ...,
(R_{N}, B_{N}, F_{N}) que están contenidos en el flujo de
bits. Estos valores pueden ser almacenados en el encabezado.
Utilizando F_{i} como el llenado inicial de la memoria tampón y
B_{i} como el tamaño de la memoria tampón, garantiza que la
memoria tampón del descodificador no presentará subdesbordamiento
cuando el flujo de entrada entre a la velocidad R_{i}. Este será
el caso si el usuario desea presentar el vídeo codificado de
principio a fin. En una típica aplicación de vídeo bajo demanda, el
usuario puede querer buscar diferentes partes del flujo de vídeo. El
punto que el usuario desea buscar puede ser aludido como el punto
de acceso. Durante el proceso de recepción de datos de vídeo y
construcción de imágenes de vídeo, la cantidad de datos en la
memoria tampón fluctúa. Tras su consideración, el presente inventor
llega a la comprensión de que si el valor F_{i} de llenado inicial
de la memoria tampón (cuando la velocidad del canal es R_{i}) se
utiliza antes de comenzar a descodificar el vídeo desde el punto de
acceso, entonces es posible que el descodificador presente un
subdesbordamiento. Por ejemplo en el punto de acceso o algo
después, la cantidad de bits necesarios para la reconstrucción de
vídeo puede ser mayor que los bits que hay actualmente en la
memoria tampón, lo que tiene como resultado un subdesbordamiento y
la imposibilidad de presentar imágenes de vídeo de forma oportuna.
Igualmente, puede demostrarse que en un flujo de vídeo el valor de
llenado inicial de memoria tampón, necesario para asegurarse de que
no hay subdesbordamiento en el descodificador, varía en función del
punto que busca el usuario. Este valor está limitado por el B_{i}.
Por consiguiente, la combinación de B y F proporcionados para toda
la secuencia de vídeo, probablemente no será apropiada si se
utiliza para un punto intermedio en el vídeo, teniendo como
resultado un subdesbordamiento y por tanto congelando las
imágenes.
Basándose en este potencial de subdesbordamiento
no comprendido previamente, el presente inventor llega entonces a
la constatación de que si se define solo un conjunto de valores de
R, B y F para un segmento de vídeo completo, entonces el sistema
debería esperar hasta que la memoria tampón B para la
correspondiente velocidad R esté llena, o sustancialmente llena (o
llena por encima del 90%), para comenzar a descodificar imágenes
cuando un usuario salta a un punto de acceso. De este modo el
llenado inicial de la memoria tampón estará al máximo, y por lo
tanto no existe el potencial de subdesbordamiento durante la
subsiguiente descodificación que comience desde el punto de acceso.
Esto puede conseguirse sin ningún cambio adicional en el flujo de
bits existente, y por lo tanto sin impacto sobre los sistemas
existentes. Por consiguiente, el descodificador utilizaría el valor
del almacenamiento inicial en memoria tampón B_{j}, para cualquier
punto que busque el usuario, cuando la velocidad es R_{j}, como
se muestra en la figura 5. Sin embargo, desgraciadamente en
ocasiones esto tiene como resultado un retardo significativo hasta
que se presenta las imágenes, después de seleccionar una
localización diferente (por ejemplo, un punto de acceso) desde la
que presentar el vídeo.
El llenado inicial de memoria tampón (F) puede
análogamente caracterizarse como un retardo hasta que se presenta
la secuencia de vídeo. El retardo es de naturaleza temporal, estando
relacionado con el tiempo necesario para conseguir el llenado
inicial de memoria tampón (F). El retardo y/o F pueden asociarse con
todo el vídeo o con los puntos de acceso. Análogamente, debe
entenderse que el retardo puede sustituirse por F en todas las
realizaciones aquí descritas (por ejemplo (R, B, retardo)). Un valor
concreto para el retardo puede calcularse como retardo = F/R,
utilizando una unidad especial de tiempo (unidades de reloj de 90
kHz).
Para reducir el retardo potencial, el presente
inventor llegó a la comprensión de que puede definirse conjuntos de
(R, B, F) para un flujo de vídeo concreto, en cada punto de acceso.
En referencia a la figura 6, estos conjuntos de (R, B, F) se
definen preferentemente en modo avance, para el flujo de vídeo
concreto. Por ejemplo, el conjunto de valores (R, B, F) puede
computarse de la forma existente previamente para el flujo de vídeo
como un todo, además el conjunto de valores F para los mismos
valores (R, B) que los de todo el flujo de vídeo, puede computarse
de la forma existente previamente para el flujo de vídeo, con
respecto al flujo de vídeo desde la posición "2" en avance,
etcétera. El mismo proceso puede utilizarse para los restantes
puntos de acceso. Los puntos de acceso pueden ser cualquier imagen
dentro de la secuencia de vídeo, imágenes I de la secuencia,
imágenes B de la secuencia, o imágenes P de la secuencia (se utiliza
típicamente imágenes I, B y P en la decodificación de vídeo basada
en MPEG). Por consiguiente, el usuario puede seleccionar uno de los
puntos de acceso, y a continuación utilizar el respectivo F_{ij}
para el llenado inicial deseado (asumiendo que la memoria tampón
B_{i} y la velocidad R_{i} permanecen invariables), o en otro
caso un conjunto de dos o más de R_{i}, B_{i}, F_{ij}.
El índice "i" representa cada cubeta con
goteo, y el índice "j" representa cada punto de acceso
aleatorio. Asumiendo que la memoria tampón B_{i} y la velocidad
R_{i} permanecen invariables, en el encabezado se almacena el
conjunto múltiple de valores (B_{i}, R_{i}, F_{i1}), donde i =
1, 2, ..., N y F_{i1} representa el llenado inicial de la memoria
tampón. Después, en el punto de acceso j se almacena F_{ij}, donde
j = 2, 3, ... Por otra parte, asumiendo que la memoria tampón
B_{i} y la velocidad R_{i} serán modificadas en cada punto de
acceso j, puede almacenarse múltiples conjuntos de valores de
(R_{ij}, B_{ij}, F_{ij}) en cada punto de acceso. El
beneficio del primer caso es que ahorra en la cantidad de datos,
puesto que solo se ha almacenado un conjunto múltiple de F_{ij}
en cada punto de acceso, y el beneficio del último caso es que
puede ajustar el conjunto de valores de forma más apropiada para
cada punto de acceso. Cuando se utiliza el retardo (D) hasta que se
presenta la secuencia de vídeo, en lugar del llenado inicial de la
memoria tampón (F), es posible realizar la invención actual
mediante sustituir F_{ij} con D_{ij}. En este caso D_{ij}
representa el valor del retardo. Así, cuando se asume que la memoria
tampón B_{i} y la velocidad R_{i} permanecen invariables, se
almacena (B_{i}, R_{i}, D_{il}) en el encabezado y se almacena
D_{ij} en cada punto de acceso j. Cuando se asume que la memoria
tampón B_{i} y la velocidad R_{i} cambian en cada punto de
acceso j, puede almacenarse un conjunto múltiple de valores
(B_{ij}, R_{ij}, D_{ij}) en el punto de
acceso.
acceso.
Los conjuntos de valores R, B, F para cada punto
de acceso, pueden estar localizados en cualquier localización
apropiada, tal como por ejemplo al comienzo de la secuencia de
vídeo, junto con conjuntos de valores (R, B, F) para todo el flujo
de vídeo, o antes de cada punto de acceso lo que evita la necesidad
de un índice; o estar almacenados de forma externa al propio flujo
de vídeo, lo que es especialmente adecuado para un entorno de
servidor/cliente.
Esta técnica puede caracterizarse mediante el
siguiente modelo: (R_{1}, B_{1}, F_{1}, M_{1}, f_{11},
t_{11}, ..., f_{M11}, t_{M11}) ..., (R_{N}, B_{N},
F_{N}, M_{N}, f_{1N}, t_{1N}, ..., f_{MNN},
t_{MNN}),
donde f_{kj} denota el valor inicial de
llenado de la memoria tampón a la velocidad R_{j} en el punto de
acceso t_{kj} (marca temporal). Los valores de M_{j} pueden
proporcionarse como un parámetro de entrada, o pueden ser
seleccionados automáticamente. Por ejemplo, M_{j} puede incluir
las siguientes opciones:
- (a)
- M_{j} puede ajustarse al valor igual al número de puntos de acceso. De este modo los valores de f_{kj} puede almacenarse para cada punto de acceso, a cada velocidad R_{j} (bien al comienzo del flujo de vídeo, dentro del flujo de vídeo, distribuido a través del flujo de vídeo, o con cualquier otra localización).
- (b)
- M_{j} puede fijarse igual a cero, sino se desea soporte de búsqueda.
- (c)
- Puede seleccionarse automáticamente M_{j} valores para cada velocidad R_{j} (se describe más abajo).
Para un R_{j} dado, el sistema puede utilizar
un llenado inicial de memoria tampón igual a f_{jk} si el usuario
busca un punto de acceso t_{kj}. Esto ocurre cuando el usuario
selecciona comenzar en un punto de acceso, o bien cuando el sistema
ajusta la selección del usuario a uno de los puntos de acceso.
Se hace notar que en el caso de que se utiliza
una velocidad binaria variable (en flujo de bits), preferentemente
el valor de llenado inicial de la memoria tampón (o retardo) es
diferente al tamaño de memoria tampón (o el retardo calculado por
el tamaño de memoria tampón), aunque puede ser el mismo. En el caso
de una velocidad binaria variable en VBV de MPEG-2,
la memoria tampón se rellena hasta que está llena, es decir F = B
(el valor de B está representado por
tamaño_de_memoria_tampón_de_vbv).
En la presente invención, el valor de llenado
inicial del tamaño de la memoria tampón, puede escogerse
apropiadamente en cada punto de acceso aleatorio, para evitar
cualquier subdesbordamiento o desbordamiento de la memoria tampón.
Cuando se usa el retardo hasta que se presenta la secuencia de
vídeo, en lugar del llenado de la memoria tampón, el valor del
retardo se escoge apropiadamente en cada punto de acceso aleatorio,
para evitar cualquier subdesbordamiento o desbordamiento de la
memoria tampón. Generalmente, esto significa que en cada punto de
acceso aleatorio se consigue un retardo menor que llenando del todo
la memoria tampón VBV. Por lo tanto, la determinación del valor de
llenado de la memoria tampón (o el retardo) que es menor que el
tamaño de la memoria tampón (o el retardo calculado por el tamaño
de la memoria tampón) mediante la presente invención, tiene la
ventaja de un retardo reducido, puesto que se requiere almacenar
menos datos en la memoria tampón antes del comienzo de la
descodificación, que en el arte previo.
Si el sistema permite al usuario saltar a
cualquier imagen del vídeo, a modo de un punto de acceso, entonces
se necesitaría proporcionar el conjunto de datos de descodificación
para todas y cada una de las imágenes. En el caso de que fuera
permisible, el conjunto de datos resultantes sería excesivamente
grande y consumiría una cantidad significativa de la velocidad
binaria disponible para los datos. Un enfoque más razonable sería
limitar al usuario a puntos de acceso específicos dentro del flujo
de vídeo, tal como cada segundo, cada 10 segundos, cada minuto,
etcétera. Aun siendo una mejora, el conjunto de datos resultante
puede seguir siendo algo extenso, teniendo como resultado excesivos
datos para dispositivos con ancho de banda limitado, tales como
dispositivos de comunicación móvil.
En el caso de que el usuario seleccione una
posición que sea uno de los puntos de acceso con un conjunto de
datos asociado, entonces el llenado inicial de memoria tampón puede
ser igual a max(f_{kj}, f_{(k + 1)j}) para
un tiempo entre t_{kj} y t_{(k + 1)j}, especialmente si
los puntos de acceso se seleccionan adecuadamente. De este modo se
garantiza que el sistema tiene un conjunto de valores que estará
libre de tener como resultado una condición de subdesbordamiento, o
en otro caso reduce la probabilidad de una condición de
subdesbordamiento como se explicará más abajo.
Se hace referencia a la figura 7, para
seleccionar un conjunto de valores que asegure que no se produce
condición de subdesbordamiento (o en otro caso, que se reduce)
cuando se ha utilizado el criterio de selección aludido arriba. La
figura 7 ilustra el llenado inicial de la memoria tampón (en bits)
para un segmento de vídeo, donde se calcula en llenado inicial de
la memoria tampón en avance, para incrementos de 10 segundos.
Después, el sistema selecciona preferentemente un punto de acceso
en el comienzo de la secuencia de vídeo, y un punto de acceso al
término del segmento de vídeo. Entre el comienzo y al final del
segmento de vídeo, el sistema selecciona los máximos locales para
su inclusión como puntos de acceso. Además, el sistema puede
seleccionar los mínimos locales para su inclusión como puntos de
acceso. Preferentemente, si se desea un conjunto limitado de puntos
de acceso el sistema selecciona primero los máximos locales y
después los mínimos locales, lo que ayuda a asegurar que no se
produce subdesbordamiento. A continuación, si se desea el sistema
puede seleccionar además puntos intermedios.
Basándose en el criterio de selección, puede
seleccionarse un conjunto de 10 puntos para la figura 7, como se
indica en la figura 8. En referencia la figura 9, los 10 puntos
seleccionados se muestran mediante la curva a trazos. Los valores
resultantes de llenado inicial de la memoria tampón en todos los
puntos de acceso, se muestran mediante la curva continua. La curva
continua ilustra un conjunto "seguro" de valores para todos
los puntos de acceso en el vídeo, de forma que la memoria tampón del
descodificador no presente subdesbordamiento. Si se ha producido
fluctuaciones extremas en la velocidad binaria del flujo de bits
actual, que no se detectaron en el procesamiento, tales como picos
abruptos, entonces es posible que se tenga un subdesbordamiento,
aunque normalmente es improbable. Los valores óptimos de llenado
inicial de la memoria tampón en todos los puntos de acceso, se
muestran mediante una curva a trazos y puntos. Se consigue una
reducción significativa en el retardo temporal de almacenamiento en
memoria tampón, en contraste con requerir una memoria tampón llena
cuando se accede a un punto de acceso, como se ilustra en la figura
10.
Además, si la velocidad binaria y el tamaño de
memoria tampón permanecen iguales mientras se selecciona un punto
de acceso diferente, entonces simplemente necesita proporcionarse o
determinarse de otro modo el llenado modificado de la memoria
tampón, F.
Todas las referencias aquí citadas se incorporan
como referencia.
El alcance de la invención se define mediante
las siguientes reivindicaciones.
\vskip1.000000\baselineskip
US 2003 0 053 416 A [0047]
\bulletRIBAS-CORBERA,
J et al. "A flexible decoder buffer model for JVT video
coding."Int. Conf. on Image processing ICIP 2002, 22 de
septiembre de 2002, volumen 2, 11 - 493 11 496 [0048]
Claims (8)
-
\global\parskip0.900000\baselineskip
1. Un codificador de vídeo, que comprende:- (a)
- un medio para definir un primer conjunto de múltiples valores (R_{i}) característicos de una velocidad binaria de transmisión, para una primera parte de un segmento de vídeo;
- (b)
- un medio para definir un segundo conjunto de múltiples valores (B_{i}) característicos de un tamaño de memoria tampón, para la mencionada la primera parte del mencionado segmento de vídeo;
- (c)
- un medio para definir un tercer conjunto de múltiples valores (F_{i1}, D_{i1}) característicos de un llenado inicial de memoria tampón, para la mencionada primera parte del mencionado segmento de vídeo, o característicos de un retardo hasta que se presenta la mencionada primera parte del mencionado segmento de vídeo;
- (d)
- un medio para seleccionar uno del mencionado conjunto de primeros valores, uno del mencionado conjunto de segundos valores y uno del mencionado conjunto de terceros valores, de forma que la mencionada primera parte del mencionado segmento de vídeo esté libre de una condición de subdesbordamiento y de una condición de desbordamiento;
- (e)
- un medio para definir un cuarto conjunto de múltiples valores (F_{ij}, D_{ij}) característicos de un llenado inicial de memoria tampón, para una segunda parte del mencionado segmento de vídeo, o característicos de un retardo hasta que se presenta una segunda parte del mencionado segmento de vídeo; y
- (f)
- un medio para seleccionar uno del mencionado conjunto de cuartos valores, tal que la mencionada segunda parte del mencionado segmento de vídeo esté libre de una condición de subdesbordamiento y de una condición de desbordamiento.
- 2. El codificador de la reivindicación 1, en el que la mencionada primera parte del mencionado segmento de vídeo es una parte entera del mencionado vídeo.
- 3. El codificador de la reivindicación 1, en el que la mencionada segunda parte del mencionado segmento de vídeo forma un punto de acceso aleatorio del mencionado vídeo.
- 4. El codificador de la reivindicación 1, en el que hay múltiples mencionadas segundas partes del mencionado segmento de vídeo.
- 5. Un método de codificación de vídeo, que comprende:
- (a)
- definir un primer conjunto de múltiples valores (R_{i}) característicos de una velocidad binaria de transmisión, para una primera parte de un segmento de vídeo;
- (b)
- definir un segundo conjunto de múltiples valores (B_{i}) característicos de un tamaño de memoria tampón, para la mencionada primera parte del mencionado segmento de vídeo;
- (c)
- definir un tercer conjunto de múltiples valores (F_{i1}, D_{i1}) característicos de un llenado inicial de la memoria tampón, para la mencionada primera parte del mencionado segmento de vídeo, o característicos de un retardo hasta que se presenta la mencionada primera parte del mencionado segmento de vídeo;
- (d)
- seleccionar uno del mencionado conjunto de primeros valores, uno del mencionado conjunto de segundos valores y uno del mencionado conjunto de terceros valores, tales que la mencionada primera parte del mencionado segmento de vídeo esté libre de una condición de subdesbordamiento y de una condición de desbordamiento;
- (e)
- definir un cuarto conjunto de valores múltiples (F_{ij}, D_{ij}) característicos de un llenado inicial de la memoria tampón, para una segunda parte del mencionado segmento de vídeo, o característicos de un retardo hasta que se presenta una segunda parte del mencionado segmento de vídeo; y
- (f)
- seleccionar uno del mencionado conjunto de cuartos valores, tal que la mencionada segunda parte del mencionado segmento de vídeo esté libre de una condición de subdesbordamiento y de una condición de desbordamiento.
- 6. El método de la reivindicación 5, en el que la mencionada primera parte del mencionado segmento de vídeo es una parte entera del mencionado vídeo.
- 7. El método de la reivindicación 5, en el que la mencionada segunda parte del mencionado segmento de vídeo forma un punto de acceso aleatorio del mencionado vídeo.
- 8. El método de la reivindicación 5, en el que hay múltiples mencionadas segundas partes del mencionado segmento de vídeo.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US404947 | 2003-03-31 | ||
US10/404,947 US7266147B2 (en) | 2003-03-31 | 2003-03-31 | Hypothetical reference decoder |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2300757T3 true ES2300757T3 (es) | 2008-06-16 |
Family
ID=32990219
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES10162205T Expired - Lifetime ES2390596T3 (es) | 2003-03-31 | 2004-03-26 | Codificador de vídeo |
ES04723847T Expired - Lifetime ES2300757T3 (es) | 2003-03-31 | 2004-03-26 | Codificador de video y metodo de codificacion de video. |
ES07000483T Expired - Lifetime ES2348075T3 (es) | 2003-03-31 | 2004-03-26 | Codificador de vídeo y método de codificación de vídeo. |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES10162205T Expired - Lifetime ES2390596T3 (es) | 2003-03-31 | 2004-03-26 | Codificador de vídeo |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES07000483T Expired - Lifetime ES2348075T3 (es) | 2003-03-31 | 2004-03-26 | Codificador de vídeo y método de codificación de vídeo. |
Country Status (11)
Country | Link |
---|---|
US (4) | US7266147B2 (es) |
EP (3) | EP2209319B1 (es) |
JP (4) | JP2006519517A (es) |
CN (3) | CN101854552B (es) |
AT (2) | ATE390019T1 (es) |
DE (2) | DE602004012540T2 (es) |
ES (3) | ES2390596T3 (es) |
HK (2) | HK1145413A1 (es) |
PL (1) | PL2209319T3 (es) |
PT (3) | PT1611747E (es) |
WO (1) | WO2004088988A1 (es) |
Families Citing this family (76)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6307487B1 (en) | 1998-09-23 | 2001-10-23 | Digital Fountain, Inc. | Information additive code generator and decoder for communication systems |
US7068729B2 (en) | 2001-12-21 | 2006-06-27 | Digital Fountain, Inc. | Multi-stage code generator and decoder for communication systems |
US9240810B2 (en) | 2002-06-11 | 2016-01-19 | Digital Fountain, Inc. | Systems and processes for decoding chain reaction codes through inactivation |
JP4546246B2 (ja) | 2002-10-05 | 2010-09-15 | デジタル ファウンテン, インコーポレイテッド | 連鎖的暗号化反応の系統的記号化および復号化 |
US7908130B2 (en) * | 2002-12-12 | 2011-03-15 | Ixia | Modelling aggregate transport layer network traffic behaviour with feedback containing packet loss information |
US7266147B2 (en) * | 2003-03-31 | 2007-09-04 | Sharp Laboratories Of America, Inc. | Hypothetical reference decoder |
US7054774B2 (en) * | 2003-06-27 | 2006-05-30 | Microsoft Corporation | Midstream determination of varying bandwidth availability |
US7979886B2 (en) * | 2003-10-17 | 2011-07-12 | Telefonaktiebolaget Lm Ericsson (Publ) | Container format for multimedia presentations |
US8683535B2 (en) * | 2004-03-26 | 2014-03-25 | Broadcom Corporation | Fast channel change |
US8842175B2 (en) | 2004-03-26 | 2014-09-23 | Broadcom Corporation | Anticipatory video signal reception and processing |
US7162533B2 (en) * | 2004-04-30 | 2007-01-09 | Microsoft Corporation | Session description message extensions |
EP1743431A4 (en) | 2004-05-07 | 2007-05-02 | Digital Fountain Inc | SYSTEM FOR DOWNLOADING AND RECORDING AND CONTINUOUS READING OF FILES |
US8218439B2 (en) * | 2004-11-24 | 2012-07-10 | Sharp Laboratories Of America, Inc. | Method and apparatus for adaptive buffering |
US20060143678A1 (en) * | 2004-12-10 | 2006-06-29 | Microsoft Corporation | System and process for controlling the coding bit rate of streaming media data employing a linear quadratic control technique and leaky bucket model |
US7543073B2 (en) * | 2004-12-10 | 2009-06-02 | Microsoft Corporation | System and process for performing an exponentially weighted moving average on streaming data to establish a moving average bit rate |
KR20060065482A (ko) * | 2004-12-10 | 2006-06-14 | 마이크로소프트 코포레이션 | 스트리밍 미디어 데이터의 코딩 비트 레이트의 제어 시스템및 프로세스 |
US7536469B2 (en) * | 2004-12-10 | 2009-05-19 | Microsoft Corporation | System and process for controlling the coding bit rate of streaming media data employing a limited number of supported coding bit rates |
CN101151829A (zh) * | 2005-04-07 | 2008-03-26 | 诺基亚公司 | 流传送中的缓存 |
CN101686107B (zh) | 2006-02-13 | 2014-08-13 | 数字方敦股份有限公司 | 使用可变fec开销和保护周期的流送和缓冲 |
US9270414B2 (en) | 2006-02-21 | 2016-02-23 | Digital Fountain, Inc. | Multiple-field based code generator and decoder for communications systems |
US7971129B2 (en) | 2006-05-10 | 2011-06-28 | Digital Fountain, Inc. | Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems |
US9209934B2 (en) | 2006-06-09 | 2015-12-08 | Qualcomm Incorporated | Enhanced block-request streaming using cooperative parallel HTTP and forward error correction |
US9432433B2 (en) | 2006-06-09 | 2016-08-30 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
US9386064B2 (en) | 2006-06-09 | 2016-07-05 | Qualcomm Incorporated | Enhanced block-request streaming using URL templates and construction rules |
US9380096B2 (en) | 2006-06-09 | 2016-06-28 | Qualcomm Incorporated | Enhanced block-request streaming system for handling low-latency streaming |
US20100211690A1 (en) * | 2009-02-13 | 2010-08-19 | Digital Fountain, Inc. | Block partitioning for a data stream |
US9419749B2 (en) | 2009-08-19 | 2016-08-16 | Qualcomm Incorporated | Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes |
US9178535B2 (en) | 2006-06-09 | 2015-11-03 | Digital Fountain, Inc. | Dynamic stream interleaving and sub-stream based delivery |
CN101299808B (zh) * | 2007-04-30 | 2011-11-16 | 北京希格玛和芯微电子技术有限公司 | 一种实时图像数据传输方法及装置 |
US9237101B2 (en) | 2007-09-12 | 2016-01-12 | Digital Fountain, Inc. | Generating and communicating source identification information to enable reliable communications |
JP5171413B2 (ja) * | 2008-06-16 | 2013-03-27 | 三菱電機株式会社 | コンテンツ送信装置、コンテンツ受信装置及びコンテンツ送信方法 |
US9281847B2 (en) | 2009-02-27 | 2016-03-08 | Qualcomm Incorporated | Mobile reception of digital video broadcasting—terrestrial services |
US9288010B2 (en) | 2009-08-19 | 2016-03-15 | Qualcomm Incorporated | Universal file delivery methods for providing unequal error protection and bundled file delivery services |
US9917874B2 (en) | 2009-09-22 | 2018-03-13 | Qualcomm Incorporated | Enhanced block-request streaming using block partitioning or request controls for improved client-side handling |
CN102763136B (zh) * | 2010-02-11 | 2015-04-01 | 诺基亚公司 | 用于提供多线程视频解码的方法和设备 |
US9485546B2 (en) | 2010-06-29 | 2016-11-01 | Qualcomm Incorporated | Signaling video samples for trick mode video representations |
US9185439B2 (en) | 2010-07-15 | 2015-11-10 | Qualcomm Incorporated | Signaling data for multiplexing video components |
US9596447B2 (en) | 2010-07-21 | 2017-03-14 | Qualcomm Incorporated | Providing frame packing type information for video coding |
US8825886B2 (en) | 2010-07-28 | 2014-09-02 | Hong Kong Applied Science and Technology Research Institute Company Limited | System and method for evaluating network transport effects on delivery of media content |
US9456015B2 (en) | 2010-08-10 | 2016-09-27 | Qualcomm Incorporated | Representation groups for network streaming of coded multimedia data |
US9270299B2 (en) | 2011-02-11 | 2016-02-23 | Qualcomm Incorporated | Encoding and decoding using elastic codes with flexible source block mapping |
WO2012140821A1 (ja) | 2011-04-12 | 2012-10-18 | パナソニック株式会社 | 動画像符号化方法、動画像符号化装置、動画像復号化方法、動画像復号化装置、および動画像符号化復号化装置 |
EP3337172B1 (en) | 2011-05-24 | 2020-09-09 | Velos Media International Limited | Image encoding method, image encoding apparatus |
EP4213483A1 (en) | 2011-05-27 | 2023-07-19 | Sun Patent Trust | Image coding method, image coding apparatus, image decoding method, image decoding apparatus, and image coding and decoding apparatus |
US9485518B2 (en) | 2011-05-27 | 2016-11-01 | Sun Patent Trust | Decoding method and apparatus with candidate motion vectors |
SG194746A1 (en) | 2011-05-31 | 2013-12-30 | Kaba Gmbh | Image encoding method, image encoding device, image decoding method, image decoding device, and image encoding/decoding device |
US8989271B2 (en) | 2011-05-31 | 2015-03-24 | Panasonic Intellectual Property Corporation Of America | Decoding method and apparatus with candidate motion vectors |
PL2728878T3 (pl) | 2011-06-30 | 2020-06-15 | Sun Patent Trust | Sposób dekodowania obrazów, sposób kodowania obrazów, urządzenie do dekodowania obrazów, urządzenie do kodowania obrazów oraz urządzenie do kodowania/dekodowania obrazów |
MX341415B (es) | 2011-08-03 | 2016-08-19 | Panasonic Ip Corp America | Metodo de codificacion de video, aparato de codificacion de video, metodo de decodificacion de video, aparato de decodificacion de video y aparato de codificacion/decodificacion de video. |
US9253233B2 (en) | 2011-08-31 | 2016-02-02 | Qualcomm Incorporated | Switch signaling methods providing improved switching between representations for adaptive HTTP streaming |
US9106927B2 (en) | 2011-09-23 | 2015-08-11 | Qualcomm Incorporated | Video coding with subsets of a reference picture set |
US9843844B2 (en) | 2011-10-05 | 2017-12-12 | Qualcomm Incorporated | Network streaming of media data |
CN108881903B (zh) | 2011-10-19 | 2022-01-04 | 太阳专利托管公司 | 图像编码方法及装置、图像解码方法及装置、编解码装置 |
US9264717B2 (en) * | 2011-10-31 | 2016-02-16 | Qualcomm Incorporated | Random access with advanced decoded picture buffer (DPB) management in video coding |
KR20130058584A (ko) | 2011-11-25 | 2013-06-04 | 삼성전자주식회사 | 복호화기의 버퍼 관리를 위한 영상 부호화 방법 및 장치, 그 영상 복호화 방법 및 장치 |
US9294226B2 (en) | 2012-03-26 | 2016-03-22 | Qualcomm Incorporated | Universal object delivery and template-based file delivery |
CN107801029B (zh) * | 2012-04-23 | 2020-06-05 | 太阳专利托管公司 | 编码方法及编码装置 |
JP5994367B2 (ja) * | 2012-04-27 | 2016-09-21 | 富士通株式会社 | 動画像符号化装置、動画像符号化方法 |
US20140003534A1 (en) | 2012-07-02 | 2014-01-02 | Sony Corporation | Video coding system with temporal scalability and method of operation thereof |
US9912941B2 (en) | 2012-07-02 | 2018-03-06 | Sony Corporation | Video coding system with temporal layers and method of operation thereof |
US10110890B2 (en) | 2012-07-02 | 2018-10-23 | Sony Corporation | Video coding system with low delay and method of operation thereof |
JP6094126B2 (ja) * | 2012-10-01 | 2017-03-15 | 富士通株式会社 | 動画像復号装置 |
EP3001871B1 (en) * | 2013-03-15 | 2023-06-07 | Inscape Data, Inc. | Systems and methods for addressing a media database using distance associative hashing |
JP6344386B2 (ja) * | 2013-06-06 | 2018-06-20 | 日本電気株式会社 | 時系列データ符号化装置、方法およびプログラム、並びに時系列データ再符号化装置、方法およびプログラム |
JP6146471B2 (ja) * | 2013-07-26 | 2017-06-14 | 富士通株式会社 | 符号化装置、符号化方法、および符号化プログラム |
CN105594215B (zh) * | 2013-10-11 | 2019-04-23 | 夏普株式会社 | 颜色信息和色度信令 |
JP6271756B2 (ja) * | 2013-12-02 | 2018-01-31 | ドルビー・インターナショナル・アーベー | ビットレート信号伝達の方法および該方法を可能にするビットストリーム・フォーマット |
US10063867B2 (en) * | 2014-06-18 | 2018-08-28 | Qualcomm Incorporated | Signaling HRD parameters for bitstream partitions |
US10979747B2 (en) * | 2017-12-21 | 2021-04-13 | Arris Enterprises Llc | Statistical multiplexing system for variable bit rate encoding with constant bit rate encoder |
MX2021013535A (es) | 2019-05-06 | 2022-01-31 | Huawei Tech Co Ltd | Señalización de punto de recuperación en codificación de video. |
CN117528101A (zh) * | 2019-09-24 | 2024-02-06 | 华为技术有限公司 | 序列级hrd参数 |
US11483227B2 (en) | 2020-10-13 | 2022-10-25 | Keysight Technologies, Inc. | Methods, systems and computer readable media for active queue management |
US11483228B2 (en) | 2021-01-29 | 2022-10-25 | Keysight Technologies, Inc. | Methods, systems, and computer readable media for network testing using an emulated data center environment |
US11405302B1 (en) | 2021-03-11 | 2022-08-02 | Keysight Technologies, Inc. | Methods, systems, and computer readable media for network testing using configurable test infrastructure |
US11388081B1 (en) | 2021-03-30 | 2022-07-12 | Keysight Technologies, Inc. | Methods, systems, and computer readable media for impairment testing using an impairment device |
US11765068B2 (en) | 2021-12-22 | 2023-09-19 | Keysight Technologies, Inc. | Methods, systems, and computer readable media for programmable data plane processor based traffic impairment |
Family Cites Families (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02272851A (ja) * | 1989-04-14 | 1990-11-07 | Oki Electric Ind Co Ltd | 画像パケット組立方式及び分解方式 |
US5159447A (en) * | 1991-05-23 | 1992-10-27 | At&T Bell Laboratories | Buffer control for variable bit-rate channel |
US5287182A (en) * | 1992-07-02 | 1994-02-15 | At&T Bell Laboratories | Timing recovery for variable bit-rate video on asynchronous transfer mode (ATM) networks |
US5365552A (en) * | 1992-11-16 | 1994-11-15 | Intel Corporation | Buffer fullness indicator |
US5481543A (en) * | 1993-03-16 | 1996-01-02 | Sony Corporation | Rational input buffer arrangements for auxiliary information in video and audio signal processing systems |
JPH07107429A (ja) * | 1993-10-05 | 1995-04-21 | Matsushita Electric Ind Co Ltd | 画像信号の記録装置及び画像信号の再生装置 |
US5398072A (en) * | 1993-10-25 | 1995-03-14 | Lsi Logic Corporation | Management of channel buffer in video decoders |
US6055270A (en) * | 1994-04-20 | 2000-04-25 | Thomson Cosumer Electronics, Inc. | Multiplexer system using constant bit rate encoders |
CA2146801C (en) * | 1994-05-27 | 1999-11-02 | Barin Geoffry Haskell | Timing recovery for variable bit-rate video on asynchronous transfer mode (atm) networks |
US5534944A (en) * | 1994-07-15 | 1996-07-09 | Matsushita Electric Corporation Of America | Method of splicing MPEG encoded video |
IT1266945B1 (it) * | 1994-09-29 | 1997-01-21 | Cselt Centro Studi Lab Telecom | Procedimento di multiplazione per flussi di segnali audiovisivi codificati secondo lo standard mpeg1. |
JP3058028B2 (ja) * | 1994-10-31 | 2000-07-04 | 三菱電機株式会社 | 画像符号化データ再符号化装置 |
US5629736A (en) * | 1994-11-01 | 1997-05-13 | Lucent Technologies Inc. | Coded domain picture composition for multimedia communications systems |
US5543853A (en) * | 1995-01-19 | 1996-08-06 | At&T Corp. | Encoder/decoder buffer control for variable bit-rate channel |
US5533021A (en) * | 1995-02-03 | 1996-07-02 | International Business Machines Corporation | Apparatus and method for segmentation and time synchronization of the transmission of multimedia data |
US5652749A (en) * | 1995-02-03 | 1997-07-29 | International Business Machines Corporation | Apparatus and method for segmentation and time synchronization of the transmission of a multiple program multimedia data stream |
US5619341A (en) * | 1995-02-23 | 1997-04-08 | Motorola, Inc. | Method and apparatus for preventing overflow and underflow of an encoder buffer in a video compression system |
US5877812A (en) * | 1995-11-21 | 1999-03-02 | Imedia Corporation | Method and apparatus for increasing channel utilization for digital video transmission |
US5686964A (en) * | 1995-12-04 | 1997-11-11 | Tabatabai; Ali | Bit rate control mechanism for digital image and video data compression |
US6085221A (en) * | 1996-01-08 | 2000-07-04 | International Business Machines Corporation | File server for multimedia file distribution |
EP0841820A3 (en) * | 1996-11-08 | 2005-11-09 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for encoding, multiplexing and transmitting a video signal |
US5982436A (en) * | 1997-03-28 | 1999-11-09 | Philips Electronics North America Corp. | Method for seamless splicing in a video encoder |
US6023296A (en) * | 1997-07-10 | 2000-02-08 | Sarnoff Corporation | Apparatus and method for object based rate control in a coding system |
US6188703B1 (en) * | 1997-08-01 | 2001-02-13 | International Business Machines Corp. | Multiplexer for multiple media streams |
US6397251B1 (en) * | 1997-09-02 | 2002-05-28 | International Business Machines Corporation | File server for multimedia file distribution |
US6366704B1 (en) * | 1997-12-01 | 2002-04-02 | Sharp Laboratories Of America, Inc. | Method and apparatus for a delay-adaptive rate control scheme for the frame layer |
US6301428B1 (en) * | 1997-12-09 | 2001-10-09 | Lsi Logic Corporation | Compressed video editor with transition buffer matcher |
JP4232209B2 (ja) * | 1998-01-19 | 2009-03-04 | ソニー株式会社 | 圧縮画像データの編集装置及び圧縮画像データの編集方法 |
US6269120B1 (en) * | 1998-03-23 | 2001-07-31 | International Business Machines Corporation | Method of precise buffer management for MPEG video splicing |
US6289129B1 (en) * | 1998-06-19 | 2001-09-11 | Motorola, Inc. | Video rate buffer for use with push dataflow |
US6912251B1 (en) * | 1998-09-25 | 2005-06-28 | Sarnoff Corporation | Frame-accurate seamless splicing of information streams |
DE69930216T2 (de) * | 1998-10-13 | 2006-12-07 | Matsushita Electric Industrial Co., Ltd., Kadoma | Regelung des Rechen- und Speicheraufwands zur Datenfolgekompression in einem Videodekoder |
JP3438613B2 (ja) * | 1998-10-20 | 2003-08-18 | 三菱電機株式会社 | 符号化データ切替装置および符号化データ切替方法 |
US6272566B1 (en) * | 1998-11-18 | 2001-08-07 | International Business Machines Corporation | System for maintaining proper buffering within video play list |
US6637031B1 (en) * | 1998-12-04 | 2003-10-21 | Microsoft Corporation | Multimedia presentation latency minimization |
US6389072B1 (en) * | 1998-12-23 | 2002-05-14 | U.S. Philips Corp. | Motion analysis based buffer regulation scheme |
IL160386A (en) * | 1999-04-06 | 2005-11-20 | Broadcom Corp | Video encoding and video/audio/data multiplexing device |
US6909743B1 (en) * | 1999-04-14 | 2005-06-21 | Sarnoff Corporation | Method for generating and processing transition streams |
US6587506B1 (en) * | 1999-11-02 | 2003-07-01 | Matsushita Electric Industrial Co., Ltd. | Video editing apparatus, video editing method, and data storage medium for a video editing program |
US7292782B2 (en) | 2000-09-27 | 2007-11-06 | Victor Company Of Japan, Limited | MPEG picture data recording apparatus, MPEG picture data recording method, MPEG picture data recording medium, MPEG picture data generating apparatus, MPEG picture data reproducing apparatus, and MPEG picture data reproducing method |
JP3721972B2 (ja) * | 2000-09-27 | 2005-11-30 | 日本ビクター株式会社 | Mpeg画像データ記録方法 |
US6763067B2 (en) * | 2000-10-10 | 2004-07-13 | Sarnoff Corporation | Rate control for bitstream re-encoding |
CN1223197C (zh) * | 2000-10-10 | 2005-10-12 | 皇家菲利浦电子有限公司 | 用于数字视频记录的视频比特率控制方法和设备 |
US6907481B2 (en) * | 2001-03-06 | 2005-06-14 | Ati Technologies, Inc. | System for bit-rate controlled digital stream playback and method thereof |
JP2003092752A (ja) * | 2001-09-19 | 2003-03-28 | Mitsubishi Electric Corp | 多重化装置、多重化方法、画像復号装置、画像復号方法 |
US7646816B2 (en) * | 2001-09-19 | 2010-01-12 | Microsoft Corporation | Generalized reference decoder for image or video processing |
KR100468726B1 (ko) * | 2002-04-18 | 2005-01-29 | 삼성전자주식회사 | 실시간 가변 비트율 제어를 수행하는 부호화 장치 및 방법 |
US7257162B2 (en) * | 2002-07-02 | 2007-08-14 | Conexant Systems, Inc. | Hypothetical reference decoder for compressed image and video |
US7266147B2 (en) * | 2003-03-31 | 2007-09-04 | Sharp Laboratories Of America, Inc. | Hypothetical reference decoder |
US7380028B2 (en) * | 2003-06-13 | 2008-05-27 | Microsoft Corporation | Robust delivery of video data |
US8345754B2 (en) * | 2003-09-07 | 2013-01-01 | Microsoft Corporation | Signaling buffer fullness |
US7535959B2 (en) * | 2003-10-16 | 2009-05-19 | Nvidia Corporation | Apparatus, system, and method for video encoder rate control |
US9654533B2 (en) * | 2013-01-17 | 2017-05-16 | Electronics And Telecommunications Research Institute | Method of adaptively delivering media based on reception status information from media client and apparatus using the same |
-
2003
- 2003-03-31 US US10/404,947 patent/US7266147B2/en not_active Ceased
-
2004
- 2004-03-26 AT AT04723847T patent/ATE390019T1/de not_active IP Right Cessation
- 2004-03-26 PT PT04723847T patent/PT1611747E/pt unknown
- 2004-03-26 PT PT07000483T patent/PT1791369E/pt unknown
- 2004-03-26 ES ES10162205T patent/ES2390596T3/es not_active Expired - Lifetime
- 2004-03-26 DE DE602004012540T patent/DE602004012540T2/de not_active Expired - Lifetime
- 2004-03-26 JP JP2005518546A patent/JP2006519517A/ja active Pending
- 2004-03-26 PT PT10162205T patent/PT2209319E/pt unknown
- 2004-03-26 CN CN201010198922.XA patent/CN101854552B/zh not_active Expired - Lifetime
- 2004-03-26 CN CN201010199014.2A patent/CN101854553B/zh not_active Expired - Lifetime
- 2004-03-26 CN CN2004800075271A patent/CN1826812B/zh not_active Expired - Lifetime
- 2004-03-26 ES ES04723847T patent/ES2300757T3/es not_active Expired - Lifetime
- 2004-03-26 EP EP10162205A patent/EP2209319B1/en not_active Expired - Lifetime
- 2004-03-26 EP EP07000483A patent/EP1791369B1/en not_active Expired - Lifetime
- 2004-03-26 AT AT07000483T patent/ATE472228T1/de not_active IP Right Cessation
- 2004-03-26 DE DE602004027847T patent/DE602004027847D1/de not_active Expired - Lifetime
- 2004-03-26 PL PL10162205T patent/PL2209319T3/pl unknown
- 2004-03-26 ES ES07000483T patent/ES2348075T3/es not_active Expired - Lifetime
- 2004-03-26 EP EP04723847A patent/EP1611747B1/en not_active Expired - Lifetime
- 2004-03-26 WO PCT/JP2004/004374 patent/WO2004088988A1/en active IP Right Grant
-
2007
- 2007-03-07 JP JP2007057153A patent/JP5025289B2/ja not_active Expired - Lifetime
-
2009
- 2009-09-03 US US12/553,836 patent/USRE43062E1/en active Active
-
2010
- 2010-03-11 JP JP2010053952A patent/JP5444047B2/ja not_active Expired - Lifetime
- 2010-12-17 HK HK10111836.3A patent/HK1145413A1/xx not_active IP Right Cessation
-
2011
- 2011-02-10 HK HK11101310.8A patent/HK1147374A1/xx not_active IP Right Cessation
- 2011-10-28 US US13/284,683 patent/USRE45983E1/en active Active
-
2012
- 2012-02-09 JP JP2012025690A patent/JP5536811B2/ja not_active Expired - Lifetime
-
2015
- 2015-12-15 US US14/970,087 patent/USRE48953E1/en active Active
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2300757T3 (es) | Codificador de video y metodo de codificacion de video. | |
ES2623635T3 (es) | Decodificador de referencia generalizado de procesamiento de imagen o video | |
ES2331111T3 (es) | Transmision y recepcion de datos en tiempo real. | |
US20180220174A1 (en) | Variable bit video streams for adaptive streaming | |
ES2956362T3 (es) | Procesador de datos y transporte de datos de control del usuario a decodificadores de audio y renderizadores | |
JP4819126B2 (ja) | 携帯放送システムにおける多重ストリーム受信装置及び方法 | |
FI116016B (fi) | Puskurointijärjestely | |
KR20020026250A (ko) | 비디오 신호 인코딩 및 버퍼 관리 | |
ES2746184T3 (es) | Distribución de tasa de bits mejorada | |
ES2290146T3 (es) | Sistema y metodo para proporcionar una reproduccion instantanea desde multiples perspectivas. | |
ES2386518T3 (es) | Método y aparato para recibir contenidos | |
Ribas-Corbera et al. | A flexible decoder buffer model for JVT video coding | |
US20020023269A1 (en) | Data distribution apparatus and method, and data distribution system | |
US20070019925A1 (en) | Systems, methods, and apparatus for trick mode | |
Diez et al. | Traffic model for scalable and non scalable MPEG VBR Video | |
US9467719B2 (en) | System and method for the transmission of data and streams containing video data Dvideo in a channel with given bitrate | |
JP2004363820A (ja) | 動画像符号化装置及び動画像復号化システム |