ES2201839T3 - Codificacion de informacion auxiliar con informacion de audio condificada a base de tramas. - Google Patents

Codificacion de informacion auxiliar con informacion de audio condificada a base de tramas.

Info

Publication number
ES2201839T3
ES2201839T3 ES99972410T ES99972410T ES2201839T3 ES 2201839 T3 ES2201839 T3 ES 2201839T3 ES 99972410 T ES99972410 T ES 99972410T ES 99972410 T ES99972410 T ES 99972410T ES 2201839 T3 ES2201839 T3 ES 2201839T3
Authority
ES
Spain
Prior art keywords
information
auxiliary
audio
models
audio information
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
ES99972410T
Other languages
English (en)
Inventor
Louis Dunn Fielder
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.)
Dolby Laboratories Licensing Corp
Original Assignee
Dolby Laboratories Licensing Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dolby Laboratories Licensing Corp filed Critical Dolby Laboratories Licensing Corp
Application granted granted Critical
Publication of ES2201839T3 publication Critical patent/ES2201839T3/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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2383Channel coding or modulation of digital bit-stream, e.g. QPSK modulation
    • 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/233Processing of audio elementary streams
    • H04N21/2335Processing of audio elementary streams involving reformatting operations of audio signals, e.g. by converting from one coding standard to another
    • 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/23602Multiplexing isochronously with the video sync, e.g. according to bit-parallel or bit-serial interface formats, as SDI
    • 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/2368Multiplexing of audio 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/242Synchronisation processes, e.g. processing of PCR [Programme Clock References]
    • 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/4302Content synchronisation processes, e.g. decoder synchronisation
    • 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/4341Demultiplexing of audio 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/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/4342Demultiplexing isochronously with video sync, e.g. according to bit-parallel or bit-serial interface formats, as SDI
    • 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
    • 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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4382Demodulation or channel decoding, e.g. QPSK demodulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Television Signal Processing For Recording (AREA)
  • Television Systems (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

Un método para codificar información de audio e información auxiliar comprendiendo los pasos para realizar las acciones de: recibir una audioseñal que transporta información de audio, recibir señales de referencia de cuadros de video que indican referencias de tiempo para una secuencia de cuadros de video, recibir una señal auxiliar que transporta información auxiliar, construir segmentos auxiliares (220), comprendiendo cada uno un bloque (222) de información auxiliar y un código (223) de detección de errores, y generar una señal de salida que transporta bloques (212) de información de audio comprimida en el tiempo dispuesta en cuadros (210) separados por separaciones (205) tal que cada separación está alineada con una señal respectiva de referencia de cuadro de video y transporta un segmento auxiliar respectivo, en el que la información de audio en los cuadros de información de audio y la información auxiliar en los segmentos auxiliares están obligadas a evitar modelos de datos en un conjunto de uno o más modelos prohibidos de datos.

Description

Codificación de información auxiliar con información de audio codificada a base de tramas.
Campo técnico
La presente invención se refiere generalmente al procesamiento de audioseñales en aplicaciones de vídeo/audio. Más particularmente, la presente invención se refiere a codificar y descodificar información transportada en separaciones o bandas de seguridad entre cuadros de información de audio que pueden estar alineados con o, alternativamente, incluidos dentro de cuadros de información de vídeo.
Técnica antecedente
Se han desarrollado varias normas internacionales que definen diversos aspectos de incluir información de audio digital dentro de cuadros de información de vídeo. Por ejemplo, la norma SMPTE 259M publicada por la Society of Motion Picture and Television Engineers (SMPTE) define una Interfaz Digital en Serie (SDI: Serial Digital Interface) (por ejemplo, véanse "La Interfaz de Datos Digitales en Serie" de J.H. Wilkinson, International Broadcasting Convention, Gran Bretaña, Londres, nº 428, septiembre de 1.996, páginas 425-430, y "Integrar audio digital dentro de la videoseñal digital en serie" de D.K. Fibush, Revista de SMPTE, EE.UU., SMPTE Inc. Scarsdale, Nueva York, volumen 103, nº 9, páginas 574-579) en la que hasta cuatro canales de información de audio digital pueden ser incrustados dentro de videoseñales digitales en serie componentes y compuestas. La norma SMPTE 272M proporciona una definición completa de como la información de audio digital ha de ser incluida en espacios de datos auxiliares dentro de cuadros de la información de vídeo.
La transmisión en serie de la propia información de audio digital es el tema de diversas normas internacionales. Por ejemplo, la norma AES3 (ANSI S4.40), publicada por la Audio Engineering Society (AES), define la transmisión en serie de audio digital de dos canales representado en una forma de modulación lineal por impulsos codificados. Según esta norma, las muestras de modulación por impulsos codificados para dos canales son intercaladas y transportadas como pares en cuadros de dos muestras.
Una actividad común en casi todas las aplicaciones de grabación y difusión es editar o cortar flujos incluidas de información de vídeo/audio y empalmar los flujos de información cortados para formar un flujo único nuevo. Actividades similares generan un flujo de información uniendo flujos de información múltiples o conmutando entre flujos múltiples. La información de vídeo es normalmente la referencia principal de sincronización de modo que un punto de edición o corte está alineado normalmente con un cuadro de vídeo.
Normas tales como la AES11 definen prácticas recomendadas para sincronizar equipo de audio digital en operaciones de estudio. La norma AES11 está orientada a controlar las incertidumbres de temporización causadas por fluctuaciones o retardos de procesamiento, y se encarga de alinear la información de cuadros de vídeo con los cuadros de dos muestras de los flujos de información de audio digital de la norma AES3. Los equipos y métodos que cumplen esta norma pueden asegurar que las señales sincronizadas tienen el mismo número de cuadros durante un período dado de tiempo y contienen muestras que tienen una temporización común. Desgraciadamente, actualmente no existen normas o prácticas que definan una alineación entre información de vídeo e intervalos mayores de información de audio. Como resultado, los equipos procedentes de fabricantes diferentes e incluso del mismo fabricante tienen variaciones en temporización y en retardos de procesamiento que introducen una cantidad significativa de incertidumbre en la alineación relativa de información de audio y vídeo.
Esta incertidumbre en alineación tiene poca importancia en aplicaciones que representan la información de audio de una manera tal como la definida en la norma AES3. Como los puntos de edición están obligados a ocurrir entre los cuadros de dos muestras de la información de audio, cualquier incertidumbre en la alineación de vídeo/audio no producirá la pérdida de información de audio. Sólo afectará a la temporización relativa del sonido y de la imagen como es presentada a una persona, lo que es improbable que sea perceptible.
Sin embargo, hay un número creciente de aplicaciones que usan técnicas de codificación por reducción de frecuencia de bits para incluir números mayores de canales de audio dentro de un flujo de datos de vídeo/audio. Estas técnicas de codificación son aplicadas frecuentemente a bloques de muestras de 128 o más muestras de audio para generar bloques de información codificada. Estos bloques de muestras representan típicamente información de audio que abarca un intervalo de 5 a 24 ms. Cada bloque de información codificada generado por estos procesos de codificación representa la unidad mínima de información a partir de la cual puede ser recuperada una copia razonablemente exacta de un segmento de la información de audio original. La codificación por banda dividida es un ejemplo de una técnica de reducción de frecuencia de bits que reduce las frecuencias de bits aplicando codificación de base psicoacústica a representaciones de subbandas de frecuencias de una audioseñal. Las representaciones de subbandas de frecuencias pueden ser generadas por aplicación de una pluralidad de filtros de paso de banda o una o más transformadas. Por facilidad de discusión, estas técnicas de codificación por banda dividida son descritas aquí en términos de aplicar un grupo de filtros para generar señales de subbandas.
La incertidumbre en alineación antes mencionada es significativa en estas aplicaciones de codificación por bloques porque un punto de edición que cae dentro de los límites de un bloque codificado resultará parcialmente de ese bloque siendo cortado de la señal restante. La pérdida parcial de un bloque codificado será manifestada por una pérdida en la señal recuperada para todo el bloque, que es para una duración de 5 ms o más típicamente. Es probable que tal pérdida sea perceptible para el sistema auditivo humano.
Este problema puede ser evitado usando un proceso posterior al procesamiento en el que una representación de modulación por impulsos codificados de las audioseñales originales es recuperada aplicando un proceso de descodificación al audio codificado, editando la representación recuperada de modulación por impulsos codificados como sea necesario y generando una representación codificada nueva aplicando una codificación procesada a la información editada de audio en modulación por impulsos codificados. Esta solución no es atractiva debido a los costes adicionales y a la degradación en calidad de audio producidos por los procesos de descodificación/recodificación.
Este problema también puede ser evitado proporcionando separaciones o bandas de seguridad en la información de audio codificada en ubicaciones de puntos de edición posibles. Las bandas de seguridad tienen duración suficiente para abarcar las variaciones en alineación antes mencionadas de modo que un punto de edición caerá en alguna parte dentro de una banda de seguridad. Un punto de edición que cae dentro de una banda de seguridad no causa ninguna pérdida de información de audio. Desgraciadamente, el espacio o anchura de banda adicional requerida para transportar las bandas de seguridad es desperdiciada esencialmente porque no es usada para transportar ninguna información útil.
El documento EP-A-0 690 630 describe un método y aparato para transmisión de señales digitales que usa un formato teniendo una sección de datos auxiliares, dentro de la cual hay una pluralidad de canales para audioseñales, y una sección de información útil dentro de la cual hay una pluralidad de canales para videoseñales.
Descripción de la invención
Un objeto de la presente invención es utilizar la capacidad de transporte de información de las bandas de seguridad usadas para separar los cuadros de información de audio codificada.
Este objeto es conseguido por un método y aparato de codificación según las reivindicaciones 1 y 19 y por un método y aparato de descodificación según las reivindicaciones 9 y 23, respectivamente. Realizaciones preferidas de la invención son los temas de las reivindicaciones subordinadas.
Las diversas características de la presente invención y sus realizaciones preferidas pueden ser comprendidas mejor refiriéndose a la discusión siguiente y a los dibujos adjuntos en los que los números de referencia iguales se refieren a elementos iguales en las diversas figuras. Los contenidos de la discusión y los dibujos siguientes son expuestos como ejemplos solamente y no deberían entenderse como representando limitaciones en el alcance de la presente invención.
El uso de la información auxiliar que es transportada en las separaciones o bandas de seguridad debe tolerar errores que pueden ser causados por ediciones. Como se explica después, estos errores pueden ser tolerados por alguna forma de recuperación en caso de errores o pueden ser ignorados simplemente. Por ejemplo, la información auxiliar que transporta la voz puede tolerar usualmente un error ocasional sin comprometer la inteligibilidad de la voz.
Descripción breve de los dibujos
La Figura 1 es un esquema de bloques de una realización para grabar y para encaminar flujos múltiples de datos de vídeo/audio.
Las Figuras 2A a 2C son representaciones gráficas de audioseñales hipotéticas que tienen diversas alineaciones con referencias de cuadros de vídeo.
La Figura 3 es un esquema de bloques de una realización de un dispositivo de procesamiento de señales con un codificador de información auxiliar según la presente invención.
La Figura 4 es un esquema de bloques de una realización de un codificador de información de audio.
Las Figuras 5A a 5C son representaciones gráficas de audioseñales hipotéticas con bandas de seguridad y teniendo diversas alineaciones con referencias de cuadros de vídeo.
La Figura 6 es un esquema de bloques de una realización de un codificador de información auxiliar.
La Figura 7 es un diagrama esquemático de un modo en el que la información auxiliar puede ser codificada y ensamblada dentro de separaciones que separan cuadros de información de audio codificada.
La Figura 8 es un esquema de bloques de una realización de un dispositivo de procesamiento de señales con un descodificador de información auxiliar según la presente invención.
La Figura 9 es un esquema de bloques de una realización de un descodificador de información de audio.
\newpage
Las Figuras 10A y 10B son representaciones gráficas de audioseñales hipotéticas codificadas y descodificadas por procesadores de señales de codificación y descodificación.
La Figura 11 es un esquema de bloques de una realización de un descodificador de información auxiliar.
La Figura 12 es una representación esquemática gráfica de bloques solapados de información de audio ponderados por funciones de ventana.
La Figura 13 es un esquema de bloques de un codificador para evitar modelos prohibidos de datos.
La Figura 14 es un esquema de bloques de un componente para obtener una clava que es adecuada para uso en el codificador de la Figura 13.
La Figura 15 es un esquema de bloques de un descodificador para recuperar modelos prohibidos de datos.
Modos de llevar a cabo la invención Visión general de un sistema
La Figura 1 ilustra una realización de un sistema para grabar y para encaminar flujos múltiples de datos de vídeo/audio y representa un ejemplo de un sistema que puede emplear ventajosamente aspectos de la presente invención. En favor de la claridad, esta figura así como todas las demás figuras no ilustran trayectos de señales para transportar señales de reloj maestro usadas para sincronizar el equipo. En esta discusión se supone que señales tales como las generadas a lo largo de los trayectos 21, 22, 23 y 24 se ajustan a normas tales como la SMPTE 259M y la SMPTE 272M; sin embargo, ninguna norma o formato de señal particular es esencial para poner en práctica la presente invención. Por ejemplo, en una realización alternativa del sistema, señales distintas, transportando cada una información de vídeo e información de audio respectivas, son generadas a lo largo de los trayectos 21 a 24, y el dispositivo 31 de encaminamiento incluye circuitos para encaminar separadamente la información de vídeo y la información de audio. En tal realización, un dispositivo de extracción con interfaz digital en serie está interpuesto entre el dispositivo 12 de inclusión con interfaz digital en serie y el dispositivo 31 de encaminamiento. Esta realización alternativa es mencionada para mostrar que ningún formato de señal o contenido de señal particular es esencial para poner en práctica la presente invención.
El magnetoscopio 16 recibe la información de vídeo por el trayecto1 y la información de audio por el trayecto 2 y graba en cinta esta información de vídeo/audio. Subsiguientemente, el magnetoscopio 16 lee la información de vídeo/audio grabada en cinta y genera a lo largo del trayecto 21 una señal de reproducción que transporta la información de vídeo con información de audio incluida. De una manera similar, el magnetoscopio 17 graba la información de vídeo y la información de audio recibidas por los trayectos 3 y 4, respectivamente, y genera subsiguientemente a lo largo del trayecto 22 una señal de reproducción que transporta la información de vídeo con información de audio incluida.
Los magnetoscopios 16, 17 y 18 incluyen circuitos tales como un dispositivo de inclusión con interfaz digital en serie para incluir información de audio dentro de la información de vídeo durante la reproducción.
El dispositivo 11 de inclusión con interfaz digital en serie recibe información de vídeo e información de audio por los trayectos 5 y 6, respectivamente, y genera a lo largo del trayecto 14 una señal que transporta información de vídeo digital con información de audio digital incluida. El magnetoscopio 18, que incluye circuito tal como dispositivo de extracción con interfaz digital en serie, extrae la información de audio de la señal de datos de vídeo/audio y graba en cinta la información de vídeo y la información de audio separadas. Subsiguientemente, el magnetoscopio 18 recupera la información de vídeo y la información de audio de la cinta y usa circuito tal como un dispositivo de inclusión con interfaz digital en serie para generar a lo largo del trayecto 23 una señal de reproducción que transporta la información de vídeo y la información de audio incluida. Sin embargo, si una grabadora de datos digitales sustituye al magnetoscopio 18, no es necesario circuito de inclusión ni circuito de extracción en la grabadora porque el propio flujo de datos de vídeo/audio puede ser grabado y reproducido.
El dispositivo 12 de inclusión con interfaz digital en serie recibe información de vídeo e información de audio por los trayectos 7 y 8, respectivamente, y genera a lo largo del trayecto 24 una señal que transporta información de vídeo digital con información de audio digital incluida.
El dispositivo 31 de encaminamiento con interfaz digital en serie recibe las señales de vídeo/audio por los trayectos 21, 22, 23 y 24 y encamina o conmuta selectivamente estas señales, a lo largo del trayecto 34, al dispositivo 41 de reproducción/grabación. El número de señales recibidas por el dispositivo 31 de encaminamiento con interfaz digital en serie no es significativo. El dispositivo 41 de reproducción/grabación representa un dispositivo arbitrario que usa la señal pasada a lo largo del trayecto 34. Por ejemplo, puede ser una dispositivo de grabación tal como un magnetoscopio o un dispositivo de reproducción tal como un televisor. Además, el dispositivo 41 de reproducción/grabación puede estar situado a distancia con respecto al dispositivo 31 de encaminamiento con interfaz digital en serie, en cuyo caso el trayecto 34 puede representar un canal de comunicación o difusión.
Desviaciones en la alineación de vídeo/audio
Los retardos de circuitos en los magnetoscopios 16, 17 y 18 y en los dispositivos 11 y 12 de inclusión con interfaz digital en serie pueden alterar la alineación relativa de la información de vídeo y la información de audio. Como resultado, la alineación de la información de vídeo/audio en la señal 21 de reproducción, por ejemplo, puede ser desviada con respecto a la alineación entre la información de vídeo y la información de audio recibidas por los trayectos 1 y 2, respectivamente. La magnitud del cambio en alineación varia entre equipos de fabricantes diferentes, puede variar entre partes diferentes de equipo del mismo fabricante e incluso puede variar dentro de una parte dada de equipo en función del estado de inicialización de las memorias intermedias, por ejemplo.
Refiriéndose a la Figura 2A, la señal 111 representa información de audio que tiene una alineación particular con las referencias 101 y 102 de cuadros de vídeo. Cada una de estas referencias de cuadros de vídeo indica un punto de referencia particular en un cuadro de vídeo respectivo. Por ejemplo, un punto de referencia común para información de vídeo NTSC (National Television System Committee) coincide con la información de vídeo para la línea 10 en cada cuadro. Un punto de referencia común para información de vídeo PAL (Phase Alternatie Line) coincide con la línea 1 en cada cuadro. Ninguna alineación particular es crítica para la práctica de la presente invención.
En la Figura 2B, la señal 121 representa la misma información de audio que la transportada por la señal 111 pero está retrasada con respecto a la señal 111. Como resultado, la alineación entre la señal 121 y las referencias de cuadros de vídeo está desviada con respecto a la alineación para la señal 111. En la Figura 2C, la señal 131 representa la misma información de audio que la transportada por la señal 111 pero está adelantada con respecto a la señal 111; por tanto, la alineación entre la señal 131 y las referencias de cuadros de vídeo está desviada de una manera opuesta a la desviación en la alineación de la señal 121.
Refiriéndose a la Figura 1, supóngase que la información de audio y la alineación representadas en la Figura 2A son transportadas por los trayectos 1/2, 3/4, 5/6 y 7/8. Desviaciones diferentes en alineación, tales como las ilustradas en las Figuras 2A a 2C, existirán probablemente en las señales generadas a lo largo de los trayectos 21 a 24. Supóngase además que las alineaciones ilustradas en las Figuras 2A a 2C existen en las señales generadas a lo largo de los trayectos 21 a 23, respectivamente. Cuando el dispositivo 31 de encaminamiento con interfaz digital en serie conmuta entre las señales recibidas por estos tres trayectos, una discontinuidad pequeña ocurrirá en la información de audio incluida en la señal pasada a lo largo del trayecto 34. Si la información de audio es representada en una forma tal como modulación por impulsos codificados, esta discontinuidad puede no ser percibida por un oyente humano porque la discontinuidad es sólo para unas pocas muestras. Sería más difícil percibir una discontinuidad entre dos señales que tienen contenido de audio diferente.
Efectos de la codificación
Sin embargo, como se explicó antes, hay un interés creciente en incluir números mayores de canales de audio dentro de un flujo de datos de vídeo/audio. Cuando la capacidad de la información en estos números mayores de canales de audio supera la capacidad del espacio disponible para información de audio, es empleada alguna forma de compresión de anchura de banda o frecuencia de bits. Un ejemplo de tal compresión es la codificación de audio basada en principios psicoacústicos.
Estas técnicas de codificación son aplicadas frecuentemente a bloques de muestras de audio para generar bloques de información codificada. Estos bloques de muestras representan típicamente información de audio que abarca un intervalo de 5 a 24 ms. Cada bloque de información codificada generado por estos procesos de codificación representa la unidad mínima de información a partir de la cual puede ser recuperada una copia razonablemente exacta de un segmento de la información de audio original.
Una secuencia de bloques 112 de información codificada es representada como un tren de impulsos en la Figura 2A. La información transportada por estos bloques es una representación codificada de uno o más canales de información de audio tal como la ilustrada por la señal 111. La forma y el tamaño de los impulsos no son significativos. El tren de impulsos sólo pretende sugerir una secuencia de bloques que transportan información codificada correspondiente a bloques de muestras de audio para uno o más canales que pueden lindar entre sí o, preferiblemente, solaparse entre sí. En el ejemplo mostrado en la Figura 2A, la información de audio que abarca el intervalo entre referencias de cuadros de vídeo adyacentes es representada por seis bloques de información codificada. Diversas consideraciones para mejorar la calidad de la codificación de audio en aplicaciones de vídeo/audio son descritas en la Patente de EE.UU. nº 5.903.872.
Cuando técnicas de codificación por bloques son usadas en el sistema de la Figura 1, las señales que el dispositivo 31 de encaminamiento con interfaz digital en serie recibe por los trayectos 21 a 24 contienen información de audio codificada en bloques. Como se trató antes, desviaciones variables en alineación pueden ocurrir entre los bloques de información codificada y las referencias de cuadros de vídeo. Esto es ilustrado por las alineaciones diferentes entre la referencia 101 de cuadro de vídeo, por ejemplo, y los bloques 112, 122 y 132 mostrados en las Figuras 2A, 2B y 2C, respectivamente. Como se trató antes, supóngase que las alineaciones ilustradas en las Figuras 2A a 2C existen en las señales generadas a lo largo de los trayectos 21 a 23, respectivamente. Cuando el dispositivo 31 de encaminamiento con interfaz digital en serie conmuta en la referencia 101 de cuadro de vídeo desde la señal recibida por el trayecto 22, ilustrada en la Figura 2B, a la señal recibida por el trayecto 23, ilustrada en la Figura 2C, una cantidad significativa de información de audio en el punto de conmutación no puede ser recuperada de la señal encaminada a lo largo del trayecto 23. La información de audio transportada en el bloque 123 antes del punto de conmutación no puede ser recuperada porque, por una parte, todo el bloque es necesario para recuperar la información de audio pero, por otra parte, falta la porción de ese bloque después del punto de conmutación. De modo similar, la información de audio transportada en el bloque 133 después del punto de conmutación no puede ser recuperada porque falta la porción del bloque 133 antes del punto de conmutación.
Este problema no es único para el tipo de sistema ilustrado en la Figura 1. Por ejemplo, el problema también ocurre con ediciones o montaje de audio en cinta para un solo magnetoscopio.
Este problema puede ser superado formando bandas de seguridad o separaciones en el flujo de audio codificado de modo que la variación considerable en la alineación de vídeo/audio puede ser tolerada sin pérdida de información de audio. Un modo en el que pueden ser formadas bandas de seguridad es dividir la información de audio en segmentos y después formar representaciones comprimidas en el tiempo de cada segmento. Esto puede ser efectuado usando un procesador de señales tal como el mostrado en la Figura 3.
Procesador de señales de codificación
La Figura 3 ilustra un procesador de señales que puede ser incorporado de varios modos en un sistema tal como el ilustrado en la Figura 1. En la realización mostrada, una señal que transporta cuadros de información de vídeo con información de audio incluida es recibida por el trayecto 63 de señal de entrada. El dispositivo 64 de desformateo recibe la información de vídeo/audio por el trayecto 63, extrae los cuadros de la información de audio incluida de la señal de entrada y la pasa por el trayecto 65. Una señal de referencia que transporta la alineación de los cuadros es pasada a lo largo del trayecto 69. La propia información de vídeo también puede ser pasada a lo largo del trayecto 69. El codificador 66 de información de audio recibe la información de audio por el trayecto 65 y aplica un proceso de codificación por bloques a la información de audio para generar bloques de información de audio codificada a lo largo del trayecto 67. El codificador 68 de información auxiliar recibe los bloques de información de audio codificada por el trayecto 67, recibe la señal de referencia por el trayecto 69, recibe una señal por el trayecto 61 que transporta información auxiliar y genera a lo largo del trayecto 70 una señal de salida que comprende cuadros de información de audio codificada separados por separaciones o bandas de seguridad que están alineadas con la señal de referencia y que transportan segmentos de información auxiliar. A continuación se trata la manera en la que segmentos de información auxiliar pueden ser codificados dentro de las bandas de seguridad.
Preferiblemente, cada cuadro comprende una secuencia de bloques de información de audio codificada, con los separaciones o bandas de seguridad formadas entre un bloque inicial en una secuencia y un bloque final en una secuencia precedente. También es posible formar cuadros con un solo bloque de información de audio codificada. Sin embargo, por facilidad de explicación, la discusión restante se refiere generalmente a cuadros que comprenden una secuencia de bloques.
Codificación de información de audio
Como se mencionó antes, las Figuras no ilustran los trayectos de señales para transportar las señales de reloj maestro usadas para sincronizar partes múltiples de equipo. En una realización preferida, el codificador 66 de información de audio forma bloques de muestras de audio que están alineados con la señal de reloj maestro. Esta alineación es ilustrada en la Figura 2A donde los límites entre los bloques de muestras adyacentes coinciden con las referencias 101 y 102 de cuadros de vídeo; sin embargo, pueden ser usadas otras alineaciones.
Refiriéndose a la Figura 5A, una secuencia de bloques en el cuadro 112-2 transporta información codificada que representa el segmento 111-2 de señal que es una representación hipotética comprimida en el tiempo de la porción de señal 111 entre las referencias 101 y 102 de cuadros de vídeo. De modo similar, una secuencia de bloques en el cuadro 112-1 transporta información de audio codificada que representa el segmento 111-1 de señal y una secuencia de bloques en el cuadro 112-3 transporta información de audio codificada que representa el segmento 111-3 de señal. El codificador 66 de información de audio y el codificador 68 de información auxiliar generan cuadros de bloques que transportan una representación codificada de la información de audio y que están separados por separaciones o bandas de seguridad. Por ejemplo, una banda de seguridad o separación está formada entre el bloque final de una secuencia en el cuadro 112-1 y el bloque inicial de una secuencia en el cuadro 112-2.
Las desviaciones en alineación ilustradas en las Figuras 2A a 2C también son ilustradas en las Figuras 5A a 5C. En estas figuras, la información de audio codificada en los cuadros 122-1, 122-2, 122-3, 132-1, 132-2 y 132-3 transportan una representación de los segmentos de señal 121-1, 121-2, 121-3, 131-1, 131-2 y 131-3, respectivamente. Como puede verse en las Figuras 5B y 5C, no ocurre ninguna pérdida de información de audio codificada como resultado de las desviaciones en alineación porque los puntos de conmutación potenciales en las referencias 101 y 102 de cuadros de vídeo ocurren dentro de una banda de seguridad.
El procesador de señales ilustrado en la Figura 3 puede ser incorporado dentro de un magnetoscopio o un dispositivo de inclusión con interfaz digital en serie. En otra realización que suprime el dispositivo 64 de desformateo, por el trayecto 65 es recibida información de audio que es diferente que, pero está alineada con, la información de vídeo que es recibida por el trayecto 69. Tal realización puede ser incorporada dentro de un magnetoscopio o dentro de los circuitos de entrada de un dispositivo de inclusión con interfaz digital en serie, por ejemplo.
La Figura 4 ilustra una realización del codificador 66 de información de audio que es adecuada para la incorporación a la realización ilustrada en la Figura 3. Según esta realización, el codificador 66 de información de audio comprende una pluralidad de grupos 71, 72 y 73 de filtros. El grupo 71 de filtros genera una pluralidad de señales de subbandas de frecuencias a lo largo de los trayectos 75-1 a 75-3 en respuesta a la señal recibida por el trayecto 65-1. El grupo 72 de filtros genera una pluralidad de señales de subbandas de frecuencias a lo largo de los trayectos 76-1 a 76-3 en respuesta a la señal recibida por el trayecto 65-2. El grupo 73 de filtros genera una pluralidad de señales de subbandas de frecuencias a lo largo de los trayectos 77-1 a 77-3 en respuesta a la señal recibida por el trayecto 65-3. Los grupos 71, 72 y 73 de filtros pueden ser realizados de varios modos incluyendo un grupo de filtros de paso de banda, un conjunto en cascada de filtros de división de banda y una o más transformadas del dominio de tiempo al dominio de frecuencia. Sólo tres grupos de filtros son mostrados y sólo tres señales de subbandas son mostradas para cada grupo de filtros, sin embargo, una realización puede incluir esencialmente cualquier número de grupos de filtros, cada uno de los cuales genera esencialmente cualquier número de señales de subbandas. Preferiblemente, en realizaciones para audio de alta fidelidad que tiene una anchura de banda de 15 kHz o mayor, cada grupo de filtros genera del orden de veinte o más señales de subbandas, representando cada una subbandas de frecuencias que tienen anchuras de banda correspondientes a, o menores que, las anchuras de banda críticas del sistema auditivo humano. El codificador 79 aplica un proceso de codificación por bloques a las señales de subbandas y genera a lo largo del trayecto 67 una secuencia de bloques que representa en una forma codificada la información de audio recibida por los trayectos 65-1, 65-2 y 65-3.
La codificación por banda dividida no es esencial. Pueden ser usadas otras formas de codificación tales como modulación por impulsos codificados con compresión-expansión de bloques o bloques de muestras codificadas por modulación delta.
En una realización práctica, un codificador de información de audio recibe ocho canales de información de audio en forma de modulación lineal por impulsos codificados o, alternativamente, cuatro flujos de datos AES3, y usa ocho grupos de filtros y un codificador que aplica un proceso de codificación por bloques para generar cuadros de información codificada con bandas de seguridad que pueden ser transportados en un espacio o anchura de banda no mayor que la requerida para transportar dos canales de información de audio en forma de modulación por impulsos codificados o, alternativamente, un flujo de datos AES3.
Codificación de información auxiliar
La Figura 6 ilustra una realización del codificador 68 de información auxiliar. En esta realización, los bloques de información de audio codificada son recibidos por el trayecto 67. Generalmente, estos bloques transportan información digital como hileras de símbolos de valores binarios o "bits" que pueden adoptar esencialmente cualquier modelo o valor. Sin embargo, en muchos sistemas ciertos modelos de bits en información digital son "prohibidos" porque están reservados para uso esencial o porque su caso produce uno o más problemas en el equipo usado para procesar la información. Un ejemplo es hallado en sistemas que usan un modelo de "sincronización" para marcar el límite de un cuadro de información en un flujo de datos. Como el modelo de sincronización es usado en tales sistemas para alineas o sincronizar el equipo que procesa la información, un caso fortuito de información de audio codificada que tenga el modelo de sincronización interrumpirá el procesamiento de la información si el caso fortuito es identificado incorrectamente como un modelo de sincronización válido.
El dispositivo 162 para modelos prohibidos es usado para impedir que un modelo de sincronización u otro modelo de datos prohibido ocurra en la información de audio codificada modificando la información codificada para eliminar casos de modelos prohibidos de datos e incluyendo una clave u otra información de control que puede ser usada para invertir las modificaciones. Una implementación adecuada del dispositivo 162 para modelos prohibidos es tratada después. Si el contenido de la información de audio codificada recibida por el trayecto 67 está obligado a evitar todos los modelos de datos reservados, entonces el dispositivo 162 para modelos prohibidos no es necesario.
El dispositivo 163 de sincronización de audio suministra un modelo de sincronización que puede ser usado para sincronizar o alinear el equipo con la información de audio codificada. Este componente no es necesario en sistemas que no usan un modelo de sincronización de audio.
El dispositivo 172 de códigos de detección de errores recibe bloques de información auxiliar por el trayecto 61 y, para cada bloque, construye segmentos auxiliares que comprenden bloques respectivos de información auxiliar y códigos correspondientes de detección de errores que pueden ser usados para detectar cambios o errores indeseados en los contenidos de un bloque respectivo. Los códigos de detección de errores pueden ajustarse a una gran variedad de esquemas tales como, por ejemplo, códigos de paridad, códigos de redundancia cíclica o sumas de verificación de Fletcher. También pueden ser usados códigos de detección-corrección de errores tales como códigos Gray o códigos Reed-Solomon que permiten la corrección así como la detección de cambios; sin embargo, la presente invención proporciona un mecanismo diferente para recuperarse de cambios o errores en un bloque de información.
El dispositivo 173 para modelos prohibidos puede ser usado para impedir que un modelo de sincronización u otro modelo prohibido de datos ocurra en los segmentos auxiliares modificando los segmentos para eliminar casos de modelos prohibidos de datos e incluyendo una clave u otra información de control que puede ser usada para invertir las modificaciones. Una implementación es tratada más adelante. Si el contenido de la información auxiliar recibida por el trayecto 61 es obligado a evitar todos los modelos prohibidos de datos, entonces el dispositivo 173 para modelos prohibidos puede no ser necesario si los códigos de detección de errores pueden ser construidos de una manera tal que son evitados todos los modelos prohibidos de datos. Por ejemplo, esto puede ser efectuado adjuntando o mezclando los códigos con hileras de bits que están diseñadas para asegurar que no puede ocurrir ningún modelo de datos prohibido.
El dispositivo 174 de sincronización auxiliar suministra un modelo de sincronización que puede ser usado para sincronizar o alinear el equipo con los segmentos auxiliares. Este componente no es necesario en sistemas que no usan un modelo de sincronización auxiliar.
El dispositivo 178 de inserción de separaciones recibe por el trayecto 164 bloques de información de audio codificada como es modificada por el dispositivo 162 para modelos prohibidos y/o el dispositivo 163 de sincronización de audio si están presentes, recibe por el trayecto 69 una señal de referencia que indica la alineación de cuadros, y recibe por el trayecto 175 los segmentos auxiliares como son modificados por el dispositivo 173 para modelos prohibidos y/o el dispositivo 174 de sincronización auxiliar si están presentes. El dispositivo 178 de inserción de separaciones genera a lo largo del trayecto 70 una señal de salida que comprende cuadros de información de audio codificada que están separados por separaciones o bandas de seguridad. Las separaciones están alineadas con la señal de referencia y transportan los segmentos auxiliares.
Formato del flujo de información
La Figura 7 ilustra un modo en el que los segmentos auxiliares 220 pueden ser codificados y ensamblados dentro de las separaciones 205 que separan los cuadros 210 de información de audio codificada en el flujo 200 de información. Cada cuadro 210 de información de audio codificada comprende la palabra 211 de sincronización de audio y uno o más bloques 212 de información de audio codificada. Los ejemplos tratados después e ilustrados en las figuras suponen arbitrariamente que cada cuadro incluye seis bloques de información de audio codificada. La palabra 211 de sincronización de audio en cada cuadro tiene un modelo reservado que es un modelo de datos prohibido.
Cada segmento auxiliar 220 comprende la palabra 221 de sincronización auxiliar, el bloque 222 de información auxiliar y la palabra 223 de detección de errores (PDE). La palabra 221 de sincronización auxiliar en cada segmento auxiliar tiene un modelo reservado que es un modelo de datos prohibido. Una realización de la presente invención puede permitir que la longitud de cada bloque 222 de información auxiliar varíe proporcionando una indicación de la longitud de cada bloque. Esto puede ser efectuado de varios modo tal como proporcionando una palabra al principio de cada bloque que especifique el número de bits o, alternativamente, el número de bytes de 8 bits en el bloque. Una zona 224 de relleno puede ser provista como sea necesario para extender la longitud del segmento auxiliar 220 de modo que llene exactamente la separación 205. El contenido de la zona 224 de relleno debería evitar todos los modelos prohibidos de datos.
Los contenidos del flujo 200 de información pueden ser codificados y ensamblados en diversos órdenes y combinaciones. Por ejemplo, las palabras de sincronización de audio o las palabras de sincronización auxiliar pueden ser suprimidas en sistemas que no las precisan. Si las palabras de sincronización de audio son provistas en una posición conocida dentro de cada cuadro y la longitud de cada cuadro es conocida, las palabras de sincronización auxiliar pueden ser suprimidas porque el comienzo de cada segmento auxiliar puede ser determinado a partir de la posición de sincronización de audio y la longitud de cuadro conocidas. De modo similar, si las palabras de sincronización auxiliar son provistas en una posición conocida dentro de cada segmento auxiliar y la longitud de cada segmento auxiliar es conocida, las palabras de sincronización de audio pueden ser suprimidas porque el comienzo de cada cuadro de audio puede ser determinado a partir de la posición de sincronización auxiliar y la longitud de segmento conocidas.
Procesador de señales de descodificación
La Figura 8 ilustra un procesador de señales que puede ser incorporado de varios modos dentro de un sistema tal como el ilustrado en la Figura 1. En la realización mostrada, una pluralidad de señales que transportan información de vídeo con información de audio codificada incluida y segmentos de información auxiliar son recibidas por los trayectos 81-1, 81-2 y 81-3 de señales de entrada. En la figura son mostrados tres trayectos de señales de entrada, sin embargo, las realizaciones del procesador de señales pueden tener trayectos de señales para esencialmente cualquier número de señales de entrada. El distribuidor 82 de señales representa un margen amplio de procesos de distribución de señales que incluyen conmutación, unión, edición, empalme y almacenamiento/recuperación. Por sencillez, la ilustración y la discusión aquí suponen que el distribuidor 82 de señales recibe una pluralidad de señales y procesa y/o distribuye esas señales de alguna manera para generar a lo largo del trayecto 83 una señal que transporta información de vídeo con información de audio codificada incluida dispuesta en una pluralidad de cuadros con separaciones o bandas de seguridad entre los cuadros que están alineados con la información de vídeo y que transportan segmentos de información auxiliar.
El descodificador 84 de información auxiliar recibe la información de vídeo/audio/auxiliar por el trayecto 83, extrae los bloques incluidos que transportan información de audio codificada y pasa los bloques extraídos a lo largo del trayecto 85, y extrae segmentos de información auxiliar y pasa la información auxiliar extraída a lo largo del trayecto 88. Una señal de referencia que transporta la alineación de la información de vídeo puede ser pasada a lo largo del trayecto 89. La manera en la que la información auxiliar puede ser extraída y descodificada es tratada con más detalle después.
Descodificación de información de audio
El descodificador 86 de información de audio recibe bloques de información de audio codificada por el trayecto 85 y aplica un proceso de descodificación por bloques a los bloques para generar a lo largo del trayecto 87 un segmento respectivo de información de audio descodificada. Cada segmento respectivo es alineado en el tiempo con la información de vídeo según una señal de referencia tal como una señal de reloj maestro o la señal de referencia recibida por el trayecto 89 que es extraída o derivada de la videoseñal/audioseñal recibida por el trayecto 83.
La Figura 10A reproduce el contenido de la Figura 5A en la que una secuencia de bloques en el cuadro 112-2 transporta información de audio codificada que representa el segmento 111-2 de señal que es una representación hipotética comprimida en el tiempo de la porción de la señal 111 entre las referencias 101 y 102 de cuadros de vídeo. El descodificador 86 de información de audio aplica un proceso de descodificación por bloques a la secuencia de bloques en el cuadro 112-2, por ejemplo, para generar el segmento 111-2 de señal; sin embargo, como se muestra en la Figura 10B, la porción de señal 111 correspondiente al segmento 111-2 de señal es generada de modo que está alineada con la referencia 101 de cuadro de vídeo. Esta alineación puede ser conseguida retardando tanto la referencia de vídeo como la información de audio descodificada en magnitudes apropiadas. En el ejemplo mostrado, las referencias de vídeo en la Figura 10B, en comparación con las referencias de vídeo en la Figura 10A, están retardadas en un intervalo exactamente igual que la duración de un cuadro de vídeo. Ningún intervalo de retardo particular es crítico, sin embargo, en realizaciones preferidas, las referencias de vídeo son retardadas en un número entero de cuadros, un cuadro típicamente, de modo que pueda ser conservada la sincronización con un reloj maestro.
La realización de procesador de señales ilustradas en la Figura 8 puede ser incorporada en un dispositivo de encaminamiento con interfaz digital en serie, por ejemplo, para procesar videoseñales conteniendo información de audio codificada incluida. Una realización que suprime el distribuidor 82 de señales, que puede recibir y descodificar la información de audio codificada incluida, puede ser incorporada en varios equipos incluyendo magnetoscopios, dispositivos de extracción con interfaz digital en serie y el dispositivo 41 de reproducción/grabación. Así, el distribuidor 82 de señales puede estar situado a distancia con respecto al descodificador 84 de información auxiliar, en cuyo caso el trayecto 83 puede representar un canal de comunicación o difusión.
Una realización del descodificador 86 de información de audio es mostrada en la Figura 9. En la realización mostrada, el descodificador 91 recibe bloques de información de audio codificada por el trayecto 85 y recupera las señales de subbandas de frecuencias para una pluralidad de canales. Las señales de subbandas para un primer canal son pasadas a lo largo de los trayectos 92-1, 92-2 y 92-3, las señales de subbandas para un segundo canal son pasadas a lo largo de los trayectos 93-1, 93-2 y 93-3, y las señales de subbandas para un tercer canal son pasadas a lo largo de los trayectos 94-1, 94-2 y 94-3. Sólo son mostrados tres canales, cada uno con tres señales de subbandas; sin embargo, como se explicó antes, una realización puede incluir un número mayor o menor de canales y estos canales pueden ser representados por un número considerablemente mayor de señales de subbandas. En respuesta a las señales de subbandas recibidas por los trayectos 92-1, 92-2 y 92-3, el grupo 96-1 de filtros genera información de audio para el primer canal a lo largo del trayecto 97-1. En respuesta a las señales de subbandas recibidas por los trayectos 93-1, 93-2 y 93-3, el grupo 96-2 de filtros genera información de audio para el segundo canal a lo largo del trayecto 97-2. En respuesta a las señales de subbandas recibidas por los trayectos 94-1, 94-2 y 94-3, el grupo 96-3 de filtros genera información de audio para el tercer canal a lo largo del trayecto 97-3. La memoria intermedia 98 usa una señal de referencia de cuadros de vídeo recibida por el trayecto 89 para alinear la información de audio recibida por los trayectos 97-1, 97-2 y 97-3, que son pasadas a lo largo de los trayectos 87-1, 87-2 y 87-3, respectivamente.
Descodificación de información auxiliar
La Figura 11 ilustra una realización del descodificador 84 de información auxiliar. En esta realización, el extractor 182 de separaciones recibe una señal de entrada por el trayecto 83 que transporta cuadros de información de audio codificada separados por separaciones. El extractor 182 de separaciones procesa la señal de entrada para extraer la información de audio codificada, que es pasada a lo largo del trayecto 183, y extraer segmentos auxiliares de las separaciones. Cada segmento auxiliar comprende un bloque de información auxiliar y un código asociado de detección de errores que son pasados a lo largo del trayecto 191. El extractor 182 de separaciones también puede suministrar a lo largo del trayecto 89 una señal de referencia que transporta la alineación de los cuadros o las separaciones.
El dispositivo 184 para modelos prohibidos obtiene una clave u otra información de control a partir de la información de audio codificada recibida por el trayecto 183 y usa esta clave u otra información de control para invertir cualesquier modificaciones de la información de audio codificada que fueron hechas para eliminar los casos de modelos prohibidos de datos. Una implementación de este procesamiento es tratada después. Si el contenido de la información de audio codificada está obligado a evitar todos los modelos prohibidos de datos, entonces el dispositivo 184 para modelos prohibidos no es necesario. Los bloques de información de audio codificada, como son modificados por el dispositivo 184 para modelos prohibidos si está presente, son pasados a lo largo del trayecto 85.
Procesamiento similar es proporcionado por el dispositivo 192 para modelos prohibidos que obtiene una clave u otra información de control a partir de los segmentos auxiliares recibidos por el trayecto 191 y usa la clave u otra información para invertir cualesquier modificaciones del segmento auxiliar que fueron hechas para eliminar casos de modelos prohibidos de datos. Una implementación del dispositivo 192 para modelos prohibidos es tratada después. Si los contenidos de los segmentos auxiliares están obligados a evitar todos los modelos prohibidos de datos, entonces el dispositivo 192 para modelos prohibidos no es necesario. Los segmentos auxiliares, como son modificados por el dispositivo 192 para modelos prohibidos si está presente, son pasados al dispositivo 193 de códigos de detección de errores.
Cada segmento auxiliar comprende un bloque de información auxiliar y un código asociado de detección de errores. El dispositivo 193 de códigos de detección de errores usa el código de detección de errores para validar el bloque asociado de información auxiliar. Por ejemplo, si una edición de información de audio causa que una conmutación entre dos flujos de información de audio ocurra en una separación o banda de seguridad particular, entonces es casi seguro que el bloque de información auxiliar en esa separación particular tiene una discontinuidad entre porciones del bloque que representan información auxiliar procedente de los dos flujos. La discontinuidad en el bloque de información auxiliar invalida más probablemente los contenidos de ese bloque. Usando el código de detección de errores obtenido de un segmento auxiliar, el dispositivo 193 de códigos de detección de errores puede determinar si los contenidos del bloque de información auxiliar en ese segmento son iguales que cuando fue generado el código de detección de errores. Si los contenidos del bloque son iguales, el bloque es considerado inválido y alguna forma de recuperación en caso de errores es llevada a cabo por el dispositivo 194 de recuperación. Los resultados del proceso de recuperación en caso de errores son pasados a lo largo del trayecto 88. Si los contenidos del bloque son iguales, ese bloque de información auxiliar puede ser pasado a lo largo del trayecto 88 sin llevar a cabo un proceso de recuperación en caso de errores.
El dispositivo 194 de recuperación puede llevar a cabo esencialmente cualquier forma de proceso de recuperación en caso de errores para un bloque invalidado. Por ejemplo, el dispositivo 194 de recuperación puede usar una memoria intermedia para almacenar el bloque válido más reciente de información auxiliar. Siempre que el dispositivo 193 de códigos de detección de errores indica que un bloque de información auxiliar es inválido, el dispositivo 194 de recuperación puede suministrar a lo largo del trayecto 88 el bloque válido más reciente como un sustituto para el bloque inválido. Como otro ejemplo, el dispositivo 194 de recuperación puede generar a lo largo del trayecto 88 un bloque sustituto aplicando alguna forma de predicción tal como la predicción lineal a uno o más de los bloques válidos más recientes de información auxiliar. Como otro ejemplo más, el dispositivo 194 de recuperación causa que los contenidos de los bloques inválidos sean ignorados. Si el espacio o anchura de banda disponible provisto por las separaciones es suficiente, bloques duplicados pueden ser transportados en separaciones sucesivas y el dispositivo 194 de recuperación puede obtener la información necesaria de uno de los bloques que es considerado válido.
Si se desea, el proceso de recuperación puede ser adaptado o puede ser seleccionado a partir de dos o más procesos alternativos según la información de control suministrada en el segmento auxiliar. Por ejemplo, esta información de control puede ser transportada usando más de un modelo de datos para las palabras de sincronización auxiliar. Una palabra de sincronización auxiliar con un primer modelo de datos indicaría que un primer proceso de recuperación debería ser llevado a cabo si el bloque asociado con esa palabra de sincronización auxiliar es inválido. Una palabra de sincronización auxiliar con un segundo modelo de datos indicaría que un segundo proceso de recuperación en caso de errores debería ser llevado a cabo. Modelos de datos adicionales pueden ser usados para indicar que procesos adicionales deberían ser utilizados.
Bloques solapados y funciones de ventana
El tren de impulsos usados en las figuras para representar bloques de información sugiere que los bloques adyacentes son contiguos pero no se solapan entre sí. Aunque ninguna disposición particular de bloques es crítica, las realizaciones preferidas procesan bloques que se solapan entre sí. Generalmente, los bloques solapados de información de audio son ponderados o modulados por una función de ventana de modo que la suma de muestras solapadas en bloques adyacentes es sustancialmente igual a una constante.
La Figura 12 ilustra una secuencia de bloques. El bloque inicial 141 en la secuencia se solapa con el bloque adyacente 142. Todos los bloques en la secuencia son representados por una envolvente que tiene la forma de una función de ventana usada para ponderar la información de audio correspondiente en el dominio de tiempo. El bloque final 146 en la secuencia se solapa con el bloque precedente y un bloque subsiguiente no mostrado en la figura. La cantidad de solape y la elección de función de ventana pueden tener efectos significativos en el rendimiento funcional de codificación pero ninguna función de ventana o cantidad de solape particular es crítica. En realizaciones preferidas, la cantidad de solape es igual a la mitad de la longitud de bloque y la función de ventana es derivada de la función Kaiser-Bessel.
Como se explicó antes, el descodificador 86 de información de audio genera información de audio que está alineada con las referencias de cuadros de vídeo. En realizaciones que generan cuadros comprendiendo una secuencia de bloques de información de audio codificada, la alineación puede ser tal que una referencia de cuadro de vídeo coincide esencialmente con cualquier punto en cualquier bloque de la secuencia. En el ejemplo mostrado en la Figura 12, el comienzo del bloque inicial 141 coincide con la referencia 100 de cuadro de vídeo.
En algunas aplicaciones, el punto exacto de coincidencia puede variar de un cuadro de vídeo a otro. Por ejemplo, en las aplicaciones que combinan información de audio digital con información de vídeo NTSC, cuadros de vídeo sucesivos pueden tener números variables de muestras de audio porque la frecuencia de muestreo de audio no es un múltiple entero de la frecuencia de cuadros de vídeo.
Diversas consideraciones respecto a la longitud de bloque, función de ventana y alineación de vídeo/audio son tratadas en la Patente de EE.UU. no 5.903.872 antes citada.
Evitar modelos prohibidos de datos
En muchas aplicaciones que crean, almacenan o transmiten información, es deseable designar ciertos modelos de bits como "prohibidos" tal que estos modelos no ocurran en palabras digitales que transportan la información. Un ejemplo es el modelo de datos usado para que palabras de sincronización marquen el límite de un cuadro de información en un flujo de datos.
Otro ejemplo aparece en palabras de datos que transportan información de audio en una forma de modulación lineal por impulsos codificados. En el caso de modulación por impulsos codificados de 16 bits que es expresada en representación de complemento de dos, los valores de amplitud de audio pueden variar dentro de un margen desde 32767 (expresado en notación hexadecimal como 0x7FFF) a -32768 (0x8000). En esta representación, una cantidad pequeña de asimetría es introducida en virtud de que el valor más negativo es una unidad de magnitud mayor que el valor más positivo. Algún equipo es diseñado para impedir esta asimetría evitando el valor más negativo de 0x8000. Si este valor no es usado para transportar la amplitud de modulación por impulsos codificados, puede ser, y a veces es, usado para algún otro fin tal como transportar información de control o señalización. Si una muestra de modulación por impulsos codificados teniendo este valor no ocurre en la información de audio, podría ser identificada incorrectamente como información de control o señalización; por tanto, se considera que este modelo de datos particular está prohibido y debería ser evitado en la información de audio.
Una técnica descrita a continuación puede ser usada para evitar modelos prohibidos de datos en segmentos o bloques de información y recuperar subsiguientemente la información original. Esta discusión y las figuras relacionadas se refieren al procesamiento de segmentos auxiliares como es proporcionado por el dispositivo 173 para modelos prohibidos y el dispositivo 192 para modelos prohibidos tratados anteriormente; sin embargo, esta discusión y las figuras también son pertinentes para el procesamiento de información de audio como es proporcionado por el dispositivo 162 para modelos prohibidos y el dispositivo 184 para modelos prohibidos. Información y técnicas adicionales para evitar modelos prohibidos de datos pueden ser obtenidas de la Patente de EE.UU. no 6.233.718 titulada "Evitar modelos prohibidos de datos en datos de audio codificados".
Codificación
La Figura 13 es un esquema de bloques del dispositivo 173 para modelos prohibidos para evitar modelos prohibidos de datos usando un proceso de codificación reversible para generar una representación codificada de información que no puede contener ningún modelo de datos prohibido. Esto puede ser efectuado codificando segmentos o bloques de información según una clave de codificación respectiva que es seleccionada tal que los resultados del proceso de codificación no puede contener un modelo de datos prohibido.
Refiriéndose a la Figura 13, el dispositivo 173 para modelos prohibidos recibe por el trayecto 271 segmentos auxiliares que pueden contener uno o más modelos prohibidos de datos. El dispositivo 276 de obtención de clave analiza los contenidos de un segmento respectivo para identificar una clave de codificación adecuada para ese segmento y pasa la clave de codificación, a lo largo del trayecto 277, al codificador 272. El codificador 272 genera a lo largo del trayecto 273 una representación codificada del segmento según la clave de codificación recibida por el trayecto 277. El dispositivo 276 de obtención de clave pasa a lo largo del trayecto 278 alguna información de clave tal como una clave de descodificación o alguna otra información de la que puede ser obtenida una clave de descodificación adecuada. El dispositivo 274 de formateo ensambla la información de clave recibida por el trayecto 278 con la representación codificada recibida por el trayecto 273 y pasa el resultado a lo largo del trayecto 279 para procesamiento subsiguiente por el dispositivo 174 de sincronización auxiliar y/o el dispositivo 178 de inserción de separaciones como se muestra en la Figura 6.
La elección de claves depende de las características del proceso llevado a cabo por el descodificador 272. Es provisto que el codificador 272 aplique un proceso de codificación simétrica, lo que significa que la clave de codificación y la clave de descodificación son idénticas. Los procesos de codificación simétrica son preferidos generalmente porque pueden ser implementados más eficientemente. Alternativamente, el dispositivo 276 de obtención de clave puede identificar claves distintas de codificación y descodificación. En este caso, el codificador 272 aplica un proceso de codificación asimétrica según la clave de codificación recibida por el trayecto 277 y alguna representación de la clave de descodificación, o alguna información de la que puede obtenerse la clave de descodificación, es pasada a lo largo del trayecto 278 al dispositivo 274 de formateo para ensamblaje con la representación codificada.
Clave de codificación
En una realización, un proceso de codificación simétrica es llevado a cabo realizando una operación O exclusiva relativa a bits entre una clave K y cada palabra digita W(i) en un segmento del flujo de información. Este proceso de codificación puede ser expresado como
\newpage
(1)X(i) = K \oplus W(i).
La operación O exclusiva es un proceso de codificación simétrica porque es un proceso de autoinversión; o sea; para cualquier clave K arbitraria, la palabra original W(i) puede ser obtenida de una palabra codificada X(i) aplicando la operación O exclusiva con la misma clave una segunda vez, que puede ser expresada como
(2)W(i) = K \oplus X(i) = K \oplus (K \oplus W(i)).
Una clave K adecuada que evita un modelo de datos prohibido F en un segmento particular puede ser seleccionada para este proceso de codificación identificando un modelo U de datos que no ocurre en ninguna palabra digital en el segmento, y después realizando una operación O exclusiva relativa a bits entre el modelo U de datos "no utilizado" y el modelo de datos prohibido F. La clave K seleccionada de esta manera asegura que el modelo de datos prohibido no ocurrirá en el segmento codificado. Como se explica después, si el modelo de datos no utilizado está obligado a ser no nulo, esta elección de clave también asegura que la propia clave no es igual al modelo de datos prohibido.
La operación usada para obtener la clave puede ser expresada como
(3)K=U \oplus F.
Sustituyendo esta expresión de K en la ecuación 1, el proceso de codificación puede ser reescrito como
(4)X(i) = K \oplus W(i) = U \oplus F \oplus W(i).
Si el modelo U de datos no utilizado es igual a cero, la clave K será igual al modelo de datos prohibido F porque una operación O exclusiva entre cualquier valor V arbitrario y un valor cero restituye el valor arbitrario V. En realizaciones preferidas, el modelo U de datos no utilizado está obligado a ser no nulo, lo que impide que la propia clave K sea igual al modelo de datos prohibido F. Si se permitiera que la clave sea igual al modelo de datos prohibido, una representación modificada de la clave, más bien que la propia clave, tendría que ser suministrada al dispositivo 274 de formateo para ensamblaje con el segmento codificado para impedir que el modelo de datos prohibido aparezca en la información codificada.
Modelo de datos no utilizado
En la Figura 14 se muestra una realización del dispositivo 276 de obtención de clave que puede identificar un modelo de datos no utilizado. El dispositivo 281 de frecuencia de modelos forma una ordenación que indica si modelos de datos particulares ocurren en el segmento, selecciona un modelo U de datos no nulo que no ocurre en el segmento, y pasa el modelo de datos no utilizado a la puerta lógica O exclusiva. La puerta lógica O exclusiva recibe el modelo U de datos no utilizado desde el dispositivo 281 de frecuencia de modelos, recibe el modelo de datos prohibido F por el trayecto 275 y obtiene la clave K de codificación según la ecuación 3. En esta realización, el proceso de operación O exclusiva del codificador 272 es un proceso de codificación simétrica; por tanto, la misma clave K es pasada a lo largo de los trayectos 277 y 278.
Un método para hallar un modelo de datos no utilizado empieza construyendo una ordenación de elementos representando cada modelo de datos posible e inicializando cada elemento con el valor cero. Es examinado el contenido de cada palabra digital en el segmento y, basado en este contenido, el elemento correspondiente en la ordenación es dispuesto en uno. Después de que todas las palabras digitales en el segmento han sido examinadas, los elementos en la ordenación son examinados para hallar uno que siga dispuesto en cero. Cada elemento de valor cero en la ordenación corresponde a modelos de datos que no ocurren en el segmento.
Las cuentas de frecuencias reales para cada modelo de datos pueden ser calculadas pero esto no es necesario. Es suficiente actualizar simplemente cada elemento para mostrar que un modelo de datos correspondiente ocurre en el segmento original.
Esta técnica puede ser hecha muy eficiente para longitudes pequeñas de segmentos construyendo una ordenación con un número de elementos que disminuye cuando disminuye la longitud del segmento. El número de elementos puede ser dispuesto igual a la potencia mínima de dos, supóngase 2^{B}, que es mayor o igual que la longitud del segmento. En este caso, sólo los B bits más significativos de cada palabra digital precisan ser examinados. Después de que todas las palabras digitales en el segmento original han sido examinadas, un elemento de valor cero de la ordenación puede ser seleccionado y usado para determinar los B bits más significativos de una palabra no utilizada. Los bits menos significativos restantes para el modelo de datos no utilizado pueden ser dispuestos arbitrariamente. Si se desea, estos bits menos significativos pueden ser dispuestos en unos para asegurar que el modelo de datos no utilizado no es igual a cero.
Este proceso es mostrado en el fragmento de programa siguiente. Este fragmento de programa es expresado en una sintaxis que incluye algunas características sintácticas de los lenguajes de programas C y BASIC; sin embargo, el fragmento de programa puede ser comprendido por los que no están familiarizados con estos lenguajes. Este fragmento de programa no está destinado a ser segmentos de código fuente adecuados para compilación sino que es mostrado simplemente para comunicar unos pocos aspectos de una implementación posible.
(1) size = ceiling(log2(segment_length));
(2) initialize array[power (2,size)];
(3) for j = 1 to serment_length{
(4) \hskip1cm read word;
(5) \hskip1cm index = msbits(word, size);
(6) \hskip1cm array[index] = 1;
(7) }
(8) index = power(2,size)-1;
(9) while array[index] 0
(10) \hskip1cm index = index-1;
(11) unused_word = left_shift(index, len-size) | lsbits (ones, len-size);
La sentencia en la línea (1) inicializa el número entero "size" ("tamaño") a la potencia entera mínima de dos que es mayor que la longitud de segmento. En esta sentencia, la función "log2" restituye el logaritmo de base 2 de la longitud de segmento y la función "ceiling" ("techo") restituye el número entero mínimo que es mayor o igual que este logaritmo. La sentencia en la línea (2) asigna "array" ("ordenación") con un número de elementos igual a dos elevado a la potencia "size" e inicializa cada elemento en un valor de cero. La sentencia en la línea (3) causa que las sentencias en las líneas (4) a (6) se repitan hasta que todas las palabras digitales en un segmento han sido examinadas. La sentencia en la línea (4) obtiene la palabra digital siguiente desde el segmento. La sentencia en la línea (5) obtiene los "size" ("tamaño") bits más significativos de esta palabra digital y convierte estos bits en un valor que es asignado a la variable "index" ("índice"). En este ejemplo, se supone que cada palabra digital tiene un número de bits igual a "len" "longitud". La sentencia en la línea (6) asegura que el elemento de "array" que corresponde a este valor de "index" ("índice") es dispuesto en uno. Después de que todas las palabras digitales en el segmento han sido examinadas, las sentencias en las líneas (8) a (10) hallan un elemento de "array" ("ordenación") que tiene un valor de cero y dispone "index" ("índice") igual al número de este elemento. La sentencia en la línea (11) construye un modelo de datos no utilizado no nulo desplazando el valor de "index" ("índice") al interior de los bits más significativos de una palabra digital y realizando una operación lógica O relativa a bits con el número "(len-size)" "(longitud-tamaño)" de bits menos significativos de este valor y un número apropiado de bits que tienen el valor de uno.
Como un ejemplo, si un segmento original comprende palabras digitales de 16 bits y la longitud de segmento es 2002, la potencia mínima de dos que es mayor o igual que la longitud de segmento es 2^{11} o 2048. Una ordenación de 2048 elementos es construida y actualizada cuando los once bits más significativos de cada palabra digital en el segmento son examinados. Por ejemplo, los dos modelos de datos 0x0000 y 0x001F, expresados en notación hexadecimal, causarían ambos que el primer elemento en la ordenación sea actualizado porque los once bits más significativos de ambos modelos de datos son iguales. En este ejemplo, los once bits más significativos de ambos modelos de datos son todos nulos. Continuando el ejemplo, si el segundo elemento de la ordenación indica que ningún modelo de datos correspondiente ocurre en el segmento original, entonces es conocido que ninguna palabra digital en el segmento tiene un modelo de datos con los diez bits más significativos dispuestos en cero y el undécimo bit más significativo dispuesto en uno. Un modelo de datos no utilizado puede ser seleccionado a partir de cualquier valor en el margen de 0x0020 a 0x003F.
Si se desea, la ordenación también puede ser examinada para determinar si alguna palabra digital en el segmento tiene el modelo de datos prohibido. Si no, podría ser evitado el procesamiento requerido para realizar la operación de codificación, tal como la mostrada en la ecuación 1. Esta condición puede ser transmitida en la información codificada disponiendo la clave de codificación en cero, suponiendo por supuesto que cero no es un modelo de datos prohibido. Si es usado el proceso de codificación O exclusiva descrito anteriormente, una clave de valor cero es la consecuencia normal de elegir el modelo de datos prohibido como el modelo de datos no utilizado.
Modelos prohibidos múltiples de datos
Esta técnica puede ser ampliada para evitar los modelos prohibidos múltiples de datos. Si la longitud de segmento es significativamente menor que el número de todos los valores posibles para las palabras digitales, puede ser posible elegir una sola clave que asegure evitar dos o más modelos prohibidos de datos. Por ejemplo, si la longitud de segmento es menor que la raíz cuadrada del número de todos los valores posibles, siempre es posible hallar una sola palabra clave que evite dos modelos prohibidos de datos. Esta clave puede ser obtenida seleccionando la mitad más significativa de los bits de clave para evitar el primer modelo de datos prohibido y seleccionando la mitad menos significativa de los bits de clave para evitar el segundo modelo de datos prohibido. Si los dos modelos prohibidos de datos tienen algunos bits en común, la longitud de segmento puede ser mayor y seguir garantizando evitar ambos modelos prohibidos de datos.
Recuperación de la información original
La Figura 15 es un esquema de bloques del dispositivo 192 para modelos prohibidos que recupera la información original de la información codificada generada por el dispositivo 172 para modelos prohibidos. El dispositivo 291 de desformateo recibe los segmentos codificados por el trayecto 191, extrae las claves de descodificación de los segmentos codificados y pasa los segmentos codificados a lo largo del trayecto 292 y las claves de descodificación a lo largo del trayecto 293. En este contexto, el término "extraer", como se usa aquí y en otras partes de esta descripción, se refiere generalmente a procesos de desformateo y/o derivación que obtienen información de lo que es transportado por la información recibida. El descodificador 294 aplica un proceso de descodificación a los segmentos codificados según las claves de descodificación respectivas. Los segmentos descodificados que resultan del proceso de descodificación son pasados a lo largo del trayecto 295 para proceso subsiguiente por el dispositivo 193 de códigos de detección de errores como se muestra en la Figura 11.
Si el proceso de descodificación aplicado por el descodificador 294 es complementario del proceso de codificación usado para generar la información codificada, los segmentos descodificados contendrán la misma información que fue transportada en los segmentos correspondientes de la información original. En una realización, el descodificador 294 lleva a cabo el proceso de descodificación realizando operaciones O exclusiva como se mostró antes en la ecuación 2.
Si se desea, una clave de valor cero puede indicar que no es necesaria la descodificación. Como se explicó antes, esta situación es el resultado normal cuando se usa el proceso de codificación de O exclusiva.
Preferiblemente, la clave de descodificación y cualquier indicación necesaria de límite de segmento son ensambladas al comienzo de la información codificada de modo que la operación de descodificación puede ser realizada cuando cada segmento codificado es obtenido de la información codificada.
Implementación
Las funciones requeridas para poner en práctica diversos aspectos de la presente invención pueden ser realizadas por componentes que son implementados en una gran variedad de modos incluyendo componentes lógicos discretos, uno o más circuitos integrados de aplicaciones específicas y/o procesadores controlados por programa. La manera en la que estos componentes son implementados no es importante para la presente invención. Por ejemplo, las operaciones requeridas para poner en práctica la presente invención pueden ser implementadas en un sistema que comprende uno o más terminales para recibir y emitir señales que representan información digital, memoria de acceso aleatorio para almacenar la información recibida, un soporte para grabar uno o más programas de instrucciones y un procesador que ejecuta los programas de instrucciones para llevar a cabo la presente invención. Los programas de instrucciones pueden ser grabados o transportados por varios soportes legibles por máquina incluyendo diversos tipos de memoria de sólo lectura, cinta magnética, disco magnético, disco óptico y trayectos de comunicación de banda base o modulada en todo el espectro desde frecuencias supersónicas hasta frecuencias de ultravioleta.

Claims (27)

1. Un método para codificar información de audio e información auxiliar comprendiendo los pasos para realizar las acciones de:
recibir una audioseñal que transporta información de audio,
recibir señales de referencia de cuadros de vídeo que indican referencias de tiempo para una secuencia de cuadros de vídeo,
recibir una señal auxiliar que transporta información auxiliar,
construir segmentos auxiliares (220), comprendiendo cada uno un bloque (222) de información auxiliar y un código (223) de detección de errores, y
generar una señal de salida que transporta bloques (212) de información de audio comprimida en el tiempo dispuesta en cuadros (210) separados por separaciones (205) tal que cada separación está alineada con una señal respectiva de referencia de cuadro de vídeo y transporta un segmento auxiliar respectivo, en el que la información de audio en los cuadros de información de audio y la información auxiliar en los segmentos auxiliares están obligadas a evitar modelos de datos en un conjunto de uno o más modelos prohibidos de datos.
2. Un método según la reivindicación 1, en el que los bloques (212) de información de audio comprimida en el tiempo son formateados según la norma ANSI S4.40 y son dispuestos en cuadros según la norma SMPTE 272M.
3. Un método según la reivindicación 1, que comprende además procesar la información de audio comprimida en el tiempo para evitar los modelos de datos en el conjunto de uno o más modelos prohibidos de datos.
4. Un método según la reivindicación 1, que comprende además procesar los segmentos auxiliares (220) de información auxiliar para evitar los modelos de datos en el conjunto de uno o más modelos prohibidos de datos.
5. Un método según la reivindicación 1, que construye segmentos auxiliares (220) con un bloque (222) de longitud variable de información auxiliar y una indicación de esa longitud, en el que la indicación de esa longitud es formada tal que evita los modelos de datos en el conjunto de uno o más modelos prohibidos de datos.
6. Un método según la reivindicación 1, que construye los segmentos auxiliares (220) con una palabra (221) de sincronización auxiliar que tiene un modelo de datos en el conjunto de uno o más modelos prohibidos de datos.
7. Un método según la reivindicación 1, que construye los segmentos auxiliares (220) con palabras de sincronización auxiliar respectivas (221) seleccionadas del conjunto de modelos prohibidos de datos, en el que el conjunto de modelos prohibidos de datos incluye una pluralidad de modelos prohibidos de datos.
8. Un método según la reivindicación 1, en el que los cuadros (210) de información de audio comprimida en el tiempo comprenden una palabra (211) de sincronización de audio que tiene un modelo de datos en el conjunto de uno o más modelos prohibidos de datos.
9. Un método para descodificar información de audio e información auxiliar comprendiendo los pasos que realizan las acciones de:
recibir una señal que transporta referencia de cuadros de vídeo, en el que cada referencia de cuadro de vídeo indica un punto de referencia particular en un cuadro de vídeo respectivo,
recibir una señal de entrada que transporta bloques (212) de información de audio comprimida en el tiempo dispuesta en cuadros (210) separados por separaciones (205) y que transporta segmentos auxiliares (220) dispuestos dentro de las separaciones, en el que cada separación está alineada en el tiempo con una referencia respectiva de cuadro de vídeo,
generar uno o más segmentos de información de audio que representan dicha información de audio comprimida en el tiempo en una forma descodificada aplicando un proceso de descodificación por bloques a dichos bloques de información de audio comprimida en el tiempo, en el que un segmento respectivo de dicha información de audio está alineado en el tiempo con una referencia de cuadro de vídeo,
procesar la señal de entrada para localizar los segmentos auxiliares, y
para cada segmento auxiliar respectivo, extraer un bloque (222) de información auxiliar y un código (223) de detección de errores, y evaluar el código de detección de errores para validar los contenidos del bloque de información auxiliar.
10. Un método según la reivindicación 9, en el que los bloques (212) de información de audio comprimida en el tiempo son formateados según la norma ANSI S4.40 y son dispuestos en cuadros según la normal SMPTE 272M.
11. Un método según la reivindicación 9, que comprende además extraer información de control para controlar el procesamiento de la información de audio comprimida en el tiempo para restaurar los modelos de datos en un conjunto de uno o más modelos prohibidos de datos.
12. Un método según la reivindicación 9, que comprende además extraer información de control para controlar el procesamiento de los segmentos auxiliares (220) de información auxiliar para restaurar los modelos de datos en un conjunto de uno o más modelos prohibidos de datos.
13. Un método según la reivindicación 9, que comprende además, para cada segmento auxiliar (220) respectivo, extraer una indicación de longitud y usar la indicación para extraer bloques (222) de información auxiliar teniendo una longitud que varía según la indicación de longitud.
14. Un método según la reivindicación 9, en el que cada segmento auxiliar (220) comprende una palabra (221) de sincronización auxiliar que tiene un modelo de sincronización auxiliar, y el procesamiento de señal de entrada usa la palabra de sincronización auxiliar para localizar los segmentos auxiliares respectivos, y en el que el método procesa la información de audio comprimida en el tiempo y el resto de los segmentos auxiliares para restaurar los modelos de datos iguales al modelo de sincronización auxiliar.
15. Un método según la reivindicación 9, que comprende además generar una señal de salida que transporta la información obtenida de un proceso de recuperación en caso de errores en respuesta a los bloques (222) de información auxiliar con contenidos que son inválidos.
16. Un método según la reivindicación 15, en el que cada segmento auxiliar (220) comprende una palabra (221) de sincronización auxiliar que tiene uno de una pluralidad de modelos de sincronización, y en el que el procesamiento de señal de entrada usa la palabra de sincronización auxiliar para localizar segmentos auxiliares respectivos y el proceso de recuperación en caso de errores es adaptado según el modelo de la palabra de sincronización auxiliar, y en el que el método procesa la información de audio comprimida en el tiempo y el resto de los segmentos auxiliares para restaurar los modelos de datos iguales a la pluralidad de modelos de sincronización.
17. Un método según la reivindicación 9, en el que los cuadros (210) de información de audio comprimida en el tiempo comprenden una palabra (211) de sincronización de audio que tiene un modelo de sincronización de audio, y en el que el método procesa el resto de los cuadros de información de audio y los segmentos auxiliares (220) para restaurar los modelos de datos iguales al modelo de sincronización de audio.
18. Un soporte legible por una máquina, llevando el soporte un programa de instrucciones para ejecución por dicha máquina para realizar un método como es definido en una cualquiera de las reivindicaciones precedentes.
19. Un aparato para codificar información de audio e información auxiliar, comprendiendo:
(a)
uno o más terminales (61, 63) que reciben una audioseñal transportando información de audio, señales de referencia de cuadros de vídeo que indican referencias de tiempo para una secuencia de cuadros de vídeo y una señal auxiliar que transporta información auxiliar;
(b)
un procesador (68) controlado por programa u otro circuito de procesamiento que:
(i)
construye segmentos auxiliares (220), comprendiendo cada uno un bloque (222) de información auxiliar y un código (223) de detección de errores, y
(ii)
genera una señal de salida (200) que transporta bloques (212) de información de audio comprimida en el tiempo dispuesta en cuadros (210) separados por separaciones (205) tal que cada separación está alineada con una señal respectiva de referencia de cuadro de vídeo y transporta un segmento auxiliar respectivo, en el que la información de audio en los cuadros de información de audio y la información auxiliar en los segmentos auxiliares están obligadas a evitar los modelos de datos en un conjunto de uno o más modelos prohibidos de datos; y
(c)
un terminal (70) para emitir la señal de salida.
20. Un aparato según la reivindicación 19, en el que el procesador (68, 162) controlado por programa u otro circuito de procesamiento procesa la información de audio comprimida en el tiempo para evitar los modelos de datos en el conjunto de uno o más modelos prohibidos de datos.
21. Un aparato según la reivindicación 19, en el que el procesador (68, 172) controlado por programa u otro circuito de procesamiento procesa los segmentos auxiliares (220) de información auxiliar para evitar los modelos de datos en el conjunto de uno o más modelos prohibidos de datos.
22. Un aparato según la reivindicación 19, en el que el procesador (68, 174) controlado por programa u otro circuito de procesamiento construye los segmentos auxiliares (220) con palabras (221) de sincronización auxiliar respectivas seleccionadas del conjunto de datos prohibidos de datos, en el que el conjunto de modelos prohibidos de datos incluye una pluralidad de modelos prohibidos de datos.
23. Un aparato para descodificar información de audio e información auxiliar, comprendiendo:
(a)
un terminal (83) que:
(i)
recibe una señal que transporta referencias de cuadros de vídeo, en el que cada referencia de cuadro de vídeo indica un punto de referencia particular en un cuadro de vídeo respectivo,
(ii)
recibe una señal de entrada que transporta bloques (212) de información de audio comprimida en el tiempo dispuesta en cuadros (210) separados por separaciones (205) y que transporta segmentos auxiliares (220) dispuestos dentro de las separaciones, en el que cada separación está alineada en el tiempo con una referencia respectiva de cuadro de vídeo;
(b)
un procesador (84) controlado por programa u otro circuito de procesamiento que:
(i)
genera uno o más segmentos de información de audio que representan dicha información de audio comprimida en el tiempo en una forma descodificada aplicando un proceso de descodificación por bloques a dichos bloques de información de audio comprimida en el tiempo, en el que un segmento respectivo de dicha información de audio está alineado en el tiempo con una referencia de cuadro de vídeo,
(ii)
procesa la señal de entrada para localizar los segmentos auxiliares.
(iii)
para cada segmento auxiliar respectivo, extrae un bloque (222) de información auxiliar y un código (223) de detección de errores, y evalúa el código de detección de errores para validar los contenidos del bloque de información auxiliar; y
(c)
un terminal (88) para emitir información auxiliar.
24. Un aparato según la reivindicación 23, en el que el procesador (84, 184) controlado por programa u otro circuito de procesamiento extrae información de control para controlar el procesamiento de la información de audio comprimida en el tiempo para restaurar los modelos de datos en un conjunto de uno o más modelos prohibidos de datos.
25. Un aparato según la reivindicación 23, en el que el procesador (84, 192) controlado por programa u otro circuito de procesamiento extrae información de control para controlar el procesamiento de los segmentos auxiliares (220) de información auxiliar para restaurar los modelos de datos en un conjunto de uno o más modelos prohibidos de datos.
26. Un aparato según la reivindicación 23, en el que el procesador (84, 193, 194) controlado por programa u otro circuito de procesamiento genera una señal de salida que transporta la información obtenida de un proceso de recuperación en caso de errores en respuesta a los bloques (222) de información auxiliar con contenidos que son inválidos.
27. Un aparato según la reivindicación 26, en el que cada segmento auxiliar (220) comprende información de control, y el procesador (84,194) controlado por programa u otro circuito de procesamiento usa la información de control para adaptar el proceso de recuperación en caso de errores.
ES99972410T 1998-11-17 1999-11-08 Codificacion de informacion auxiliar con informacion de audio condificada a base de tramas. Expired - Lifetime ES2201839T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/193,186 US6188987B1 (en) 1998-11-17 1998-11-17 Providing auxiliary information with frame-based encoded audio information
US193186 1998-11-17

Publications (1)

Publication Number Publication Date
ES2201839T3 true ES2201839T3 (es) 2004-03-16

Family

ID=22712570

Family Applications (1)

Application Number Title Priority Date Filing Date
ES99972410T Expired - Lifetime ES2201839T3 (es) 1998-11-17 1999-11-08 Codificacion de informacion auxiliar con informacion de audio condificada a base de tramas.

Country Status (12)

Country Link
US (1) US6188987B1 (es)
EP (1) EP1142346B1 (es)
JP (1) JP4490589B2 (es)
AR (1) AR021278A1 (es)
AT (1) ATE248487T1 (es)
AU (1) AU1471700A (es)
DE (1) DE69910834T2 (es)
DK (1) DK1142346T3 (es)
ES (1) ES2201839T3 (es)
MY (1) MY128675A (es)
TW (1) TW445753B (es)
WO (1) WO2000030361A1 (es)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7047190B1 (en) 1999-04-19 2006-05-16 At&Tcorp. Method and apparatus for performing packet loss or frame erasure concealment
JP4441126B2 (ja) * 1999-04-19 2010-03-31 エイ・ティ・アンド・ティ・コーポレーション フレーム消去隠蔽処理装置
US7117156B1 (en) 1999-04-19 2006-10-03 At&T Corp. Method and apparatus for performing packet loss or frame erasure concealment
US6690428B1 (en) * 1999-09-13 2004-02-10 Nvision, Inc. Method and apparatus for embedding digital audio data in a serial digital video data stream
WO2001052178A1 (en) * 2000-01-13 2001-07-19 Digimarc Corporation Authenticating metadata and embedding metadata in watermarks of media signals
US6725110B2 (en) * 2000-05-26 2004-04-20 Yamaha Corporation Digital audio decoder
US7197160B2 (en) * 2001-03-05 2007-03-27 Digimarc Corporation Geographic information systems using digital watermarks
AU2002353343A1 (en) * 2002-01-18 2003-07-30 Koninklijke Philips Electronics N.V. Audio coding
US7359006B1 (en) * 2003-05-20 2008-04-15 Micronas Usa, Inc. Audio module supporting audio signature
US20060002479A1 (en) * 2004-06-22 2006-01-05 Fernandes Felix C A Decoder for H.264/AVC video
US8953908B2 (en) * 2004-06-22 2015-02-10 Digimarc Corporation Metadata management and generation using perceptual features
EP1691348A1 (en) * 2005-02-14 2006-08-16 Ecole Polytechnique Federale De Lausanne Parametric joint-coding of audio sources
TW200638335A (en) * 2005-04-13 2006-11-01 Dolby Lab Licensing Corp Audio metadata verification
MX2009006201A (es) 2006-12-12 2009-06-22 Fraunhofer Ges Forschung Codificador, decodificador y metodos para codificar y decodificar segmentos de datos que representan una corriente de datos del dominio temporal.
WO2009064561A1 (en) 2007-11-12 2009-05-22 Nielsen Media Research, Inc. Methods and apparatus to perform audio watermarking and watermark detection and extraction
US8457951B2 (en) * 2008-01-29 2013-06-04 The Nielsen Company (Us), Llc Methods and apparatus for performing variable black length watermarking of media
US8707381B2 (en) * 2009-09-22 2014-04-22 Caption Colorado L.L.C. Caption and/or metadata synchronization for replay of previously or simultaneously recorded live programs
CN102725737B (zh) 2009-12-04 2016-04-20 密码研究公司 可验证防泄漏的加密和解密
KR101428504B1 (ko) * 2010-02-22 2014-08-11 돌비 레버러토리즈 라이쎈싱 코오포레이션 비트스트림에 임베딩된 메타데이터를 이용하는 렌더링 제어부를 갖는 비디오 디스플레이
WO2014124377A2 (en) * 2013-02-11 2014-08-14 Dolby Laboratories Licensing Corporation Audio bitstreams with supplementary data and encoding and decoding of such bitstreams
CN106303673B (zh) * 2015-06-04 2021-01-22 中兴通讯股份有限公司 码流对齐、同步处理方法及发送、接收终端和通信系统
CN105577671B (zh) * 2015-12-30 2019-02-01 上海芃矽半导体技术有限公司 音频信号与视频信号的传输方法及传输系统
AU2022274548A1 (en) * 2021-05-10 2024-01-04 Sonos, Inc. Managing content quality and related characteristics of a media playback system
US11683558B2 (en) * 2021-06-29 2023-06-20 The Nielsen Company (Us), Llc Methods and apparatus to determine the speed-up of media programs using speech recognition
US11785278B1 (en) * 2022-03-18 2023-10-10 Comcast Cable Communications, Llc Methods and systems for synchronization of closed captions with content output
US12323647B2 (en) * 2023-11-10 2025-06-03 Avago Technologies International Sales Pte. Limited Video quality monitoring system
US12542949B1 (en) * 2024-07-30 2026-02-03 Avago Technologies International Sales Pte. Limited Systems and methods for latency optimization for cloud applications
US12547801B1 (en) * 2024-12-09 2026-02-10 Amazon Technologies, Inc. Optimal play route prediction during sports broadcasts

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6340653A (ja) * 1986-08-06 1988-02-22 Nippon Kokan Kk <Nkk> 溶湯注入装置
US5142656A (en) * 1989-01-27 1992-08-25 Dolby Laboratories Licensing Corporation Low bit rate transform coder, decoder, and encoder/decoder for high-quality audio
JPH05276430A (ja) * 1992-03-26 1993-10-22 Matsushita Electric Ind Co Ltd カメラ信号延長装置
JP3329076B2 (ja) 1994-06-27 2002-09-30 ソニー株式会社 ディジタル信号伝送方法、ディジタル信号伝送装置、ディジタル信号受信方法及びディジタル信号受信装置
GB2311917B (en) * 1996-04-02 2000-11-01 Sony Uk Ltd Audio signal processor
JP3529574B2 (ja) * 1997-02-07 2004-05-24 株式会社東芝 ディジタルインターフェースを有する装置及びディジタルインターフェース方法
US6085163A (en) * 1998-03-13 2000-07-04 Todd; Craig Campbell Using time-aligned blocks of encoded audio in video/audio applications to facilitate audio switching

Also Published As

Publication number Publication date
DK1142346T3 (da) 2003-11-03
JP4490589B2 (ja) 2010-06-30
ATE248487T1 (de) 2003-09-15
EP1142346B1 (en) 2003-08-27
MY128675A (en) 2007-02-28
JP2002530950A (ja) 2002-09-17
EP1142346A1 (en) 2001-10-10
WO2000030361A1 (en) 2000-05-25
AR021278A1 (es) 2002-07-03
US6188987B1 (en) 2001-02-13
DE69910834D1 (de) 2003-10-02
TW445753B (en) 2001-07-11
AU1471700A (en) 2000-06-05
DE69910834T2 (de) 2004-07-01

Similar Documents

Publication Publication Date Title
ES2201839T3 (es) Codificacion de informacion auxiliar con informacion de audio condificada a base de tramas.
ES2401565T3 (es) Grabadora de datos
ES2478668T3 (es) Formatos de datos por paquetes para medios de almacenamiento de datos digitales
JP3666625B2 (ja) データ記録方法およびデータ記録装置
ES2198513T3 (es) Metodo de disposicion de datos y soporte de registro o de transferencia de datos y un aparato de tratamiento de la señal para este metodo y su soporte.
KR20010050431A (ko) 수신시스템 및 디지털 방송시스템
KR20010035621A (ko) 엠펙 트랜스포트 스트림 인코더 및 그 방법
CN101796483A (zh) 用于将元数据编码到数字节目流中的方法和装置
CN102780931A (zh) 记录装置、再现装置、记录再现装置、记录程序及其记录介质、再现程序及其记录介质
ES2203101T3 (es) Procedimiento y aparato para procesar informacion de audio utilizando bloques de alineamiento en tiempo de audio codificado en aplicaciones de video/audio para facilitar la conmutacion de audio.
KR100263603B1 (ko) 재기록성 기록 매체상에서 및 그로부터 디지탈 신호를 레코딩 및 재생하는 시스템
KR19990023685A (ko) 정보 제공 장치 및 방법, 정보 수신 장치 및 방법, 정보 제공시스템 및 전송 매체
US7054380B2 (en) Embedding a first digital information signal into a second digital information signal for transmission via a transmission medium
CN101971613B (zh) 在数字影院环境中振动性运动信号的编解码方法
EP0757491B1 (en) Data encoding and/or decoding apparatus and methods
CN108550369B (zh) 一种可变长度的全景声信号编解码方法
JP2001508968A (ja) オーディオ圧縮
US6681363B1 (en) Data receiver, data transmission system, and data transmitting method therefor
KR100529304B1 (ko) 엠펙-2 트랜스포트 스트림 인코더
KR100724867B1 (ko) 디지털 멀티미디어 방송 시스템에서 멀티 채널 전송을 위한멀티 채널 생성 및 재생 방법
Real et al. An architecture for the implementation of the Ecuadorian sign language into digital television system
KR100336501B1 (ko) 엠펙-1 멀티미디어 스트림에의 텍스트 자료 동기화 방법과 이를 지원하는 엠펙-1 디코더
JP4654798B2 (ja) セクション分散方法
JP2007036532A (ja) トランスポートストリーム出力回路、トランスポートストリーム編集回路、トランスポートストリーム多重化システム及びトランスポートストリーム多重化方法
MXPA00008964A (es) Metodo y aparato para procesar informacion de audio usando bloques de alineacion de tiempo de audio codificado en aplicaciones de video/audio para facilitar la conmutacion de audio