ES2321702T3 - Explotacion de paquetes nulos en sistemas de television digital de paquetes. - Google Patents

Explotacion de paquetes nulos en sistemas de television digital de paquetes. Download PDF

Info

Publication number
ES2321702T3
ES2321702T3 ES03000152T ES03000152T ES2321702T3 ES 2321702 T3 ES2321702 T3 ES 2321702T3 ES 03000152 T ES03000152 T ES 03000152T ES 03000152 T ES03000152 T ES 03000152T ES 2321702 T3 ES2321702 T3 ES 2321702T3
Authority
ES
Spain
Prior art keywords
data
auxiliary
multiplexer
rate
encoder
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES03000152T
Other languages
English (en)
Inventor
Leon J. Stanger
Hanno Basse
James A Michener
Robert H. Plummer
Richard K. Newman
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T MVPD Group LLC
Original Assignee
DirecTV Group Inc
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 DirecTV Group Inc filed Critical DirecTV Group Inc
Application granted granted Critical
Publication of ES2321702T3 publication Critical patent/ES2321702T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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/23611Insertion of stuffing data into a multiplex stream, e.g. to obtain a constant bitrate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/16Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
    • H04J3/1682Allocation of channels according to the instantaneous demands of the users, e.g. concentrated multiplexers, statistical multiplexers
    • 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/23614Multiplexing of additional data and 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
    • 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
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4347Demultiplexing 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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Television Systems (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

Un aparato para añadir datos auxiliares DA a una corriente de datos de salida, que comprende: un multiplexor estadístico (404) que tiene una pluralidad de entradas (416) que incluyen una primera entrada (416A), y una salida (424) que proporcionan la corriente de datos de salida; caracterizado por un primer codificador (402A), que tiene una salida (414A) acoplada de modo comunicativo a la primera entrada del multiplexor estadístico, un primer codificador para comprimir una primera corriente de datos D1 de acuerdo con una primera tasa de datos real BWA que es menor o igual a una primera tasa de datos concedidos BWG1, concedidos por el multiplexor estadístico en respuesta a una tasa de datos solicitada BWA procedente del codificador, definiendo la diferencia entre la primera tasa de datos real BWA y la primera tasa de datos concedidos BWG1 una tasa que excede del codificador BWO"1 de tal modo que BWG2 - BWA1 = BWO"1 0 teniendo el primer codificador una salida que incluye una versión comprimida de la primera corriente de datos d1 proporcionada a la tasa de datos real BWA1 y datos nulos Ng1 de codificador a la tasa de tara BWO"1; y un multiplexor auxiliar (508), acoplado de modo comunicativo al multiplexor estadístico, para detectar datos nulos que comprenden los datos nulos de codificador Ng y para sustituir al menos una parte de los datos nulos por los datos auxiliares DA.

Description

Explotación de paquetes nulos en sistemas de televisión digital en paquetes.
Antecedentes del invento 1. Campo del invento
El presente invento se refiere a sistemas y métodos para multiplexar datos procedentes de una pluralidad de fuentes de datos, y en particular a un método y sistema para sustituir paquetes de datos nulos por datos auxiliares no oportunistas en una corriente de datos en paquetes.
2. Descripción de la técnica relacionada
Los sistemas de transmisión de datos digitales basados en paquetes son ahora comunes. Un ejemplo de tales sistemas son los que son usados para transmitir programas de medios tales como programas de televisión y datos de audio a abonados vía satélite. Tales sistemas son requeridos para transmitir muchos (200 o más) canales de datos a abonados sobre un sistema de transmisión que tiene un caudal fijo.
Por su naturaleza, los sistemas de televisión basados en paquetes deben llenar todos los paquetes con datos, y los paquetes deben llenar la totalidad de un canal de datos de transmisión de tasa de bit constante (CBR). Señales de televisión y audio suceden "a ráfagas" en algunas imágenes y algunos pasos de audio requieren más datos para reproducir con exactitud la señal original que otras imágenes y pasos. Para tener en cuenta esta naturaleza "a ráfagas" y asegurar los datos desde cada uno de los canales son combinados y transmitidos dentro de los requisitos de caudal del sistema de transmisión, los datos procedentes de cada uno de los canales son proporcionados típicamente a un multiplexor estadístico. El multiplexor estadístico supervisa los codificadores que codifican y/o comprimen los canales entrantes. Este proceso incluye la negociación y asignación del caudal entre cada uno de los codificadores. Los multiplexores estadísticos están descritos en la patente norteamericana nº 5.854.658, concedida a Uz y col., la patente norteamericana nº 5.864.557, concedida a Lyons, y la patente norteamericana nº 5.912.890, concedida a Park, y la patente norteamericana nº 6.208.166, concedida a Lawrence y col., cuyas referencias están aquí como referencia.
Cuando el programa de medios es reproducido por menos datos, los paquetes de datos nulos son insertados típicamente en la corriente de datos. Esto es realizado de manera que el canal de datos es mantenido en un CBR. Aunque esta técnica es efectiva, los paquetes nulos usados en esta técnica transportan típicamente información no útil, y son por ello un residuo de ancho de banda precioso. Por tanto, se han considerado sistemas que insertan oportunistas (datos críticos sin tiempo) en la corriente de datos antes de ser emitidos desde el multiplexor estadístico. El sistema descrito en la patente norteamericana nº 5.864.557 es un ejemplo de ello.
Sin embargo, como el número de paquetes nulos disponible en cualquier instante dado es impredecible, los datos solamente "oportunistas" (datos que no son críticos en tiempo) son transmitidos en lugar de los paquetes de datos nulos. Los datos no oportunistas (con requisitos de tiempo de entrega más estrictos) no pueden ser transmitidos usando tales métodos. Lo que se necesita es un sistema y método para reemplazar paquetes de datos nulos con datos auxiliares no oportunistas. Lo que también es necesario es que el sistema y método permitan la inserción de paquetes de datos nulos sin modificación al multiplexor estadístico y que sean operativos con una variedad amplia de diseños de multiplexor estadístico. El presente invento satisfacer esa necesidad.
El documento US-A1-6137834 se refiere a un método y aparato para sincronizar una pluralidad de corrientes de datos comprimidos para facilitar la selección de la corriente, la división y otras operaciones. Una corriente de transporte de programa es formada multiplexando corrientes elementales individuales que comparten una base de tiempos común. Cuando las corrientes elementales son multiplexadas, son formadas en paquetes de transporte y es añadida una corriente de bit de control que describe el programa (también formado en paquetes de transporte). Además, se ha descrito un divisor, que incluye una memoria tampón de división previa que recibe una primera corriente de información y que produce una corriente de información almacenada en memoria tampón. El divisor es un divisor de corriente de bit de dos entradas que realiza operaciones de conmutación, división o inserción en un par de corrientes de transporte de entrada que cumplen con MPEG para producir una corriente de salida. Además, la división de datos auxiliares tiene lugar manejando datos auxiliares en una operación de división, tal como ignorarlos y dividir los datos auxiliares al mismo tiempo que los datos de vídeo, insertar datos auxiliares a través de un trayecto separado, por ejemplo, un conmutador play-to-air, y definir un conjunto de marcadores de segmentación para datos auxiliares y basarse sobre estos marcadores en conmutadores para mantener la segmentación correcta.
El documento GB 2.341.745A se refiere a codificación de vídeo en servicios de televisión digital. Un número de codificadores de programas separados son descritos, donde las salidas de los codificadores están combinadas en un multiplexor de red para crear una corriente de transporte multi-programas que es un multiplexor de salida de red. Cada codificador de programa contiene un codificador de vídeo y un multiplexor. El multiplexor solicita datos del codificador de vídeo con el fin de llenar las cargas útiles de paquetes de transporte. Un controlador de tasa de bit de vídeo de red comunica con el codificador de vídeo y el multiplexor de cada codificador de programa y ajusta el número de paquetes de transportes llenados con datos de vídeos por unidad de tiempo. El controlador de tasa de bit de vídeo de red puede asignar tasas de bit fijadas a cada codificador de vídeo o puede variar las asignaciones dinámicamente con el fin de crear un multiplexor estadístico. Si un codificador de vídeo no proporciona datos de vídeo al multiplexor, el multiplexor emite un paquete nulo en lugar del paquete de transporte pretendido.
El documento US 5.966.120 se refiere a proporcionar una distribución de tasa de bit constante de programas de vídeo codificados de tasa de bit variable mientras que facilita la distribución de datos auxiliares. Se ha descrito un sistema donde un multiplexor de programa combina diferentes fuentes en una única corriente de datos de vídeo primaria. El multiplexor de programa asegura que la tasa de bit para distribución de vídeo es constante insertando paquetes llenos en la corriente de datos primaria de vídeo. Los paquetes llenos pueden ser reemplazados con datos auxiliares que no requieren distribución en tiempo real.
Resumen del invento
Es el objeto del invento proporcionar un método y sistema mejorados para añadir datos auxiliares a una corriente de datos de salida.
Este objeto es resuelto por el invento como se ha reivindicado en las reivindicaciones independientes.
Las realizaciones preferidas son definidas por las reivindicaciones dependientes.
En resumen, el presente invento describe un sistema y método para añadir datos auxiliares D_{A} a una corriente de datos de salida. El aparato comprende un multiplexor estadístico que tiene una pluralidad de entradas que incluyen una primera entrada, y una salida que proporciona la corriente de datos de salida; un primer codificador, que tiene una salida acoplada de modo comunicativo a la primera entrada del multiplexor estadístico, el primer codificador para comprimir una primera corriente de datos D_{1} de acuerdo con una primera tasa de datos real BW_{A} que es menor o igual a una primera tasa de datos concedidos BW_{G1}, concedidos por el multiplexor estadístico en respuesta a una tasa de datos solicitada BW_{A} procedente del codificador, definiendo la diferencia entre la primera tasa de datos real BW_{A} y la primera tasa de datos concedidos BW_{G1} una tasa de tara (elementos auxiliares) del codificador BW_{O1} tal que
BW_{G2} - BW_{A1} = BW_{O1} \geq 0 teniendo el primer codificador una salida que incluye una versión comprimida de la primera corriente de datos d_{1} proporcionada a la tasa de datos real BW_{A1} y datos nulos N_{g1} de codificador a la tasa de tara BW_{O1}; y un multiplexor auxiliar, acoplado de modo comunicativo al multiplexor estadístico, para detectar datos nulos N_{g} del codificador y para sustituir al menos una parte de los datos nulos N_{g} de codificador por los datos auxiliares D_{A}. El método comprende las operaciones de aceptar una corriente de datos multiplexada estadísticamente que tiene datos nulos; y sustituir al menos una parte de los datos nulos (datos nulos es un término global que significa datos que no incluyen nada útil) por los datos auxiliares D_{A} en la corriente de datos multiplexada estadísticamente.
La gestión eficiente del reemplazo de datos nulos con datos útiles hace uso más eficiente del ancho de banda del sistema de transmisión digital, creando de manera efectiva más capacidad de carga útil en los canales de transmisión existentes que pueden ser usados para vídeo, audio, u otros datos auxiliares.
Breve descripción de los dibujos
Con referencia ahora los dibujos en los que números de referencia similares representan partes correspondientes en todos ellos:
La fig. 1 es un diagrama que muestra una visión general de un sistema de distribución de programa de medios;
La fig. 2 es un diagrama de bloques que muestra una configuración de enlace hacia arriba típica que muestra cómo el material de programa de video es enlazado hacia arriba a un satélite para transmisión a abonados usando un transpondedor único;
La fig. 3A es un diagrama de una corriente de datos representativa recibida desde un satélite;
La fig. 3B es un diagrama de ilustra la estructura de un paquete de datos;
La fig. 4 es un diagrama de cómo las corrientes de datos de entrada son combinadas por un multiplexor estadístico antes de la codificación, modulación y transmisión;
La fig. 5 es un diagrama que representa una realización de un renovador de paquete nulo;
Las figs. 6A y 6B son diagramas que representan otras realizaciones del renovador de paquete nulo;
La fig. 7 es un diagrama de flujo que presenta operaciones del método ilustrativas que pueden ser usadas para poner en práctica una realización del presente invento;
La fig. 8 es un diagrama de flujo que presenta las operaciones del método ilustrativas que pueden ser usadas para identificar paquetes de datos nulos y cero para reemplazar con paquetes de datos auxiliares; y
La fig. 9 es un diagrama que presenta una representación de un paquete de transporte ejemplar desde un codificador.
Descripción detallada de las realizaciones preferidas
En la descripción siguiente, se hace referencia a los dibujos adjuntos que forman una parte de ella, y que muestran, a modo de ilustración, varias realizaciones del presente invento. Queda comprendido que pueden ser utilizadas otras realizaciones y se pueden hacer cambios estructurales sin salir del marco del presente invento.
Sistema de distribución de programa de medios
La fig. 1 es un diagrama que ilustra una visión general de un sistema 100 de distribución de programa de medios. Los programas de medios transmitidos por el sistema de distribución 100 pueden incluir programas de video, programas de audio, o cualesquiera otros datos. El sistema de distribución 100 comprende un centro de control 102 en comunicación con un centro de enlace hacia arriba 104 mediante una tierra u otro enlace 114 y un receptor/decodificador integrado (IRD) 132 en la estación receptora 130 mediante una red de telefonía conmutada pública (PSTN) u otro enlace de comunicación 120. El centro de control 102 proporciona material de programa al centro de enlace hacia arriba 104, coordina con la estación receptora 130 para ofrecer a los abonados 110 programas de medios que incluyen servicios de programa de pago (PPV), incluyendo facturación y descripción asociada de los programas de
video.
El centro de enlace hacia arriba 104 recibe material de programa e información de control de programa desde el centro de control 102, y usando una antena de enlace hacia arriba 106, trasmite el material de programa y la información de control de programa al satélite 108. El satélite 108 recibe y procesa esta información, y trasmite los programas de video e información de control al IRD 132 en la estación receptora 130 mediante el enlace hacia abajo 118. El IRD 132 recibe esta información usando la antena del abonado 112, a la que está acoplado de modo comunicativo.
El sistema 100 de distribución de video puede comprender una pluralidad de satélites 108 con el fin de proporcionar cobertura terrestre más amplia, proporcionar canales adicionales, o proporcionar ancho de banda adicional por canal. En una realización del invento, cada satélite comprende 16 transpondedores para recibir y transmitir material de programa y otros datos de control desde el centro de enlace hacia arriba 104 y proporcionarlo a los abonados 110. Sin embargo, usando técnicas de compresión de datos y de multiplexado las capacidades del canal son mucho mayores. Por ejemplo, dos satélites 108 que trabajan juntos pueden recibir y retransmitir sobre 150 canales de audio y video tradicionales (no HDTV) mediante 32 transpondedores.
Mientras el invento expresado aquí será descrito con referencia a un sistema 100 de distribución de vídeo basado en satélite, el presente invento puede también ser puesto en práctica con transmisión de base terrestre de información de programa, bien por medios de transmisión tradicionales, cable, u otros medios. Además, las diferentes funciones asignadas de manera colectiva entre el centro de control 102 y el centro de enlace hacia arriba 104 como se ha descrito antes, pueden ser reasignadas según se desee sin salir del marco pretendido del presente invento.
Aunque lo anterior ha sido descrito con respecto a una realización en la que el material de programa entregado al abonado es material de programa de video (y audio) tal como una película, el método anterior puede ser usado para entregar material de programa que comprende información de audio simplemente, o cualquier otro tipo de datos también.
La fig. 2 es un diagrama de bloques que muestra una configuración de enlace hacia arriba típico para un solo transpondedor de satélite 108, que muestra cómo el material de programa de video es enlazado hacia arriba al satélite 108 por el centro de control 102 y el centro de enlace hacia arriba 104. La fig. 2 muestra tres canales de video (que podrían ser aumentados respectivamente con uno o más canales de a audio para música de alta fidelidad, información de banda sonora, o un programa secundario de audio para trasmitir lenguajes extranjeros), y un canal de datos procedentes de una fuente de datos de ordenador 206.
Los canales de video son proporcionados por una fuente de programas de material de video 200A-200C (denominados colectivamente de aquí en adelante como fuentes de video 200). Los datos procedentes de cada fuente 200 de programa de video son proporcionados a un codificador 202A-202C (denominados colectivamente de aquí en adelante como codificadores 202). Cada uno de los codificadores acepta un sello de tiempo de presentación (PTS) desde el controlador 216. El PTS es un sello de tiempo binario envuelto que es usado para asegurar que la información de video está sincronizada adecuadamente con la información de audio después de codificar y descodificar. Un sello de tiempo PTS es enviado con cada marco I de los datos codificados MPEG.
En una realización del presente invento, cada codificador 202 es un codificador de Grupo de Expertos de Imágenes en Movimiento (MPEG-2) de segunda generación, pero pueden ser usados también otros codificadores que emplean otras técnicas de codificación. El canal de datos puede ser sometido a un esquema de compresión similar por un codificador (no mostrado), pero tal compresión es normalmente o bien innecesaria, o bien realizada por programas de ordenador en la fuente de datos de ordenador (por ejemplo, datos fotográficos son típicamente comprimidos en archivos *.TIF o archivos*.JPG antes de la transmisión). Después de la codificación por los codificadores 202, las señales son convertidas en paquetes de datos por un empaquetador 204A-204E (denominado colectivamente de aquí en adelante como empaquetadores 204) asociado con cada fuente 200, 206-208.
Los paquetes de datos son ensamblados usando una referencia del reloj del sistema 214 (SCR), una palabra de control (CW) generada por el gestor de acceso condicional 208, y un identificador tal como un identificador de paquete (PID) que asocia cada uno de los paquetes de datos que son retransmitidos al abonado con un canal de programa. En una realización, el identificador de paquete PID es un identificador de paquete consistente con las definiciones descritas en los estándares establecidos por el MPEG, sin embargo pueden también ser usados otros acuerdos de identificador de paquete. Por ejemplo, algunos sistemas de televisión por satélite usan un identificador de paquete conocido como un identificador de canal de sistema (SCID).
Esta información es transmitida a los empaquetadores 204 para usar en la generación de los paquetes de datos. Estos paquetes de datos son a continuación multiplexados en datos en serie mediante un multiplexor estadístico (descrito en mayor detalle después), codificado, modulado, y transmitido. Un paquete especial conocido como un paquete de palabra de control (CWP) que comprende datos de control que incluyen la palabra de control (CW) y otros datos de control usados en apoyo de proporcionar acceso condicional al material de programa es también encriptado y transmitido.
La fig. 3A es un diagrama de una corriente de datos representativa. El primer segmento de paquete 302 comprende información procedente del canal de video 1 (datos que proceden de, por ejemplo, la primera fuente de programa de video 200A). El siguiente segmento de paquete 304 comprende información de datos de ordenador que fueron obtenidos, por ejemplo a partir de la fuente de datos de ordenador 206. El siguiente segmento de paquete 306 comprende información procedente del canal del video 5 (desde una de las fuentes de programa de video 200), y el siguiente segmento de paquete incluye información procedente del canal de video 1 (de nuevo, que viene desde la primera fuente de programa de video 200A). El siguiente paquete de datos es un paquete nulo 310 que tiene datos nulos proporcionados por el generador de paquete nulo 212. Otros detalles relativos a la inserción de paquete nulo son presentados después.
La corriente de datos comprende por ello una serie de paquetes procedentes de cualquiera de las fuentes de datos en un orden determinado por el controlador 216. La corriente de datos es encriptada por el módulo de encriptación 218, modulada por el modulador 220 (usando típicamente un esquema de modulación QPSK), y proporcionada al transmisor 222, que trasmite la corriente de datos modulada sobre un ancho de banda de frecuencia al satélite mediante la antena 106.
Los abonados 110 reciben programas de medios mediante un receptor de abonado o IRD 132. Usando del PID, el IRD 132 reúne los paquetes para volver a generar el material de programa para cada uno de los canales. Como se ha mostrado en la fig. 3A, los paquetes nulos creados por el módulo 312 de paquetes nulos pueden ser insertados en la corriente de datos como se desee.
La fig. 3B es un diagrama de un paquete de datos. Cada paquete de datos (por ejemplo 302-316) es de 208 bytes de largo, y comprende un número de segmentos de paquete. El primer segmento de paquete 320 comprende dos bytes de información que contienen el PID e indicadores. En una realización, el PID es un número único de 13-bit que identifica de manera única el canal de datos del paquete de datos. Los indicadores incluyen bits y son usados para controlar si el paquete está encriptado, y que clave debe ser usada para desencriptar el paquete. El segundo segmento de paquete 322 está compuesto de un indicador de tipo de paquete y un contador de continuidad. El tipo de paquete identifica el paquete como uno de los cuatro tipos de datos (video, audio, datos, o nulo). Cuando es combinado con él PID, el tipo de paquete determina como será usado el paquete de datos. El contador de continuidad incrementa una vez para cada tipo de paquete de datos y PID. El siguiente segmento de paquete 324 comprende 184 bytes de datos de carga útil, que es una parte del programa de vídeo proporcionado por la fuente del programa de video 200. El segmento de paquete final 326 son datos requeridos para realizar la corrección de error hacia adelante.
Multiplexado estadístico
La fig. 4 es un diagrama que presenta otro detalle de cómo las corrientes de datos de entrada que tienen información de video, audio, o datos son combinadas antes de la codificación, modulación y transmisión al satélite 108. En la fig. 4, las corrientes de datos descomprimidas D_{1} - D_{a} (etiquetadas como 410A-410N) son proporcionadas a la entrada 412A-412N a codificadores 402A-402N, respectivamente. En una realización, los codificadores 402A-402N son codificadores MPEG que comprimen las corrientes de datos de entrada D_{1} - D_{a} de acuerdo con uno o más de las normas (MPEG-1 o MPEG-2). Otras técnicas de compresión pueden también ser utilizadas.
La salida 414A-414N de los codificadores 402A-402N es proporcionada cada una a una entrada de datos 416A-416N de un multiplexor estadístico 404. El multiplexor estadístico 404 gestiona la presentación de las salidas del codificador en la salida del multiplexor estadístico 404. Como se ha descrito después, esto es conseguido supervisando la codificación de las señales de datos D_{1}, D_{2},..., D_{n} en señales de datos comprimidas d_{1}, d_{2},..., d_{n}, aceptando las señales de datos comprimidas d_{1}, d_{2},..., d_{n}, procedentes de los codificadores 402A-402N, y multiplexando las señales de datos comprimidas d_{1}, d_{2},..., d_{a}, para proporcionar una señal de salida 422 en una salida 424. Esta señal de salida 422 es a continuación codificada, modulada, y enlazada hacia arriba al satélite 108.
Cada uno de los codificadores 402A-402N comprime los datos de entrada D_{1} - D_{N} de acuerdo con una tasa de datos máxima que es negociada con el multiplexor estadístico 404. Por ejemplo el primer codificador 402A examina la corriente de datos entrante D_{1} para determinar cuanto puede ser comprimida la corriente de datos sin comprometer la pérdida de datos excesiva. Por ejemplo, si el codificador 402A es encargado de comprimir la corriente de datos entrante D_{1} de acuerdo con un esquema de codificación MPEG-2, el codificador 402A examina las características de datos de la corriente de datos entrante D_{1} tal como la complejidad de escena y la variación temporal para estimar la tasa de datos máxima que será requerida en la señal de datos comprimida d_{1} para reproducir la corriente de datos de entrada de acuerdo a los estándares preestablecidos. El codificador 402A trasmite a continuación esta información, una solicitud de "ancho de banda" BW_{R1}, al multiplexor estadístico 404 (de aquí en adelante, el término "ancho de banda" será usado de manera intercambiable con las frases "tasa de datos" o "caudal" y se refiere a la tasa a la que los datos pueden ser transmitidos sobre el canal de transmisión de datos particular). El multiplexor estadístico 404 equilibra esta solicitud de ancho de banda con solicitudes similares procedentes de los otros codificadores (402B-402N) de acuerdo con una ecuación 406 de multiplexor estadístico que tiene parámetros 408 que pueden ser introducidos al multiplexor estadístico 404 en una primera entrada de control 418. Aplicando la ecuación 406 de multiplexor estadístico, el multiplexor estadístico 404 genera una asignación óptima de ancho de banda entre los codificadores 402A-402N con el fin de satisfacer un ancho de banda objetivo B_{T} (que puede ser especificado en una segunda entrada de control 420) para la señal 422 de salida de la señal multiplexada en la salida 424 del multiplexor estadístico 404. Debido a que el ancho de banda de transmisión BW_{X} es ordinariamente un valor fijo determinado por la facilidad del enlace hacia arriba 104, el satélite 108 y la estación receptora 132, el nivel del ancho de banda objetivo B_{T} es predeterminado típicamente y permanece constante, y puede ser menor o igual al ancho de banda de transmisión BW_{X}.
Un valor de ancho de banda (BW_{G1}) es concedido al primer codificador 402A, y después de ello, el primer codificador 402A comprime la corriente de datos entrante D_{1} para asegurar que la corriente de datos presentada en la salida del codificador 402A, no excede de la tasa de datos concedida o el valor de ancho de banda BW_{G1}.
En la descripción que sigue, se aplican las siguientes definiciones:
Datos nulos:
"Datos nulos" se refiere genéricamente a datos que no incluyen información, e incluye todos los tipos de datos descritos a continuación.
Paquete nulo:
Un paquete nulo es un paquete que tiene un identificador que indica que el paquete incluye sólo datos nulos. En el ejemplo ilustrado los paquetes nulos incluyen aquellos con un identificador de paquete (PID) de 8191.
Datos de vídeo cero:
Relleno en una corriente de datos elemental que incluye datos no útiles. Los datos de vídeo cero pueden estar situados antes de cada elemento de programa tal como el código de inicio de programa, el código de división, o el encabezamiento de secuencia.
Paquete de vídeo cero:
Un paquete de transporte completo que no contiene nada sino datos de vídeo cero. Los paquetes de vídeo cero son diferentes de los paquetes NULOS porque los paquetes NULOS están claramente identificados por un identificador de paquete.
\vskip1.000000\baselineskip
En la práctica, el ancho de banda BW_{R1} requerido por el codificador 402A y concedido subsiguientemente BW_{G} por el multiplexor estadístico 404 es a menudo mayor que lo que se requiere para reproducir la corriente de datos de entrada D_{1} dentro de estándares aceptables. En tales casos, el codificador 402A inserta típicamente datos nulos (tales como datos de vídeo cero) de modo que la tasa de datos de la corriente de datos d_{1} emitida desde el codificador 402A es un valor consistente con el ancho de banda concedido BW_{G1} por el multiplexor estadístico 404.
La necesidad de insertar datos de vídeo cero puede plantearse en varias situaciones. Una de tales situaciones ocurre, cuando la estimación del ancho de banda requerido por el codificador 402A está en un error (es decir debido a cambios de escena y otros cambios de señal que son difíciles o imposibles de predecir).
Otra situación en la que los datos de vídeo cero son insertados se plantea debido a que el valor del ancho de banda concedido BW_{G1} y/o del ancho de banda requerido BW_{R1} no es continuamente variable, sino que en vez de ello es seleccionado de un número finito de valores disponibles. Por ejemplo, si el ancho de banda concedido BW_{G1} es un valor de diez mega bits por segundo (10 MBPS), y el codificador puede solamente comprimir los datos para producir una corriente de datos de 9 MBPS o una corriente de datos de 11 MBPS, el codificador 402A codificará los datos para no exceder de la tasa de 9 MBPS, e insertará datos nulos para los datos restantes.
La necesidad de insertar datos de vídeo cero puede también plantearse como sigue. Como una parte del ajuste de los codificadores 402A-402N y del multiplexor estadístico 404, puede imponerse una tasa mínima por canal de vídeo. En tales circunstancias, es ajustado un límite de tal modo que para cualquier secuencia de imágenes dada, se asignará un ancho de banda mínimo. A veces, la secuencia de imágenes puede ser codificada muy eficientemente, usando un ancho de banda menor que el ancho de banda mínimo impuesto por canal. Para satisfacer el ancho de banda acordado entre el codificador 402 y el multiplexor 404, el codificador rellena la corriente elemental con ceros al final de cada elemento de imagen. Esto ocurre típicamente con imágenes de baja complejidad aún o de movimiento limitado, tales como diapositivas o imágenes de "cabezas parlantes".
Por tanto, la salida de señal procedente del codificador 402A puede ser representada como d_{1} + N_{\varepsilon 1} donde d_{1} representa la versión comprimida de la corriente de datos de entrada D_{1} (que requeriría un ancho de banda real
BW_{A1} \leq BW_{G1}), y N_{\varepsilon 1} representa los datos de vídeo cero añadidos a la corriente de datos de entrada comprimida de modo de la salida del codificador 402A es proporcionada a la tasa de datos concedida BW_{G1}. El ancho de banda usado para trasmitir los datos de vídeo cero N_{\varepsilon 1} es denominado como un ancho de banda de tara BW_{O\varepsilon 1} de codificador. Por tanto,
BW_{A1} + BW_{O\varepsilon 1} = BW_{G1}.
También, en la práctica, aunque el multiplexor estadístico 404 especifica el ancho de banda o tasa de datos para las señales de salida procedentes de los codificadores 402A-402N (como BW_{G1}, BW_{G2},..., BW_{Gn}) para satisfacer el ancho de banda objetivo BW_{T}, el ancho de banda objetivo BW_{T} es típicamente subespecificado (no ajustado al ancho de banda de transmisión máximo BW_{X}) para proporcionar la tara BW_{OSM} para proporcionar cambios inesperados tales como cambios en el ancho de banda de transmisión BW_{X}. La corriente de datos de salida proporcionada por multiplexor estadístico 404 incluye también paquetes nulos (por ejemplo paquetes nulos 310) de modo que la tasa de datos real de la señal de salida BW_{SM} es menor que la tasa de datos objetivo BW_{T}. Por tanto, la salida del multiplexor estadístico incluye una señal que tiene datos de entrada comprimidos y datos nulos de acuerdo con la siguiente relación:
(d_{1} + N_{\varepsilon 1}) + (d_{2} + N_{\varepsilon 2}) +...+(d_{n} + N_{\varepsilon n}) + N_{SM}
donde N_{SM} representa los paquetes nulos añadidos por el multiplexor estadístico 404.
La fig. 5 es un diagrama que representa una realización de un dispositivo renovador 500 de paquetes nulos. La realización ilustrada permite la sustitución de datos nulos N_{\varepsilon 1} + N_{\varepsilon 2} +...+ N_{\varepsilon n} + N_{SM} por los datos auxiliares D_{A} 502 (que representa típicamente entre uno a cinco por ciento del ancho de banda disponible BW_{X}). También permite el control de los procesos que tienen lugar en el multiplexor estadístico 404 para permitir la sustitución de datos auxiliares no oportunistas 502, si se desea.
Los datos auxiliares D_{A} son proporcionados a un multiplexor auxiliar 508 donde los datos nulos D_{A} son insertados en el lugar de paquetes de datos nulos en la corriente de salida N_{\varepsilon 1} + N_{\varepsilon 2} +...+ N_{\varepsilon n} + N_{SM} proporcionada en la salida 424 del multiplexor estadístico 404. En una realización del invento, los datos auxiliares D_{A} son almacenados en una memoria tampón 506 acoplada de modo comunicativo entre la corriente de datos de entrada de datos auxiliares 502 y el multiplexor auxiliar 508 antes de ser proporcionados al multiplexor auxiliar 508. El almacenamiento de datos auxiliares D_{A} en la memoria tampón 506 permite que los datos auxiliares D_{A} sean retrasados durante un corto periodo de tiempo antes de la sustitución de los datos nulos en la corriente de datos emitida desde el multiplexor estadístico. Los datos entrantes pueden ser opcionalmente comprimidos y/o codificados por un codificador 504 antes del almacenamiento temporal en la memoria tampón 506 (o, si no hay prevista una memoria tampón 506, los datos auxiliares D_{A} pueden ser transmitidos directamente desde el codificador 504 al multiplexor auxiliar 508).
Si los datos auxiliares D_{A} son presentados a la memoria tampón 506 a una tasa que excede de aquélla a la que los datos pueden ser insertados en la corriente de datos de salida, la cantidad de datos almacenados en la memoria tampón 506 se aproximará a la capacidad de memoria de la memoria tampón, disminuyendo así la cantidad de memoria sin utilizar en la memoria tampón 506 y aumentando la "plenitud" de los incrementos de la memoria tampón 506. En una realización, esta información es proporcionada desde la memoria tampón 506 al multiplexor auxiliar 508. El multiplexor auxiliar 508 usa esta información para ordenar al multiplexor estadístico 404 que controle el proceso usado en el multiplexado de las corrientes de datos procedentes de los codificadores 402A-402N, reduciendo (o aumentando) por ello los requisitos de ancho de banda o de tasa de datos para los datos presentados en la salida del multiplexor estadístico 404. Por ejemplo, si la memoria tampón 506 es usada para almacenar datos no oportunistas (que deben ser transmitidos a un nivel de servicio mínimo) y la señal de "plenitud de la memoria tampón" indica que la memoria tampón se está aproximando a su capacidad para almacenar datos, el multiplexor auxiliar 508 puede ordenar al multiplexor estadístico 404 que combine las señales de cada uno de los codificadores 402A-402N de modo tal que reduzca la tasa de datos de los datos d_{1} + d_{2} +...+ d_{n} presentados en la salida del multiplexor estadístico 404, como se ha descrito adicionalmente a continuación. Esto aumenta la proporción de paquetes de datos nulos que tienen datos nulos N_{\varepsilon 1} + N_{\varepsilon 2} +...+ N_{\varepsilon n} + N_{SM} en los datos presentados en la salida del multiplexor estadístico 404, permitiendo así la sustitución de más datos auxiliares D_{A} en la señal de salida, y permitiendo que la "plenitud" de la memoria tampón 506 disminuya. Similarmente, el multiplexor auxiliar 508 puede ordenar al multiplexor estadístico 404 que combine las señales procedentes de los codificadores 402A-402N de tal modo que aumente la tasa de datos de los datos d_{1} + d_{2} +...+ d_{n} presentados en la salida del multiplexor estadístico 404 cuando la memoria tampón 506 está por debajo de un valor deseado. Por tanto, la "plenitud" de la memoria tampón 506 puede ser usada de modo adaptativo para asegurar que la corriente de datos de salida procedente del multiplexor auxiliar no tiene virtualmente paquetes de datos nulos. En una realización, la memoria tampón 506 puede también aceptar alguno o todos los datos procedentes de los codificadores 402A-402N, y proporcionar los datos al multiplexor auxiliar 508.
El multiplexor auxiliar 508 puede controlar al multiplexor estadístico de muchos modos para permitir la introducción de datos auxiliares D_{A}. En una realización, el multiplexor auxiliar 508 proporciona un orden para alterar o añadir a la ecuación 406 del multiplexor estadístico (o para cambiar la propia ecuación 406 del multiplexor estadístico), añadiendo esencialmente un "proxy" para los nuevos datos en el multiplexor estadístico 404 de modo que puedan negociarse los datos auxiliares D_{A} como cualquier otra de las fuentes de datos. Está técnica puede proporcionar paquetes nulos incrementados para insertar datos auxiliares D_{A} sobre una base rápida (en el orden de un marco o similar).
Alternativamente o además de la manipulación de la ecuación 406 del multiplexor estadístico, el multiplexor auxiliar 508 puede también ordenar al multiplexor estadístico 404 que combine los datos procedentes de los codificadores 402A-402N para satisfacer un requisito (reducido o aumentado) de ancho de banda objetivo diferente BW_{T}.
En una realización del multiplexor auxiliar 508 sustituye los datos nulos N_{\varepsilon 1} + N_{\varepsilon 2} +...+ N_{\varepsilon n} + N_{SM} por datos auxiliares D_{A} de acuerdo con un proceso definido al menos en parte según los parámetros 512 de reemplazamiento de un paquete nulo. Los parámetros de reemplazamiento de un paquete nulo incluyen, por ejemplo:
\bullet
BW_{MIN} - La tasa mínima requerida para mantener el servicio de datos activo;
\bullet
BW_{MAX} - La tasa de datos sostenida máxima del servicio de datos;
\bullet
BW_{AVG} - La tasa nominal o garantizada durante un periodo de tiempo t_{per};
\bullet
t_{per} - El período de tiempo usado para determinar la tasa promedio BW_{AVG}. El valor de t_{per} puede ser usado para inferir que la corriente de datos puede ser retrasada por una cantidad de tiempo nominal y máxima; y
\bullet
Prioridad - Una prioridad del servicio de datos comparada a los otros servicios.
La prioridad puede ser expresada como una clasificación.
A cada fuente de datos auxiliares D_{A} le están asignados uno o más de los parámetros anteriores (las corrientes de datos que entran en los codificadores 402A-402N pueden también ser asignadas a uno o más de estos parámetros). Junto con la medida de "plenitud de la memoria tampón" proporcionada por la memoria tampón 506, los valores anteriores son usados por el multiplexor auxiliar 508 para determinar cuándo hay suficientes datos nulos N_{\varepsilon 1} + N_{\varepsilon 2} +...+ N_{\varepsilon n} + N_{SM} para permitir la sustitución por los datos auxiliares D_{A}. Si hay insuficientes datos nulos en la corriente de salida procedente del multiplexor estadístico 404 para proporcionar los datos auxiliares a la tasa mínima requerida para conservar el servicio activo de datos BW_{MIN}, el multiplexor auxiliar puede ordenar al multiplexor estadístico 404 que proporcione paquetes nulos adicionales (mediante manipulación de la ecuación 406 del multiplexor estadístico o ancho de banda objetivo BW_{T}).
Por ejemplo, en aplicaciones de televisión por satélite, es transmitida una guía de programa maestro (MPG) que proporciona información relativa a la temporización y contenido de los programas de vídeo. Esta información era transmitida típicamente como una de las corrientes de datos D_{1}-D_{N} y considerada como una corriente de datos de tasa de bit constante (CBR) del orden de 100 Kb/s. A fin de impedir sobrecargas de datos, un accionador puede ser insertado entre la fuente datos de MPG y el multiplexor estadístico 404 para mantener cuidadosamente una tasa de datos promedio para los corriente de datos de MPG de aproximadamente 80% de la tasa de CBR, mientras temporalmente se almacenan los datos en exceso en una memoria tampón. En este ejemplo, a los datos MPG pueden asignárseles valores de BW_{MIN} = 50 Kb/s; BW_{MAX} = 500 Kb/s; (ráfaga burst = 4 paquetes, 5 paquetes no deben exceder de BW_{MAX}, BW_{AVG} = 80 Kb/s, t_{per} = 2 segundos; y Prioridad = puesto 1.
Almacenando los datos de MPG en una memoria tampón tal como la memoria tampón 506, el retraso promedio antes de que los datos MPG sean proporcionados en la salida del multiplexor auxiliar 508 es de aproximadamente un segundo y el retraso máximo podría ser justo inferior a 2 segundos al tiempo que se satisface aún el requisito de cumplir con la tasa promedio de 80 Kb/s. Ejercitando los límites de la memoria tampón 506, los datos de MPG pueden ser insertados en la corriente de datos emitida desde el multiplexor estadístico 404 incluso aunque la tasa de datos nulos instantánea no sea conocida con anterioridad. Sin embargo, la tasa de datos nulos instantánea debe ser mayor que la tasa de datos promedio de la corriente o corrientes de datos auxiliares.
En situaciones en las que pueden ser liberados suficientes datos nulos manipulando la ecuación 406 del multiplexor estadístico o el ancho de banda objetivo BW_{T} del multiplexor estadístico 404, el multiplexor auxiliar 404 puede analizar los datos auxiliares D_{A} de acuerdo con los parámetros descritos anteriormente, y desprenderse de datos no esenciales o transferirlos a un almacenamiento a largo plazo en un instante temporalmente más distante.
Por ejemplo, la corriente de datos de MPG descrita anteriormente está típicamente organizada como un carrusel de datos que es repetido cada pocos segundos. Si la transmisión de los datos en el carrusel normalmente requiere 4 segundos, una envolvente del carrusel podría ser dejada caer si hay insuficientes paquetes nulos emitidos desde el multiplexor estadístico 404. Además, los requisitos de datos para la MPG podrían ser reducidos en el 50% de la tasa promedio abandonando cada otra transmisión de los datos de carrusel. Asignando un valor de prioridad para todos los servicios de datos auxiliares (o, para ese objeto, todos los servicios de datos, incluyendo corrientes de datos D_{1}-D_{N}) es posible perder temporalmente información descriptiva no esencial mientras se protegen datos críticos.
Las figs. 6A y 6B ilustran un post-procesador 510 que, en unión con cualquiera de los elementos anteriores, puede ser usado para insertar datos auxiliares D_{A} antes de la transmisión, al tiempo que aún permanece por debajo de la tasa de datos de transmisión máxima BW_{MAX}. El post-procesador 510 puede estar acoplado de modo comunicativo a la salida del multiplexor auxiliar 508 como se ha mostrado en la fig. 6A o acoplado de modo comunicativo entre el multiplexor estadístico 404 y el multiplexor auxiliar 508 como se ha mostrado en la fig. 6B.
Volviendo en primer lugar a la realización descrita en la fig. 6A, el post-tratamiento es realizado sobre la corriente de datos (d_{1} + N_{\varepsilon 1}) + (d_{2} + N_{\varepsilon 2}) +...+(d_{n} + N_{\varepsilon n}) + N_{SM} procedente de la salida del multiplexor estadístico 418 para comprimir adicionalmente las corrientes de datos d_{1}-d_{n}. Esto sería realizado corrientemente cuando la cantidad de datos nulos N_{\varepsilon 1} + N_{\varepsilon 2} +...+ N_{\varepsilon n} + N_{SM} es insuficiente para satisfacer el mínimo caudal BW_{MIN} requerido por los datos auxiliares D_{A}. Esto puede ser conseguido descodificando las corrientes de datos codificados d_{1}-d_{n}, para reconstruir las corrientes de datos originales para producir D_{1}'-D_{n}' (como la codificación realizada por los codificadores 402A-402N es codificación con pérdidas, la señal reconstruida no es idéntica a las señales D_{1}-D_{n} proporcionadas a los codificadores 402A-402N), volver a codificar a continuación las corrientes de datos descodificadas de modo que las corrientes de datos codificadas de nuevo d_{1}'-d_{n}' son más comprimidas que las corrientes de datos codificadas originales d_{1}-d_{n}, liberando así el ancho de banda para permitir la adición de datos auxiliares D_{A}. Si se desea, el grado de compresión adicional puede ser controlado bien por el multiplexor auxiliar 508, o bien directamente por una señal procedente de la memoria tampón 506 relativa a la plenitud de la memoria tampón. En una realización, los codificadores 402A-402N son codificadores de MPEG, y el proceso de descodificar las corrientes de datos codificadas d_{1}-d_{n} y volverlas a codificar puede tener en cuenta la actividad y la calidad de imagen general mediante el valor del cuanto de m inherente en tales esquemas de codificación/descodificación. En esta realización, el examen de este valor de cuanto de m puede permitir una determinación sobre si la compresión adicional es permisible, y la extensión en la que tal compresión adicional puede ser hecha.
En la realización descrita en la fig. 6B, el post-tratamiento es realizado sobre la señal de datos que emana desde la salida del multiplexor auxiliar 508. La señal que emana procedente de la salida del multiplexor auxiliar 508 d_{1} + d_{2} +...+ d_{n} puede tener un caudal que exceda de BW_{x} debido a que la compresión adicional proporcionada por el post-procesador 510 reduce el requerimiento de caudal de nuevo a un valor que es igual o menor que BW_{x}.
La fig. 7 es un diagrama que representa operaciones de un método ejemplar que puede ser usado para poner en práctica el presente invento. Una corriente de datos multiplexada estadísticamente que tiene datos nulos es aceptada, como se ha mostrado en el bloque 702. Los datos auxiliares D_{A} son almacenados en la memoria tampón y la cantidad de datos nulos en la corriente de datos multiplexada estadísticamente es controlada para proporcionar suficientes datos nulos para permitir la sustitución por los datos auxiliares D_{A} en la corriente de datos multiplexada estadísticamente. Esto está mostrado en el bloque 704. Al menos una parte de los datos nulos es sustituida por los datos auxiliares D_{A} en la corriente de datos multiplexada estadísticamente.
Identificación y reemplazamiento de paquetes nulos y cero
La fig. 8 es un diagrama de flujo que presenta operaciones ilustrativas del método que puede ser usado para identificar paquetes de datos nulos y cero para su reemplazamiento con paquetes de datos auxiliares. Como se ha descrito antes, el multiplexor auxiliar 501 busca en los paquetes de datos identificados que tienen datos nulos
N_{\varepsilon 1} + N_{\varepsilon 2} +...+ N_{\varepsilon n} y datos cero N_{SM}. esto puede ser realizado examinando la salida del multiplexor estadístico 404, o la salida de cada uno de los codificadores 412. Como se ha mostrado en los bloques 802 y 804, los paquetes que tienen datos cero N_{SM} pueden ser identificados por examen del primer segmento de paquete 320 o encabezamiento para un identificador que identifica que el paquete de datos incluye sólo datos nulos. Por ejemplo, si el PID 912 en el encabezamiento coincide con el valor asignado a un paquete nulo (PID = 8191, por ejemplo), el paquete es determinado como un paquete nulo, y los datos auxiliares pueden ser sustituidos para la carga útil de ese paquete de datos, como se ha mostrado en el bloque 806. Si el PID 912 no coincide con el valor asignado a un paquete nulo, el paquete es examinado adicionalmente.
La fig. 9 es un diagrama que presenta una representación de un paquete 902 de transporte ejemplar de acuerdo con la norma MPEG-2. El paquete de transporte incluye un encabezamiento 904, un campo de adaptación opcional 906 y una sección de carga útil de datos 908. El encabezamiento de transporte 904 incluye una palabra de sincronización 910 y una pluralidad de asignaciones de bit que incluyen aquellos que están asignados al PID 912 para identificar el paquete y un indicador de continuidad 914.
Los paquetes cero (paquetes con datos nulos insertados por codificadores 412 en la sección de carga útil de datos 908) son más difíciles de detectar, debido a que el encabezamiento (904 y/o 320) del paquete de datos cero puede ser idéntico el encabezamiento de un paquete de datos con datos de vídeo o de audio. Los paquete cero pueden ser identificados analizando completamente la corriente de datos de MPEG e identificando bytes cero innecesarios para eliminación. Sin embargo, esta técnica es informáticamente intensiva. En una realización del presente invento, los paquetes de datos son cribados para identificar aquellos que podrían ser candidatos para tener suficientes datos nulos para permitir la sustitución por datos auxiliares. Esto puede ser realizado con la función nextbitsO (definida en ITU-T H.262, en los párrafos 6.2.4 y 5.2.2, cuyas referencias están aquí incorporadas a modo de referencia) que permite la comparación de una cadena de bits con los siguientes bits que han de ser descodificados en la corriente de bits.
Algunos esquemas de codificación usados por los codificadores 402 recortan datos asincrónicamente a través de paquetes de datos. Todos los codificadores actuales de MPEG, por ejemplo, recortan datos asincrónicamente en paquetes de transporte. Así, un valor de datos particular o conjunto de valores de datos relacionados puede ser transmitido por más de un paquete de datos (aunque ambos tendrán el mismo PID). Consiguientemente, para estar seguro de que el paquete actual bajo examen (que puede tener todos ceros, pero al que no le ha sido asignado un PID que indica que no tiene nada pero datos nulos) es un paquete que está transmitiendo un valor de datos que consiste sólo de datos nulos, es necesario examinar el paquete temporalmente adyacente (por ejemplo previo) que tiene el mismo PID. Si el examen del paquete previo revela que ambos paquetes trasmiten sólo datos mulos, entonces el paquete es un candidato para la sustitución por datos auxiliares. Si el examen del paquete previo revela que el paquete actual incluye sólo datos nulos pero el paquete previo incluía datos no nulos, entonces el paquetes actual no es un candidato para la sustitución por datos auxiliares. La lógica para realizar este examen de paquetes está mostrada en la fig. 8.
La lógica mostrada en la fig. 8 supone que dos elementos de datos están disponibles para cada paquete (y PID) bajo examen. El primero es un indicador (STATE) para cada paquete (de acuerdo con el PID del paquete). El valor inicial para el indicador STATE es cero. El segundo elemento de información es una tabla estática que define qué paquetes (de acuerdo con el PID del paquete) son de vídeo y por tanto probablemente incluyen datos nulos. Estos datos pueden ser obtenidos a partir de un MPEG PMT o a partir de una tabla de configuración que es externa a la corriente de datos bajo examen.
Volviendo específicamente ahora a la fig. 8, el bloque 808 determina si el paquete en consideración es un paquete de un tipo que es probable que tenga datos nulos, tal como un paquete de vídeo (aunque en otras realizaciones, los datos nulos pueden estar incluidos en datos de audio u otros). Esta determinación puede hacerse, por ejemplo, examinando el PID del paquete y comparando el PID a una tabla de búsqueda. Si el paquete es de un tipo que no es probable que tenga datos nulos, el paquete de datos bajo examen no es un candidato para sustitución, y los datos auxiliares no sustituyen a los datos nulos en el paquete, como se ha mostrado en el bloque 822. El siguiente paquete ha de ser examinado, como se ha mostrado en el bloque 826.
El bloque 810 ensaya un indicador de STATE que está asociado con el PID para los paquetes. El indicador STATE describe las siguientes condiciones de estado:
STATE=0: Este es el estado por defecto, e indica que un paquete de datos anterior con el mismo PID que aparece en la corriente de datos 424 incluía datos no nulos y terminaba de una manera que indicaría que este paquete no puede ser un paquete de vídeo cero. Si el indicador de STATE=0, el FIN del paquete actual (el paquete bajo examen) es examinado, comenzando en el último byte de carga útil y moviéndose hacia delante, para determinar si hay un número suficiente NB de bytes cero consecutivos. Esto está representado en el bloque 816.
En una realización NB \geq 3 representa el menor valor cuando es sabido que los códigos de inicio que siguen al rellenado están alineados por paquete (típicamente cierto). NB \geq 5 es el menor valor cuando no se sabe que los códigos de inicio que siguen al rellenado no están alineados por paquete.
Si hay un número suficiente de bytes cero se determina que el paquete actual puede incluir datos nulos, y el STATE es cambiado a STATE = 1. La determinación final de si el paquete actual incluye datos cero o no es diferida hasta el examen del siguiente paquete de datos con el mismo PID.
STATE=1: Cuando STATE=1, el paquete previamente examinado (con el mismo PID) terminaba con tres bytes cero consecutivos, que indican que el paquete actual bajo examen está al final de una división. Se hace a continuación un ensayo para determinar si la carga útil de datos completa de este paquete es de bytes cero, como se ha mostrado en el bloque 812. Si es así, entonces el paquete es un paquete de vídeo cero y es candidato a tener sus datos cero o nulos sustituidos con datos auxiliares, como se ha mostrado en los bloques 814 y 806. En este caso, el STATE sigue siendo 1, ya que los últimos tres bytes del paquete son todos ceros. Si la carga útil de datos completa no son todos bytes cero, entonces este paquete tiene datos no nulos en la carga útil (no es un paquete de vídeo cero) y el tratamiento es hecho pasar al bloque 816. En el bloque 816, el paquete actual es comprobado desde el último byte de carga útil, en sentido de avance, para determinar si los últimos tres bytes en el paquetes son bytes cero. Si es así, entonces el STATE para este PID es ajustado a STATE=1 (que, como se ha descrito antes, es usado para determinar si hay que sustituir los datos nulos en el siguiente paquete que es examinado). Si no hay tres bytes distintos de cero consecutivos contando desde el final del paquete, el STATE es mantenido en cero y el paquete actual no es un candidato para sustitución por datos auxiliares, ya que contiene datos no nulos.
Por ello, para determinar si los datos cero pueden ser sustituidos por datos auxiliares, son examinados dos paquetes de datos: (1) el paquete de datos actual, y (2) un paquete de datos que tiene el mismo PID y temporalmente adyacente al paquete de datos actual. Si el paquete de datos (2) incluye al menos un número NB de valores de datos cero consecutivos y el paquete de datos (1) incluye todos los valores de datos cero, el paquete de datos (1) es un candidato a tener al menos una parte de la carga útil de datos sustituida por los datos auxiliares D_{A}.
Aunque lo anterior describe un método en el que los datos no son sustituidos por los datos auxiliares en un paquete a menos que el paquete completo comprenda datos nulos y el paquete previo tuviera al menos tres bytes consecutivos de datos cero al final del paquete, los esquemas de sustitución diferentes pueden ser puestos en práctica como apropiados para los métodos de codificación empleados por los codificadores 402 y el multiplexor estadístico 404. Por ejemplo, el método puede ser modificado de modo que un relleno de datos nulos distintos de cero pueden ser reconocidos también, o de modo que NB sea igual a un entero diferente. Además, en una realización del presente invento, el multiplexor auxiliar 508 examina la corriente de datos entrante, determina qué clase de protocolo se ha usado para rellenar cada corriente de datos con datos nulos y/o para multiplexar corrientes de datos diferentes juntos, y modifica de modo adaptativo el algoritmo usado para sustituir los datos nulos por los datos auxiliares de acuerdo con el protocolo determinado. En esta realización, el multiplexor auxiliar 404 puede sustituir los datos nulos por datos auxiliares insertados por los codificadores 402 usando protocolos y esquemas de relleno diferentes (por ejemplo un sistema en el que el codificador 402A es un codificador que cumple MPEG-2, pero el codificador 402B es un codificador que cumple con un estándar de codificación totalmente diferente).
La sustitución de datos nulos por datos en paquetes de datos cero o paquetes de datos nulos puede requerir la regeneración de los indicadores 914 de continuidad en el encabezamiento 914 de los paquetes de transporte 902 de la corriente de datos para mantener la sintaxis correcta del paquete de datos de transporte.
En otra realización, el multiplexor auxiliar 504 también proporciona una funcionalidad adicional para tomar decisiones de paquete por paquete considerando cuando la inserción de datos auxiliares por datos nulos es permitida. Por ejemplo, al multiplexor auxiliar 504 puede imponer una tasa de datos máxima en la que los datos procedentes de la memoria tampón 506 pueden ser colocados en la corriente de datos de salida mediante el uso de un gobernador que impone una separación entre paquetes mínima para cada corriente. Si el número mínimo de paquetes no ha pasado ya que el último paquete de datos fue aplicado, el gobernador restringe que los datos sean leídos de la memoria tampón 506 y proporcionados en la salida del multiplexor auxiliar 508. Un sistema de prioridad de paquete por paquete puede ser empleado para seleccionar cuál de la pluralidad de paquetes de datos disponibles en la memoria tampón 506 ha de ser restringido por el gobernador y/o ha de ser leído y proporcionado en la salida antes de otros paquetes de datos.
Las prioridades asignadas a las corriente de datos particulares pueden también ser dinámicas porque pueden cambiar en el tiempo para asignar prioridades mayores a corrientes de datos auxiliares cuando se requiera. Por ejemplo, un contador de prioridad puede ser incrementado cada vez que una corriente de datos/paquete auxiliar es hecha pasar para inserción de datos, moviendo la corriente de datos/paquete hacia arriba en prioridad relativa comparada con otras corrientes de datos/paquetes. La corriente de datos/paquete con la mayor prioridad actual es a continuación designada para sustituir al siguiente paquete de datos nulos/cero disponibles.
Conclusión
La descripción anterior de la realización preferida del invento ha sido presentada con propósitos de ilustración y descripción. No se pretende que sea exhaustiva o que limite el invento a la forma precisa descrita. Son posibles muchas modificaciones y variaciones a la luz de las enseñanzas anteriores. Por ejemplo, aunque la descripción anterior presenta una realización del presente invento cuando es aplicada a un sistema de transmisión por satélite, el presente invento puede ser usado para trasmitir datos usando cualquier sistema de transmisión inalámbrico o de cable. Se pretende que el marco del invento esté limitado no por esta descripción detallada, sino por las reivindicaciones adjuntas a ella. La anterior memoria, ejemplos y datos proporcionan una descripción completa de la fabricación y uso de la composición del invento. Como pueden hacerse muchas realizaciones del invento sin salir del marco del invento, el invento reside en las reivindicaciones adjuntas a continuación.

Claims (27)

1. Un aparato para añadir datos auxiliares D_{A} a una corriente de datos de salida, que comprende: un multiplexor estadístico (404) que tiene una pluralidad de entradas (416) que incluyen una primera entrada (416A), y una salida (424) que proporcionan la corriente de datos de salida; caracterizado por un primer codificador (402A), que tiene una salida (414A) acoplada de modo comunicativo a la primera entrada del multiplexor estadístico, un primer codificador para comprimir una primera corriente de datos D_{1} de acuerdo con una primera tasa de datos real BW_{A} que es menor o igual a una primera tasa de datos concedidos BW_{G1}, concedidos por el multiplexor estadístico en respuesta a una tasa de datos solicitada BW_{A} procedente del codificador, definiendo la diferencia entre la primera tasa de datos real BW_{A} y la primera tasa de datos concedidos BW_{G1} una tasa que excede del codificador BW_{O\varepsilon 1} de tal modo que BW_{G2} - BW_{A1} =
BW_{O\varepsilon 1} \geq 0 teniendo el primer codificador una salida que incluye una versión comprimida de la primera corriente de datos d_{1} proporcionada a la tasa de datos real BW_{A1} y datos nulos N_{g1} de codificador a la tasa de tara BW_{O\varepsilon 1}; y un multiplexor auxiliar (508), acoplado de modo comunicativo al multiplexor estadístico, para detectar datos nulos que comprenden los datos nulos de codificador N_{g} y para sustituir al menos una parte de los datos nulos por los datos auxiliares D_{A}.
2. El aparato según la reivindicación 1ª, en el que el multiplexor auxiliar está acoplado de modo comunicativo entre la salida del codificador y la entrada del multiplexor estadístico.
3. El aparato según la reivindicación 1ª en el que el multiplexor auxiliar está acoplado de modo comunicativo a la salida del multiplexor estadístico.
4. El aparato según la reivindicación 3ª, que comprende además una memoria tampón (506), acoplada de modo comunicativo al multiplexor auxiliar, la memoria tampón para almacenar los datos auxiliares.
5. El aparato según la reivindicación 4ª, en el que el multiplexor auxiliar sustituye por los datos auxiliares de acuerdo con una memoria sin usar de la memoria tampón.
6. El aparato según la reivindicación 3ª, en el que el multiplexor auxiliar detecta además datos nulos N_{SM} del multiplexor estadístico y sustituye al menos una parte de los datos nulos N_{SM} del multiplexor por los datos auxiliares D_{A}.
7. El aparato según la reivindicación 3ª, en el que: el multiplexor estadístico gestiona la presentación de la primera salida del codificador de acuerdo con una primera entrada de mando (420) que describe una tasa de datos objetivo de la corriente de datos de salida B_{T}; y el multiplexor auxiliar está acoplado de modo comunicativo a la primera entrada del multiplexor estadístico para ordenar un cambio de la tasa de datos objetivo de la corriente B_{T} de datos de salida.
8. El aparato según la reivindicación 7ª, que comprende una memoria tampón (506) que tienen una memoria sin usar, acoplado de modo comunicativo al multiplexor auxiliar, la memoria tampón para almacenar los datos auxiliares, en el que una tasa de datos de tara BW_{O\varepsilon} + BW_{OSM} es calculada de acuerdo con la memoria sin usar y la tasa de datos objetivo es cambiada de acuerdo con el valor calculado de la tasa de datos de tara.
9. El aparato según la reivindicación 7ª en el que el multiplexor auxiliar cambia la tasa de datos objetivo de acuerdo con uno o más parámetros de datos auxiliares (512) seleccionados del grupo que comprende: una tasa de datos auxiliar mínima BW_{MIN}; una tasa de datos auxiliar máxima BW_{MAX}; una tasa de datos auxiliar nominal BW_{AVG} medida durante un periodo de tiempo t_{per}; y una prioridad.
10. El aparato según la reivindicación 7ª, en el que el cambio en la tasa de datos objetivo de los datos de salida es ordenada para disminuir la tasa objetivo de la corriente de datos de salida B_{T} para permitir la sustitución de datos nulos N_{SM} del multiplexor por los datos auxiliares D_{A}.
11. El aparato según la reivindicación 7ª, en el que: el multiplexor auxiliar detecta además datos nulos N_{SM} del multiplexor estadístico y sustituye al menos una parte de los datos nulos N_{SM} del multiplexor por los datos auxiliares y el cambio en la tasa de datos objetivo de los datos de salida es ordenado para disminuir la tasa objetivo de la corriente de datos de salida B_{T} para permitir la sustitución de datos seleccionados del grupo que comprende los datos nulos N_{\varepsilon 1} de codificador y los datos nulos N_{SM} del multiplexor por datos auxiliares D_{A}.
12. El aparato según la reivindicación 11ª, en el que los datos auxiliares son añadidos a una tasa de datos auxiliar mínima previamente especificada.
13. El aparato según la reivindicación 3ª, que comprende además: un segundo codificador (402B), que tiene una salida (414B) acoplada de modo comunicativo a una segunda entrada (416B) del multiplexor estadístico, el segundo codificador para comprimir una segunda corriente de datos D_{2} de acuerdo con una segunda tasa de datos real BW_{A2} que es menor o igual que una segunda tasa de datos concedidos BW_{G2} concedidos por el multiplexor estadístico en respuesta a una tasa de datos requerida BW_{R2} procedente del segundo codificador, definiendo la diferencia entre la segunda tasa de datos real BW_{A2} y la segunda tasa de datos concedidos BW_{G2} una tasa de tara de codificador BW_{O\varepsilon 2} de tal modo que BW_{G2} - BW_{A2} = BW_{O\varepsilon 2} \geq 0, teniendo el segundo codificador una salida que incluye una versión comprimida de la segunda corriente de datos proporcionada a la tasa de datos real BW_{A2} y datos nulos N_{E2} de codificador a la tasa de tara BW_{OE2}; teniendo el segundo codificador una salida: en la que el multiplexor estadístico asigna datos presentados en la pluralidad de entradas a la salida del multiplexor estadístico de acuerdo con una segunda entrada de mando (418) del multiplexor estadístico; y en el que el multiplexor auxiliar está acoplado de modo comunicativo a la segunda entrada del multiplexor estadístico para ordenar un cambio en la asignación de los datos presentados en la pluralidad de entradas a la salida del multiplexor estadístico.
14. El aparato según la reivindicación 13ª en el que el multiplexor auxiliar cambia la asignación de los datos presentados en la pluralidad de entradas a la salida del multiplexor estadístico de acuerdo con una memoria sin usar de una memoria tampón (506) acoplada de modo comunicativo al multiplexor auxiliar, la memoria tampón para almacenar los datos auxiliares.
15. El aparato según la reivindicación 14ª, en el que el multiplexor cambia la asignación de los datos presentados en la pluralidad de entradas a la salida del multiplexor estadístico de acuerdo con una memoria sin usar de la memoria tampón.
16. Un método de añadir datos auxiliares D_{A} a una corriente de datos, caracterizado por las operaciones de: comprimir, por un primer codificador, una primera corriente de datos D_{1} de acuerdo con una primera tasa de datos real BW_{A1} que es menor o igual a una primera de tasa de datos concedidos BW_{G1} concedidos por el multiplexor estadístico en respuesta a una tasa de datos requerida BW_{R1} procedente del codificador, definiendo la diferencia entre la primera tasa de datos real BW_{A1} y la primera tasa de datos concedidos BW_{G1} una tasa de tara de codificador BW_{OE1} de tal modo que, BW_{G1} - BW_{A1} = BW_{O\varepsilon 1} \geq 0; emitir, desde el primer codificador al multiplexor estadístico, una versión comprimida de la primera corriente de datos d_{1} proporcionada a la tasa de datos real BW_{A1} y datos nulos N_{SM} de codificador a la tasa de tara BW_{OE1}; realizar mediante un multiplexor auxiliar: aceptar (702) una corriente de datos multiplexada estadísticamente que tiene datos nulos que comprenden los datos nulos N_{SM} de codificador; detectar los datos nulos; y sustituir (706) al menos una parte de los datos nulos por los datos auxiliares D_{A} en la corriente de datos multiplexada estadísticamente.
17. El método según la reivindicación 16ª, en el que los datos auxiliares D_{A} son datos no oportunistas que tienen un requisito de servicio de entrega mínimo.
18. El método según la reivindicación 17ª, que comprende además la operación de: almacenar en memoria tampón (704) los datos auxiliares D_{A} hasta que haya suficientes datos nulos para permitir la sustitución de al menos algunos de los datos auxiliares D_{A} en la corriente de datos multiplexada estadísticamente.
19. El método según la reivindicación 18ª, que comprende además la operación de: controlar (704) una cantidad de los datos nulos en los datos multiplexados estadísticamente para proporcionar suficientes datos nulos para permitir la sustitución de al menos alguno de los datos auxiliares D_{A} en la corriente de datos multiplexada estadísticamente.
20. El método según la reivindicación 19ª en el que la cantidad de datos nulos es controlada de acuerdo con una relación entre una cantidad de los datos auxiliares D_{A} almacenados en memoria tampón y una capacidad de una memoria tampón que almacena los datos almacenados.
21. El método según la reivindicación 19ª, en el que los datos nulos comprenden datos nulos N_{SM} de multiplexor estadístico.
22. El método según la reivindicación 20ª, en el que la corriente de datos multiplexada estadísticamente es multiplexada estadísticamente a un caudal menor o igual a un caudal objetivo BW_{T}, y la operación de controlar una cantidad de datos nulos en los datos multiplexados estadísticamente comprende la operación de alterar el valor de caudal objetivo BW_{T}.
23. El método según la reivindicación 17ª, en el que la corriente de datos multiplexada estadísticamente es multiplexada estadísticamente de acuerdo con una ecuación de multiplexor estadístico, y la operación de controlar una cantidad de datos nulos en los datos multiplexados estadísticamente de acuerdo con una relación entre la cantidad de datos auxiliares D_{A} almacenados en memoria tampón y una capacidad de una memoria tampón que almacena los datos almacenados comprende la operación de alterar la ecuación de multiplexor estadístico.
24. El método según la reivindicación 19ª, que comprende además la operación de: examinar los datos auxiliares D_{A} para un valor de prioridad; y eliminar datos no esenciales que tienen un valor de prioridad inferior de los datos auxiliares D_{A} antes de sustituir los datos nulos por los datos auxiliares D_{A} en la corriente de datos multiplexada estadísticamente.
25. El método según la reivindicación 19ª, en el que la operación de controlar una cantidad de datos nulos en los datos multiplexados estadísticamente es controlada de acuerdo a un ajuste de parámetros que describe los datos auxiliares D_{A}, que incluye: un caudal mínimo requerido para conservar el servicio de datos activo BW_{MIN}; un caudal sostenido máximo del servicio de datos BW_{MAX}; y una tasa nominal o garantizada durante un periodo de tiempo BW_{AVG}.
26. El método según la reivindicación 16ª, en el que la corriente de datos comprende un conjunto de paquetes de datos (302-316) la totalidad de los cuales tiene un ID de paquete que incluye un primer paquete de datos y un segundo paquete de datos temporalmente adyacente al primer paquete de datos, y la operación de sustituir al menos una parte de los datos nulos por los datos auxiliares D_{A} en la corriente de datos multiplexada estadísticamente comprende las operaciones de: sustituir al menos una parte de los datos por los datos auxiliares D_{A} en el segundo paquete de datos si el primer paquete de datos incluye al menos un número NB de valores consecutivos de datos cero y el segundo paquete de datos incluyen todos los valores de datos cero.
27. Un sistema para trasmitir datos auxiliares D_{A} en una señal de paquetes por satélite, que comprende: un multiplexor estadístico (404) que tiene una pluralidad de entradas (416) que incluyen una primera entrada (416A), y una salida (424) que proporciona una corriente de datos de salida; caracterizado por un primer codificador (402A), que tiene una salida (414A) acoplada de modo comunicativo a la primera entrada del multiplexor estadístico, el primer codificador para comprimir una primera corriente de datos D_{A} de acuerdo con una primera tasa de datos real BW_{A1} que es menor o igual a una primera de tasa de datos concedidos BW_{G1} concedidos por el multiplexor estadístico en respuesta a una tasa de datos requerida BW_{R1} procedente del codificador, definiendo la diferencia entre la primera tasa de datos real BW_{A1} y la primera tasa de datos concedidos BW_{G1} una tasa de tara de codificador BW_{OE1} de tal modo que, BW_{G1} - BW_{A1} = BW_{O\varepsilon 1} \geq 0BW, teniendo el primer codificador una salida que incluye una versión comprimida de la primera corriente de datos d_{1} proporcionada a la tasa de datos real BW_{A1} y datos nulos N_{E1} de codificador a la tasa de tara BW_{OE1}; y un multiplexor auxiliar (508) acoplado de modo comunicativo al multiplexor estadístico, para detectar datos nulos que comprende los datos nulos N_{E} de codificador y para sustituir al menos una parte de los datos nulos por los datos auxiliares D_{A}, un modulador (220) acoplado de modo comunicativo al multiplexor auxiliar, para modular la corriente de datos de salida; un transmisor (222, 106) acoplado de modo comunicativo al modulador para transmitir la corriente de datos de salida; y un transpondedor (108), para recibir la corriente de datos de salida modulada transmitida y para retransmitir la corriente de datos de salida recibida a un abonado (110).
ES03000152T 2002-01-03 2003-01-03 Explotacion de paquetes nulos en sistemas de television digital de paquetes. Expired - Lifetime ES2321702T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US38174 2002-01-03
US10/038,174 US7376159B1 (en) 2002-01-03 2002-01-03 Exploitation of null packets in packetized digital television systems

Publications (1)

Publication Number Publication Date
ES2321702T3 true ES2321702T3 (es) 2009-06-10

Family

ID=21898470

Family Applications (1)

Application Number Title Priority Date Filing Date
ES03000152T Expired - Lifetime ES2321702T3 (es) 2002-01-03 2003-01-03 Explotacion de paquetes nulos en sistemas de television digital de paquetes.

Country Status (5)

Country Link
US (2) US7376159B1 (es)
EP (1) EP1326355B1 (es)
JP (1) JP4414134B2 (es)
DE (1) DE60326404D1 (es)
ES (1) ES2321702T3 (es)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004015114A (ja) * 2002-06-03 2004-01-15 Funai Electric Co Ltd デジタル放送記録装置及びそれを備えたデジタル放送システム
JP4391091B2 (ja) * 2003-01-17 2009-12-24 ソニー株式会社 情報伝送方法、情報伝送装置、情報記録方法、情報記録装置、情報再生方法、情報再生装置および記録媒体
KR100624786B1 (ko) * 2004-01-29 2006-09-19 엘지전자 주식회사 무선 네트워크망을 통해 통신하는 서버 시스템
DE102004040771A1 (de) * 2004-08-23 2006-03-02 Siemens Ag Verfahren zur effizienten Verarbeitung von Datenpaketen, zugehörige Übertragungsprotokollschicht, Kommunikationsendgerät sowie Netzwerkkomponente mit einer derartigen Übertragungsprotokollschicht
US7602820B2 (en) 2005-02-01 2009-10-13 Time Warner Cable Inc. Apparatus and methods for multi-stage multiplexing in a network
JP4705115B2 (ja) * 2005-02-07 2011-06-22 ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー ネットワーク監視
US8144868B2 (en) * 2005-05-25 2012-03-27 Zenith Electronics Llc Encryption/decryption of program data but not PSI data
US8189786B2 (en) 2005-05-25 2012-05-29 Zenith Electronics Llc Encryption system
WO2007060577A1 (en) * 2005-11-22 2007-05-31 Koninklijke Philips Electronics N.V. Method and apparatus for download in digital broadcasting system
US7889765B2 (en) * 2005-11-30 2011-02-15 Time Warner Cable Inc. Apparatus and methods for utilizing variable rate program streams in a network
FI120175B (fi) * 2006-10-27 2009-07-15 Tellabs Oy Digitaalisen informaation siirtäminen kehitysvälitteisessä tiedonsiirtoverkossa
DE102007012465A1 (de) * 2006-11-15 2008-05-21 Rohde & Schwarz Ftk Gmbh Übertragungsverfahren und Sendevorrichtung in einem digitalen Rundfunk-Übertragungssystem
US8625607B2 (en) 2007-07-24 2014-01-07 Time Warner Cable Enterprises Llc Generation, distribution and use of content metadata in a network
US20090028142A1 (en) * 2007-07-25 2009-01-29 Schmidt Brian K Streaming data content in a network
EP2046063A1 (en) * 2007-10-02 2009-04-08 Alcatel Lucent Method for rate control of multimedia streams and apparatus for performing this method
WO2009131378A2 (en) * 2008-04-22 2009-10-29 Samsung Electronics Co., Ltd. Transmitting additional information in the headers of encapsulating data packets in mobile/handheld (m/h) dtv signals
JP5195674B2 (ja) * 2009-07-13 2013-05-08 富士通株式会社 画像符号化装置
KR101129900B1 (ko) 2009-08-06 2012-03-28 한국방송공사 비디오 서비스의 유휴 대역을 이용해서 부가 데이터를 전송하기 위한 dmb송수신 장치 및 그의 방법
US8929710B2 (en) 2010-11-01 2015-01-06 Todd E. Fitzsimmons System and method for time shifting at least a portion of a video program
US9078017B2 (en) 2010-11-26 2015-07-07 Telefonaktiebolaget L M Ericsson (Publ) Method and device for buffering data for multiplexing
US8942255B2 (en) 2011-05-11 2015-01-27 Comcast Cable Communications, Llc Managing data
US20150046967A1 (en) * 2012-03-26 2015-02-12 Mitsubishi Electric Corporation Video transceiver system, video transmission method, and transmission device
US20140098852A1 (en) * 2012-10-05 2014-04-10 Samsung Display Co., Ltd. Compression bandwidth overflow management using auxiliary control channel
EP3160146A4 (en) * 2014-06-20 2017-11-01 Sony Corporation Transmission device, transmission method, reception device, and reception method
US9781488B2 (en) * 2015-07-30 2017-10-03 Adi Rozenberg Controlled adaptive rate switching system and method for media streaming over IP networks
KR102380285B1 (ko) * 2015-10-14 2022-03-30 삼성전자주식회사 멀티미디어 시스템에서 패킷을 송/수신하는 방법 및 장치
JP2017162048A (ja) * 2016-03-08 2017-09-14 三菱電機株式会社 バッファリングシステム
US10306329B2 (en) 2016-11-30 2019-05-28 The Directv Group, Inc. Facilitating mixed service use of bonded satellite transponders
CN110198474B (zh) * 2018-02-27 2022-03-15 中兴通讯股份有限公司 一种码流处理方法及装置
US11323758B1 (en) * 2019-12-12 2022-05-03 Amazon Technologies, Inc. Lossless transport stream compression from constant bitrate to variable bitrate to constant bitrate
US11379595B2 (en) 2020-01-16 2022-07-05 EMC IP Holding Company LLC Zero-knowledge protection for side channels in data protection to the cloud
US20250008172A1 (en) * 2023-06-27 2025-01-02 Microsoft Technology Licensing, Llc Full motion video (fmv) routing in one-way transfer systems

Family Cites Families (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3627914A (en) 1969-09-04 1971-12-14 Central Dynamics Automatic television program control system
FR2181593B1 (es) 1972-04-26 1974-10-18 Ibm France
DE3735421A1 (de) * 1987-10-20 1989-05-11 Deutsche Forsch Luft Raumfahrt Verfahren zur minderung des ueberfluggeraeusches von flugzeugen mit einem von einem kolbenmotor getriebenen propeller
US5404315A (en) 1991-04-30 1995-04-04 Sharp Kabushiki Kaisha Automatic sound gain control device and a sound recording/reproducing device including arithmetic processor conducting a non-linear conversion
US5642437A (en) 1992-02-22 1997-06-24 Texas Instruments Incorporated System decoder circuit with temporary bit storage and method of operation
US5337041A (en) 1992-04-13 1994-08-09 Lorri Friedman Personal safety guard system for stray person or pet
US5363147A (en) 1992-06-01 1994-11-08 North American Philips Corporation Automatic volume leveler
DE69328399T2 (de) 1992-09-30 2000-10-19 Hudson Soft Co. Ltd., Sapporo Sprachdaten-Verarbeitung
CA2104753C (en) 1992-10-29 1999-02-16 Kotikalapudi Sriram Bandwidth allocation, transmission scheduling, and congestion avoidance in broadband atm networks
US5579404A (en) 1993-02-16 1996-11-26 Dolby Laboratories Licensing Corporation Digital audio limiter
US5729556A (en) 1993-02-22 1998-03-17 Texas Instruments System decoder circuit with temporary bit storage and method of operation
DE69321575T3 (de) 1993-03-22 2005-05-25 Sony Deutschland Gmbh Rundfunksignalempfänger
CA2121151A1 (en) 1993-04-16 1994-10-17 Trevor Lambert Method and apparatus for automatic insertion of a television signal from a remote source
US5461619A (en) * 1993-07-06 1995-10-24 Zenith Electronics Corp. System for multiplexed transmission of compressed video and auxiliary data
US5448568A (en) * 1994-04-28 1995-09-05 Thomson Consumer Electronics, Inc. System of transmitting an interactive TV signal
US5506844A (en) * 1994-05-20 1996-04-09 Compression Labs, Inc. Method for configuring a statistical multiplexer to dynamically allocate communication channel bandwidth
US5625743A (en) 1994-10-07 1997-04-29 Motorola, Inc. Determining a masking level for a subband in a subband audio encoder
US5666430A (en) 1995-01-09 1997-09-09 Matsushita Electric Corporation Of America Method and apparatus for leveling audio output
US5650825A (en) * 1995-03-31 1997-07-22 Matsushita Electric Corporation Of America Method and apparatus for sending private data instead of stuffing bits in an MPEG bit stream
US6026232A (en) * 1995-07-13 2000-02-15 Kabushiki Kaisha Toshiba Method and system to replace sections of an encoded video bitstream
US5802068A (en) * 1995-06-30 1998-09-01 Nippon Steel Corporation Multiplexing apparatus of a plurality of data having different bit rates
US5778077A (en) 1995-09-13 1998-07-07 Davidson; Dennis M. Automatic volume adjusting device and method
US5966120A (en) * 1995-11-21 1999-10-12 Imedia Corporation Method and apparatus for combining and distributing data with pre-formatted real-time video
US5686963A (en) 1995-12-26 1997-11-11 C-Cube Microsystems Method for performing rate control in a video encoder which provides a bit budget for each frame while employing virtual buffers and virtual buffer verifiers
KR0165063B1 (ko) 1995-12-29 1999-02-01 정장호 시분할 다중화 버스에서 통계적 다중화 장치
US5822018A (en) 1996-04-02 1998-10-13 Farmer; James O. Method and apparatus for normalizing signal levels in a signal processing system
US5898675A (en) 1996-04-29 1999-04-27 Nahumi; Dror Volume control arrangement for compressed information signals
US6137834A (en) 1996-05-29 2000-10-24 Sarnoff Corporation Method and apparatus for splicing compressed information streams
US5751723A (en) 1996-07-01 1998-05-12 Motorola, Inc. Method and system for overhead bandwidth recovery in a packetized network
US5864557A (en) 1996-09-25 1999-01-26 Thomson Multimedia S.A. Method and apparatus for opportunistically transferring data in a packet stream encoder
US6369855B1 (en) 1996-11-01 2002-04-09 Texas Instruments Incorporated Audio and video decoder circuit and system
US5991812A (en) 1997-01-24 1999-11-23 Controlnet, Inc. Methods and apparatus for fair queuing over a network
US5877821A (en) 1997-01-30 1999-03-02 Motorola, Inc. Multimedia input and control apparatus and method for multimedia communications
TW384434B (en) 1997-03-31 2000-03-11 Sony Corp Encoding method, device therefor, decoding method, device therefor and recording medium
JPH10284960A (ja) 1997-04-10 1998-10-23 Matsushita Electric Ind Co Ltd オーディオレベル制御方法及び再生装置
KR19980076752A (ko) 1997-04-14 1998-11-16 윤종용 화면 및 음향을 자동으로 전환하기 위한 방송 신호 수신 방법 및 수신 장치
US5987031A (en) 1997-05-22 1999-11-16 Integrated Device Technology, Inc. Method for fair dynamic scheduling of available bandwidth rate (ABR) service under asynchronous transfer mode (ATM)
US6169807B1 (en) 1997-10-04 2001-01-02 Michael Sansur Remote automatic audio level control device
KR20000069723A (ko) 1997-10-28 2000-11-25 요트.게.아. 롤페즈 개선된 오디오 재생 장치 및 전화기 단말
UA56279C2 (uk) 1997-11-04 2003-05-15 Джорджія Тек Ресерч Корпорейшн Система і спосіб підтримки синхронізації за часом у мережі цифрового відео
US6169584B1 (en) 1997-12-05 2001-01-02 Motorola, Inc. Automatic modulation control of sync suppressed television signals
US6047178A (en) 1997-12-19 2000-04-04 Nortel Networks Corporation Direct communication wireless radio system
US6064676A (en) 1998-01-14 2000-05-16 Skystream Corporation Remultipelxer cache architecture and memory organization for storing video program bearing transport packets and descriptors
US6389019B1 (en) 1998-03-18 2002-05-14 Nec Usa, Inc. Time-based scheduler architecture and method for ATM networks
AU750605B2 (en) 1998-04-14 2002-07-25 Hearing Enhancement Company, Llc User adjustable volume control that accommodates hearing
US6272131B1 (en) 1998-06-11 2001-08-07 Synchrodyne Networks, Inc. Integrated data packet network using a common time reference
US7035278B2 (en) 1998-07-31 2006-04-25 Sedna Patent Services, Llc Method and apparatus for forming and utilizing a slotted MPEG transport stream
GB2341745A (en) 1998-09-10 2000-03-22 Snell & Wilcox Ltd Image encoding
US7068724B1 (en) * 1999-10-20 2006-06-27 Prime Research Alliance E., Inc. Method and apparatus for inserting digital media advertisements into statistical multiplexed streams
US6298089B1 (en) 1998-12-10 2001-10-02 Viewgraphics, Inc. Method for seamless and near seamless audio and non-video splicing of a digital transport stream
US6252848B1 (en) 1999-03-22 2001-06-26 Pluris, Inc. System performance in a data network through queue management based on ingress rate monitoring
US6269855B1 (en) * 1999-07-30 2001-08-07 Magdi K. Elgendi Multi-chamber pneumatic tire system
US6430233B1 (en) 1999-08-30 2002-08-06 Hughes Electronics Corporation Single-LNB satellite data receiver
JP2001111969A (ja) 1999-10-06 2001-04-20 Nec Corp Tsパケットデータ多重方法及びtsパケットデータ多重装置
DE60042761D1 (de) 1999-10-20 2009-09-24 Samsung Electronics Co Ltd Verfahren und vorrichtung zum einfügen digitaler medienanzeigen in statistische gemultiplexte ströme
US6687247B1 (en) 1999-10-27 2004-02-03 Cisco Technology, Inc. Architecture for high speed class of service enabled linecard
US6931370B1 (en) 1999-11-02 2005-08-16 Digital Theater Systems, Inc. System and method for providing interactive audio in a multi-channel audio environment
JP2001169248A (ja) 1999-12-07 2001-06-22 Matsushita Electric Ind Co Ltd デジタル音声レベル可変装置
JP4300697B2 (ja) 2000-04-24 2009-07-22 ソニー株式会社 信号処理装置及び方法
JP2001344905A (ja) 2000-05-26 2001-12-14 Fujitsu Ltd データ再生装置、その方法及び記録媒体
US6801886B1 (en) * 2000-06-22 2004-10-05 Sony Corporation System and method for enhancing MPEG audio encoder quality
JP4055336B2 (ja) 2000-07-05 2008-03-05 日本電気株式会社 音声符号化装置及びそれに用いる音声符号化方法
JP4441839B2 (ja) * 2000-08-17 2010-03-31 ソニー株式会社 統計多重システム、統計多重制御装置および統計多重方法
US6429779B1 (en) * 2000-12-26 2002-08-06 Gino Petrillo Telephone line monitoring and alarm apparatus
US20020146023A1 (en) 2001-01-09 2002-10-10 Regan Myers Transport stream multiplexer utilizing smart FIFO-meters
US6510166B2 (en) * 2001-03-31 2003-01-21 Redback Networks, Inc. Stuffing filter mechanism for data transmission signals
JP3601473B2 (ja) 2001-05-11 2004-12-15 ヤマハ株式会社 ディジタルオーディオ圧縮回路および伸長回路
US20020173864A1 (en) 2001-05-17 2002-11-21 Crystal Voice Communications, Inc Automatic volume control for voice over internet
US6765867B2 (en) 2002-04-30 2004-07-20 Transwitch Corporation Method and apparatus for avoiding head of line blocking in an ATM (asynchronous transfer mode) device
US20040199933A1 (en) 2003-04-04 2004-10-07 Michael Ficco System and method for volume equalization in channel receivable in a settop box adapted for use with television

Also Published As

Publication number Publication date
US7848364B2 (en) 2010-12-07
EP1326355A3 (en) 2006-03-15
DE60326404D1 (de) 2009-04-16
EP1326355B1 (en) 2009-03-04
EP1326355A2 (en) 2003-07-09
US7376159B1 (en) 2008-05-20
JP2004007388A (ja) 2004-01-08
US20080198876A1 (en) 2008-08-21
JP4414134B2 (ja) 2010-02-10

Similar Documents

Publication Publication Date Title
ES2321702T3 (es) Explotacion de paquetes nulos en sistemas de television digital de paquetes.
KR100934705B1 (ko) 다중 채널 데이터 스트림 송신을 가능하게 하는 방법,장치 및 데이터 구조
CN102369681B (zh) 在光传输网络中进行数据传输的方法
US7590237B2 (en) Time-multiplexed multi-program encryption system
KR101010170B1 (ko) 인코드된 비디오 스트림들 간의 심리스 스플라이싱을 위한비디오 인코딩
KR100632189B1 (ko) 디지털 신호 멀티플렉싱 방법과 장치, 디지털 신호 전송 방법과 장치, 디지털 신호 기록 방법과 장치 및 기록 매체
US6240103B1 (en) Method and apparatus for detecting and preventing bandwidth overflow in a statistical multiplexer
EP1028593A2 (en) Method and device for control and delivery of digitally compressed visual data in a heterogeneous communication network
US6418122B1 (en) Method and apparatus for assuring sufficient bandwidth of a statistical multiplexer
US7486680B1 (en) Packet schedule timestamp for a compressed bitstream
ES2306683T3 (es) Almacenamiento seguro y reproduccion de programas de medios de difusion empleando un receptor y un dispositivo de almacenamiento emparejados.
EA011668B1 (ru) Управление трафиком в спутниковой системе передачи данных
JP2004304813A (ja) デジタルサービスのためのマルチプレクス制御パッケージ
US20080253466A1 (en) Method and system for converting a dss stream to an encrypted mpeg stream
US20100232453A1 (en) Information processing apparatus and multiplexing method
US6870861B1 (en) Digital signal multiplexing method and apparatus, digital signal transmission method and apparatus, digital signal recording method apparatus and recording medium
KR20000028781A (ko) 인코더와 디코더 및 신호 포맷
ES2702494T3 (es) Sistema de difusión de programas de vídeo
EP1221815A2 (en) Transport stream multiplexing method, transport stream multiplexing apparatus, and storage and reproduction system
EP2200331A2 (en) 3D/stereoscopic video broadcasting involving time-shifted transmission of a 3D auxiliary video data stream
ES2649728T3 (es) Conversión de formato de archivo de audio
CN113747209A (zh) 多路ts流节目的重组方法及装置
JPH10257452A (ja) デジタルデータ多重化方法及び装置とデータ供給システム
KR100665101B1 (ko) 아퍼튜니스틱하게 부가 데이터를 전송하기 위한 디지털데이터방송 전송 시스템 및 그 방법
ES2422865T3 (es) Procedimiento de difusión de un flujo de transporte de audio/vídeo numérico en paquetes, especialmente para difusión por línea xDSL