MXPA05002511A - Un metodo y un aparato para controlar la velocidad de una secuencia de video; un dispositivo que codifica un video. - Google Patents
Un metodo y un aparato para controlar la velocidad de una secuencia de video; un dispositivo que codifica un video.Info
- Publication number
- MXPA05002511A MXPA05002511A MXPA05002511A MXPA05002511A MXPA05002511A MX PA05002511 A MXPA05002511 A MX PA05002511A MX PA05002511 A MXPA05002511 A MX PA05002511A MX PA05002511 A MXPA05002511 A MX PA05002511A MX PA05002511 A MXPA05002511 A MX PA05002511A
- Authority
- MX
- Mexico
- Prior art keywords
- interframe
- target
- coding
- frame
- time
- Prior art date
Links
Classifications
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/587—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/115—Selection of the code volume for a coding unit prior to coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- 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/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- 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/149—Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
-
- 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/152—Data rate or code amount at the encoder output by measuring the fullness of 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/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/156—Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
-
- 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- 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/164—Feedback from the receiver or from the transmission channel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Un metodo para el control de la velocidad para codificar una secuencia de video, en donde la secuencia de video comprende una pluralidad de grupos de imagenes, en donde cada Grupo de Imagenes comprende al menos un cuadro I y un Intercuadro, el metodo de control de la velocidad comprende los siguientes pasos para la codificacion del Intercuadro en el Grupo de Imagenes: determinar una velocidad deseada del cuadro basandose en un ancho de banda disponible de un canal para transmitir la secuencia de video y en recursos computacionales disponibles para el proceso de codificacion; determinar un nivel objetivo de la memoria intermedia basandose en la velocidad deseada del cuadro y la posicion del Intercuadro con respecto al cuadro I; y determinar una velocidad objetivo del bit basandose en el nivel objetivo de la memoria intermedia y el ancho de banda disponible del canal, en donde la velocidad objetivo del bit se utiliza para controlar la velocidad de codificacion de la secuencia de video.
Description
wo 200 /023821 Ai i mu iiiuiii ii mili mil mu mu mi i ii ni mu mil mu mu ítiiimi iimi mi mi mi
ES, FI, FR, GB, GR, IE, IT, LU, MC, NL. PT, SE, SK, For two-letter codes and olher abbreviations, refer to ¡he "G id- TR), OAPI patent (BF, BJ, CF, CG, CI, CM, GA, GN, GQ, ance Notes on Codes and Abbreviations" appearing at the begin- GW, ML, MR, ??, SN, TD, TG). ning ofeach regular issue ofthe PCT Gazette. Publishcd: — with intern tionat search reporí
UN MÉTODO Y UN APARATO PARA CONTROLAR LA VELOCIDAD DE UNA SECUENCIA DE VIDEO; UN DISPOSITIVO QUE CODIFICA UN VIDEO
Esta invención se relaciona con un método y un aparato para controlar la velocidad para codificar una secuencia de video, y un dispositivo para codificar un video, en donde se toman en cuenta el ancho de banda del canal y los recursos computacionales disponibles.
ANTECEDENTES DE LA INVENCIÓN El control de la velocidad juega un papel importante en la codificación de un video en vivo, sobre un canal con un ancho de banda limitado, por ejemplo, sobre la Internet o una red inalámbrica, y se ha estudiado ampliamente por muchos investigadores. Los resultados existentes sobre el control de la velocidad como se describen en [1] , [2] , [3] , [4] , se basan en la suposición de que los recursos computacionales son siempre suficientes, y por lo tanto, la velocidad deseada de codificación del cuadro siempre está garantizada. Sin embargo, cuando un video en vivo se codifica vía un programa bajo un medio de múltiples tareas, los recursos computacionales de la Unidad de Procesamiento Central (CPU) , pueden no siempre ser suficientes para el proceso de codificación. Esto es debido al hecho de que 2
los recursos computacionales de la CPU pueden tomarse por otros procesos que tienen una prioridad más alta. En los sistemas de codificación de videos en tiempo real, los bits codificados se almacenan en una memoria intermedia antes de que se transmitan sobre la red a un decodificador . Cuando son asignados recursos computacionales insuficientes para el proceso de codificación, la velocidad real de codificación del cuadro es menor que la velocidad deseada del cuadro, y el número de bits almacenados en la memoria intermedia es demasiado bajo. Como resultado, el ancho de banda disponible del canal se desperdicia. Este fenómeno es especialmente común cuando el proceso de codificación de video se implementa en un dispositivo portátil con capacidades computaciones limitadas. También, la mayoría de los métodos de control de la velocidad, existentes, se enfocan en el caso en que el ancho de banda disponible del canal para la transmisión del video, es constante. Sin embargo, cuando el video en vivo se transmite sobre un canal con un ancho de banda limitado como en la Internet o una red inalámbrica, el ancho de banda disponible del canal para la transmisión del video usualmente varía con el tiempo. Cuando el ancho de banda disponible del canal disminuye, el número de bits en la memoria intermedia se acumula. Cuando el número de bits en la memoria intermedia es demasiado grande, el codificador 3
usualmente se salta algunos cuadros para reducir el retardo de la memoria intermedia y evitar el desbordamiento de la memoria intermedia. El saltado de cuadros produce una discontinuidad indeseable en el movimiento, en la secuencia del video. Una enseñanza reciente en la referencia [5] , describe un método de control de la velocidad, que puede adaptar la velocidad de codificación al ancho de banda disponible variable. El método de control de la velocidad utiliza un modelo de flujo fluido para calcular una velocidad objetivo del bit para cada cuadro de la secuencia de video. Sin embargo, el método de control de la velocidad como se describe en [5] , no toma en cuenta los recursos computacionales disponibles. Además, el número total de bits asignado a cada Grupo de Imágenes (GOP) , se distribuye a cada cuadro P en el GOP, de manera uniforme.
SUMARIO DE LA INVENCIÓN Es un objeto de la invención proporcionar un método de control de la velocidad que es adecuado para el proceso de codificación de video en vivo, con recursos computacionales variables, y un ancho de banda disponible variable . El objeto se logra mediante un método para controlar la velocidad para codificar una secuencia de 4
video, en donde la secuencia de video comprende una pluralidad de Grupos de Imágenes (GOP) , en donde cada Grupo de Imágenes comprende al menos un cuadro I y un Intercuadro, el método comprende los siguientes pasos para la codificación de cada Intercuadro en el Grupo de Imágenes; determinar una velocidad deseada del cuadro, basándose en el ancho de banda disponible de un canal para transmitir la secuencia de video y en recursos computacionales disponibles para el proceso de codificación; determinar un nivel objetivo de la memoria intermedia basándose en la velocidad deseada del cuadro y la posición del Intercuadro con respecto al cuadro I; y determinar una velocidad objetivo del bit basándose en el nivel objetivo de la memoria intermedia y el ancho de banda disponible del canal, en donde la velocidad objetivo del bit se utiliza para controlar la velocidad para codificar la secuencia de video. Se supone que una secuencia de video en el GOP comprende un cuadro I (un Intracuadro, es decir, un cuadro que está completamente codificado sin realizar una estimación del movimiento y una compensación del movimiento) , y una pluralidad de cuadros P (cuadros Predictivos, es decir, cuadros que son codificados utilizando estimación del movimiento y compensación del movimiento) o cuadros B (cuadros Bidireccionales, es decir, 5
cuadros que se codifican utilizando estimación del movimiento y compensación del movimiento de dos Intracuadros adyacentes), como Intercuadros . Los bits son asignados al cuadro I basándose en su complejidad, y los bits son asignados a cada Intercuadro, de manera preferida de cada cuadro P, utilizando el método de control de la velocidad de acuerdo con la invención. Aunque el método de control de la velocidad, en particular la determinación del nivel objetivo de la memoria intermedia y la velocidad objetivo del bit correspondiente, se realiza de manera preferida en los cuadros P de los GOP, sin embargo, debe notarse que el método de control de la velocidad de acuerdo con la invención también puede realizarse en los cuadros B. Cuando se codifica el Intercuadro, de manera preferida el cuadro P, una velocidad deseada del cuadro se determina primero basándose en el ancho de banda disponible del canal y los recursos computacionales disponibles para el proceso de codificación. La velocidad deseada del cuadro no permanece constante, sino que cambia de manera adaptativa para cada Intercuadro, dependiendo del ancho de banda disponible del canal y de los recursos computacionales disponibles. Cuando los recursos computacionales disponibles son insuficientes para alcanzar la velocidad deseada del
52/290 6
cuadro, los bits codificados acumulados en la memoria intermedia del codificador son, por lo tanto bajos, resultando en un subdesbordamiento de la memoria intermedia y en el desperdicio del ancho de banda del canal. Por lo tanto, un nivel objetivo de la memoria intermedia se predefine para evitar el subdesbordamiento de la memoria intermedia, tomando en cuenta los recursos computacionales disponibles para el proceso de codificación. El nivel objetivo de la memoria intermedia define cómo se va a distribuir el número total de bits que están asignados al GOP, a cada Intercuadro (de manera preferida, cuadro P) , del GOP, es decir, la asignación para cada Intercuadro. Sin embargo, normalmente hay una diferencia entre la asignación de cada Intercuadro y los bits reales utilizados por éste. Para asegurar que cada Intercuadro, y por lo tanto cada GOP, utiliza su propia asignación, se calcula la velocidad. objetivo del bit para cada Intercuadro. La velocidad objetivo del bit se calcula utilizando un modelo de flujo fluido y una teoría de control del sistema lineal, y tomando en cuenta el nivel objetivo de la memoria intermedia y el ancho de banda disponible del canal. La velocidad deseada del cuadro, se obtiene determinando un intervalo objetivo del tiempo de codificación para el Intercuadro, de manera preferida, el 7
cuadro P, es decir, el tiempo requerido para codificar el Intercuadro. El tiempo objetivo de codificación es inversamente proporcional a la velocidad deseada del cuadro, y se determina basándose en el ancho de banda disponible y también basándose de manera preferida, en el tiempo promedio de codificación. El intervalo promedio del tiempo de codificación para codificar el Intercuadro, es proporcional a los recursos computacionales, y por lo tanto, es indicativo de los recursos computacionales disponibles. El ancho de banda disponible puede estimarse utilizando el método descrito en [6] . El intervalo objetivo del tiempo de codificación para codificar el Intercuadro se determina utilizando las siguientes ecuaciones:
Tf¡ («) = A, * 7 (» - 1) si Bmad(«) > 5, * TBmad («), Tf¡ («) = A2*Tfi(n- 1) si Bmad(») > B2 * TBmad(«), Tfl (n) = Tf¡ {n - 1) de otra manera, en donde Tfi (n) es el intervalo objetivo del tiempo de codificación o el tiempo objetivo requerido para codificar el Intercuadro, Ai es un parámetro en donde 0.80 < Ai < 1.00, A2 es un parámetro en donde 1.00 < A2 < 1.10, Bi es un parámetro en donde 1.00 < Bi < 2.00, 8
B2 es un parámetro en donde 0 < B2 < 1.00, TBmad(n) es el promedio de Bmad(n) , y Bmad(n) se relaciona con el intervalo promedio del tiempo de codificación Tave por
MAD(n)
en donde u(n) es el ancho de banda disponible del canal, Tave(n-1) es el intervalo promedio del tiempo de codificación para el Intercuadro, y MAD(n) es la diferencia media absoluta entre el cuadro actual y el cuadro previo. De acuerdo con la invención, Ax se ajusta de manera preferida a 0.9, A2 se ajusta de manera preferida a 1.05, ?? se ajusta de manera preferida a 1.5, y B2 se ajusta de manera preferida a 0.25. El valor del intervalo objetivo del tiempo de codificación Tfi(n) obtenido, se ajustará además, de manera preferida, utilizando la siguiente ecuación:
El intervalo objetivo del tiempo de codificación 9
Tfi(n) está relacionado de manera inversa a la velocidad deseada del cuadro . El intervalo promedio del tiempo de codificación se determina utilizando la información en un intervalo de tiempo de codificación real para codificar el Intercuadro, el intervalo objetivo del tiempo de codificación, y el número de cuadros saltados debido al desbordamiento de la memoria intermedia. El intervalo promedio del tiempo de codificación se determina utilizando la siguiente ecuación:
en donde Tave(n) el es el intervalo promedio de tiempo para codificar el Intercuadro, ? es un factor de ponderación, Tc (n) es el tiempo real para codificar el
Intercuadro, Fr es una velocidad predefinida del cuadro, y RTst se define además como
2/290 10
RTsl(«) = max{rc (n),Tfi («)]+ RTfi(n - 1)
de otra manera, en donde Npost(n) es el número de cuadros saltados debido al desbordamiento de la memoria intermedia y se refiere al entero más grande menor que a. El uso del método basado de una ventana deslizante para calcular Tfi (n) , tiene la ventaja de reducir el efecto del ruido brusco en el desempeño general de todo el proceso de codificación. Este método simple para ustar la velocidad deseada del cuadro de acuerdo con la invención, es capaz de mantener la calidad de los Intercuadros en un intervalo tolerable bajo el ancho de banda del canal que varía con el tiempo y el cambio súbito en el movimiento sin la degradación obvia en la uniformidad perceptual del movimiento . La velocidad deseada del cuadro se determina utilizando la información en el intervalo promedio del tiempo de codificación Tave(n), y por lo tanto, se basa en los recursos computacionales disponibles. En cada GOP, el nivel objetivo de la memoria intermedia en cada cuadro, se predefine de una manera tal que más bits se asignan a los Intercuadros, de manera preferida, los cuadros P más cercanos al cuadro I del GOP
52/290 11
que a los Intercuadros que están más lejos y que pertenecen al mismo GOP. De esta manera, los Intercuadros que están más cerca al cuadro I se codifican con una alta calidad, y los Intercuadros subsiguientes que se predicen a partir de estos Intercuadros de alta calidad, también son de alta calidad. Como resultado, la ganancia en la predicción basada en estos Intercuadros se mejora. El nivel objetivo de la memoria intermedia para el Intercuadro se predefine y determina utilizando la siguiente ecuación:
Target{n) = Target(n - 1) - —i * ? Wpos (n + j) Ngop-l ti
en donde Target (n) es el nivel objetivo de la memoria intermedia, Ng0p es el número de cuadros en un GOP, Bs es el tamaño de la memoria intermedia, Bc es la ocupancia real de la memoria intermedia después de codificar el cuadro I, Sc es un número promedio de cuadros saltados debido a recursos computacionales disponibles insuficientes para codificar el Intercuadro de acuerdo con la velocidad deseada del cuadro, y pos() es la ponderación de la
52/290 12
posición del iesitno Intercuadro que satisface
? Wpos {l) = Ngap - l i=\ Y
El número promedio de cuadros saltados debido a los recursos computacionales insuficientes, se determina basándose en un número instantáneo de cuadros saltados Sc(n) , debido a los recursos computacionales insuficientes cuando el Intercuadro se codifica. El número instantáneo de cuadros saltados debido a recursos computacionales insuficientes, se determina utilizando la información en el intervalo de tiempo de codificación real y el intervalo objetivo del tiempo de codificación. La determinación del número instantáneo de cuadros saltados debido a recursos computacionales insuficientes, puede resumirse utilizando las siguientes ecuaciones:
en donde TST(n) se define además como
52/290 TST(n) = max 0,TST(n - 1) + maxfc («), Tfl («)}
TST(n - \) es como se definió
en donde Tc es el intervalo de tiempo de codificación real, y Fr es una velocidad predefinida del cuadro. El número promedio de cuadros saltados debido a recursos computacionales insuficientes, se determina a continuación utilizando la siguiente ecuación:
en donde T es un factor de ponderación. La ventaja de utilizar el número promedio de cuadros saltados Sc en lugar de un número instantáneo de cuadros saltados para calcular el nivel objetivo de la memoria intermedia, es que el valor de Sc cambia lentamente. Este cambio lento de Sc coincide con un ajuste lento de un parámetro de cuantificación Q utilizado para el proceso de codificación del video. Sin embargo, deberá notarse que en una modalidad alterna de la invención, el número instantáneo de cuadros
52/290 14
saltados Sc(n) , puede utilizarse en lugar del número promedio de cuadros saltados Sc (n) para determinar el nivel objetivo de la memoria intermedia. En el caso cuando el ancho de banda del canal es constante, la complejidad de cada cuadro es la misma, y la velocidad deseada del cuadro está garantizada, el nivel objetivo de la memoria intermedia para el nesin10 Intercuadro en el iesim0 GOP puede simplificarse para que se vuelva
Target(n) = ' * WB0S(«) N„-l
Como puede observarse de la ecuación anterior, el nivel objetivo de la memoria intermedia del Intercuadro actual, es mayor que el nivel objetivo de la memoria intermedia de los Intercuadros subsiguientes. En otras palabras, se asignan más bits al Intercuadro que está más cercano al cuadro I que pertenece al mismo GOP, que al Intercuadro que está más alejado del cuadro I, es decir, del Intracuadro. La velocidad objetivo del bit de acuerdo a una modalidad preferida de la invención, se determina basándose en el intervalo promedio del tiempo de codificación, el número promedio de cuadros saltados debido a recursos computacionales insuficientes, el nivel objetivo de la
52/290 15
memoria intermedia, el ancho de banda disponible del canal y la ocupancia real de la memoria intermedia. En particular, la velocidad objetivo del bit, de acuerdo a una modalidad preferida de la invención, se determina utilizando la siguiente ecuación:
/(«) = max{o, M(t„^ * maxfc -1)^
en donde («) es la velocidad objetivo del bit, tH(i es el momento instantáneo en que el nesimo Intercuadro en el iésimo GOP se codifica, y ? es una constante. Puesto que el ancho de banda disponible del canal u(tn,i) y el intervalo promedio del tiempo de codificación Tave(n-l) se utilizan para determinar la velocidad objetivo del bit para el Intercuadro, el método de control de la velocidad del bit, de acuerdo con la invención, se adapta tanto al ancho de banda disponible del canal como a los recursos computacionales disponibles. La velocidad objetivo del bit para el Intercuadro, determinada anteriormente, puede ajustarse además mediante una . nivelación temporal ponderada utilizando la siguiente ecuación:
52/290 en donde f (n) es la velocidad objetivo del bit nivelada, µ es una constante del factor de control de ponderación, y ¾dr(n) es la cantidad de bits utilizados para la información de la forma, el vector de movimiento y el encabezado del cuadro previo. Deberá notarse que en una modalidad alterna, el intervalo de tiempo de codificación real Tfi(n), puede utilizarse en lugar del intervalo promedio del tiempo de codificación Tave(n) para determinar la velocidad objetivo del bit. La ventaja de utilizar el intervalo promedio del tiempo de codificación Tave, en lugar de Tc para el cálculo de la velocidad objetivo del bit, es que Tave cambia lentamente. Esto también coincide con el ajuste lento del parámetro de cuantificación Q para el proceso de codificación de la secuencia de video. También, cuando la velocidad real del cuadro es menor que la velocidad predefinida del cuadro, es decir
ave > Fr '
52/290 17
más bits se asignan a cada cuadro. Por lo tanto, la posibilidad de desbordamiento de la memoria intermedia se reduce en comparación con cualquier método de control de la velocidad existente, y se mejora el uso del ancho de banda del canal . Una vez que la velocidad objetivo del bit para cada Intercuadro se calcula, el parámetro de cuantificación correspondiente para el proceso de codificación puede calcularse, de manera preferida, utilizando el método de Velocidad-Distorsión (R-D) descrito en [5] . En una etapa de postcodificación del método de control de la velocidad de acuerdo con la invención, un tiempo de inactividad del proceso de codificación se actualiza utilizando la siguiente ecuación:
STC(n) = max j~ -RTst(«-!)- maxfc(„),Tc (»)},o| +
en donde STC (n) es el tiempo de inactividad del proceso de codificación. El tiempo de inicio de la codificación del siguiente cuadro se da a continuación por
SCT{n) = Tc(n) + SCT(n - 1) + STC(«)
en donde SCT(n) es el tiempo de inicio de la
52/290 18
codificación. El tiempo de inicio de la codificación del siguiente cuadro se da por
F, en donde SDT(n) es el tiempo de inicio de la codificación. El tiempo de inicio de la decodificación se va a enviar a un decodificador para proporcionar la información del tiempo para decodificar cada cuadro de la secuencia de video codificada. Deben considerarse tres puntos cuando se determina el tiempo de inactividad STc(n) y el tiempo de inicio de la codificación SDT(n) . Ningún cuadro se va a codificar dos veces, el tiempo de resolución es l/Fr y debe transcurrir un tiempo necesario cuando la memoria intermedia está en peligro de desbordamiento. Otros objetos, características y ventajas de acuerdo con la invención, se presentarán en la siguiente descripción detallada de las modalidades ilustradas, cuando se lean en conjunto con los dibujos acompañantes.
BREVE DESCRIPCIÓN DE LOS DIBUJOS La Figura 1 muestra un diagrama de bloques del método de control de la velocidad, de acuerdo con una modalidad preferida de la invención.
52/290 La Figura 2 muestra el ancho de banda del canal utilizado para cada cuadro de las secuencias de video de "clima" y "niños" . La Figura 3 muestra el tiempo computacional requerido para codificar cada cuadro de la secuencia de video de "clima" y "niños", utilizando la modalidad preferida de la invención. La Figura 4 muestra la comparación de la PSNR para la secuencia de video de "clima" . La Figura 5 muestra la comparación de la PSNR para la secuencia de video de "niños" . La Figura 6 muestra la comparación de la ocupancia real de la memoria intermedia para la secuencia de video de "clima" . La Figura 7 muestra la comparación de la ocupancia real de la memoria intermedia para la secuencia de video de "niños" .
DESCRIPCIÓN DETALLADA DE UNA MODALIDAD PREFERIDA DE LA INVENCIÓN La Figura 1 muestra un diagrama de bloques del método de control de la velocidad, de acuerdo con una modalidad preferida de la invención. El método de control de la velocidad de acuerdo con la invención comprende las siguientes tres etapas: la etapa de inicio, 20
la etapa de precodificación, y la etapa de postcodificación. En el paso 101, una velocidad del cuadro Fr se predefine para el proceso de codificación para un Grupo de Imágenes (GOP) . Deben tomarse en cuenta aspectos prácticos como los parámetros/especificaciones del codificador y el decodificador, cuando se elige en este punto, una velocidad adecuada de codificación del cuadro. Además, no siempre se sabe si los elementos físicos en los cuales está implementado el proceso de ' codificación del video, incluyendo el control de la velocidad, pueden soportar la velocidad predefinida del cuadro. En el paso 102, el tamaño de la memoria intermedia para los cuadros de video se ajusta basándose en los requisitos de latencia. Antes de codificar el cuadro I, las memorias intermedias se inician a Bs * d, en donde Bs es el tamaño de la memoria intermedia y d es un parámetro definido como 0 < d < 0.5. A continuación, el cuadro I se codifica en el paso 103, utilizando un valor inicial predefinido del parámetro de cuantificación Q0. La codificación del cuadro I en el paso 103, puede implementarse utilizando cualquiera de los métodos descritos en [1] , [3] , [4] , [5] . Después de que el cuadro I se codifica, los parámetros de un modelo de Velocidad-Distorsión (R-D) que 21
se utiliza posteriormente para determinar un parámetro de cuantificación adecuado para codificar los cuadros correspondientes del video, se actualiza en la etapa de postcodificación (paso 104) . En un paso 105 adicional de la etapa de postcodificación, el número de cuadros saltados debido al desbordamiento de la memoria intermedia Npost (n) se determina, de manera preferida, utilizando el método descrito en [5] . En el paso 106, se determina un tiempo de inactividad STC (n) del proceso de codificación después del cuadro actual, en donde el tiempo de inactividad STc(n) se usa para determinar el tiempo de inicio de la codificación SCT(n) para el siguiente cuadro. El tiempo de inicio de la codificación SCT(n) determinado, se utiliza a continuación para determinar el tiempo de inicio de la decodificación SDT(n) del siguiente cuadro en el paso 107, en donde el SDT(n) se transmite al decodificador . Una vez que la codificación del cuadro I termina, el siguiente cuadro, el cual es un Intercuadro, se codifica utilizando el parámetro de cuantificación que se determinó en la etapa de postcodificación previa. Cuando el ancho de banda del canal o las estadísticas del contenido del video varían con el tiempo, la calidad de cada cuadro de la secuencia de video variará de manera significativa si la velocidad de codificación del 22
cuadro se fija a una velocidad predefinida del cuadro, Fr. Para evitar esto, se determina una velocidad objetivo deseada del cuadro en la etapa de precodificación, de acuerdo con el ancho de banda disponible del canal y cualquier cambio súbito en el movimiento. En el paso 108 se determina un intervalo promedio del tiempo de codificación Tave(n), o el intervalo promedio de tiempo requerido para codificar un cuadro P. El intervalo promedio del tiempo de codificación Tave(n) se utiliza a continuación para determinar un intervalo objetivo del tiempo de codificación T£i (n) en el paso 109. El intervalo objetivo del tiempo de codificación Tfi (n) está relacionado de manera inversa con la velocidad deseada del cuadro . La velocidad deseada del cuadro determinada se utiliza a continuación para determinar un nivel objetivo de la memoria intermedia para el cuadro P en el paso 110. En el paso 111, el nivel objetivo de la memoria intermedia, la ocupancia actual de la memoria intermedia, el ancho de banda disponible del canal, la velocidad deseada del cuadro y el intervalo promedio del tiempo de codificación Tave, se utilizan para determinar una velocidad objetivo del bit f (n) para el cuadro P. Basándose en la velocidad objetivo del bit f (n) , los bits se asignan al cuadro P en el paso 112. El
52/290 parámetro de cuantificación Q correspondiente, se calcula como se describe en [5] en el paso 113, utilizando el modelo R-D actualizado del paso 104. El parámetro de cuantificación Q se utiliza para codificar el cuadro P en el paso 114. Cuando el siguiente cuadro es un cuadro P, el modelo R-D se actualiza nuevamente en el paso 104 de la etapa de postcodificación, y toda la etapa de postcodificación y precodificación se itera para codificar el siguiente cuadro P. Si el siguiente cuadro es un cuadro I de un Grupo de Imágenes (GOP) siguiente, el proceso de codificación inicia nuevamente en el paso 101 para la codificación del siguiente cuadro I. La implementación de los pasos 108 a 111 de la etapa de precodificación y los pasos 106 y 107 de la etapa de postcodificación de acuerdo con la invención, se describirá ahora con detalle. Después de la codificación del iesimo cuadro I, el valor inicial del nivel objetivo de la memoria intermedia se inicia en
Target(Q) = Bc(t.!) (1) en donde Bc(ti,i) es la ocupancia real de la memoria intermedia después de la codificación del iesimo cuadro I, y
52/290 24
ti,i es el momento instantáneo en el que el iesimo cuadro I se codifica. Para determinar la velocidad objetivo del bit de cada cuadro P del GOP, necesita determinarse el nivel objetivo de la memoria intermedia para el cuadro P. El primer paso de determinar el nivel objetivo de la memoria intermedia, es determinar la velocidad deseada del cuadro. Esto se logra determinando primero el intervalo promedio del tiempo de codificación del cuadro P Tave(n) utilizando la siguiente ecuación (paso 108) :
Tave («) = (1 -*)Tave(?-?) + ? * max jrc («), j- (2) en donde ? es un factor de ponderación, Tc (n) es el tiempo real para codificar el cuadro p, y RTst se define como
RTsl(n) = 0 si max{Tc(n),Tfi(n)}< -RTfi(n-l) o Npml(n)>0, (3)
RTSI(n) = ax[Tc (n),Tfl (n)}+ RTfi (« - 1) '—- ( )
de otra manera, en donde se refiere al entero más grande
52/290 25
menor que a . El factor de ponderación ? es 0 < ? < 1 , y se ajusta de manera preferida a un valor de 0.125. El valor inicial del intervalo promedio del tiempo de codificación Tave(n) se da por
2^(0) = ¦ (5)
y el valor inicial de RTst (n) se da por
RTst(0) = 0
Una variable Bmad(n) se define además por la siguiente ecuación:
u(n) maxlr (n - 1), Tfl (n - 1) | MAD(n)
en donde u(n) es el ancho de banda disponible del canal, y MAD(n) es la diferencia media absoluta entre el cuadro actual y el cuadro previo. El ancho de banda disponible del canal u(n), puede estimarse por el método descrito en [6] . A continuación, se calcula un valor promedio de
52/290 26
Bmad(n) utilizando la siguiente ecuación:
TBmad (n) = (1 - ?)TBmai(n - 1) + ???a?(n) ( 8 )
en donde TBmad(n) es el valor promedio de Bmad(n), y ? es un factor de ponderación, de manera preferida, a un valor de 0.125. Después de que se calcula el valor de TBmad(n), el intervalo objetivo del tiempo de codificación Tfi (n) puede calcularse como sigue (paso 109) :
Tfi(n) = A1*TJ¡(n-l) si Bmad(n)> B,*TBmad(n), (9) Tfi(n) = A2 *Tfi(n-l) si Bmad(n)> B2*TBmad(n), (10) Tfl(n) = Tf¡{n -1) de otra manera, (11)
en donde Ai es un parámetro en donde 0.80 < Ax < 1.00, A2 es un parámetro en donde 1.00 < A2 < 1.10, Bi es un parámetro en donde 1.00 < Bi < 2.00, y B2 es un parámetro en donde 0 < B2 < 1.00. El valor del intervalo objetivo del tiempo de codificación Tfi(n) , determinado de las ecuaciones (9), (10) u (11) , puede ajustarse además utilizando la siguiente ecuación : 27
en donde el valor inicial de Tfi (n) se da por
(13)
Después de que se determina la velocidad deseada del cuadro de la inversa del intervalo objetivo del tiempo de codificación Tfi (n) , el número promedio de cuadros saltados debido a recursos computacionales insuficientes Sc (n) , se obtiene con el fin de determinar el nivel objetivo de la memoria intermedia. Dos variables de tiempo se definen como sigue:
TST{n) = maxjo,TST(n - 1) + maxfc(n),Tfl («)}- j (15)
en donde el valor inicial de TST(n) se da por
mxo)= o (i6)
Un número instantáneo de cuadros saltados Sc(n) debido a recursos computacionales insuficientes, se da a 28
continuación por
y el número promedio de cuadros saltados debido a recursos computacionales insuficientes Sc(n) se da por
SC(H) = L(1-0)SC(H-1) + (18)
en donde T es 0 < T < 1, y se ajusta de manera preferida a un valor de 0.125. El valor inicial de Sc (n) se da por
Sc(0) = (19)
El nivel objetivo de la memoria intermedia para el cuadro P, puede ahora determinarse utilizando la siguiente ecuación (paso 110) :
B (t )-d*? AW"~1>+s<-(''-i) Targetin) = TaTget(n-\) - — * ^W^ (n + j)
(20) en donde Target (n) es el nivel objetivo de la memoria intermedia, 29
Ng0p es el número de cuadros en un GOP, y Wpos(0 es la ponderación de la posición del l6 Intercuadro que satisface
Wp l)=Wpos(2)=-<Wpo5(Ngop-l).
Puesto que el modelo R-D no es exacto, usualmente hay una diferencia entre el nivel objetivo de la memoria intermedia para cada cuadro y la ocupancia real de la memoria intermedia. Así, se calcula la velocidad objetivo del bit para cada cuadro, para mantener la ocupancia real de la memoria intermedia para que sea el nivel objetivo de la memoria intermedia. La velocidad objetivo del bit para cada cuadro se determina por:
max{0,«(^,) * max{rOTe(« -l),ry¡(«)}+ (y - \)(Bc(tn .) - Targ (21)
en donde J(ri) es la velocidad objetivo del bit, tn,i es el momento instantáneo en que el nesimo cuadro P en el iésimo GOP se codifica, y
52/290 30
? es una constante que es 0 < ? < 1, y que se ajusta de manera preferida a un valor de 0.25. Puesto que el ancho de banda disponible del canal u(tn,i) y el intervalo promedio del tiempo de codificación Tave(n-1) se utilizan para determinar la velocidad objetivo del bit para cada cuadro P, el método de control de la velocidad del bit de acuerdo con la invención, se adapta tanto al ancho de banda del canal como a los recursos computacionales . El ajuste adicional de la velocidad objetivo del bit puede hacerse utilizando la siguiente ecuación de nivelación temporal ponderada:
1 /(«) + (n_l)ffiX /(„) + (i _ µ) x f(n _ 1} (22) en donde f (n) es la velocidad objetivo del bit nivelada, µ es una constante del factor de control de ponderación que se ajusta de manera preferida a un valor de 0.5, y ¾dr (n) es la cantidad de bits utilizados para la información de la forma, el vector de movimiento y el encabezado del cuadro previo. Una vez que se determina la velocidad objetivo
52/290 31
del bit, los bits se asignan a cada cuadro P, basándose en esta velocidad objetivo del bit (paso 112) . El parámetro de cuantificación correspondiente Q también se calcula (paso 113) , utilizando el método descrito en [5] . El parámetro de cuantificación correspondiente Q, se utiliza entonces para codificar el cuadro P (paso 114) . Después de que la codificación del cuadro P está completa, los parámetros del modelo R-D se actualizan, y el número de cuadros saltados debido al desbordamiento de la memoria intermedia se determina en la etapa de postcodificación (paso 104, 105), respectivamente, utilizando el método descrito en [5] . En un paso adicional de la etapa de postcodificación (paso 106) , el tiempo de inactividad del proceso de codificación después del cuadro actual, se determina utilizando la siguiente ecuación:
STC(n) = (23 )
en donde STC (n) es el tiempo de inactividad del proceso de codificación. El tiempo de inicio de la codificación del siguiente cuadro puede obtenerse entonces utilizando la siguiente ecuación:
52/290 32
SCT(n) = Tc(n) + SCT(n - 1) + STC (n) (24)
en donde SCT(n) es el tiempo de inicio de la codificación. El tiempo de inicio de la codificación para el siguiente cuadro puede obtenerse entonces utilizando la siguiente ecuación (paso 107) :
SDTn)^C™'^ (25) F, en donde SDT(n) es el tiempo de inicio de la decodificación. El SDT(n) para el siguiente cuadro se transmite entonces al decodificador para decodificar el siguiente cuadro al momento indicado por SDT(n). Deberá notarse que en la determinación de STc(n) y de SDT(n), ningún cuadro se codifica dos veces, la resolución del tiempo de resolución es l/Fr, y debe haber transcurrido un tiempo necesario cuando la memoria intermedia está en peligro de desbordamiento. Para demostrar que el objeto del método de control de la velocidad de acuerdo con la invención se ha cumplido, el método de control de la velocidad de acuerdo con la invención y el método de control de la velocidad utilizado en un dispositivo de codificación PEG-4 estándar, se aplican a dos secuencias de video, y sus
52/290 33
desempeños se comparan, en consecuencia. Las dos secuencias de videos se refieren como "clima" y "niños", respectivamente, y están en el tamaño de QCIF. La velocidad predefinida del cuadro, Fc, es de 30 fps (cuadros por segundo) , y la longitud de cada GOP es 50. El ancho de banda disponible del canal y el tiempo computacional utilizado para codificar cada cuadro de la secuencia de video se muestran en la Figura 2 y la Figura 3, respectivamente. La velocidad real del cuadro está por encima de
17 fps, lo cual es menor que la velocidad predefinida del cuadro de 30 fps. La plenitud inicial de la memoria intermedia se ajusta a Bs/8, y el parámetro de cuantificación inicial Q_0 se ajusta a 15. La Figura 4 y la Figura 5 muestran la Relación
Máxima de Señal a Ruido (PSNR) de la secuencia de video de "clima" y "niños", utilizando el método de control de la velocidad de acuerdo con la invención, y el método de control de la velocidad utilizado en PEG-4, respectivamente. La PSNR promedio de la secuencia de video de "clima", utilizando el método de control de la velocidad de acuerdo con la invención, es 34.16 dB, en donde la PSNR promedio de la secuencia de video de "clima" , utilizando el método de control de la velocidad utilizado en MPEG-4, es
52/290 34 ¦
32.6 dB . De manera similar, la PSNR promedio de la secuencia de video de "niños", utilizando el método de control de la velocidad de acuerdo con la invención, es 30.51 dB, en donde la PSNR promedio de la secuencia de video de "niños" , utilizando el método de control de la velocidad utilizado en MPEG-4 es de 29.87 dB . Por lo tanto, puede observarse que la PSNR promedio de la secuencia de video que utiliza el método de control de la velocidad de acuerdo con la invención, es mayor que la que utiliza el método de control de la velocidad de MPEG-4. La Figura 6 y la Figura 7 muestran la ocupancia real de la memoria intermedia para las secuencias de video de "clima" y "niños", utilizando el método de control de la velocidad de acuerdo con la invención y el método de control de la velocidad utilizado en MPEG-4, respectivamente . Como puede observarse de la Figura 6 y la Figura 7, la aparición del desbordamiento de la memoria intermedia utilizando el método de control de la velocidad de MPEG-4 es 12 veces para la secuencia de video de "clima" y 18 veces para la secuencia de video de "niños" . No hay desbordamiento de la memoria intermedia para las dos secuencias de video que utilizan el método de control de la velocidad de acuerdo con la invención.
52/290 35
Los siguientes documentos se utilizan en esta especificación : [1] H. J. Lee y T. H. Chiang y Y. Q. Zhang. Scalable Rate Control for MPEG-4 Video. IEEE Trans . Circuit Syst. Video Technology, 10: 878-894, 2000. [2] T. Chang y Y. Q. Zhang. A new rate control scheme using quadratic rate-distortion modeling. IEEE Trans. Circuit Syst. Video Technology, 7: 246-250, 1997. [3] J. Ribas-Corbera y S. Lei . Rate control in DCT video coding for low-delay Communications. IEEE Trans. Circuit Syst. Video Technology, 9: 172-185, 1999. [4] A. Vetro, H. Sun y Y. Wang. MPEG-4 rate control for múltiple video objects. IEEE Trans. Circuit Syst. Video Technology, 9: 186-199, 1999. [5] Z. G. Li, X. Lin, C. Zhu y F. Pan. A novel rate control scheme for video over the internet. En Proceedings ICASSP 2002, Florida, EUA, Vol . 2, pp. 2065-2068, Mayo 2002. [6] Z. G. Li, N. Ling, C. Zhu, X. K. Yang, G. N. Feng, S. u y F. Pan. Packetization algorithm for MPEG-4 Fine Granularity Scalability over the internet. En el 3er taller y Exhibición sobre MPEG-4, EUA, California, pp. 17-20, Junio 25-27, 2002.
52/290
Claims (1)
- 36 REIVINDICACIONES ; 1. Un método para controlar la velocidad para codificar una secuencia de video, en donde la secuencia de video comprende una pluralidad de Grupos de Imágenes, en donde cada Grupo de Imágenes comprende al menos un cuadro I y un Intercuadro, el método comprende los siguientes pasos para codificar cada Intercuadro en el Grupo de Imágenes : • determinar una velocidad deseada del cuadro basándose en el ancho de banda disponible de un canal, que se utiliza para transmitir la secuencia de video y en los recursos computacionales disponibles para el proceso de codificación; • determinar un nivel objetivo de la memoria intermedia basándose en la velocidad deseada del cuadro y la posición del Intercuadro con respecto al cuadro I; y • determinar una velocidad objetivo del bit basándose en el nivel objetivo de la memoria intermedia y el ancho de banda disponible del canal, en donde la velocidad objetivo del bit se utiliza para controlar la velocidad para codificar la secuencia de video. 2. El método para el control de la velocidad según la reivindicación 1, que comprende además los pasos de: • determinar un intervalo objetivo del tiempo de codificación para el Intercuadro; y 52/290 37 • determinar la velocidad deseada del cuadro basándose en el intervalo objetivo del tiempo de codificación . 3. El método para el control de la velocidad según la reivindicación 2, en donde el intervalo objetivo del tiempo de codificación para el Intercuadro se determina basándose en el ancho de banda disponible del canal y un intervalo promedio del tiempo de codificación utilizado para codificar el Intercuadro, en donde el intervalo promedio del tiempo de codificación para el Intercuadro es proporcional a los recursos computacionales disponibles para el proceso de codificación. 4. El método para el control de la velocidad según la reivindicación 3, en donde el intervalo objetivo del tiempo de codificación para el Intercuadro se determina utilizando las siguientes ecuaciones: Tfi («) = A, * Tfi (n - 1) si Bmad(n) > 5, * TBmad («), Tfl («) = A2*Tfi(n-\) si Bmad(») > B2 * TBmad («), Tfi(n) = Tj¡(n-Y) de otra manera, en donde • Tfi(n) es el intervalo objetivo del tiempo de codificación para codificar el Intercuadro, • Ai es un parámetro en donde 0.80 < Ai < 1.00, · A2 es un parámetro en donde 1.00 < A2 < 1.10, 52/290 38 • Bi es un parámetro en donde 1.00 < Bx < 2.00, • B2 es un parámetro en donde 0 < B2 < 1.00, • TBmad(n) es el promedio de Bmad(n), y • Bmad(n) se define como )max{Tave(n-\),Tf¡(n MAD(n) en donde • u (n) es el ancho de banda disponible del canal , • Tave(n-1) es el intervalo promedio del tiempo de codificación para el Intercuadro, y • MAD(n) es la diferencia media absoluta entre el cuadro actual y el cuadro previo. 5. El método para el control de la velocidad según la reivindicación 4, en donde el intervalo objetivo del tiempo de codificación se ajusta además por 7)(«) = min|^,max|^,7 («)||. 6. El método para el control de la velocidad según la reivindicación 3, en donde el intervalo promedio del tiempo de codificación para el Intercuadro se determina basándose en el intervalo de tiempo de codificación real para el Intercuadro. 52/290 39 7. El método para el control de la velocidad según la reivindicación 6, en donde el intervalo promedio del tiempo de codificación para el Intercuadro se determina además basándose en el intervalo objetivo del tiempo de codificación y el número de cuadros saltados debido al desbordamiento de la memoria intermedia. 8. El método para el control de la velocidad según la reivindicación 7, en donde el intervalo promedio del tiempo de codificación para el Intercuadro se determina utilizando la siguiente ecuación: Tave (") = (1 - x)Tave{?-\) + ?*max|rc (n), -RTst(n- 1) j en donde • ? es un factor de ponderación, • Tc (n) es el tiempo real de codificación, • Fr es una velocidad predefinida del cuadro, Y RTst se define además como RTsl(n) = 0 si max{rc(«),7 («)}< — -RTfi{n-\) o Npmt(n)>0, b. RTst (TÍ) = max{7c (n),Tfi («))+ RTfi(n-l) de otra manera, 52/290 40 en donde Npost (n) es el número de cuadros saltados debido al desbordamiento de la memoria intermedia. 9. El método para el control de la velocidad según la reivindicación 5, en donde el nivel objetivo de la memoria intermedia se determina de manera que el Intercuadro que está más cerca al cuadro I en el GOP, tiene un nivel objetivo de la memoria intermedia más alto en comparación con otro Intercuadro que está más alejado del cuadro I que pertenece al mismo GOP. 10. El método para el control de la velocidad según la reivindicación 9, en donde el nivel objetivo de la memoria intermedia se determina utilizando la siguiente ecuación : Target(n) = Taiget(n-\)- —^ * ?Wpos (n + j) en donde • Target (n) es el nivel objetivo de la memoria intermedia , • g0p es el número de cuadros en un GOP, • Ba es el tamaño de la memoria intermedia, • Bc es la ocupancia real de la memoria intermedia real , • Sc es un número promedio de cuadros saltados 52/290 41 debido a recursos computacionales disponibles insuficientes para codificar el Intercuadro de acuerdo con la velocidad deseada del cuadro, y • Wpos(¿) es la ponderación de la posición del pésimo intercuadro que satisface ?Wpos{l) = Ngop-\ 1=1 y Wpos{\) < Wpos{2) < < Wpos(Ngop -1). 11. El método para el control de la velocidad según la reivindicación 10, en donde el número promedio de los cuadros saltados debido a recursos computacionales insuficientes disponibles para codificar el Intercuadro de acuerdo con la velocidad deseada del cuadro, se determina basándose en un número instantáneo de cuadros saltados debido a los recursos computacionales insuficientes mientras se codifica el Intercuadro. 12. El método para el control de la velocidad según la reivindicación 11, en donde el número instantáneo de cuadros saltados debido a recursos computacionales insuficientes se determina basándose en el intervalo de tiempo de codificación real y el intervalo objetivo del tiempo de codificación. 52/290 42 13. El método para el control de la velocidad según la reivindicación 12, en donde el número instantáneo de cuadros saltados se determina utilizando la siguiente ecuación : en donde TST(n) se define además como TST(n) = maxjo, TST(n -1) + maxfz («), Tfl(«)}- j y ?ST(«-1) es como se definió en donde • Sc(n) es el número instantáneo de cuadros saltados debido a los recursos computacionales insuficientes , • Tc es el intervalo de tiempo de codificación real , y • Fr es una velocidad predefinida del cuadro. 14. El método para el control de la velocidad según la reivindicación 13, en donde el número promedio de cuadros saltados debido a recursos computacionales insuficientes, se determina utilizando la siguiente ecuación : 52/290 43 en donde T es un factor de ponderación. 15. El método para el control de la velocidad según la reivindicación 14, en donde la velocidad objetivo del bit se determina basándose en el intervalo promedio del tiempo de codificación para el Intercuadro, el número promedio de cuadros saltados debido a recursos computacionales insuficientes, el nivel objetivo de la memoria intermedia, el ancho de banda disponible del canal y la ocupancia real de la memoria intermedia. 16. El método para el control de la velocidad según las reivindicaciones 8 y 15, en donde la velocidad objetivo del bit se determina utilizando la siguiente ecuación : J(n) = max{0,u(tn ¡) * .) -Target{n))} en donde • J{ri) es Ia velocidad objetivo del bit, • tn, i es el momento instantáneo en que el nesimo Intercuadro en el iesimo GOP se codifica, y • y es una constante. 17. El método para el control de la velocidad según la reivindicación 16, en donde la velocidad objetivo del bit se ajusta además mediante una nivelación temporal ponderada, utilizando 52/290 44 en donde • f (n) es la velocidad objetivo del bit nivelada, • µ es una constante del factor de control de ponderación, y • Hhdr(n) es la cantidad de bits utilizados para la información de la forma, el vector de movimiento y el encabezado del cuadro previo. 18. El método para el control de la velocidad según la reivindicación 1, que comprende además los siguientes pasos : • determinar un tiempo de inactividad de cada cuadro después de que el cuadro se codifica, • determinar un tiempo de inicio de la codificación de cada cuadro, basándose en el tiempo de inactividad calculado, • determinar un tiempo de inicio de la codificación de un siguiente cuadro, basándose en el tiempo de inicio de la codificación calculado, y • transmitir el tiempo de inicio de la codificación determinado a un decodificador que está diseñado para decodificar la secuencia de video. 52/290 45 19. El método para el control de la velocidad según la reivindicación 18, en donde el tiempo de inactividad se determina de acuerdo con la siguiente fórmula : STc (n) = maxíy - RT n - 1) - maxfc(»),rc(»)},o| + ^ ^- en donde STc(n) es el tiempo de inactividad del proceso de codificación. 20. El método para el control de la velocidad según la reivindicación 19, en donde el tiempo de inicio de la codificación se determina de acuerdo con la siguiente fórmula : SCT(n) = Te (n) + SCT(n - 1) + STC (n) en donde SCT(n) es el tiempo de inicio de la codificación. 21. El método para el control de la velocidad según la reivindicación 20, en donde el tiempo de inicio de la codificación se determina de acuerdo con la siguiente fórmula : en donde SDT(n) es el tiempo de inicio de la codificación . 52/290 46 22. Un aparato para controlar la velocidad para codificar una secuencia de video, en donde la secuencia de video comprende una pluralidad de Grupos de Imágenes, en donde cada Grupo de Imágenes comprende al menos un cuadro I y un Intercuadro, el aparato comprende una unidad de procesamiento que está adaptada para realizar los siguientes pasos para codificar cada Intercuadro en el Grupo de Imágenes : • determinar una velocidad deseada del cuadro basándose en el ancho de banda disponible de una canal que se utiliza para transmitir la secuencia de video y en los recursos computacionales disponibles para el proceso de codificación; • determinar un nivel objetivo de la memoria intermedia basándose en la velocidad deseada del cuadro y la posición del Intercuadro con respecto al cuadro I; y • determinar una velocidad objetivo del bit basándose en el nivel objetivo de la memoria intermedia y el ancho de banda disponible del canal, en donde la velocidad objetivo del bit se utiliza para controlar la velocidad para codificar la secuencia de video. 23. Un dispositivo para codificar un video para controlar la velocidad para codificar una secuencia de video, en donde la secuencia de video comprende una pluralidad de Grupos de Imágenes, en donde cada Grupo de 52/290 Imágenes comprende al menos un cuadro I y un Intercuadro, el dispositivo de codificación comprende una unidad de procesamiento que está adaptada para realizar los siguientes pasos para codificar cada Intercuadro en el Grupo de Imágenes : • determinar una velocidad deseada del cuadro basándose en un ancho de banda disponible de un canal, que se utiliza para transmitir la secuencia de video y en los recursos computacionales disponibles para el proceso de codificación; • determinar un nivel objetivo de la memoria intermedia basándose en la velocidad deseada del cuadro y la complejidad y la posición del Intercuadro con respecto al cuadro I ; y • determinar una velocidad objetivo del bit basándose en el nivel objetivo de la memoria intermedia y el ancho de banda disponible del canal, en donde la velocidad objetivo del bit se utiliza para controlar la velocidad para codificar la secuencia de video. 52/290
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/SG2002/000206 WO2004023821A1 (en) | 2002-09-05 | 2002-09-05 | A method and an apparatus for controlling the rate of a video sequence; a video encoding device |
Publications (1)
Publication Number | Publication Date |
---|---|
MXPA05002511A true MXPA05002511A (es) | 2005-08-16 |
Family
ID=31974287
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
MXPA05002511A MXPA05002511A (es) | 2002-09-05 | 2002-09-05 | Un metodo y un aparato para controlar la velocidad de una secuencia de video; un dispositivo que codifica un video. |
Country Status (8)
Country | Link |
---|---|
US (1) | US7876821B2 (es) |
EP (1) | EP1547393A4 (es) |
JP (1) | JP4390112B2 (es) |
CN (1) | CN100401782C (es) |
AU (1) | AU2002334568A1 (es) |
MX (1) | MXPA05002511A (es) |
TW (1) | TWI323122B (es) |
WO (1) | WO2004023821A1 (es) |
Families Citing this family (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6760772B2 (en) * | 2000-12-15 | 2004-07-06 | Qualcomm, Inc. | Generating and implementing a communication protocol and interface for high data rate signal transfer |
US8812706B1 (en) * | 2001-09-06 | 2014-08-19 | Qualcomm Incorporated | Method and apparatus for compensating for mismatched delays in signals of a mobile display interface (MDDI) system |
ATE517500T1 (de) * | 2003-06-02 | 2011-08-15 | Qualcomm Inc | Erzeugung und umsetzung eines signalprotokolls und schnittstelle für höhere datenraten |
EP2363992A1 (en) * | 2003-08-13 | 2011-09-07 | Qualcomm Incorporated | A signal interface for higher data rates |
AU2004303402A1 (en) * | 2003-09-10 | 2005-03-24 | Qualcomm Incorporated | High data rate interface |
US7555006B2 (en) * | 2003-09-15 | 2009-06-30 | The Directv Group, Inc. | Method and system for adaptive transcoding and transrating in a video network |
EP1680904A1 (en) * | 2003-10-15 | 2006-07-19 | QUALCOMM Incorporated | High data rate interface |
KR100827573B1 (ko) * | 2003-10-29 | 2008-05-07 | 퀄컴 인코포레이티드 | 높은 데이터 레이트 인터페이스 |
US8606946B2 (en) * | 2003-11-12 | 2013-12-10 | Qualcomm Incorporated | Method, system and computer program for driving a data signal in data interface communication data link |
KR20060096161A (ko) * | 2003-11-25 | 2006-09-07 | 콸콤 인코포레이티드 | 향상된 링크 동기화를 제공하는 고속 데이터 레이트인터페이스 |
EP2247070B1 (en) * | 2003-12-08 | 2013-09-25 | QUALCOMM Incorporated | High data rate interface with improved link synchronization |
EP1733537A1 (en) * | 2004-03-10 | 2006-12-20 | Qualcomm, Incorporated | High data rate interface apparatus and method |
CA2560067C (en) * | 2004-03-17 | 2011-08-23 | Qualcomm Incorporated | High data rate interface apparatus and method |
JP5032301B2 (ja) * | 2004-03-24 | 2012-09-26 | クゥアルコム・インコーポレイテッド | 高データレートインターフェース装置および方法 |
CA2569106C (en) * | 2004-06-04 | 2013-05-21 | Qualcomm Incorporated | High data rate interface apparatus and method |
US8650304B2 (en) * | 2004-06-04 | 2014-02-11 | Qualcomm Incorporated | Determining a pre skew and post skew calibration data rate in a mobile display digital interface (MDDI) communication system |
DE102004030631A1 (de) * | 2004-06-24 | 2006-01-19 | Infineon Technologies Ag | Unterdrückung von durch Burst-artige Veränderungen der Datenrate verursachten Störungen bei synchroner Funkübertragung |
US8723705B2 (en) * | 2004-11-24 | 2014-05-13 | Qualcomm Incorporated | Low output skew double data rate serial encoder |
US8667363B2 (en) * | 2004-11-24 | 2014-03-04 | Qualcomm Incorporated | Systems and methods for implementing cyclic redundancy checks |
US8539119B2 (en) * | 2004-11-24 | 2013-09-17 | Qualcomm Incorporated | Methods and apparatus for exchanging messages having a digital data interface device message format |
US8873584B2 (en) * | 2004-11-24 | 2014-10-28 | Qualcomm Incorporated | Digital data interface device |
US8699330B2 (en) | 2004-11-24 | 2014-04-15 | Qualcomm Incorporated | Systems and methods for digital data transmission rate control |
US8692838B2 (en) | 2004-11-24 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US8355434B2 (en) * | 2005-01-10 | 2013-01-15 | Qualcomm Incorporated | Digital video line-by-line dynamic rate adaptation |
US7974193B2 (en) | 2005-04-08 | 2011-07-05 | Qualcomm Incorporated | Methods and systems for resizing multimedia content based on quality and rate information |
US7974341B2 (en) | 2005-05-03 | 2011-07-05 | Qualcomm, Incorporated | Rate control for multi-layer video design |
US8730069B2 (en) * | 2005-11-23 | 2014-05-20 | Qualcomm Incorporated | Double data rate serial encoder |
US8692839B2 (en) * | 2005-11-23 | 2014-04-08 | Qualcomm Incorporated | Methods and systems for updating a buffer |
US8792555B2 (en) * | 2006-01-31 | 2014-07-29 | Qualcomm Incorporated | Methods and systems for resizing multimedia content |
FR2898757A1 (fr) * | 2006-03-14 | 2007-09-21 | Canon Kk | Procede et dispositif d'adaptation d'une frequence temporelle d'une sequence d'images video |
EP1838108A1 (en) * | 2006-03-23 | 2007-09-26 | Texas Instruments France | Processing video data at a target rate |
EP2123040B1 (en) * | 2006-12-12 | 2017-12-06 | Vantrix Corporation | An improved video rate control for video coding standards |
US8824546B2 (en) | 2007-06-19 | 2014-09-02 | Vantrix Corporation | Buffer based rate control in video coding |
US8249141B1 (en) * | 2007-07-13 | 2012-08-21 | Sprint Spectrum L.P. | Method and system for managing bandwidth based on intraframes |
FR2919779B1 (fr) | 2007-08-02 | 2010-02-26 | Canon Kk | Procede et dispositif de codage avec perte d'un signal numerique |
US9055301B2 (en) | 2008-03-18 | 2015-06-09 | Texas Instruments Incorporated | Changing motion estimation precision to maintain encoding within desired time |
CN101621351B (zh) * | 2008-06-30 | 2013-09-11 | 华为技术有限公司 | 一种调节多媒体编码速率的方法、装置及系统 |
US8406297B2 (en) * | 2008-10-17 | 2013-03-26 | Futurewei Technologies, Inc. | System and method for bit-allocation in video coding |
CN101795386B (zh) * | 2009-02-03 | 2013-07-31 | 英华达(上海)电子有限公司 | 可视电话发送端的视频帧流控制方法 |
WO2010108053A1 (en) * | 2009-03-19 | 2010-09-23 | Azuki Systems, Inc. | Method for scalable live streaming delivery for mobile audiences |
CA2759880C (en) * | 2009-03-23 | 2013-09-24 | Azuki Systems, Inc. | Method and system for efficient streaming video dynamic rate adaptation |
ES2398803T3 (es) | 2009-06-29 | 2013-03-21 | Nds Limited | Extracción del mensaje de protección del contenido |
US20120307886A1 (en) * | 2011-05-31 | 2012-12-06 | Broadcom Corporation | Adaptive Video Encoding Based on Predicted Wireless Channel Conditions |
US9762899B2 (en) * | 2011-10-04 | 2017-09-12 | Texas Instruments Incorporated | Virtual memory access bandwidth verification (VMBV) in video coding |
CN102325275A (zh) * | 2011-10-17 | 2012-01-18 | 深圳市融创天下科技股份有限公司 | 一种流媒体播放的丢包方法、装置及服务器 |
WO2014046610A1 (en) * | 2012-09-21 | 2014-03-27 | Agency For Science, Technology And Research | A circuit arrangement and method of determining a priority of packet scheduling |
JP6094126B2 (ja) * | 2012-10-01 | 2017-03-15 | 富士通株式会社 | 動画像復号装置 |
US20140177701A1 (en) * | 2012-12-26 | 2014-06-26 | Thomson Licensing | System and method for time budget achievement in real-time video encoding |
GB2514540B (en) * | 2013-04-10 | 2020-01-08 | Microsoft Technology Licensing Llc | Resource for encoding a video signal |
JP6271214B2 (ja) * | 2013-10-25 | 2018-01-31 | 株式会社メガチップス | 照明用モジュール、無線通信用モジュール、照明装置、および、照明制御システム |
GB2518909B (en) * | 2013-12-16 | 2015-10-28 | Imagination Tech Ltd | Encoder adaptation |
CN105208390B (zh) * | 2014-06-30 | 2018-07-20 | 杭州海康威视数字技术股份有限公司 | 视频编码的码率控制方法及其系统 |
US9979970B2 (en) * | 2014-08-08 | 2018-05-22 | Qualcomm Incorporated | System and method for determining buffer fullness for display stream compression |
US10841626B2 (en) * | 2014-10-27 | 2020-11-17 | Texas Instruments Incorporated | Selective picture-based encryption of video streams |
CN106162257B (zh) * | 2016-07-29 | 2019-05-03 | 南京云恩通讯科技有限公司 | 一种实时视频的自适应网络传输优化方法 |
EP3396961A1 (en) * | 2017-04-24 | 2018-10-31 | Axis AB | Method and rate controller for controlling output bitrate of a video encoder |
EP4221225B1 (en) * | 2019-05-15 | 2024-05-29 | Huawei Technologies Co., Ltd. | Handling of bi-directional optical flow (bio) coding tool for reference picture resampling in video coding |
CN112291564B (zh) * | 2020-11-20 | 2021-09-14 | 西安邮电大学 | 优化监控视频感知质量的hevc帧内码率控制方法 |
CN114501014A (zh) * | 2022-02-22 | 2022-05-13 | 百果园技术(新加坡)有限公司 | 一种视频编码参数处理方法、系统、设备及存储介质 |
Family Cites Families (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4744787A (en) * | 1984-10-29 | 1988-05-17 | Medtronic, Inc. | Iontophoresis apparatus and methods of producing same |
US5135477A (en) * | 1984-10-29 | 1992-08-04 | Medtronic, Inc. | Iontophoretic drug delivery |
US5134476A (en) * | 1990-03-30 | 1992-07-28 | At&T Bell Laboratories | Video signal encoding with bit rate control |
US5147297A (en) * | 1990-05-07 | 1992-09-15 | Alza Corporation | Iontophoretic delivery device |
DE4014913C2 (de) * | 1990-05-10 | 1996-05-15 | Lohmann Therapie Syst Lts | Miniaturisiertes transdermales therapeutisches System für die Iontophorese |
US5405317A (en) * | 1991-05-03 | 1995-04-11 | Alza Corporation | Iontophoretic delivery device |
FR2687321B1 (fr) * | 1992-02-14 | 1999-04-16 | Elf Aquitaine | Dispositif d'ionophorese pour l'administration transcutanee d'une quantite totale donnee d'un principe actif a un sujet. |
US5717464A (en) * | 1995-12-18 | 1998-02-10 | Divicom, Inc. | Rate control for a video encoder |
US5872598A (en) * | 1995-12-26 | 1999-02-16 | C-Cube Microsystems | Scene change detection using quantization scale factor rate control |
US6366614B1 (en) * | 1996-10-11 | 2002-04-02 | Qualcomm Inc. | Adaptive rate control for digital video compression |
JPH10304360A (ja) | 1996-10-15 | 1998-11-13 | Matsushita Electric Ind Co Ltd | 映像・音声符号化方法、符号化装置、及び符号化プログラム記録媒体 |
US6263020B1 (en) * | 1996-12-24 | 2001-07-17 | Intel Corporation | Method and apparatus for bit rate control in a digital video system |
US6243497B1 (en) | 1997-02-12 | 2001-06-05 | Sarnoff Corporation | Apparatus and method for optimizing the rate control in a coding system |
US5969764A (en) | 1997-02-14 | 1999-10-19 | Mitsubishi Electric Information Technology Center America, Inc. | Adaptive video coding method |
US6043844A (en) * | 1997-02-18 | 2000-03-28 | Conexant Systems, Inc. | Perceptually motivated trellis based rate control method and apparatus for low bit rate video coding |
JPH10243399A (ja) * | 1997-02-25 | 1998-09-11 | Sharp Corp | 符号量制御装置及び該符号量制御装置を含む動画像符号化装置 |
US6118817A (en) * | 1997-03-14 | 2000-09-12 | Microsoft Corporation | Digital video signal encoder and encoding method having adjustable quantization |
US6219343B1 (en) * | 1997-07-29 | 2001-04-17 | Nokia Mobile Phones Ltd. | Rate control techniques for efficient high speed data services |
GB2337392B (en) * | 1997-12-08 | 2002-04-17 | Sony Corp | Coding device and method |
US6181742B1 (en) * | 1998-01-26 | 2001-01-30 | International Business Machines Corporation | Single pass target allocation for video encoding |
US6256350B1 (en) * | 1998-03-13 | 2001-07-03 | Conexant Systems, Inc. | Method and apparatus for low cost line-based video compression of digital video stream data |
US6167088A (en) | 1998-04-03 | 2000-12-26 | Sarnoff Corporation | Method and apparatus for performing adaptive encoding rate control of a video information stream including 3:2 pull-down video information |
US6091776A (en) * | 1998-05-26 | 2000-07-18 | C-Cube Microsystems, Inc. | Delay balanced video encoder system |
US6212232B1 (en) * | 1998-06-18 | 2001-04-03 | Compaq Computer Corporation | Rate control and bit allocation for low bit rate video communication applications |
WO2000012172A1 (en) * | 1998-08-31 | 2000-03-09 | Birch Point Medical Inc. | Controlled dosage drug delivery system |
US6567117B1 (en) * | 1998-09-09 | 2003-05-20 | Nippon Telegraph And Telephone Corporation | Method for regulating image quality, picture communication equipment using same and recording medium having recorded therein a program for executing the method |
US6141380A (en) * | 1998-09-18 | 2000-10-31 | Sarnoff Corporation | Frame-level rate control for video compression |
JP3948597B2 (ja) | 2000-03-08 | 2007-07-25 | Kddi株式会社 | 動画像圧縮符号化送信装置、受信装置および送受信装置 |
US6731685B1 (en) * | 2000-09-20 | 2004-05-04 | General Instrument Corporation | Method and apparatus for determining a bit rate need parameter in a statistical multiplexer |
US6731977B2 (en) * | 2001-01-22 | 2004-05-04 | Iomed, Inc. | Iontophoretic electrode with improved current distribution |
-
2002
- 2002-09-05 MX MXPA05002511A patent/MXPA05002511A/es active IP Right Grant
- 2002-09-05 AU AU2002334568A patent/AU2002334568A1/en not_active Abandoned
- 2002-09-05 CN CNB028297539A patent/CN100401782C/zh not_active Expired - Lifetime
- 2002-09-05 US US10/528,363 patent/US7876821B2/en active Active
- 2002-09-05 JP JP2004533955A patent/JP4390112B2/ja not_active Expired - Fee Related
- 2002-09-05 EP EP02807775A patent/EP1547393A4/en not_active Withdrawn
- 2002-09-05 WO PCT/SG2002/000206 patent/WO2004023821A1/en active Application Filing
-
2003
- 2003-09-02 TW TW92124253A patent/TWI323122B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
JP4390112B2 (ja) | 2009-12-24 |
CN100401782C (zh) | 2008-07-09 |
JP2005538606A (ja) | 2005-12-15 |
CN1685734A (zh) | 2005-10-19 |
AU2002334568A1 (en) | 2004-03-29 |
EP1547393A4 (en) | 2010-10-13 |
WO2004023821A1 (en) | 2004-03-18 |
TWI323122B (en) | 2010-04-01 |
US20060140270A1 (en) | 2006-06-29 |
EP1547393A1 (en) | 2005-06-29 |
US7876821B2 (en) | 2011-01-25 |
TW200410564A (en) | 2004-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
MXPA05002511A (es) | Un metodo y un aparato para controlar la velocidad de una secuencia de video; un dispositivo que codifica un video. | |
Jiang et al. | Improved frame-layer rate control for H. 264 using MAD ratio | |
CA2672339C (en) | An improved video rate control for video coding standards | |
KR100335052B1 (ko) | 프레임 레벨 속도 제어 방법 | |
US20070263720A1 (en) | System and method of adaptive rate control for a video encoder | |
US7826530B2 (en) | Use of out of order encoding to improve video quality | |
JP2006509444A (ja) | ピクチュアベースの先読みウィンドウによるレート制御 | |
US8948242B2 (en) | Encoding device and method and multimedia apparatus including the encoding device | |
WO2010043179A1 (en) | System and method for bit-allocation in video coding | |
KR100601615B1 (ko) | 네트워크 대역폭에 적응적인 영상 압축 장치 | |
EP1086593A1 (en) | Sequence adaptive bit allocation for pictures encoding | |
WO2002096120A1 (en) | Bit rate control for video compression | |
CN106657855A (zh) | 一种适用于无人机spi接口视频码率控制方法 | |
CN100574442C (zh) | 基于图像直方图的码率控制方法 | |
CN101335891A (zh) | 视频速率控制方法及视频速率控制器 | |
JP4362795B2 (ja) | 動画像符号化装置及びその方法 | |
KR20000070810A (ko) | 부호화 장치 및 부호화 방법 | |
KR20040007818A (ko) | 동영상 부호화를 위한 dct연산량 조절 방법 및 그 장치 | |
Yin et al. | A rate control scheme for H. 264 video under low bandwidth channel | |
KR100949755B1 (ko) | 비디오 시퀀스의 레이트를 제어하는 방법 및 장치, 비디오부호화 장치 | |
Bhattacharyya et al. | Burstiness minimized rate control for high resolution H. 264 video conferencing | |
Sun et al. | A direct non-buffer rate control algorithm for real time video compression | |
JP3779066B2 (ja) | 動画像符号化装置 | |
US20050207501A1 (en) | Method of and system for video bit allocation for scene cuts and scene changes | |
Park | PSNR-based initial QP determination for low bit rate video coding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FG | Grant or registration |