MXPA02010833A - Multiplexor y remultiplexor estadistico que comoda cambios en la estructura de un grupo de peliculas. - Google Patents

Multiplexor y remultiplexor estadistico que comoda cambios en la estructura de un grupo de peliculas.

Info

Publication number
MXPA02010833A
MXPA02010833A MXPA02010833A MXPA02010833A MXPA02010833A MX PA02010833 A MXPA02010833 A MX PA02010833A MX PA02010833 A MXPA02010833 A MX PA02010833A MX PA02010833 A MXPA02010833 A MX PA02010833A MX PA02010833 A MXPA02010833 A MX PA02010833A
Authority
MX
Mexico
Prior art keywords
gop
length
super
program
video programs
Prior art date
Application number
MXPA02010833A
Other languages
English (en)
Inventor
Limin Wang
Original Assignee
Gen Instrument Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Gen Instrument Corp filed Critical Gen Instrument Corp
Publication of MXPA02010833A publication Critical patent/MXPA02010833A/es

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2365Multiplexing of several video streams
    • H04N21/23655Statistical multiplexing, e.g. by controlling the encoder to alter its bitrate to optimize the bandwidth utilization
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/115Selection of the code volume for a coding unit prior to coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/162User input
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/172Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/177Methods 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 a group of pictures [GOP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/179Methods 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 a scene or a shot
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/24Systems for the transmission of television signals using pulse code modulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Un sistema para el control de indice durante la transcodificacion y codificacion de datos digitales de video en un ambiente de transmision de programas multiples, acomoda los cambios en la estructura GOP de cualquiera de los programas, por ejemplo, debido a la insercion de comerciales o similares. Se usa un esquema jerarquico de distribucion de bits, en donde los bits son distribuidos en un nivel de super grupo de peliculas (GOP) (106), por ejemplo, un grupo de GOPs multiples, un nivel de super cuadro (104), y un nivel de cuadro individual (102). La distribucion de bits del super GOP y cada pelicula es ajustada cuando se detecta un cambio en la estructura de un grupo de peliculas GOP para cualquiera de los programas previamente comprimidos. La longitud del super GOP tambien se puede ajustar, si se requiere, para mantener un numero entero de GOPs en la misma. Se detecta un cambio en la estructura GOP basado en un cambio en la longitud de la GOP o la longitud de la sub_GOP (distancia entre peliculas P). Para los datos previamente comprimidos, se pueden suponer las longitudes iniciales de GOP y las longitudes de sub_GOP y ajustar segun se requiera basado en las mediciones reales. Para una pelicula I o P actual, la longitud de la sub_GOP es calculada basada en las referencias temporales de la pelicula actual y una pelicula I o P anterior. Para una pelicula B actual, se utiliza el mismo calculo, mas una pelicula.

Description

MULTIPLEXOR Y REMU TIPLEXOR ESTADÍSTICO QUE ACOMODA CAMBIOS EN LA ESTRUCTURA DE UN GRUPO DE PELÍCULAS Campo del Invento La presente invención se refiere al control del índice durante la transcodificación y codificación de programas digitales de video en una transmisión de programas múltiples, en donde varios programas son multiplexados y transmitidos por un solo canal de comunicación.
Antecedentes del Invento Generalmente, es necesario ajustar un índice de bits de programas digitales de video que son proporcionados, por ejemplo, para las terminales de los suscriptores en una red de televisión por cable o similar. Por ejemplo, un primer grupo de señales puede ser recibido en el extremo principal por medio de una transmisión por satélite. El operador del extremo principal puede desear enviar programas seleccionados a los suscriptores mientras que agrega programas (por ejemplo, comerciales u otro contenido) de una fuente local, tal como los medios de almacenamiento, o la alimentación en vivo local, adicionalmente, con frecuencias necesarias para proporcionar los programas dentro de un ancho de banda de canal general disponible. También se puede desear cambiar el nivel relativo de calidad de un programa, distribuyendo más o menos bits. Por consiguiente, se ha desarrollado el multiplexor estadístico (stat mux), o codificador, el cual incluye un número de codificadores para codificar señales digitales de video no comprimidas en un índice de bits especificado. También se ha desarrollado el remultiplexor estadístico (stat remux), o transcodificador, el cual maneja las corrientes de bits de video previamente comprimidas, comprimiéndolas de nuevo en un índice de bits especificado. Además, las funciones de un stat mux y remux, pueden ser combinadas cuando se desea transcodificar datos previamente comprimidos, mientras que también se codifican datos sin comprimir para la transmisión de una corriente de bits de salida común. Los programas no comprimidos son codificados por primera vez, mientras que los programas comprimidos se vuelven a codificar, generalmente, en un índice de bits diferente.
Para las aplicaciones MPEG, un stat mux/remux, debe de acomodar tres tipos de películas diferentes (I, P y B), los cuales generalmente requieren números bastante diferentes de bits, debido a la naturaleza diferente de su procesamiento temporal. Las estrategias de distribución de bits deben de tomar en consideración los tipos de películas. Para un presupuesto de bits determinado, esto implica un requerimiento de un conocimiento por anticipado de las organizaciones de películas (GOP) de los programas. Este requerimiento no es problema para los codificadores, debido a que los codificadores pueden planear por anticipado los tipos y adaptaciones de películas que producirán. Sin embargo, dicho conocimiento por anticipado, generalmente no está disponible para los transcodificadores , los cuales tratan con corrientes de bits de video previamente comprimidas . Por consiguiente, sería deseable proporcionar un sistema stat mux/remux que elimine el supuesto de que las organizaciones de películas están disponibles para todos los programas. El sistema debe de proporcionar, una estrategia novedosa de distribución de bits adaptable para un sistema stat mux/remux que no requiera un conocimiento por adelantado (a priori) de la organización de películas del programa. El sistema debe tener la capacidad para resolver cualesquiera cambios en las organizaciones de películas del programa, incluyendo un cambio en la duración del GOP y/o la duración de la sub-GOP (la distancia entre dos películas-P en cualquier orden de codificación o despliegue en pantalla. El sistema debe de incluir transcodificadores para procesar las corrientes de bits de video previamente comprimidas, o ambos codificadores y transcodificadores , para manejar adicionalmente las señales de video digitales no comprimidas. Además, el sistema debe de acomodar los cambios en el grupo de la estructura de película (GOP) de las corrientes de bits previamente comprimidas, por ejemplo, debido al cambio de canales, inserción de comerciales, cambios en el contenido del programa (por ejemplo, debidos a una transición de una película de cine a un anuncio de un noticiero o a un evento deportivo) y similares. El sistema debe manejar los cambios de la estructura que ocurren en un límite de GOP o dentro de una GOP. El sistema debe de acomodar cambios en una longitud GOP y/o una longitud sub_GOP. El sistema debe de superar las dificultades para integrar corrientes de bits de programas previamente comprimidos (que incluyen, por ejemplo, materiales de video tales como películas y similares, que son comprimidos con anterioridad almacenadas para su transmisión posterior) con secuencias digitales de video sin comprimir. El sistema no debe de requerir un conocimiento por adelantado de la organización de películas (estructura GOP) de los programas (por ejemplo, la longitud GOP, y la adaptación de los diferentes tipos de películas en el GOP) . El sistema debe evitar las demoras del procesamiento de aproximadamente 1 GOP en las cuales incurriría de otro modo, para extraer la información completa de la estructura GOP de una corriente de bits previamente comprimida. El sistema también debe de evitar la necesidad de almacenar los datos correspondientes al GOP, reduciendo de este modo, el tamaño de la memoria requerida para la transcodificación.
La presente invención proporciona un sistema que tiene las ventajas mencionadas anteriormente y otras ventajas.
Sumario del Invento La presente invención se refiere al control del índice durante la transcodificación y codificación de datos digitales de video en un ambiente de transmisión de programas múltiples. La presente invención es responsable de los cambios a la estructura de un GOP, por ejemplo, debido a la inserción de un comercial o similares, para ajustar la distribución de bits por cada película de manera correspondiente. Un cambio en la longitud GOP (aumento o disminución), y/o una longitud de sub_GOP que puede ser acomodada. Por ejemplo, un cambio en una frecuencia de película de IBBPBBPBB... a IBPBPBPB..., da como resultado el cambio del sub_GOP de tres a dos. La longitud del sub_G0P contiene información acerca de los tipos específicos de películas y sus adaptaciones en un GOP. De ahí, que aún cuando la longitud del GOP permanezca igual durante un cambio en la fuente de entrada de video, se puede tener una adaptación diferente de tipos de películas si cambia la sub_GOP. Además, la invención opera con un esquema jerárquico de distribución de bits, en donde los bits son distribuidos en un nivel de super GOP, super cuadro, y niveles individuales de cuadro. El cambio en la estructura GOP puede ocurrir en cualquier parte, por ejemplo, dentro de un GOP o super GOP, o en un límite de un GOP o super GOP. Una vez que el GOP de un programa cambia, la longitud del super GOP se calcula de nuevo, y la distribución de bits para el super GOP es ajustada de manera correspondiente. Si existe un cambio durante la mitad de un GOP a otro programa de un nuevo GOP, éste es tratado como una transición del viejo GOP al GOP viejo incompleto, y posteriormente al nuevo GOP. Se proporciona un método particular de acuerdo con la presente invención, para la codificación de una pluralidad L de programas de video. El método incluye los pasos de distribución de bits para codificar los programas de video de acuerdo con un esquema jerárquico que incluye al menos: (a) un nivel de super grupo de películas (GOP) en donde un super GOP comprende al menos un GOP de cada uno de los programas de video, y (b) un nivel de cuadro individual. El paso de distribución es responsable de las estructuras GOP respectivas de los programas de video. Las estructuras GOP respectivas de los programas de video son monitoreadas para detectar cualesquiera cambios en los mismos. Cuando se detecta un cambio en la estructura GOP de al menos uno de los programas de video, la distribución de bits para codificar los programas de video en el super GOP es ajustada de acuerdo con el cambio. Por consiguiente, la presente invención puede optimizar la distribución de bits, debido a que el procesador de control de índice mantiene un conocimiento actualizado de cada tipo de película y la adaptación de las películas para los diferentes programas hasta un punto máximo posible . También se presentan los aparatos correspondientes.
Breve Descripción de los Dibujos La figura 1 ilustra un stat mux/remux, tanto con codificadores como transcodificadores , y un motor de control de unión de índice, de acuerdo con la presente invención. La figura 2 ilustra una construcción de un super grupo de películas (GOP) de acuerdo con la presente invención. La figura 3 ilustra una construcción de un super cuadro de acuerdo con la presente invención.
La figura 4 ilustra un descodificador para recibir los datos del stat mux/remux de la figura 1, de acuerdo con la presente invención. La figura 5 ilustra un programa de video con un cambio en la longitud del sub_GOP, y un ajuste posterior de la longitud del super GOP, de acuerdo con la presente invención. La figura 6 ilustra un programa de video con un aumento en la longitud GOP de acuerdo con la presente invención. La figura 7 ilustra un programa de video con una disminución de la longitud GOP de acuerdo con la presente invención.
Descripción Detallada del Invento La presente invención se relaciona con el control de índice durante la transcodificación y codificación de datos digitales de video en un ambiente de transmisión de programas múltiples. 1. INTRODUCCIÓN Con los avances recientes en la compresión de videos digitales y la transmisión digital, es posible presentar varios programas de video en el mismo ancho de banda ocupado actualmente por un canal de televisión análogo simple. Para ser comprimido en el canal de índice fijo, los programas de video tienen que compartir la capacidad del canal. Específicamente, se comprimen los datos naturales de pixeles, y los bits comprimidos son transcodificados . Los codificadores y transcodificadores se pueden considerar como máquinas de conversión de índices. Un codificador comprime una secuencia digital de video en una corriente de bits en un índice mucho más bajo, mientras que el transcodificador convierte una corriente de bits de video previamente comprimida, en otra corriente de bits en un nuevo índice (bajo) . Sin embargo, el índice agregado de estas corrientes de bits comprimidas, tiene que ser igual a, o menor que el índice del canal. Esto se puede lograr controlando, ya sea cada índice individual (codificación independiente), o el índice agregado (codificación conj unta ) . En la codificación independiente, el control de índice solamente puede ser realizado en el momento y dimensiones espaciales de un solo programa. En la codificación conjunta, el control es extendido a la dimensión del programa (por ejemplo, programas múltiples). Esto implica más libertad para distribuir la capacidad del canal entre los programas y, por lo tanto, más control de la calidad de películas entre los programas múltiples, así como dentro de un programa. Un sistema que puede acomodar los programas de video múltiples en un canal de índice fijo es denominado un: 1. stat mux, si todas las entradas son señales digitales de video sin comprimir, 2. stat remux, si todas las entradas son corrientes de bits de video previamente comprimidas, o 3. stat mux/remux, si las entradas son, tanto señales digitales de video sin comprimir, como corrientes de bits de video previamente comprimidas.
Un stat mux, tiene codificadores, mientras que un stat remux solamente necesita transcodificadores , y un stat mux/remux tiene tantos codificadores como transcodificadores . La figura 1 ilustra un sistema stat mux/remux de acuerdo con la presente invención. Las entradas para el sistema stat mux/remux 100 pueden incluir secuencias digitales de video sin comprimir y/o corrientes de bits previamente comprimidas. Las secuencias digitales de video sin comprimir, por ejemplo, los programas 1 y 2, son codificados por los codificadores 120 y 130, respectivamente, por ejemplo, los que usan el estándar MPEG de codificación de video. Los programas previamente comprimidos (por ejemplo, corrientes de bits) L-l y L son procesados, respectivamente, por los transcodificadores 140 y 150, los monitores de la estructura GOP 142 y 152, y las funciones opcionales del índice de bits 144 y 154. Se puede utilizar cualquier configuración conocida del transcodificador. Los monitores de la estructura del GOP 142 y 152 operan de la manera que se explicará con mayor detalle más adelante, para proporcionar las longitudes GOP NL_? y NL, y las longitudes de sub_GOP ML_? y ML, de los programas (L-l) o., respectivos para el procesador de control de índice 110, el cual ajusta la distribución de bits a los diferentes programas, (por medio de un índice de bits objetivo T), en respuesta a los mismos . Las funciones de índice de bits 144, 154 de ejemplo, son opcionales y son utilizadas para monitorear el índice de bits de los cuadros de datos de entrada previamente comprimidos. Como se explicará adicionalmente en relación con la ecuación 14, el procesador de control de índice puede reducir el índice de bits objetivo para un transcodificador, de modo que no exceda el índice medido de bits. Se debe observar que la invención puede operar solamente cuando están presentes corrientes de bits previamente comprimidas. Los datos del programa sin comprimir son acomodados, pero no se requieren. Además, puede ser acomodado cualquier número de corrientes de bits previamente comprimidas, aunque por razones de simplicidad, solamente se muestran dos en la figura 1. Los datos transcodificados y los datos codificados (cuando están presentes) son proporcionados a un MUX 160, una memoria intermedia 170 antes de ser transmitidos en un canal, generalmente a una población descodificadora . El canal puede ser parte de una red de comunicaciones de banda amplia, tal como una red de televisión por cable o satélite. Los datos del programa previamente comprimidos pueden ser proporcionados desde cualquier fuente, tales como un medio de almacenamiento (por ejemplo, una cinta magnética o un disco compacto) o de una transmisión por satélite o de un stat mux, por ejemplo, los datos previamente comprimidos, tales como la inserción de comerciales o inserción de noticias locales u otra programación, pueden ser proporcionados localmente, para usarlos en conjunto con los datos previamente comprimidos que son recibidos de una fuente remota. La memoria intermedia 170 envía una señal de nivel completo a un procesador de control de índice 110, el cual puede ajustar de manera correspondiente las distribuciones de dicho objetivo, para evitar un sobreflujo o flujo insuficiente de la memoria intermedia.
Por ejemplo, una interfase del usuario 180 se puede comunicar con el procesador de control de índice 110, para ajustar una estructura GOP para los codificadores 120, 130, para designar ciertos codificadores o transcodificadores , como que tienen una prioridad más alta, y así sucesivamente . El stat mux/remux 100 proporciona una calidad de película relativamente uniforme (u otro nivel de calidad designado cuando son asignadas prioridades a programas diferentes) dentro de un programa, y si es necesario, entre programas. Para lograr esta meta, la capacidad del canal es distribuida dinámicamente entre los programas de acuerdo con una pluralidad de programas, así como una medición de complejidad del programa del nivel del cuadro. Cada codificador MPEG 120, 130 o transcodificador 140, 150, recibe un número objetivo de bits Ti, T2, TL? y TL, respectivamente, del procesador de control de índice 110 en cada cuadro. El procesador de control de índice 110 incluye una función de procesamiento del nivel de super GOP 106, una función de procesamiento del nivel de super cuadro 104, una función de procesamiento del nivel de cuadro 102, y un procesador de complejidad 105. Estas funciones de procesamiento pueden compartir un equipo común, tal como una memoria y chips de procesamiento, pero se muestran individualmente, por razones de simplicidad . El número objetivo de bits para cada cuadro de un programa es cubierto ajustando el parámetro de cuantificación en el codificador o transcodificador MPEG. El número resultante de bits comprimidos, R, así como el parámetro promedio de cuantificación, Q, utilizado para cada cuadro son enviados entonces al procesador de control de índice 110 como datos de retroalimentación. Específicamente, el codificador 120, el codificador 130, el transcodificador 140 y transcodificador 150, producen los bits Rlf R2, RL-I y RL, respectivamente, utilizando los parámetros de cuantificación Qi, Q2 , QL-I y QL. respectivamente. El procesador de complejidad 105 calcula los valores correspondientes de complejidad C utilizando R y Q para cada programa. El procesador de control de índice 110 entonces determina un nuevo número objetivo de bits por cada cuadro o película del programa nuevo, basado en la complejidad del programa en el nivel del cuadro . El procesador de control de índice 110 también actúa en respuesta a los datos de la estructura GOP proveniente de los transcodificadores 140, 150. De un modo ideal, un sistema stat mux/remux distribuye la capacidad del canal entre los programas de entrada de acuerdo con las mediciones de complejidad relativa de los programas. Es decir, a los programas más complejos se les asignan más bits y a los programas menos complejos se les asignan menos bits. Para un índice determinado, esto implica también que el índice asignado para un programa depende de las medidas de complejidad del programa y los otros programas. Debido a que la complejidad del programa puede variar con el tiempo, las medidas de complejidad relativa de los programas varían también. La distribución de la capacidad del canal, o distribución del bit en los programas, por lo tanto, tiene que ser una función variable con el tiempo (por ejemplo, en una base de cuadro-por-cuadro) .
Además, el MPEG (ISO/IEC (MPEG-2), "Codificación genérica de películas y audio asociados", Marzo 1994, define tres tipos de películas en términos del procesamiento temporal (I, P y B), y la organización de las tres películas (GOP) puede ser muy flexible. Debido a la naturaleza diferente de su procesamiento temporal, las tres películas pueden requerir números muy diferentes de bits. De ahí, que para usar de manera inteligente el presupuesto de bits en los programas de entrada, las organizaciones de películas del programa también deben de ser tomadas en consideración, sin embargo, para un transcodificador, la organización de películas del programa está incrustada en la corriente de bits previamente comprimida y por lo tanto, no está disponible como si se estuviera recibiendo una corriente de bits. Aunque un transcodificador puede aprender la organización de películas del programa de una corriente de bits de entrada previamente comprimida, por ejemplo, explorando la corriente de bits por aproximadamente un GOP, esto da como resultado, demoras del procesamiento y la necesidad de un espacio adicional de memoria, lo cual aumenta los costos. Además, una complicación adicional, es que el requerimiento extra de memoria variará para los programas con diferentes longitudes GOP. La presente invención opera sobre la suposición de un conocimiento por adelantado de las estructuras del programa GOP, que no está disponible para los transcodificadores . La invención inicia con organizaciones de películas del programa supuestas de manera razonable (longitud del GOP, y longitud del sub_GOP) , y proporciona ajustes graduales a la organización supuesta, cuando es necesario. Una longitud de GOP de quince películas, y una longitud de un sub GOP de tres películas, en muchos casos, es una organización que se propone de manera razonable. Por ejemplo, N=15 y M=3 corresponden a una organización de películas de ...BBIBBPBBPBBPBBPBBI ... , mientras que N=10 y M=2 corresponde a una organización de películas de ...BIBPBPBPBPBI ... 2. DISTRIBUCIÓN DINÁMICA DE BIT La estrategia jerárquica de distribución dinámica de bits para un sistema stat mux se explica en la Patente Norteamericana No. 6,167,084, otorgada a L. Wang y A. Luthra, emitida el 26 de Diciembre del 2000, y titulada "Distribución Dinámica de Bits para Multiplexión Estadística de Señales Digitales de Video Comprimidas y sin Comprimir". En el nivel superior de la jerarquía, se introduce el concepto de un super GOP (grupos de películas) . Específicamente, los programas son divididos conceptualmente en super GOPs teniendo cada uno el mismo número de películas I , P y B, a los que le son asignados el mismo número nominal de bits. Un super cuadro es definido en un nivel medio de la jerarquía, el cual es una colección de cuadros, uno de cada uno de los programas en mismo instante del cuadro. A un super cuadro se le asigna un índice objetivo de acuerdo con sus medidas de complejidad relativa. La misma idea se extiende al cuadro regular, individual, en un nivel más bajo de la jerarquía, en donde el índice objetivo para un cuadro es proporcional a su medida de complejidad. Además, para asegurar que las memorias intermedias del codificador y el descodificador nunca tengan un sobreflujo o flujo insuficiente, y para limitar cada índice promedio individual, se aplican restricciones adicionales en el número objetivo de bits para el super cuadro, así como para el cuadro regular. La presente invención extiende la estratégica jerárquica de distribución dinámica de bits a un sistema stat mux/remux. 2.1 Super GOP e índice Nominal Como se muestra en la figura 2, nosotros dividimos conceptualmente los programas de video de entrada L en super GOPs idénticos (L,N), en términos del número de cuadro de cada tipo de película. Un primer super GOP 200 incluye cuadros de datos del programa 1 (210), programa 2 (220),..., hasta el programa L (290). Cada segmento del programa, por ejemplo, 210, 220, 290, contiene un número de cuadros completo de uno o más GOPs. Un segundo super GOP 202 incluye cuadro de datos del programa 1 (212) del programa 2 (222),..., hasta el programa L (292). Un tercer super GOP 204 incluye cuadros de datos del programa 1 (214) , el programa 2 (224) , ... , hasta el programa L (294) . De ahí que L es del número de programas, al cual se le da, y N es la longitud de los super GOPs, los cuales se establecen de manera igual para el múltiple común mínimo (LCM) de las longitudes GOP del programa de Ni, 1=1, 2,..., L, es decir . , N = LCM (N?,N2, ... ,NL) . (1) Por ejemplo, si existen dos longitudes diferentes de GOP para N programas, digamos nueve y quince, la longitud del super GOP N=45. Debido a que N es el entero más pequeño que puede ser dividido entre todas las longitudes de programa GOP, Ni, 1=1, 2,... ,L, los super GOPs (L,N) son entonces los grupos idénticos más pequeños que contienen el mismo número de cuadros de cada tipo de película. Un super GOP (L,N) ya contiene el número entero de GOP para cada programa 1, es decir N/Ni. Los super GOPs (L,N), con un N definido en (1) contiene el mismo número de películas I, P y B, y de ahí, que tienen asignado el mismo número nominal de bits, TLxN = ( L X N ) . Rcanal (bp f ) ( 2 ) en donde RCanai (b f) es el número promedio de bits por cuadro. El número de película I, P y B en un GOP para programa 1, son respectivamente, N?,?=l, NT,P=NI/MI-NI,I=N!/MI-1, y NI/B=NI-NI, P-NS, I=N?-N? , P-l . 2.2 Super Cuadro e índice Objetivo La figura 3 ilustra un super cuadro, el cual es una colección de cuadros L, uno de cada uno de los programas L en el mismo instante del tiempo. En cada instante del cuadro n, podemos imaginar además un super cuadro 300, el cual es una colección de cuadros o películas L, una de cada uno de los programas L tomados en el mismo instante del cuadro. Por ejemplo, el cuadro 310 del programa 1, el cuadro 320 del programa 2, ... , hasta el cuadro 330 del programa L, son adaptados conceptualmente en el super cuadro 300. Claramente, un super GOP consiste de N super cuadro. Además, como estos programas L pueden tener estructuras diferentes de GOP, los cuadros L en un super cuadro pueden tener diferentes tipos de películas . El número objetivo de bits para el super cuadro n es proporcionado como: en donde C?,n,t es la medida de complejidad del cuadro n del programa 1 con el tipo de película t e {I, P,B}, y puede ser, ya sea Ct . I f CT,P y CI<B, dependiendo del tipo de película asociado de I, P ó B. TM5 define una medida de complejidad para un cuadro como el producto del número de bits generados del cuadro y el parámetro de cuantificación promedio utilizado para el cuadro. También se permiten otras medidas de complejidad. a1' es un factor constante para dirigir la resolución espacial del programa 1. ßi, es el factor de ponderación de calidad (o prioridad) del programa 1, el cual será determinado por el proveedor del programa. yi. n. t r es un factor constante utilizado para compensar el tipo de película t e {I, P,B} del cuadro n del programa 1. Puede ser, ya sea yl r yP ó yB, dependiendo del tipo de película I, P ó B. ni-i, n?, y n?,B son los números restantes de las películas I, P y B respectivamente, para el programa 1 en el super GOP actual. Para un nuevo super GOP, éstas se vuelven ajustar, y entonces se disminuyen por uno después de que se ha procesado una película del tipo correspondiente.
R es el número restante de bits para el super L GOP actual definido como R = R + ^(7/n.1 -/?,„_,) • Aquí /=? T?,n-? y ,R?,n-? son, respectivamente, los índices objetivo y real para el cuadro n-l del programa 1. L De aquí ?(7'/,(I_? -•/?,___,) es el número de bits omitidos t-\ de los cuadros n-l del programa 1= 1, 2,...,L, el cual puede ser ya sea positivo o negativo. Al principio de un nuevo super GOP R necesita ser actualizado como R = R+TLXN/ en donde R en el lado derecho de la ecuación, es el número de bits omitidos del super cuadro anterior, el cual puede ser positivo o negativo. Observar que el numerador del lado derecho de la ecuación (3) es la suma de las medidas de complejidad para todos los cuadros en el super cuadro n. Por otra parte, el denominador puede ser considerado como la suma de las medidas de complejidad de todos los cuadros restantes en el super GOP actual. Por lo tanto, la ecuación (3) realmente asigna un número objetivo para un super cuadro en proporción con la medida de complejidad del super cuadro. 2.3 Evitar el Sobreflujo o el Flujo Insuficiente de la memoria Intermedia del Codificador . Para que la memoria intermedia del codificador 170 no tenga un sobrefluuo o un flujo insuficiente, se aplica cierta restricción, estableciendo el límite superior o inferior del índice objetivo para los super cuadros. Esto puede ser logrado de acuerdo con las técnicas establecidas en la Patente Norteamericana No. 6,167,084 mencionada anteriormente. 2.4 índice Objetivo para un Cuadro Regular Debido a que el número objetivo de bits para un super cuadro n, Tn, el número objetivo de bits para el cuadro n del programa 1 del dentro del super cuadro T?,n, puede ser calculado como: Aquí, el numerador de la derecha es la medida de complejidad para el cuadro n del programa 1, y el denominador puede ser considerado como la medida de complejidad para el super cuadro n. Por lo tanto, a un cuadro se le asigna un índice objetivo proporcionado a su medida de complejidad.
Los índices objetivo determinados por la ecuación (4) están basados en la medida de complejidad relativa del cuadro. Para los transcodificadores , se pueden necesitar ajustes adicionales . Específicamente, el índice objetivo de un cuadro determinado (4), podría ser más grande o más pequeño que el índice viejo para el cuadro en la corriente de bits de entrada previamente comprimida. Sin embargo, un transcodificador de conversión de índice, es un aparato para convertir una corriente de bits de video previamente comprimida en otra corriente de bits en un nuevo índice. Y no puede mejorar la calidad de la señal de video previamente comprimida, independientemente de si la nueva corriente de bits es más pequeña o más grande que la vieja corriente de bits. Por lo tanto, distribuyendo más bits para el cuadro (previamente comprimido) se desperdician bits. Por lo tanto, de acuerdo con la presente invención, si el índice objetivo para el cuadro n de los programas 1 T?,n, (4) es mayor que el índice viejo para el cuadro en la corriente de bits de entrada previamente comprimida, es decir Rviejo,i,. debe ser aplicado el índice viejo, por ejemplo: Esto puede ser logrado utilizando las funciones de ejemplo de índice de bits 144, 154 de la figura 1, midiendo el índice de bits de una película en la corriente de bits recibida, por ejemplo, utilizando un contador de bits, y enviando esta información al procesador de control de índice 110 para reducir los bits distribuidos, T, para el transcodificador asociado, si así se requiere . 2.5 Evitar el Sobreflujo o el Flujo Insuficiente de la Memoria Intermedia del Descodificador La figura 4 ilustra un descodificador para recibir datos de un sistema stat mux/remux de la figura 1, en donde los paquetes de un programa seleccionado son extractados y descodificados. En el extremo receptor 480, se permite que el descodificador 495 seleccione el programa deseado, y extraiga (desmultiplexe ) los paquetes correspondientes por medio del desmultiplexor 485. La corriente de bits desmultiplexada se encuentra en un índice variable. Es responsabilidad del codificador asegurar que la memoria intermedia del descodificador 490 nunca tenga un sobreflujo o un flujo insuficiente, y por lo tanto, se deben aplicar restricciones adicionales al codificador. Esto puede ser logrado utilizando las técnicas de la Patente Norteamericana No. 6,167,084 anteriormente mencionada, para aplicar una restricción al índice objetivo por cada cuadro regular . 2.6 Restricciones en el índice Máximo y Minimo También podemos controlar el índice de bits promedio en un cierto número de cuadros, limitando el número objetivo de bits por cada cuadro dentro de un rango especificado. Esto se puede lograr utilizando las técnicas de la Patente Norteamericana No. 6,167,084 anteriormente mencionada . 3. CAMBIO EN GOPs DE LOS PROGRAMAS Las estructuras de programa GOP (incluyendo la longitud GOP, el tipo y adaptación de películas, y la longitud sub GOP) juegan un rol importante en la determinación del índice objetivo para un cuadro, tal y como se muestra en las ecuaciones (3,4) . Sin embargo, una estructura de programa GOP puede variar de vez en cuando. Por ejemplo, para un transcodificador, la corriente de bits de video de entrada puede consistir de segmentos de diferentes materiales/contenido, tal como películas, noticias, deportes, música, etc., que son previamente codificados con estructuras GOP diferentes. Otro ejemplo es la inserción de comerciales, en donde el comercial insertado puede estar previamente codificado con una estructura GOP diferente a la del programa original para el que va a ser insertado. De acuerdo con la presente invención, la distribución de bits se adapta a los cambios en la estructura del programa GOP, es decir, ajustando el tamaño de super GOP y otros parámetros para determinar los índices objetivo de los cuadros. 3.1 Longitud del sub_GOP del Programa Lo siguiente muestra una forma general de organización de películas 1 de ejemplo. La primera fila se encuentra en el orden de pantalla, la segunda fila es el orden de codificación correspondiente: Bm-ll mBm+lBm+2...Bm+Ml-lPm+MlBm+Ml + l--- Pm+ 2M1 — I m+Nl— , ImBm- (Ml-I) Bm- (Ml-1) + l---Bm-? Pm+MlBm+ l».Bm+ l-l Pm+ 2M1 — Im+Nl--- r - Aquí, los suscriptores son la referencia temporal de las películas, y Ni y Mx son la longitud de GOP y la longitud del sub-GOP, respectivamente. Las películas en la corriente de bit de video comprimidas que son ingresadas a un transcodificador, se encuentran en un orden de codificación. El orden de pantalla es recuperado en el descodificador. Para un codificador que codifica datos de video no comprimidos, están disponibles los cambios en la longitud sub-GOP de un programa, ya que la estructura del programa GOP está disponible, permitiendo de este modo que el codificador planee por adelantado la distribución de bits . Sin embargo, para un transcodificador, los cambios en las estructuras sub-GOP están incrustados en la corriente de bits de entrada previamente comprimida. De acuerdo con la presente invención, la longitud sub_GOP de un programa es calculada en cada cuadro/película actual (I, P ó B), si el cuadro anterior se encuentra en una película I o una película P, revisando las referencias temporales de la película actual, y la película I ó P anterior. Si el cuadro anterior es una película B, no se revisa el sub-GOP. En la sintaxis MPEG, la referencia temporal de una película está incluida en el encabezado de la película que se encuentra al inicio del segmento de los bits comprimidos de la película. Específicamente, el término "temporal_referencia" es un entero no firmado de 10 bits asociado con cada película de entrada. Éste se incrementa por uno, módulo 1024, por cada cuadro ingresado. Por ejemplo, el temporal_referencia puede tener valores de 67, 68, 69 y así sucesivamente. Por lo tanto, un transcodificador (o, más específicamente, los monitores de estructura GOP asociados 142 ó 152 de la figura 1) pueden tener acceso a la referencia temporal de una película actual antes de que el transcodificador procese realmente (transcodifique ) la película. La referencia temporal de la película I ó P anterior ya está disponible debido a que la película ya ha sido procesada . La figura 5 ilustra un programa de video con un cambio en la longitud sub_GOP y un ajuste posterior de la longitud del super GOP de acuerdo con la presente invención. Observar que los GOPs del programa para diferentes programas 1,..., L no se alinean necesariamente entre ellos. Un programa 1 de ejemplo que es transcodificado incluye los GOPs 546, 548 y 550 que tienen una primera estructura GOPs (longitud GOP y/o longitud sub_GOP) , y los GOPs 552, 554, y 556 que tienen una segunda estructura GOP diferente. Observar que la estructura GOP puede cambiar para más de un programa al mismo tiempo. La longitud del super GOP y el presupuesto de bits son ajustados de manera correspondiente. Además, como se mencionó, los programas pueden comprender solamente datos transcodificados , o tanto datos transcodificados como codificados. En el tiempo indicado en el número 510 se determina un super GOP viejo con longitud Nv?eD0. • * Un sub_GOP (la distancia entre dos películas P en cualquier orden de codificación o pantalla) para cada programa, no cambia hasta un momento indicado con el número 520, cuando una longitud nueva del super GOP es determinada NnueVo • Entonces temp_ref_picl y temp_ref-pic2 deberán ser la referencia temporal para la película I ó P anterior, y la película actual para el programa 1, respectivamente . Si la película anterior es una película I ó P y la película actual es una película B, la película B deberá ser desplegada en pantalla antes que la película I ó P (en el orden de pantalla) por lo tanto, la película B tiene una referencia temporal menor. Ahora, si la película actual es una película I ó P, la longitud sub_GOP real para el programa 1 es: Mireai = temp _ ref _ pi c2 _ temp _ref _pi cl . (6) De otro modo, si la película actual es una película B, Mireai = temp _ ref _ pi el _ temp . _ref _pi c2 + l . ( 1 ) No se determinó sub-GOP para la película actual cuya película anterior es una película B.
El comienzo de la película actual, en la figura 5, la cual es una película I, y la primera película del GOP 552, es en el tiempo 515. El inicio de la siguiente película es en el tiempo 520. Claramente sí Mi = M?,rea?, el sub_GOP actual para el programa 1 es correcto. Por lo tanto, no se necesita una acción adicional. Sin embargo, si Mi ? M?/reaií nosotros ajustamos i = M?re ?, Y ajustamos otros parámetros de la manera siguiente: 1. Primero, la longitud del programa GOP, Ni, tiene que ser divisible entre el i nuevo, (es decir, divisible de manera integral - sin residuo) . Si no es así, lo ajustamos de la siguiente manera: Ni = [Ni lMi] Mi (8) en donde [/] indica la división del entero con una truncación del resultado hacia cero. Por ejemplo, supongamos que inicialmente N?=15 y M=3. Entonces M cambia a M=2. Utilizando la ecuación 8, la longitud del GOP ajustada del programa N?=14. 2. Segundo, si Ni cambia, nosotros reajustamos la longitud del super GOP utilizando la ecuación (1) . El nuevo super GOP 540 ahora inicia exactamente en la siguiente película, en el tiempo 520. Observar que los GOPs no tienen que ser alineados con los nuevos super GOPs. El número de películas I, P y B en el super GOP 540 (nuevo), también puede ser calculado con la nueva longitud del super GOP, digamos que Nnue o/ como, respectivamente, ni.!* (N/Ni, n?.P=N?.P* (N/N?)=N/M?~ 3. Finalmente, el número nominal de bits para el super GOP (nuevo) ahora es igual a: T t.?Nnuevo = ( LXNnuevo ) Rcanal (bp f ) • ( -? ) No obstante, el número de bits para el primer super GOP (nuevo) 540, puede ser ligeramente diferente que para otros super GOPs que siguen al super GOP 540, ya que el super GOP 530 anterior (con longitud Nvieja) es un super GOP no terminado que dejo bits que fueron distribuidos anteriormente, pero que todavía no se han usado. De acuerdo con la presente invención, estos bits pueden ser distribuidos al primer super GOP 540 nuevo. Específicamente, digamos que NViej0 sea la longitud del super GOP viejo, y N' sea el número de cuadros del programa 1 en el super GOP viejo que han sido procesados. El número restante de bits para el primer super GOP nuevo es entonces: R = Tt.XNnuevo + [ T LXN ' — ( Tt.?Nvi ej o - R ) ] ( 1 0 ) Aquí, TLxN' es el número nominal de bits para los cuadros LxN' , y ( TLXNviejo-R) , es el número de bits utilizado para los cuadros del super GOP 530 viejo (no terminado) . Por lo tanto, [TLxN' - (TL?Nviejo ~ R) ] indica los bits que se dejaron del super GOP 530 viejo (no terminado) . Con la información actualizada, se pueden determinar los índices objetivos para los cuadros actuales y futuros (ecuaciones 3 y 4) . Observar que la longitud del sub_GOP de un programa puede ser verificada y/o corregida en cada cuadro si el cuadro anterior es una película I ó P, y de ser necesario, también se ajustan otros parámetros de manera correspondiente (ecuaciones 8 al 10) . 3.2. Longitud del GOP del programa. Digamos que ?,vißj0 y N?,nuevo son las longitudes del GOP de los GOPs anteriores y actuales del programa 1, respectivamente. Existen tres casos posibles con respecto a las longitudes del GOP, por ejemplo, N ? / nu evo = N ? ( Viej o Ni, nuevo > i, viejo (11) ^"l,r?uevo^ Ni, viejo Para los codificadores, están disponibles tanto los Ni, viejo como los N?,nUevo Sin embargo, para un transcodificador, la información acerca de la longitud del GOP está incrustada en la corriente de bits de entrada previamente comprimida. Antes de procesar completamente el GOP actual del programa 1, no está disponible el Ni, nuevo- Entonces ajustamos la longitud GOP actual Ni = Ni, viejo para el transcodificador. Claramente, si el N?,nUevo = Ni = Niviejoí tenemos una longitud del GOP correcta para el programa 1. Por lo tanto, no se necesitará acción adicional. La figura 6 muestra un ejemplo en donde la nueva longitud del GOP para el GOP actual, es más larga que la longitud del GOP utilizada actualmente. El programa 1 incluye los GOPs 646, 648, y 652, que tienen una primera estructura de GOP, y los GOPs 654, 656 y 658 que tienen una segunda estructura de GOP diferente. Un super GOP 630 viejo inicia en el tiempo 610, mientras que un nuevo super GOP 640 inicia eñ el tiempo 620. Los GOPs viejos se extienden, por ejemplo, de un tiempo 632 a un tiempo 635 y de un tiempo 635 a un tiempo 620. Un GOP nuevo se extiende desde un tiempo 635 a un tiempo 650. Por ejemplo, si N?,nuevo>N? = N?,Viejo, la longitud del GOP del programa real (nuevo) es más larga que la longitud del GOP (vieja) utilizada actualmente. El monitor de estructura GOP (142, 152), espera alcanzar una película I al final del GOP actual de Ni cuadros en el tiempo 620. Sin embargo, el fin de un programa GOP no es alcanzado realmente en el tiempo 620. De acuerdo con la presente invención, esto alerta al monitor de la estructura GOP de un cambio en la estructura GOP. Específicamente, se puede concluir que la longitud del GOP es más larga que la longitud del GOP actualmente-supuesta . Además, debido a la naturaleza de la estructura del programa GOP (figura 2), la longitud del GOP nuevo será por lo menos Mi (una longitud sub GOP) de un largo adicional de la película. Por lo tanto, hemos supuesto que la longitud sub-GOP M no cambia dentro de un GOP. Nosotros extendemos el GOP actual de Ni películas por Mi, películas adicionales, por ejemplo Ni = Ni + Mi (12) Con un nuevo Ni, nosotros volvemos a calcular la longitud del super GOP por medio de la ecuación (1) , y el número nominal de bits para el primer super GOP nuevo (y los siguientes GOPs) por medio de la ecuación (2) . El primer super GOP 640 es alineado con la película P actual del programa 1, tal y como se muestra en el tiempo 620. Debido al número de bits restantes del super GOP 630 anterior, el número de bits para el primer super GOP nuevo 640 se vuelve a distribuir de la manera siguiente : R = Tt.XNnuevo + -TL N' — (Tt.XNviejo _R) J • (13) en donde N i, viejo y i, nuevo, son las longitudes vieja y nueva del super GOP, respectivamente, y N' es el número de cuadros del programa 1 en el super GOP viejo 630 que han sido procesados. Si el GOP extendido para el programa 1 todavía es más corto que el GOP real, se repite el procedimiento anterior (por ejemplo, aumentando N i, por medio de la ecuación 12) hasta que se alcanza el final del GOP actual. La figura 7 muestra un ejemplo en donde la longitud GOP nueva para el GOP actual, es más corta que la longitud del GOP actualmente ut ili zado .
El programa 1 incluye los GOPs 746, 748 y 752 que tienen una primera estructura GOP, y los GOPs 754, 756, 758 y 760 que tienen una segunda estructura GOP diferente. Un super GOP 730 viejo inicia en el tiempo 710, mientras que un super GOP 740 nuevo inicia en el tiempo 720. Un GOP viejo se extiende desde un tiempo 732 a un tiempo 735, y desde un tiempo 735 hasta un tiempo 750. Un GOP nuevo se extiende de un tiempo 735 a un tiempo 720. Por ejemplo, si N?,nuevo<N? = Ni, viejo, la longitud del GOP real es más corta que la longitud del GOP utilizado actualmente, una película I (la cual indica el inicio de un nuevo GOP es solamente una película I en un GOP) será alcanzada (en el tiempo 720) antes del final del GOP actual de Ni cuadros. En este punto, el monitor de estructura GOP conoce la longitud GOP real, N?,nuevo, ya que el GOP 754 acaba de terminar. Nosotros ajustamos Ni = Ni, nuevo- Además, con la nueva longitud del GOP del programa, Ni, nosotros volvemos a ajustar la longitud del super GOP por (1) , y se calcula de nuevo el valor nominal de bits para los nuevos super GOPs por (2) . Nuevamente, debido a los bits restantes del super GOP 630 anterior (no terminado), el número de bits para el primer super GOP 640 nuevo, puede ser ligeramente diferente que para los super GOPs subsecuentes, es decir, R = Tt.XNnuevo + [Tt.XN' - (Tt.XNviejo ~ ~ - ) ] • (14) en donde NViej0 y NnUevo son las longitudes vieja y nueva del super GOP, respectivamente, y N' es el número de cuadros del programa 1 que han sido procesados en el super GOP 730 viejo. 4. CONTROL DE ÍNDICE Una vez que es establecido el índice objetivo para un cuadro de un programa, el paso siguiente es lograr este índice, por ejemplo, ajustando los parámetros de codificación, tales como el parámetro de cuantificación, en los codificadores y transcodificadores del sistema stat mux/remux. Puede ser utilizado cualquier esquema de control de índice adecuado, tal como los que se utilizan con el codificador MPEG, . Algunos de ellos pueden ser aplicados también a los transcodificadores . De preferencia, se utiliza un control de índice conjunto para distribuir dinámicamente la capacidad del canal entre los programas de acuerdo con las medidas de complejidad relativa de los programas .
. CONCLUSIÓN Se presenta un sistema stat remux que tiene codificadores y transcodificadores que pueden manejar, tanto señales digitales de video no comprimidas, como corrientes de bits de videos previamente comprimidas. El sistema implementa un control nuevo de índice adaptable, el cual distribuye de manera dinámica la capacidad del canal entre los programas de video de entrada, ya sea señales digitales de video sin comprimir, o corrientes de bits de video previamente comprimidas, en una base de cuadro-por-cuadro . La estrategia de distribución de bits adaptada en el control de índice adaptable tiene la capacidad de dirigir los cambios en la organización de películas (por ejemplo, cambios en la longitud del GOP o la longitud del sub-GOP) de las corrientes de bits de entrada previamente comprimidas. Cuando se detecta dicho cambio, se vuelve a calcular la distribución de bits. Además, se proporciona una distribución jerárquica de bits en un nivel de super GOP, y luego en un nivel de super cuadro, y finalmente en un nivel de cuadro individual.
Aunque la presente invención ha sido descrita con relación a varias implementaciones específicas, se debe de apreciar que se le pueden hacer a la misma varias adaptaciones y modificaciones sin salirse del alcance de la presente invención, tal y como se establece en las reivindicaciones adjuntas.

Claims (32)

  1. NOVEDAD DE LA INVENCIÓN Habiendo descrito la presente invención, se considera como novedad, y por lo tanto, se reclama como propiedad lo contenido en las siguientes:
  2. R E I V I N D I C A C I O N E S 1. Un método para codificar una pluralidad L de programas de video, el cual comprende los pasos de: distribuir los bits para codificar los programas de video de acuerdo con un esquema jerárquico que incluye por lo menos: (a) un nivel de super grupo de películas (GOP), en donde el super GOP comprende al menos un GOP de cada uno de los programas de video, y (b) un nivel de cuadro individual ; en donde el paso de distribución es en respuesta a las estructuras de GOP respectivas de los programas de video; monitorear las estructuras de GOP respectivas de los programas de video para detectar cualesquiera cambios ene las mismas; y cuando se detecta un cambio en una estructura de GOP de por lo menos uno de los programas de video, ajustar la distribución de bits para codificar los programas de video en el super GOP de acuerdo con dicho cambio. 2. El método de conformidad con la reivindicación 1, en donde: dicho paso de monitoreo, monitorea la estructura de GOP de los programas de video en una base de cuadro-por-cuadro .
  3. 3. El método de conformidad con la reivindicación 1, en donde: el cambio en la estructura de GOP se debe a un cambio en una fuente de video.
  4. 4. El método de conformidad con la reivindicación 1, en donde: el cambio en la estructura de GOP es debido a una inserción de un comercial en el programa de video asociado.
  5. 5. El método de conformidad con la reivindicación 1, en donde: un agregado de los índices de transmisión para los programas de video es mantenido dentro del índice de canal total disponible.
  6. 6. El método de conformidad con la reivindicación 1, en donde: los programas de video son comunicados por una red de comunicación de banda amplia a una población descodificadora .
  7. 7. El método de conformidad con la reivindicación 1, en donde: el esquema jerárquico incluye un nivel de super cuadro entre el nivel de super GOP y el nivel de cuadro; y cada super cuadro comprende películas L en un momento del cuadro común, uno de cada uno de los programas de video.
  8. 8. El método de conformidad con la reivindicación 1, en donde: los programas de video L tienen índices de bits variables respectivos.
  9. 9. El método de conformidad con la reivindicación 1, el cual comprende el paso adicional de: determinar si un índice de bits objetivo que es ajustado en el paso de distribución para un cuadro de datos previamente comprimidos, de al menos uno de los programas de video es mayor que el índice de bits medidos del cuadro y, de ser así, reducir el índice de bits objetivo al índice de bits medido.
  10. 10. El método de conformidad con la reivindicación 1, en donde: la pluralidad de programas de video comprende al menos dos programas de video previamente comprimidos, y la codificación de los mismos comprende la transcodificación.
  11. 11. El método de conformidad con la reivindicación 10, en donde: la pluralidad de programas de video comprende además al menos un programa de video que tiene datos de video sin comprimir.
  12. 12. El método de conformidad con la reivindicación 1, en donde: la estructura GOP comprende una longitud de programa GOP.
  13. 13. El método de conformidad con la reivindicación 12, el cual comprende el paso adicional de: iniciar un super GOP nuevo, y distribuir los bits al mismo, cuando se ha detectado un cambio en la longitud de un programa GOP de al menos uno de los programas de video.
  14. 14. El método de conformidad con la reivindicación 12, en donde la longitud GOP del programa es para los datos de video previamente comprimidos de al menos uno de los programas de video que comprende los pasos adicionales de: proporcionar un valor supuesto para la longitud GOP del programa antes de que se pueda hacer una medición de la longitud del programa GOP; medir la longitud del programa GOP cuando se puede hacer la medición; y comparar la longitud medida del programa GOP, con el valor y, si existe una diferencia, ajustar el valor a la longitud medida del programa GOP.
  15. 15. El método de conformidad con la reivindicación 13, en donde: la distribución de bits para un nuevo super GOP toma en cuenta los bits no utilizados de un super GOP anterior, que fueron previamente distribuidos, pero que no se usaron.
  16. 16. El método de conformidad con la reivindicación 13, el cual comprende el paso adicional de: calcular una longitud de un nuevo super GOP basada en la longitud GOP del programa cambiado.
  17. 17. El método de conformidad con la reivindicación 15, en donde: los bits no usados son determinados basados en un número de cuadros procesados en el super GOP anterior .
  18. 18. El método de conformidad con la reivindicación 1, en donde: la estructura GOP comprende una longitud de sub GOP.
  19. 19. El método de conformidad con la reivindicación 18, el cual comprende el paso adicional de: iniciar un nuevo super GOP, y distribuir los bits al mismo, cuando se detecta un cambio en la longitud de un sub GOP en al menos uno de los programas de video.
  20. 20. El método de conformidad con la reivindicación 18, en donde: la longitud sub GOP es calculada después de que son distribuidos los bits a una película I en el paso de distribución.
  21. 21. El método de conformidad con la reivindicación 18, en donde: la longitud del sub GOP está asociada con una distancia entre películas-P sucesivas en un programa GOP.
  22. 22. El método de conformidad con la reivindicación 18, en donde: cuando una película actual de uno de los programas de video es una película I ó P, y una película anterior es una película I ó P, se determina la longitud del sub GOP de acuerdo con una diferencia entre las referencias temporales de la película actual y la película anterior.
  23. 23. El método de conformidad con la reivindicación 18, en donde: cuando una película actual de uno de los programas de video es una película B, y una película anterior es una película I ó P, se determina la longitud del sub GOP de acuerdo con una diferencia entre las referencias temporal de la película actual, y la película anterior.
  24. 24. El método de conformidad con la reivindicación 18, el cual comprende el paso adicional de : calcular la longitud sub GOP después de procesar una película I ó P.
  25. 25. El método de conformidad con la reivindicación 18, en donde la longitud sub GOP es para datos de video previamente comprimidos de al menos uno de los programas de video, el cual comprende los pasos adicionales de: proporcionar un valor supuesto para la longitud del sub GOP antes de que se pueda hacer una medición de la longitud sub GOP; medir la longitud sub GOP cuando se pueda hacer la medición; y comparar la longitud sub GOP medida con el valor, y si existe una diferencia, ajustar el valor a la longitud medida del sub GOP.
  26. 26. El método de conformidad con la reivindicación 18, en donde: cuando se detecta un cambio en la longitud del sub GOP, calcular una longitud del GOP asociada del nuevo programa.
  27. 27. El método de conformidad con la reivindicación 26, en donde: la nueva longitud del programa GOP N?,nuevo, es calculada, de acuerdo con N?,nuevo= [ i, viejo/Mi, nuevo] * Mi, nUevo. en donde N?,Viejo es la longitud del GOP del programa anterior; M?.nuevo es la longitud del sub GOP nuevo; y "/" indica una división de un entero con la truncación del resultado hacia cero.
  28. 28. El método de conformidad con la reivindicación 26, en donde: después de que se ha calculado una longitud de un programa GOP nuevo, calculando una longitud de super GOP nueva de acuerdo con el mismo, y distribuir los bits a un nuevo super GOP de manera correspondiente.
  29. 29. El método de conformidad con la reivindicación 1, en donde: la estructura GOP indica tipos de películas y su distribución en el programa GOP.
  30. 30. El método de conformidad con la reivindicación 1, en donde: se determina la longitud del super GOP de acuerdo con un múltiplo común mínimo de las longitudes del programa GOP de los programas de video respectivos.
  31. 31. Un aparato para codificar una pluralidad de programas de video L, el cual comprende: medios para distribuir los bits para la codificación de los programas de video de acuerdo con un esquema jerárquico que incluye al menos: (a) un nivel de un super grupo de películas (GOP) en donde un super GOP comprende al menos un GOP de cada uno de los programas de video, y (b) un nivel de cuadro individual; en donde los medios de distribución actúan en respuesta a las estructuras de GOP respectivas de los programas de video; medios para monitorear las estructuras de GOP respectivas de los programas de video para detectar cualesquiera cambios de las mismas; y medios para ajustar la distribución de bits para la codificación de programas de video en el super GOP, cuando se ha detectado un cambio en la estructura de GOP de al menos uno de los programas de video, de acuerdo con dicho cambio.
  32. 32. Un aparato para codificar una pluralidad de programas de video L, el cual comprende: al menos dos transcodificadores para recibir datos previamente comprimidos de los programas de video correspondientes; un procesador de control de índice para distribuir los bits para la codificación de los programas de video de acuerdo con un esquema jerárquico que incluye al menos : (a) un nivel de super grupo de películas (GOP) en donde un super GOP comprende al menos un GOP de cada uno los programas de video, y (b) un nivel de cuadro individual ; en donde el procesador de control de índice actúa en respuesta a las estructuras GOP respectivas de los programas de video; y un monitor de estructura GOP asociado con cada uno de los transcodificadores , para monitorear las estructuras GOP respectivas de los programas de video asociados con el objeto de detectar cualesquiera cambios en los mismos; en donde el procesador de control de índice ajusta la distribución de bits para codificar los programas de video en el super GOP, cuando se detecta un cambio en la estructura de GOP de al menos uno de los programas de video, de acuerdo con dicho cambio. R E S U M E Un sistema para el control de índice durante la transcodificación y codificación de datos digitales de video en un ambiente de transmisión de programas múltiples, acomoda los cambios en la estructura GOP de cualquiera de los programas, por ejemplo, debido a la inserción de comerciales o similares. Se usa un esquema jerárquico de distribución de bits, en donde los bits son distribuidos en un nivel de super grupo de películas (GOP) (106), por ejemplo, un grupo de GOPs múltiples, un nivel de super cuadro (104), y un nivel de cuadro individual (102) . La distribución de bits del super GOP y cada película es ajustada cuando se detecta un cambio en la estructura de un grupo de películas GOP para cualquiera de los programas previamente comprimidos. La longitud del super GOP también se puede ajustar, si se requiere, para mantener un número entero de GOPs en la misma. Se detecta un cambio en la estructura GOP basado en un cambio en la longitud de la GOP o la longitud de la sub_GOP (distancia entre películas P) . Para los datos previamente comprimidos, se pueden suponer las longitudes iniciales de GOP y las longitudes de sub_GOP y ajustar según se requiera basado en las mediciones reales. Para una película I ó P actual, la longitud de la sub_GOP es calculada basada en las referencias temporales de la película actual y una película I ó P anterior. Para una película B actual, se utiliza el mismo cálculo, más una película .
MXPA02010833A 2000-05-05 2001-05-02 Multiplexor y remultiplexor estadistico que comoda cambios en la estructura de un grupo de peliculas. MXPA02010833A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/565,960 US6643327B1 (en) 2000-05-05 2000-05-05 Statistical multiplexer and remultiplexer that accommodates changes in structure of group of pictures
PCT/US2001/014096 WO2001084905A2 (en) 2000-05-05 2001-05-02 Statistical multiplexer and remultiplexer that accommodates changes in structure of gop

Publications (1)

Publication Number Publication Date
MXPA02010833A true MXPA02010833A (es) 2003-05-27

Family

ID=24260832

Family Applications (1)

Application Number Title Priority Date Filing Date
MXPA02010833A MXPA02010833A (es) 2000-05-05 2001-05-02 Multiplexor y remultiplexor estadistico que comoda cambios en la estructura de un grupo de peliculas.

Country Status (9)

Country Link
US (1) US6643327B1 (es)
EP (1) EP1295462A1 (es)
KR (1) KR20030005320A (es)
CN (1) CN1190085C (es)
AU (1) AU2001261119A1 (es)
CA (1) CA2407682C (es)
MX (1) MXPA02010833A (es)
TW (1) TW522740B (es)
WO (1) WO2001084905A2 (es)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6570922B1 (en) * 1998-11-24 2003-05-27 General Instrument Corporation Rate control for an MPEG transcoder without a priori knowledge of picture type
US7039115B1 (en) * 2000-09-20 2006-05-02 General Instrument Corporation Processor allocation for channels in a video multi-processor system
US6847656B1 (en) * 2000-09-25 2005-01-25 General Instrument Corporation Statistical remultiplexing with bandwidth allocation among different transcoding channels
US6748020B1 (en) * 2000-10-25 2004-06-08 General Instrument Corporation Transcoder-multiplexer (transmux) software architecture
US7173947B1 (en) * 2001-11-28 2007-02-06 Cisco Technology, Inc. Methods and apparatus to evaluate statistical remultiplexer performance
US7206494B2 (en) * 2002-05-09 2007-04-17 Thomson Licensing Detection rules for a digital video recorder
US7120351B2 (en) * 2002-05-09 2006-10-10 Thomson Licensing Control field event detection in a digital video recorder
US7260308B2 (en) * 2002-05-09 2007-08-21 Thomson Licensing Content identification in a digital video recorder
US7266133B2 (en) 2002-11-13 2007-09-04 General Instrument Corporation Methods and apparatus for statistical multiplexing with distributed multiplexers
US7835437B1 (en) * 2003-03-10 2010-11-16 Ji Zhang Statistical remultiplexing of compressed video segments
US7330509B2 (en) * 2003-09-12 2008-02-12 International Business Machines Corporation Method for video transcoding with adaptive frame rate control
JP2005151096A (ja) * 2003-11-14 2005-06-09 Pioneer Electronic Corp 多チャンネル統計多重システム
JP3846490B2 (ja) * 2004-05-17 2006-11-15 セイコーエプソン株式会社 画像データ圧縮装置、電子機器及び画像データ圧縮方法
KR20070033363A (ko) * 2004-06-21 2007-03-26 코닌클리케 필립스 일렉트로닉스 엔.브이. 처리할 데이터 부분들이 선택되는 비디오 트랜스코딩
US7260276B2 (en) * 2004-06-30 2007-08-21 Sharp Laboratories Of America, Inc. Methods and systems for complexity estimation and complexity-based selection
US7526001B2 (en) * 2004-07-26 2009-04-28 General Instrument Corporation Statistical multiplexer having protective features from extraneous messages generated by redundant system elements
US7864840B2 (en) * 2005-04-15 2011-01-04 Inlet Technologies, Inc. Scene-by-scene digital video processing
JP2007074468A (ja) * 2005-09-08 2007-03-22 Sony Corp 記録装置および方法、並びにプログラム
US20070177519A1 (en) * 2006-01-30 2007-08-02 Thomsen Jan H Systems and methods for transcoding bit streams
US8068541B2 (en) * 2006-01-30 2011-11-29 Jan Harding Thomsen Systems and methods for transcoding bit streams
US7885189B2 (en) * 2006-09-20 2011-02-08 Rgb Networks, Inc. Methods and apparatus for rate estimation and predictive rate control
US8135061B1 (en) * 2006-10-19 2012-03-13 Vudu, Inc. Variable bit rate encoding
US8416859B2 (en) 2006-11-13 2013-04-09 Cisco Technology, Inc. Signalling and extraction in compressed video of pictures belonging to interdependency tiers
US8875199B2 (en) 2006-11-13 2014-10-28 Cisco Technology, Inc. Indicating picture usefulness for playback optimization
US20090180546A1 (en) 2008-01-09 2009-07-16 Rodriguez Arturo A Assistance for processing pictures in concatenated video streams
KR101034832B1 (ko) * 2006-11-16 2011-05-17 후지쯔 세미컨덕터 가부시키가이샤 Gop간 관리 장치
DE102007001379A1 (de) * 2007-01-09 2008-07-10 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Konzept zum Encodieren einer Mehrzahl von Informationssignalen für eine gemeinsame Übertragung in einem Zeitmultiplex
US20080212599A1 (en) * 2007-03-01 2008-09-04 Qualcomm Incorporated Methods and systems for encoding data in a communication network
US8804845B2 (en) 2007-07-31 2014-08-12 Cisco Technology, Inc. Non-enhancing media redundancy coding for mitigating transmission impairments
US8958486B2 (en) 2007-07-31 2015-02-17 Cisco Technology, Inc. Simultaneous processing of media and redundancy streams for mitigating impairments
US8718388B2 (en) 2007-12-11 2014-05-06 Cisco Technology, Inc. Video processing with tiered interdependencies of pictures
US9113194B2 (en) * 2007-12-19 2015-08-18 Arris Technology, Inc. Method and system for interleaving video and data for transmission over a network at a selected bit rate
US8416858B2 (en) 2008-02-29 2013-04-09 Cisco Technology, Inc. Signalling picture encoding schemes and associated picture properties
WO2009152450A1 (en) 2008-06-12 2009-12-17 Cisco Technology, Inc. Picture interdependencies signals in context of mmco to assist stream manipulation
US8705631B2 (en) 2008-06-17 2014-04-22 Cisco Technology, Inc. Time-shifted transport of multi-latticed video for resiliency from burst-error effects
US8971402B2 (en) 2008-06-17 2015-03-03 Cisco Technology, Inc. Processing of impaired and incomplete multi-latticed video streams
US8699578B2 (en) 2008-06-17 2014-04-15 Cisco Technology, Inc. Methods and systems for processing multi-latticed video streams
EP2356812B1 (en) 2008-11-12 2015-06-10 Cisco Technology, Inc. Processing of a video program having plural processed representations of a single video signal for reconstruction and output
US8782261B1 (en) 2009-04-03 2014-07-15 Cisco Technology, Inc. System and method for authorization of segment boundary notifications
US8949883B2 (en) 2009-05-12 2015-02-03 Cisco Technology, Inc. Signalling buffer characteristics for splicing operations of video streams
US8279926B2 (en) 2009-06-18 2012-10-02 Cisco Technology, Inc. Dynamic streaming with latticed representations of video
US20100333149A1 (en) * 2009-06-24 2010-12-30 Rgb Networks, Inc. Delivery of pre-statistically multiplexed streams in a vod system
IT1398196B1 (it) * 2009-06-25 2013-02-14 St Microelectronics Srl Controllore dinamico della velocita' di trasmissione indipendente dal gruppo di immagini
US9094641B1 (en) 2011-06-08 2015-07-28 Arris Enterprises, Inc. Group of pictures size adjustment
US8325821B1 (en) * 2012-02-08 2012-12-04 Vyumix, Inc. Video transcoder stream multiplexing systems and methods
US20140112386A1 (en) * 2012-10-22 2014-04-24 General Instrument Corporation Algorithms for determining bitrate for a statistical multiplexing system to account for signal complexity including film mode and gop structural changes
US10070136B2 (en) 2016-02-16 2018-09-04 Arris Enterprises Llc Statistical multiplexing with heterogeneous encoder pool
CN106658071B (zh) * 2016-11-28 2020-10-27 北京蓝拓扑科技股份有限公司 码流传输状态确定方法及装置
GB2576798B (en) * 2019-01-04 2022-08-10 Ava Video Security Ltd Video stream batching
WO2024059998A1 (en) * 2022-09-20 2024-03-28 Qualcomm Incorporated Variable intra-frame (i-frame) time interval and group of picture (gop) length for video coding

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5216503A (en) 1991-12-24 1993-06-01 General Instrument Corporation Statistical multiplexer for a multichannel image compression system
US6055270A (en) * 1994-04-20 2000-04-25 Thomson Cosumer Electronics, Inc. Multiplexer system using constant bit rate encoders
US5506844A (en) 1994-05-20 1996-04-09 Compression Labs, Inc. Method for configuring a statistical multiplexer to dynamically allocate communication channel bandwidth
WO1996026608A2 (en) * 1995-02-22 1996-08-29 Philips Electronics N.V. System for transmitting a plurality of video programs simultaneously through a transmission channel
JP2795223B2 (ja) * 1995-07-18 1998-09-10 日本電気株式会社 画像信号の符号化方法
GB9517130D0 (en) 1995-08-22 1995-10-25 Nat Transcommunications Ltd Statistical multiplexing
EP0784409A3 (en) 1996-01-11 2001-11-14 Sony Corporation Video coding and multiplexing
GB9608271D0 (en) * 1996-04-22 1996-06-26 Electrocraft Lab Video compession
DE69732874T2 (de) * 1996-05-02 2006-04-20 Sony Corp. Kodierung, Speicherung und Übertragung von digitalen Signalen
KR100571685B1 (ko) * 1996-12-12 2006-11-30 소니 가부시끼 가이샤 영상 데이터 부호화 장치와 방법 및 영상 데이터 전송 방법
US6038256A (en) 1996-12-31 2000-03-14 C-Cube Microsystems Inc. Statistical multiplexed video encoding using pre-encoding a priori statistics and a priori and a posteriori statistics
US6104441A (en) * 1998-04-29 2000-08-15 Hewlett Packard Company System for editing compressed image sequences
US6167084A (en) * 1998-08-27 2000-12-26 Motorola, Inc. Dynamic bit allocation for statistical multiplexing of compressed and uncompressed digital video signals
US6151362A (en) * 1998-10-30 2000-11-21 Motorola, Inc. Joint rate control for stereoscopic video coding
GB2347039A (en) * 1999-02-19 2000-08-23 Nds Ltd Estimating encoding parameters
US6493386B1 (en) * 2000-02-02 2002-12-10 Mitsubishi Electric Research Laboratories, Inc. Object based bitstream transcoder
US6493388B1 (en) * 2000-04-19 2002-12-10 General Instrument Corporation Rate control and buffer protection for variable bit rate video programs over a constant rate channel

Also Published As

Publication number Publication date
CN1433641A (zh) 2003-07-30
WO2001084905A3 (en) 2003-03-13
WO2001084905A2 (en) 2001-11-15
EP1295462A1 (en) 2003-03-26
AU2001261119A1 (en) 2001-11-20
CA2407682A1 (en) 2001-11-15
US6643327B1 (en) 2003-11-04
CA2407682C (en) 2009-12-22
CN1190085C (zh) 2005-02-16
TW522740B (en) 2003-03-01
KR20030005320A (ko) 2003-01-17

Similar Documents

Publication Publication Date Title
MXPA02010833A (es) Multiplexor y remultiplexor estadistico que comoda cambios en la estructura de un grupo de peliculas.
US5619341A (en) Method and apparatus for preventing overflow and underflow of an encoder buffer in a video compression system
JP3756346B2 (ja) ビデオ・フレームの多重ストリームを処理する方法及びシステム
CA2185704C (en) Method, rate controller, and system for preventing overflow and underflow of a decoder buffer
JP4388598B2 (ja) 伝送チャネルを介して複数のビデオプログラムを同時に送信するシステム
US6192154B1 (en) Two-pass encoding method of digital motion video sequences for constant-or variable bit rate
AU695550B2 (en) Buffering for digital video signal encoders using joint bit-rate control
JP2003517743A (ja) 圧縮デジタルビデオ信号および圧縮されていないデジタルビデオ信号の統計的な多重化のための動的ビット配分
US7266133B2 (en) Methods and apparatus for statistical multiplexing with distributed multiplexers
CA2406251A1 (en) Rate control and buffer protection for variable bit rate video programs over a constant rate channel
US20100150168A1 (en) Method and apparatus for multiplexing of digital video
CA2689760C (en) Method and apparatus for distributing video program material
CA2392546C (en) Video transmission of multiple program signals with encoded bit rates determined by program complexity
Balakrishnan et al. Benefits of statistical multiplexing in multi-program broadcasting
Park et al. Buffered rate-distortion control of MPEG compressed video channel for DBS applications
JP4346732B2 (ja) ビデオ・フレームの多重ストリームを処理する方法及びシステム
AU678926C (en) Method and apparatus for preventing overflow and underflow of an encoder buffer in a video compression system
MXPA01001945A (es) Distribucion de bit dinamica para multiplexacion estadistica de señales de video digital comprimidas y no comprimidas

Legal Events

Date Code Title Description
FG Grant or registration