ES2770926T3 - Información de señalización de soporte de paquete indicativa de si decodificar una codificación primaria o una codificación redundante del paquete - Google Patents

Información de señalización de soporte de paquete indicativa de si decodificar una codificación primaria o una codificación redundante del paquete Download PDF

Info

Publication number
ES2770926T3
ES2770926T3 ES16774575T ES16774575T ES2770926T3 ES 2770926 T3 ES2770926 T3 ES 2770926T3 ES 16774575 T ES16774575 T ES 16774575T ES 16774575 T ES16774575 T ES 16774575T ES 2770926 T3 ES2770926 T3 ES 2770926T3
Authority
ES
Spain
Prior art keywords
packet
encoding
audio frame
redundant
signaling 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.)
Active
Application number
ES16774575T
Other languages
English (en)
Inventor
Daniel Jared Sinder
Subasingha Shaminda Subasingha
Vivek Rajendran
Venkatraman Atti
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Application granted granted Critical
Publication of ES2770926T3 publication Critical patent/ES2770926T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0014Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the source coding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/167Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/007Unequal error protection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0076Distributed coding, e.g. network coding, involving channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/102Gateways
    • H04L65/1023Media gateways
    • H04L65/103Media gateways in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/018Audio watermarking, i.e. embedding inaudible data in the audio signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/08Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
    • 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/2389Multiplex stream processing, e.g. multiplex stream encrypting

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Quality & Reliability (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

Un procedimiento de comunicación inalámbrica, comprendiendo el procedimiento: recibir (1102) un paquete en una interfaz de red a través de una red de circuitos conmutados, incluyendo el paquete una codificación primaria (162) de una primera trama de audio, una codificación redundante (164) de una segunda trama de audio y uno o más bits que indican información de señalización, indicando la información de señalización cuál de la codificación primaria (162) y de la codificación redundante (164) se va a decodificar; y decodificar (1104) la porción de codificación primaria (162) o la de codificación redundante (164) del paquete en función de la información de señalización.

Description

DESCRIPCIÓN
Información de señalización de soporte de paquete indicativa de si decodificar una codificación primaria o una codificación redundante del paquete
I.
II. Campo
[0001] La presente divulgación se refiere en general a comunicación entre dispositivos de redes de paquetes conmutados y dispositivos de redes de circuitos conmutados.
III. Descripción de la técnica relacionada
[0002] Los avances en la tecnología han dado como resultado dispositivos informáticos más pequeños y más potentes. Por ejemplo, una variedad de dispositivos informáticos personales portátiles, incluidos teléfonos inalámbricos tales como teléfonos móviles e inteligentes, tabletas electrónicas y ordenadores portátiles, son pequeños, ligeros y fáciles de transportar por los usuarios. Estos dispositivos pueden comunicar paquetes de voz y datos a través de redes inalámbricas. Además, muchos de estos dispositivos incorporan funcionalidades adicionales, tales como una cámara fotográfica digital, una cámara de vídeo digital, una grabadora digital y un reproductor de archivos de audio. Asimismo, dichos dispositivos pueden procesar instrucciones ejecutables, incluidas aplicaciones de software, tales como una aplicación de navegador web, que se puede usar para acceder a Internet. Como tal, estos dispositivos pueden incluir capacidades informáticas y de red significativas.
[0003] Los dispositivos electrónicos, tal como los teléfonos inalámbricos, pueden enviar y recibir datos a través de redes. Por ejemplo, los datos de audio pueden enviarse y recibirse a través de una red de circuitos conmutados (por ejemplo, la red telefónica pública conmutada (PSTN), un sistema global para redes de comunicaciones móviles (GSM), etc.) o una red de paquetes conmutados (por ejemplo, una red de voz sobre protocolo de Internet (VoIP), una red de voz sobre evolución a largo plazo (VoLTE), etc.). En una red de paquetes conmutados, los paquetes de audio pueden enrutarse individualmente desde un dispositivo de origen a un dispositivo de destino. Debido a las condiciones de red en la red de paquetes conmutados, los paquetes de audio pueden llegar fuera de servicio, o uno o más de los paquetes de audio pueden llegar dañados (o no llegar). Para compensar los errores debidos a las condiciones de la red, uno o más paquetes de audio pueden incluir codificación para múltiples tramas de audio. En una red de circuitos conmutados, un dispositivo (por ejemplo, un teléfono) está configurado para recibir paquetes en un intervalo fijo (por ejemplo, 20 milisegundos entre cada paquete). A diferencia de la red de paquetes conmutados, los dispositivos de la red de circuitos conmutados no están configurados para recibir paquetes fuera de servicio o en momentos no especificados. Por lo tanto, el reenvío de paquetes directamente desde una red de paquetes conmutados a una red de circuitos conmutados puede causar dificultades a los dispositivos de la red de circuitos conmutados.
[0004] El documento US 2015/0106106 divulga un procedimiento para recibir una segunda trama de audio después de una primera trama de audio, con un primer número de bits asignados a la información de codificación primaria asociada con la segunda trama de audio y un segundo número de bits asignados a la información de codificación redundante asociada con la primera trama de audio. En una condición de canal limpio, la primera trama de audio se decodifica en función de los bits de codificación primarios en la primera trama, y el primer número de bits se determina en función de un indicador de tipo de trama, y se utiliza para decodificar la segunda trama de audio. En respuesta a un borrado de trama asociado con la primera trama de audio, el segundo número de bits se determina en función de un indicador de tipo de trama, y se utiliza para decodificar la primera trama de audio.
IV. Sumario
[0005] En un aspecto particular, se proporciona un procedimiento de comunicación inalámbrica que comprende recibir un paquete en una interfaz de red a través de una red de circuitos conmutados, incluyendo el paquete la codificación primaria de una primera trama de audio, la codificación redundante de una segunda trama de audio y uno o más bits que indican información de señalización, indicando la información de señalización cuál de la codificación primaria y de la codificación redundante se decodificará y decodificar la porción de codificación primaria o de codificación redundante del paquete en función de la información de señalización.
[0006] En otro aspecto particular, se proporciona un dispositivo de almacenamiento legible por ordenador que almacena instrucciones que, cuando se ejecutan por un procesador, causan que el procesador realice el procedimiento del primer aspecto.
[0007] En otro aspecto particular, se proporciona un aparato que comprende medios para recibir, a través de una red de circuitos conmutados, un paquete que incluye codificación primaria de una primera trama de audio, codificación redundante de una segunda trama de audio y uno o más bits que indican información de señalización, indicando la información de señalización cuál de la codificación primaria y de la codificación redundante se va a decodificar y medios para decodificar la porción de codificación primaria o de codificación redundante del paquete en función de la información de señalización
[0008] Otros aspectos, ventajas y características de la presente divulgación resultarán evidentes después de revisar la solicitud completa, incluyendo las siguientes secciones: Breve descripción de los dibujos, Descripción detallada y Reivindicaciones.
V. Breve descripción de los dibujos
[0009]
La figura 1 es un diagrama de bloques de una implementación particular de un sistema configurado para comunicar información de trama redundante e información de señalización entre una red de paquetes conmutados y una red de circuitos conmutados;
La figura 2 es un diagrama de una implementación particular de modificación de una secuencia de paquetes en una pasarela de medios para incluir uno o más bits que indican información de señalización;
La figura 3 es un diagrama de ejemplos de paquetes de audio modificados que incluyen información de señalización;
La figura 4 es un diagrama de una primera implementación de recuperación de información de trama no utilizada para generar tramas de audio;
La figura 5 es un diagrama de bloques de una implementación particular de un sistema configurado para comunicar información de trama redundante utilizando una secuencia de bits (u otra información de señalización);
La figura 6 es un diagrama de un ejemplo de modificación de una secuencia de paquetes en una pasarela de medios para incluir una secuencia de bits (u otra información de señalización);
La figura 7 es un diagrama de una segunda implementación de recuperación de información de trama no utilizada para generar tramas de audio;
La figura 8 es un diagrama de bloques de una implementación particular de un sistema configurado para usar información de trama redundante para comunicar paquetes de una red de paquetes conmutados a una red de circuitos conmutados;
La figura 9 es un diagrama de un ejemplo de generación de paquetes basado en información de trama redundante en paquetes recibidos de una red de paquetes conmutados;
La figura 10 es un diagrama de flujo que ilustra un procedimiento particular de modificación de un paquete de audio para incluir información de señalización;
La figura 11 es un diagrama de flujo que ilustra un procedimiento particular de decodificación de un paquete de audio que incluye información de señalización;
La figura 12 es un diagrama de flujo que ilustra un procedimiento particular para mantener una copia almacenada de información de trama no utilizada en un paquete de audio;
La figura 13 es un diagrama de flujo que ilustra un procedimiento particular para codificar de nuevo información de trama redundante;
La figura 14 es un diagrama de flujo que ilustra un procedimiento particular de modificación de un paquete de audio para incluir una secuencia de bits (u otra información de señalización) que indica cómo decodificar el paquete de audio modificado;
La figura 15 es un diagrama de flujo que ilustra un procedimiento particular de decodificar un paquete de audio que incluye una secuencia de bits particular;
La figura 16 es un diagrama de bloques de un dispositivo inalámbrico que funciona para realizar operaciones de acuerdo con los sistemas y procedimientos de las figuras 1-15; y
La figura 17 es un diagrama de bloques de una estación base que funciona para realizar operaciones de acuerdo con los sistemas y procedimientos de las figuras 1 -15.
VI. Descripción detallada
[0010] A continuación, se describen aspectos particulares de la presente divulgación en referencia a los dibujos. En la descripción, las características comunes se designan mediante números de referencia comunes en todos los dibujos. Como se usa en el presente documento, diversa terminología se usa con el propósito de describir implementaciones particulares solamente y no pretende ser limitante. Como se usa en el presente documento, "a modo de ejemplo" puede indicar un ejemplo, una implementación y/o un aspecto, y no debe interpretarse como limitante o como indicativo de una preferencia o una implementación preferente. Como se usa en el presente documento, un término ordinal (por ejemplo, "primero", "segundo", "tercero", etc.) usado para modificar un elemento, tal como una estructura, un componente, una operación, etc. no indica por sí mismo ninguna prioridad u orden del elemento con respecto a otro elemento, sino más bien meramente distingue el elemento de otro elemento que tenga un mismo nombre (excepto para el uso del término ordinal). Por ejemplo, las formas en singular "un", "una", "el" y "la" pretenden incluir también las formas en plural, a menos que el contexto lo indique claramente de otro modo. Puede entenderse además que los términos "comprende y "que comprende" pueden usarse indistintamente con "incluye" o "que incluye". Además, se entenderá que el término "en el que" se puede usar indistintamente con "dónde".
[0011] Se describen sistemas y procedimientos para realizar la comunicación entre redes de paquetes conmutados y redes de circuitos conmutados. Una pasarela de medios dentro de una red de paquetes conmutados (o entre una red de paquetes conmutados y una red de circuitos conmutados) puede recibir una secuencia de paquetes desde un primer dispositivo que está configurado para comunicarse con la red de paquetes conmutados. Por ejemplo, la pasarela multimedia puede recibir una secuencia de paquetes desde el primer dispositivo durante una llamada de voz entre el primer dispositivo y un segundo dispositivo que está configurado para comunicarse con una red de circuitos conmutados. Uno o más de los paquetes pueden incluir codificación asociada con múltiples tramas de audio para su uso en la compensación u ocultación de errores relacionados con la red de paquetes conmutados por la pasarela de medios. Para ilustrar, un paquete (N+2)-ésimo puede incluir codificación primaria de una trama de audio (N+2)-ésima y codificación redundante de una trama de audio N-ésima. La codificación redundante incluye uno o más bits (por ejemplo, uno o más bits de desplazamiento) utilizados por un dispositivo receptor para decodificar el paquete. Por ejemplo, el paquete (N+2)-ésimo puede incluir bits de desplazamiento que indican un desplazamiento de dos (por ejemplo, un desplazamiento entre la N-ésima trama de audio y la (N+2)-ésima trama de audio).
[0012] La pasarela multimedia se puede configurar para enviar paquetes a un intervalo fijo (por ejemplo, 20 milisegundos entre paquetes) al segundo dispositivo a través de la red de circuitos conmutados. Debido a las condiciones de red en la red de paquetes conmutados, uno o más de los paquetes pueden estar dañados o la pasarela de medios no puede recibir uno o más de los paquetes. Para ocultar errores de corrupción o errores de recepción (o para compensar los errores), la pasarela multimedia puede usar datos redundantes de una trama de audio diferente para generar una trama modificada para proporcionar al segundo dispositivo. Por ejemplo, si se produce un error con respecto a la recepción del N-ésimo paquete en la pasarela de medios y el paquete (N+2)-ésimo se recibe correctamente, la pasarela de medios puede usar el paquete (N+2)-ésimo para generar un paquete modificado para ser enviado al segundo dispositivo durante un intervalo de tiempo asociado con la N-ésima trama de audio. El paquete modificado puede incluir al menos la codificación redundante de la N-ésima trama y una indicación para decodificar la codificación redundante. En una implementación particular, un bit de señalización (por ejemplo, un valor del bit de señalización) puede indicar la información de señalización, y el bit de señalización puede colocarse dentro del paquete modificado. La posición del bit único dentro del paquete modificado 170 puede depender de un tipo de trama consciente del canal (CA), un tipo de codificador y un modo de ancho de banda como se especifica en un estándar EVS. El bit de señalización puede reemplazar un bit de la codificación primaria o un bit de la codificación redundante. Alternativamente, el bit de señalización puede estar situado en otra ubicación de la carga útil del paquete modificado. En otra implementación particular, la pasarela de medios puede modificar el paquete (N+2)-ésimo incluyendo uno o más bits de la codificación redundante (por ejemplo, en los bits de desplazamiento), el uno o más bits (por ejemplo, un valor de uno o más bits) que indican la información de señalización. En una implementación alternativa, la pasarela de medios puede modificar el paquete (N+2)-ésimo incluyendo una secuencia de bits (por ejemplo, una secuencia predefinida de valores de bit) en los bits de relleno de la codificación primaria de la trama de audio (N+2)-ésima. La información de señalización (por ejemplo, el bit de señalización) o la secuencia de bits indica al segundo dispositivo que la codificación redundante del N-ésimo paquete debe decodificarse para generar una trama de audio. Al proporcionar un paquete modificado que incluye codificación redundante en lugar de un paquete asociado con un error, la pasarela de medios puede ocultar (o compensar) los errores causados por las condiciones de red de la red de paquetes conmutados.
[0013] En una implementación particular, la pasarela de medios puede modificar la codificación redundante completa (por ejemplo, a todos los valores cero, a todos los valores uno, a alternar valores uno y valores cero, o a alguna otra secuencia de bits única que no sea generada por un codificador-decodificador (CODEC) durante la generación de codificación redundante) del paquete para indicar que la codificación primaria del paquete se decodificará en el segundo dispositivo (por ejemplo, de la red de circuitos conmutados). Por ejemplo, si el N-ésimo paquete está disponible (por ejemplo, en una memoria intermedia de eliminación de variación de retardo accesible a la pasarela de medios), entonces la pasarela de medios puede enviar un paquete enésimo modificado modificando la codificación redundante completa de la segunda trama de audio en el paquete N-ésimo para indicar que la codificación primaria en el N-ésimo paquete modificado debe decodificarse en un intervalo de tiempo correspondiente a N en el segundo dispositivo. El segundo dispositivo (por ejemplo, un procesador del segundo dispositivo) puede identificar esta modificación en la codificación redundante del N-ésimo paquete modificado y determinar que la codificación primaria del N-ésimo paquete modificado debe decodificarse. En otro ejemplo, si el N-ésimo paquete no está disponible y hay un paquete futuro (por ejemplo, un paquete (N+2)-ésimo que contiene la codificación redundante de la segunda trama de audio) está disponible (por ejemplo, en la memoria intermedia de eliminación de variación de retardo), entonces la pasarela de medios puede enviar el paquete no modificado (N+2)-ésimo al segundo dispositivo a través de la red de circuitos conmutados. El segundo dispositivo (por ejemplo, un procesador del segundo dispositivo) puede determinar que la codificación redundante no se ha modificado, y en base a esta determinación, el segundo dispositivo puede decodificar la codificación redundante. El paquete futuro recibido (por ejemplo, el (N+2)-ésimo paquete con la codificación redundante no modificada) puede almacenarse en una memoria del segundo dispositivo para su uso en la decodificación previa a la redundancia si no se recibe un paquete correspondiente durante el (N+2)-ésimo intervalo de tiempo en el segundo dispositivo.
[0014] Adicional o alternativamente, el segundo dispositivo (de la red de circuitos conmutados) puede configurarse para ocultar (o compensar) los errores debidos a las condiciones de red de la red de paquetes conmutados o la red de circuitos conmutados. Para ilustrar, debido a un error en la red de paquetes conmutados, el segundo dispositivo puede recibir un paquete que incluye la codificación primaria de la (N+2)-ésima trama de audio y la codificación redundante de la N-ésima trama de audio durante un intervalo de tiempo asociado con la N-ésima trama de audio. Basado en un indicador (por ejemplo, la información de señalización o la secuencia de bits), el segundo dispositivo puede decodificar la codificación redundante para generar una trama de audio para la reproducción en el segundo dispositivo. Además, el segundo dispositivo puede almacenar una copia de la codificación primaria de la trama de audio (N+2)-ésima en una memoria. El segundo dispositivo puede recuperar la copia de la codificación primaria de la trama de audio (N+2)-ésima de la memoria. Por ejemplo, si, debido a una condición de error de la red de circuitos conmutados, el segundo dispositivo experimenta un error de paquete durante un intervalo de tiempo asociado con la trama de audio (N+2)-ésima, el segundo dispositivo puede recuperar la copia del primario codificación de la trama de audio (N+2)-ésima desde la memoria. El segundo dispositivo puede decodificar la copia de la codificación primaria de la trama de audio (N+2)-ésima para generar una trama de audio para la reproducción en el segundo dispositivo. Al almacenar copias de la codificación que no se utilizan durante la decodificación, el segundo dispositivo puede ser capaz de ocultar (o compensar) los errores de paquetes causados por las condiciones de red de la red de circuitos conmutados.
[0015] Con referencia a la figura 1, se muestra un ejemplo ilustrativo particular de un sistema configurado para comunicar información de trama redundante e información de señalización entre una red de paquetes conmutados y una red de circuitos conmutados, y generalmente se designa como 100. El sistema 100 incluye un primer dispositivo 102, una pasarela de medios 120 y un segundo dispositivo 140. La pasarela de medios 120 puede configurarse para facilitar la comunicación de datos, tales como tramas de audio, entre el primer dispositivo 102 y el segundo dispositivo 140. Para ilustrar, el primer dispositivo 102 puede comunicar tramas de audio a la pasarela de medios 120 a través de una red de paquetes conmutados 152, y la pasarela de medios 120 puede comunicar tramas de audio al segundo dispositivo 140 a través de una red de circuitos conmutados 154. La red de paquetes conmutados 152 puede incluir una red VoIP, una red VoLTE u otra red de paquetes conmutados. La red de circuitos conmutados 154 puede incluir una red PSTN, una red GSM u otra red de circuitos conmutados. En una implementación particular, el primer dispositivo 102, el segundo dispositivo 140, o ambos pueden incluir un dispositivo de comunicación, un auricular, un decodificador, un teléfono inteligente, un teléfono celular, un dispositivo de comunicación móvil, un ordenador portátil, un ordenador, un tableta, un asistente digital personal (PDA), un decodificador, un reproductor de video, una unidad de entretenimiento, un dispositivo de visualización, un televisor, una consola de juegos, un reproductor de música, una radio, un reproductor de video digital, un disco de video digital (DVD), un sintonizador, una cámara, un dispositivo de navegación, un vehículo, un componente a bordo de un vehículo o una combinación de ambos. Aunque el primer dispositivo 102 se describe aquí como paquetes de transmisión y el segundo dispositivo 140 se describe como paquetes de recepción, en otras implementaciones el primer dispositivo 102 puede recibir paquetes desde el segundo dispositivo 140. Por consiguiente, la ilustración de la figura 1 no es limitante.
[0016] El primer dispositivo 102 puede incluir un procesador 104 (por ejemplo, una unidad central de procesamiento (CPU), un procesador de señales digitales (DSP), etc.), y una memoria 106. En una implementación particular, la memoria 106 almacena instrucciones ejecutables por el procesador 104 para realizar diversas operaciones descritas en el presente documento. El primer dispositivo 102 también puede incluir un codificador 108 y una interfaz de red 110. El codificador 108 puede codificar tramas de audio que son transmitidas por la interfaz de red 110. En una implementación particular, el codificador 108 puede ser parte de un codificador de voz (un codificador-decodificador de voz) que está configurado para realizar operaciones de codificación y decodificación. La interfaz de red 110 puede configurarse para transmitir y recibir datos, tales como paquetes que contienen las tramas de audio, a través de la red de paquetes conmutados 152. La interfaz de red 110 puede estar acoplada a un transmisor, un receptor o un transceptor para permitir la transmisión y la recepción de los datos a través de la red de paquetes conmutados 152.
[0017] El codificador 108 puede codificar una secuencia de tramas de audio para generar una secuencia de paquetes (por ejemplo, paquetes de audio). En una implementación particular, la secuencia de tramas de audio incluye múltiples tramas de audio, como una trama de audio (N-1 )-ésima, una trama de audio N-ésima, una trama de audio (N+1 )-ésima y una trama de audio (N+2)-ésima. Las tramas de audio pueden ser parte de una secuencia de tramas de audio que se descodificarán para producir una salida de audio en el segundo dispositivo 140. La secuencia de tramas de audio puede corresponder al audio de una sesión de comunicación, como una llamada de voz, como un ejemplo particular. El primer dispositivo 102 puede transmitir la secuencia de paquetes, incluyendo un paquete 160 ilustrativo, a la pasarela de medios 120 a través de la red de paquetes conmutados 152. Como se describe adicionalmente en el presente documento, los paquetes pueden recibirse fuera de servicio en la pasarela de medios 120 o pueden perderse debido a las condiciones de red de la red de paquetes conmutados 152.
[0018] Cada paquete de la secuencia de paquetes puede incluir partes de una o más tramas de audio. Por ejemplo, cada paquete puede incluir una señal codificada de banda baja ("núcleo LB") y parámetros de banda alta ("parámetros HB") de una o más tramas de audio. El núcleo LB y los parámetros HB de una trama de audio pueden denominarse colectivamente codificación primaria de la trama de audio. En una implementación particular, cada uno de los paquetes (o las tramas de audio) tiene un tamaño fijo, y la cantidad de ancho de banda (por ejemplo, número de bits de una trama de audio) asignada al núcleo LB codificado y a los parámetros HB puede ser dinámicamente ajustado de trama de audio a trama de audio. Para mejorar el rendimiento de decodificación de audio en presencia de errores de red en la red de paquetes conmutados 152, una o más de las tramas de audio pueden incluir información de codificación "redundante" de una trama de audio anterior. La información de codificación redundante puede incluir información de codificación redundante de banda baja, codificación redundante de parámetros de banda alta, o ambas. La información de codificación redundante para la banda baja y la banda alta de una trama de audio anterior se puede denominar colectivamente como una "copia parcial" de la trama de audio anterior. En una implementación particular, la cantidad de ancho de banda asignada a la información de codificación redundante de banda baja y a la información de codificación redundante de banda alta puede ajustarse dinámicamente de trama de audio a trama de audio.
[0019] En una implementación particular, la información de codificación redundante de HB a LB varía entre una división [25 %, 75 %] y una división [5 %, 95 %]. Como ejemplo, la velocidad de bits de codificación nominal para una trama de audio puede ser de 13,2 kilobits por segundo (kps, alternativamente abreviada como kbps) cuando no se incluye información de codificación redundante en la trama de audio. Para acomodar la información de codificación redundante, la velocidad de codificación para el núcleo LB y los parámetros HB de la trama de audio puede reducirse a 9,6 kps. El ancho de banda restante de 3,6 kps se puede usar para codificar la información de codificación redundante HB y LB para una trama de audio anterior, donde la división entre la información de codificación redundante HB y LB puede variar de una trama de audio a una trama de audio entre una división [25 %, 75 %] y una división [5 %, 95 %]. Como otro ejemplo, la codificación primaria puede usar 11,6 kps mientras que la codificación redundante puede usar 1,6 kps del total de 13,2 kps. Como otro ejemplo, la codificación primaria puede usar 12,6 kps mientras que la codificación redundante puede usar 0,6 kps del total de 13,2 kps. En otras implementaciones, las velocidades de bits y las divisiones pueden ser diferentes. Las velocidades de bits y las divisiones pueden ser determinadas por el codificador 108 basándose en parámetros controlados por la fuente y condiciones de red o canal.
[0020] Para ilustrar, el codificador 108 puede codificar la codificación redundante 164 de una segunda trama de audio en el paquete 160 que incluye la codificación primaria 162 de una primera trama de audio. Por ejemplo, la primera trama de audio puede ser la trama de audio (N+2)-ésima y la segunda trama de audio puede ser la N-ésima trama de audio. En este ejemplo, el paquete 160 incluye la codificación primaria 160 de la (N+2)-ésima trama de audio y la codificación secundaria 164 de la N-ésima trama de audio. Cuando los paquetes que contienen tramas de audio se comunican a través de la red de paquetes conmutados 152, cada paquete puede enrutarse individualmente a un dispositivo de destino y las tramas de audio pueden llegar fuera de servicio. Por lo tanto, incluso si un paquete que incluye la codificación primaria de la segunda trama de audio (por ejemplo, la N-ésima trama de audio) puede estar dañada o no puede llegar a la pasarela de medios 120 (denominado colectivamente en el presente documento como "un error de recepción" o como el paquete está "no disponible"), el paquete 160 puede llegar (o puede que ya haya llegado) a la pasarela de medios 120 intacta. La codificación redundante 164 en el paquete 160 puede ser utilizada por la pasarela de medios 120 para reconstruir la segunda trama de audio (o una parte de la misma) o para compensar (u ocultar) un error causado por el error de recepción.
[0021] El paquete 160 también puede incluir uno o más bits 166 dentro de la codificación redundante 164 de la segunda trama de audio. El uno o más bits 166 pueden ser utilizados por un dispositivo receptor (por ejemplo, la pasarela de medios 120 o el segundo dispositivo 140) para facilitar la decodificación de la segunda trama de audio. En una implementación particular, el uno o más bits 166 del paquete 160 corresponden a bits de desplazamiento. Los bits de desplazamiento pueden indicar un desplazamiento entre la primera trama de audio y la segunda trama de audio en la secuencia de tramas de audio. Por ejemplo, los bits de desplazamiento pueden indicar, para el paquete 160, que el desplazamiento es dos. Para ilustrar, la primera trama de audio (por ejemplo, la (N+2)-ésima trama de audio) está desplazada de la segunda trama de audio (por ejemplo, la N-ésima trama de audio) por dos tramas de audio en la secuencia de tramas de audio. El valor del desplazamiento puede definirse por un estándar de la industria (por ejemplo, un estándar de servicios de voz mejorados (EVS)), puede ser negociado por el primer dispositivo 102 y el segundo dispositivo 140, puede determinarse en base a errores de red medidos o estimados, o una combinación de los mismos. En una implementación particular, el desplazamiento puede ser dos tramas, tres tramas, cinco tramas o siete tramas. En otras implementaciones, el desplazamiento puede ser un número diferente de tramas. El desplazamiento para cada paquete puede ser diferente. Por ejemplo, el desplazamiento de un segundo paquete puede ser tres (por ejemplo, el segundo paquete puede incluir la codificación primaria de la (N+2)-ésima trama de audio, la codificación redundante de la (N-1)-ésima trama de audio). En otras implementaciones, el uno o más bits 166 del paquete 160 pueden corresponder a un indicador de tipo de códec, un indicador de trama de redundancia, un indicador agudo, un indicador de modo, un parámetro de capas de extensión de ancho de banda (BWE), o una combinación de los mismos, como se describe adicionalmente con referencia a la figura 3.
[0022] La pasarela de medios 120 incluye un procesador 122 y una memoria 124. En una implementación particular, la memoria 124 almacena instrucciones ejecutables por el procesador 122 para realizar diversas operaciones descritas en el presente documento. La pasarela de medios 120 también incluye una primera interfaz de red 126 y una segunda interfaz de red 128. La primera interfaz de red 126 puede ser una interfaz de red de paquetes conmutados que está configurada para recibir el paquete 160 a través de la red de paquetes conmutados 152. La segunda interfaz de red 128 puede ser una interfaz de red de circuitos conmutados que está configurada para transmitir paquetes modificados, tales como el paquete ilustrativo modificado 170, a través de la red 154 de circuitos conmutados.
[0023] En una implementación particular, la pasarela de medios 120 incluye una memoria intermedia, que se ilustra en la figura 1 como una memoria intermedia de eliminación de variación de retardo 130. La combinación del procesador 122 y la memoria intermedia de eliminación de variación de retardo 130 (o cualquier componente que realice las funciones descritas con referencia al procesador 122 y la memoria intermedia de eliminación de variación de retardo 130) también puede denominarse gestión de memoria intermedia de variación de retardo (JBM). La primera interfaz de red 126 (o el procesador 122) puede almacenar los paquetes recibidos (por ejemplo, tramas de audio) en la memoria intermedia de eliminación de variación de retardo 130. Debido a que los paquetes transmitidos a través de redes de paquetes conmutados pueden llegar fuera de servicio, la memoria intermedia de eliminación de variación de retardo 130 puede usarse para almacenar y reordenar los paquetes recibidos en función de identificadores en los paquetes, tales como marcas de tiempo o números de secuencia. En presencia de errores de red (por ejemplo, errores de recepción), uno o más paquetes (o parte(s) de los mismos) pueden no recibirse o pueden estar corruptos. La pasarela de medios 120 puede almacenar los paquetes en la memoria intermedia de eliminación de variación de retardo 130 para usarse para generar paquetes modificados que compensan (u ocultan) los errores de recepción en la pasarela de medios 120 (por ejemplo, errores de red en la red de paquetes conmutados 152).
[0024] La pasarela de medios 120 puede configurarse para proporcionar paquetes al segundo dispositivo 140 a través de la red de circuitos conmutados 154 a un intervalo fijo, de acuerdo con uno o más ajustes o como se define en un estándar de red de circuitos conmutados. Por ejemplo, la pasarela de medios 120 puede transmitir paquetes al segundo dispositivo 140 a intervalos de 20 milisegundos. Si cada paquete se recibe sin error desde el primer dispositivo 102, la pasarela de medios 120 puede reenviar los paquetes para el segundo dispositivo 140 a través de la red de circuitos conmutados 154. Sin embargo, debido a errores de red, uno o más de los paquetes pueden no estar disponibles (por ejemplo, uno o más paquetes (o parte(s) de los mismos) pueden estar corruptos o no recibirlos).
[0025] Para compensar (u ocultar) la falta de disponibilidad de una trama de audio particular, la pasarela de medios 120 puede configurarse para transmitir un paquete modificado basado en un paquete diferente (por ejemplo, un paquete que incluye codificación redundante de la trama de audio particular). Por ejemplo, si hay un error al recibir un paquete que incluye la codificación primaria de la segunda trama de audio (por ejemplo, la N-ésima trama de audio), la pasarela de medios 120 puede modificar el paquete 160 para generar el paquete modificado 170 y el paquete modificado 170 puede transmitirse al segundo dispositivo 140. Además, si no hay error al recibir el N-ésimo paquete (por ejemplo, un paquete que incluye la codificación primaria de la segunda trama de audio), la pasarela de medios 120 puede modificar el N-ésimo paquete para generar el paquete modificado 170, y la información de señalización 172 puede indicar que la codificación primaria en el paquete 170 modificado debe decodificarse. En una implementación particular ilustrada en la figura 1, el procesador 122 puede configurarse para generar el paquete modificado 170 representando la información de señalización 172 en uno o más bits 166 de la codificación redundante 164. En otras implementaciones, la información de señalización 172 se puede incluir en (por ejemplo, representada por) otras ubicaciones de bits (otras posiciones de bits) en el paquete modificado 170, como se describe adicionalmente en el presente documento.
[0026] La información de señalización 172 puede corresponder a la decodificación de la codificación primaria 162 o la codificación redundante 164. Por ejemplo, la información de señalización 172 puede indicar si decodificar la codificación primaria 162 o la codificación redundante 164. En una implementación particular, la información de señalización 172 puede reemplazar el uno o más bits 166. Por ejemplo, un campo de desplazamiento del paquete modificado 170 puede indicar la información de señalización 172. Alternativamente, el uno o más bits 166 pueden indicar la información de señalización 172 además de otra información, tal como información de enlace de radio, una tasa de error de canal o información de control de potencia, como ejemplos no limitantes. Como se describió anteriormente, la información de señalización 172 indica qué porción de un paquete (por ejemplo, la codificación primaria o la codificación redundante) a decodificar. En algunas implementaciones, un solo bit de señalización indica la información de señalización 172. El único bit de señalización puede colocarse dentro del paquete modificado 170. Por ejemplo, el bit de señalización único puede colocarse dentro de la codificación primaria 162 de la primera trama de audio o dentro de la codificación redundante 164 de la segunda trama de audio. Alternativamente, el bit de señalización único puede colocarse en otra ubicación en la carga útil del paquete modificado 170. La posición precisa del bit de señalización individual dentro del paquete modificado 170 puede depender de un tipo de trama con reconocimiento de canal (CA), un tipo de codificador, un modo de ancho de banda (por ejemplo, modo de banda súper ancha (swb) o modo de banda ancha (wb)), o una combinación de los mismos, y puede ser prescrito por uno o más estándares de la industria, como el estándar de servicios de voz mejorados (EVS). Por ejemplo, en una implementación, la ubicación del bit de señalización único puede determinarse en función de la siguiente tabla:
Tabla 1
Figure imgf000008_0001
[0027] La Tabla 1 ilustra ejemplos particulares de posicionamiento de un bit de señalización (por ejemplo, la información de señalización 172). El posicionamiento del bit de señalización puede depender del tipo de trama CA, el tipo de codificador y el modo (por ejemplo, swb o wb). La posición del bit se indica en la Tabla 1 por b [posición del bit]. Por ejemplo, b[175] indica que el bit de señalización es el 175° bit de la trama. En un ejemplo particular, la trama CA es una trama CA tipo 3, el codificador es un codificador tipo 3 y la pasarela de medios 120 funciona en modo swb. En este ejemplo, el bit de señalización se encuentra en la posición del bit 229 del paquete modificado 170.
[0028] El procesador 122 puede configurarse para generar el paquete modificado 170 en respuesta a una determinación de que un segundo paquete que incluye la codificación primaria de la segunda trama de audio no está disponible. Una determinación de que el segundo paquete no está disponible puede basarse en una determinación de que el segundo paquete está dañado. Alternativamente, una determinación de que el segundo paquete no está disponible puede basarse en una determinación de que el segundo paquete no se ha recibido. El paquete 170 modificado puede transmitirse durante un intervalo de tiempo asociado con la segunda trama de audio, como se describe adicionalmente con referencia a la figura 2.
[0029] Para ilustrar, si el paquete que incluye la codificación primaria de la N-ésima trama de audio no está disponible y el paquete 160 (incluyendo la codificación redundante 164 de la N-ésima trama de audio) está disponible, el procesador 122 puede generar el paquete 170 modificado basado en el paquete 160. Para generar el paquete modificado 170, el procesador 122 puede incluir uno o más bits 166, que indican la información de señalización 172, en la codificación redundante 164. La información de señalización 172 puede indicar que la codificación redundante 164 debe decodificarse. Como ejemplo ilustrativo, la pasarela de medios 120 puede funcionar en un modo de operación mejorado de canal de servicios de voz (EVS-CA), y la pasarela de medios 120 puede detectar una indisponibilidad (o error) de una N-ésima trama de audio. La pasarela de medios 120 puede recibir la codificación redundante 164 de la segunda trama de audio en el paquete 160, que incluye la codificación primaria 162 de la N-ésima trama de audio. La pasarela de medios 120 puede configurarse para codificar y transmitir la codificación redundante 164 de una N-ésima trama de audio junto con la codificación primaria 162 de una futura trama de audio (N+k)-ésima como el paquete modificado 170. El paquete modificado 170 puede transmitirse al segundo dispositivo 140. Un parámetro de desplazamiento, k, puede indicar una separación entre la codificación primaria 162 de la trama de audio y la codificación redundante 164 de la trama de audio. En una implementación particular, el paquete modificado 170 incluye un primer valor de bit que representa el desplazamiento k, un segundo valor de bit que indica que la pasarela de medios 120 está funcionando en un modo de reconocimiento de canal, y un tercer valor de bit correspondiente a un índice de longitud de la codificación redundante 164 de la N-ésima trama de audio. Además, el bit de señalización (por ejemplo, la información de señalización 172) puede establecerse en un valor lógico. El valor lógico del bit de señalización indica que la codificación redundante 164 de la N-ésima trama debe ser decodificada por el segundo dispositivo 140. Establecer el bit de señalización en el valor lógico puede indicar un borrado de trama (u otro error) asociado con la N-ésima trama al segundo dispositivo 140.
[0030] En ciertos casos, como si la pasarela de medios 120 no recibe el enésimo paquete y el (N+k)-ésimo paquete, la pasarela de medios 120 puede señalar un borrado de trama al abstenerse de enviar el paquete modificado 170 al segundo dispositivo 140. Además o alternativamente, si el paquete no incluye un bit de señalización (por ejemplo, si el paquete tiene un tipo de CA 0, 1 o 7 como en la Tabla 1), la pasarela de medios 120 puede señalar un borrado de trama al abstenerse de enviar el modificado paquete 170 al segundo dispositivo 140.
[0031] Después de generar el paquete modificado 170, la pasarela de medios 120 puede transmitir el paquete modificado 170 al segundo dispositivo 140 a través de la red conmutada por circuito 154. El paquete modificado 170 puede permitir que el segundo dispositivo 140 reconstruya al menos parcialmente la segunda trama de audio (por ejemplo, la N-ésima trama de audio). Alternativamente, para generar el paquete 170 modificado, el procesador 122 puede incluir uno o más bits 166, que indican la información de señalización 172, en la codificación primaria 162.
[0032] El segundo dispositivo 140 incluye un procesador 142 y una memoria 144. En una implementación particular, la memoria 144 almacena instrucciones ejecutables por el procesador 142 para realizar diversas operaciones descritas en el presente documento. El segundo dispositivo 140 incluye un decodificador 146 y una interfaz de red 148. La interfaz de red 148 puede ser una interfaz de red de circuitos conmutados que está configurada para recibir el paquete 170 modificado a través de la red 154 de circuitos conmutados. La interfaz de red 148 puede estar acoplada a un transmisor, un receptor o un transceptor para permitir la transmisión y la recepción de los datos a través de la red de circuitos conmutados 154. El decodificador 146 puede configurarse para decodificar los paquetes recibidos en la interfaz de red 148. En una implementación particular, el decodificador 146 puede ser parte de un codificador de voz (un codificador-decodificador de voz) que está configurado para realizar operaciones de codificación y decodificación.
[0033] En una implementación particular, el segundo dispositivo 140 incluye una memoria intermedia, que se ilustra en la figura 1 como memoria intermedia de redundancia previa 150. Aunque la memoria intermedia de redundancia previa 150 se ilustra como separado de la memoria 144, la memoria intermedia de redundancia previa 150 puede incluirse en la memoria 144 en algunas implementaciones. La interfaz de red 148 (o el procesador 142) puede almacenar partes no utilizadas de los paquetes recibidos (por ejemplo, tramas de audio) en la memoria intermedia de redundancia previa 150. Las porciones no utilizadas pueden almacenarse en la memoria intermedia de redundancia previa 150 y pueden recuperarse para recuperar una trama de audio correspondiente a un paquete no disponible.
[0034] Para ilustrar, el segundo dispositivo 140 puede recibir el paquete modificado 170 que incluye la codificación primaria 162 de la primera trama de audio, la codificación redundante 164 de la segunda trama de audio y la información de señalización 172. El paquete modificado 170 puede recibirse en lugar de un paquete que incluye la codificación primaria de la segunda trama de audio, que puede no haber estado disponible en la pasarela de medios 120. En base a la información de señalización 172, el segundo dispositivo 140 puede decodificar la codificación redundante 164 para generar (o recuperar) la segunda trama de audio para reproducción en el segundo dispositivo 140. Además, el segundo dispositivo 140 puede almacenar la codificación primaria 162 en la memoria intermedia de redundancia previa 150. Durante un intervalo de tiempo posterior asociado con la primera trama de audio, la pasarela de medios 120 puede transmitir el paquete 170 modificado con la información de señalización 172 que indica que la codificación primaria 162 debe decodificarse. Debido a un error de red en la red de circuitos conmutados 154, el paquete modificado 170 puede no estar disponible (por ejemplo, puede estar dañado o no haber sido recibido) durante el intervalo de tiempo posterior. El segundo dispositivo 140 puede recuperar la codificación primaria 162 de la memoria intermedia de redundancia previa 150 y puede decodificar la codificación primaria 162 de la primera trama de audio para generar el primer trama de audio (por ejemplo, la (N+2)-ésima trama de audio) para la reproducción en el segundo dispositivo 140. La codificación primaria 162 puede recuperarse en respuesta a una determinación de que un error está asociado con el intervalo de tiempo. En una implementación particular, el error se determina en base a la determinación de que un segundo paquete que incluye la codificación primaria de la primera trama de audio está dañado. Alternativamente, el error se determina basándose en la determinación de que un segundo paquete que incluye la codificación primaria de la primera trama de audio no se ha recibido durante el intervalo de tiempo.
[0035] La codificación primaria que se recuperará de la memoria intermedia de redundancia previa 150 puede determinarse en base a un valor de desplazamiento. Por ejemplo, el valor de desplazamiento para la codificación primaria 162 de la (N+2)-ésima trama puede ser dos, y si se produce un error durante un intervalo de tiempo que tiene un desplazamiento de dos, se puede recuperar la codificación primaria 162. El valor de desplazamiento puede denominarse compensación de ocultación de error de trama (FEC). En una implementación particular, la información de señalización 172 indica el desplazamiento entre la primera trama de audio y la segunda trama de audio. Por ejemplo, la información de señalización 172 puede ser un valor de dos bits, un primer valor puede indicar que la codificación primaria 162 debe decodificarse, un segundo valor puede indicar que la codificación secundaria 164 debe decodificarse y el desplazamiento es dos, un tercer valor puede indicar que la codificación secundaria 164 debe decodificarse y el desplazamiento es tres, y un cuarto valor puede indicar que la codificación secundaria 164 debe decodificarse y el desplazamiento es cinco. En otras implementaciones, la información de señalización 172 puede tener más o menos de dos bits, y la información de señalización 172 puede indicar otros desplazamientos y otra información.
[0036] Durante el funcionamiento, el primer dispositivo 102 puede codificar y transmitir una secuencia de paquetes, incluido el paquete 160, a la pasarela de medios 120 a través de la red de paquetes conmutados 152. La pasarela de medios 120 puede almacenar en memoria intermedia los paquetes recibidos (por ejemplo, tramas de audio) en la memoria intermedia de eliminación de variación de retardo 130. La pasarela de medios 120 puede transmitir paquetes modificados al segundo dispositivo 140 a través de la red de circuitos conmutados 154 a un intervalo fijo. En algunas implementaciones, la pasarela de medios 120 puede reenviar los paquetes que se reciben si no se produce ningún error, y el segundo dispositivo 140 puede configurarse para decodificar la codificación primaria en un paquete de manera predeterminada. En otras implementaciones, la pasarela de medios 120 puede incluir información de señalización para indicar que la codificación primaria se va a decodificar. Si la pasarela de medios 120 determina que un paquete que incluye la codificación primaria de la segunda trama de audio no está disponible, la pasarela de medios 120 genera el paquete modificado 170 al incluir uno o más bits 166, que indican la información de señalización 172, en la codificación redundante 164. La información de señalización 172 corresponde a la decodificación de al menos una de la codificación primaria 162 o la codificación redundante 164. En el paquete modificado 170 ilustrado en la figura 1, la información de señalización 172 indica que la codificación redundante 164 debe decodificarse. El uno o más bits 166 incluyen bits tales como bits de desplazamiento u otros bits que se relacionan con la decodificación de la primera trama de audio o la segunda trama de audio, en contraste con otros bits que no se relacionan con la decodificación de las tramas de audio, como los bits de solicitud de modo de códec (CMR) que se relacionan con un modo de códec que se utilizará para las comunicaciones de retorno desde el segundo dispositivo 140 al primer dispositivo 102. En otras implementaciones, uno o más bits del núcleo de banda baja de la codificación redundante 164, los parámetros de banda alta de la codificación redundante 164, o una combinación de los mismos pueden indicar información de señalización 172. En otra implementación, un solo bit de la codificación redundante 164 puede indicar información de señalización 172. En una implementación particular, un valor "0" del bit único puede indicar que la codificación primaria 162 debe decodificarse, y un valor "1" del bit único puede indicar que la codificación redundante 164 debe decodificarse.
[0037] En una implementación particular, el uno o más bits 166 incluyen bits de desplazamiento, y la información de señalización 172 reemplaza los bits de desplazamiento. El reemplazo de los bits de desplazamiento en la pasarela de medios 120 puede ser aceptable en implementaciones en las que el segundo dispositivo 140 no incluye la memoria intermedia de redundancia previa 150 y no almacena copias de las tramas de audio recibidas para su uso en caso de errores en la red de circuitos conmutados 154. Alternativamente, la información de señalización 172 puede indicar el desplazamiento además de indicar si la codificación primaria 162 o la codificación redundante 164 se va a decodificar. En otra implementación particular, la codificación redundante 164 tiene una marca de agua para indicar la información de señalización 172. Por ejemplo, la codificación redundante 164 puede marcarse con agua utilizando una esteganografía de datos o una técnica de ocultación de datos para incluir la información de señalización 172. El segundo dispositivo 140 puede ser capaz de detectar y procesar la codificación redundante con marca de agua 164 para recuperar la información de señalización 172. En una implementación particular, la marca de agua dentro de la codificación redundante 164 puede usarse para indicar información de señalización 172. Alternativamente, la presencia de marcas de agua puede corresponder a la información de señalización 172. Por ejemplo, si la codificación redundante 164 tiene marca de agua, el segundo dispositivo 140 puede determinar decodificar la codificación redundante 164, y si la codificación redundante 164 no tiene marca de agua, el segundo dispositivo 140 puede determinar decodificar la codificación primaria 162. En otras implementaciones, el segundo dispositivo 140 puede decodificar la codificación primaria 162 si la codificación redundante 164 tiene marca de agua, y el segundo dispositivo 140 puede decodificar la codificación redundante 164 si la codificación redundante 164 no tiene marca de agua.
[0038] Después de recibir el paquete 170 modificado, el segundo dispositivo 140 puede decodificar una porción del paquete 170 modificado basándose en la información de señalización 172 para generar una trama de audio para reproducción en el segundo dispositivo 140. Por ejemplo, la información de señalización del paquete 170 modificado puede indicar que la codificación redundante 164 se va a decodificar, y el segundo dispositivo 140 puede decodificar la codificación redundante 164 de la segunda trama de audio (por ejemplo, la N-ésima trama de audio) para generar la segunda trama de audio para reproducción. Además, el segundo dispositivo 140 puede almacenar la codificación primaria 162 en la memoria intermedia de redundancia previa 150. Si se produce un error durante un intervalo de tiempo asociado con la primera trama de audio (por ejemplo, la (N+2)-ésima trama de audio), el segundo dispositivo 140 puede recuperar la codificación primaria 162 de la memoria intermedia de redundancia previa 150 para generar el primer audio fotograma (por ejemplo, la (N+2)-ésima trama de audio) para la reproducción.
[0039] El sistema 100 de la figura 1 permite que la pasarela de medios 120 use información de trama redundante para proporcionar paquetes modificados con información de señalización a un dispositivo de red de circuitos conmutados (por ejemplo, el segundo dispositivo 140). La información de señalización 172 indica al segundo dispositivo 140 qué porción del paquete modificado 170 se va a decodificar. Por lo tanto, un paquete que tiene codificación redundante de una trama de audio particular puede proporcionarse al segundo dispositivo 140 si un paquete que tiene codificación primaria no está disponible, y el segundo dispositivo 140 puede usar la codificación redundante para compensar (u ocultar) errores de red en la red de paquetes conmutados 152. Además, el segundo dispositivo 140 puede almacenar copias de porciones no utilizadas de paquetes en la memoria intermedia 150 previo a la redundancia. Las copias pueden recuperarse y usarse para decodificar una trama de audio particular cuando un paquete que incluye la codificación primaria de la trama de audio particular no está disponible (por ejemplo, dañado o no recibido) durante el intervalo de tiempo asociado. Por lo tanto, el segundo dispositivo 140 también puede compensar (u ocultar) errores de red en la red de circuito de conmutación 154.
[0040] En la descripción anterior, se describen diversas funciones realizadas por el sistema 100 de la figura 1 que están realizadas por determinados componentes. Sin embargo, esta división de componentes sirve solo para ilustrar. En una implementación alternativa, una función realizada por un componente particular puede, en su lugar, dividirse entre múltiples componentes. Además, en una implementación alternativa, dos o más componentes de la figura 1 pueden estar integrados en un único componente. Cada componente ilustrado en la figura 1 puede implementarse usando hardware (por ejemplo, un dispositivo de matriz de puertas programables (FPGA), un circuito integrado específico de la aplicación (ASIC), un DSP, un controlador, etc.), software (por ejemplo, instrucciones ejecutables por un procesador), o una combinación de los mismos.
[0041] Haciendo referencia a la figura 2, se muestra un diagrama de una implementación particular de modificación de una secuencia de paquetes en una pasarela de medios para indicar información de señalización y, en general, se designa 200. La pasarela de medios puede incluir o corresponder a la pasarela de medios 120 de la figura 1.
[0042] A medida que los paquetes son recibidos por la primera interfaz de red 126, los paquetes (por ejemplo, las tramas de audio) pueden almacenarse en la memoria intermedia de eliminación de variación de retardo 130. Como se describe con referencia a la figura 1, debido a las condiciones de red en la red de paquetes conmutados 152, los paquetes enviados por un dispositivo fuente (por ejemplo, el primer dispositivo 102) pueden llegar fuera de servicio, pueden estar dañados o pueden no llegar en absoluto. La pasarela de medios 120 (por ejemplo, el procesador 122) puede recuperar paquetes (por ejemplo, tramas de audio) de la memoria intermedia de eliminación de variación de retardo 130 de acuerdo con una secuencia de paquetes o una secuencia de tramas. Por ejemplo, los paquetes pueden recuperarse en función de números de secuencia, marcas de tiempo u otra información de secuencia incluida en los paquetes. Para ilustrar, la pasarela de medios 120 puede intentar recuperar un N-ésimo paquete 210 antes de un (N+1 )-ésimo paquete 202, y la pasarela de medios 120 puede intentar recuperar el (N+1 )-ésimo paquete 202 antes de (N+2)-ésimo paquete 160.
[0043] En una implementación particular, cada uno de los paquetes de la secuencia de paquetes incluye la codificación de múltiples tramas de audio. Por ejemplo, el enésimo paquete 210 incluye la codificación primaria 212 de la N-ésima trama de audio y la codificación redundante 214 de la (N-2)-ésima trama de audio, el (N+1)-ésimo paquete 202 incluye la codificación primaria 204 de la (N+1)-ésima trama de audio y la codificación redundante 206 de la trama de audio (N-1)-ésima, y el paquete (N+2)-ésimo 160 incluye la codificación primaria 162 de la trama de audio (N+2)-ésima y la codificación redundante 164 de la N-ésima trama de audio. Alternativamente, uno o más paquetes pueden incluir codificación de una única trama de audio (por ejemplo, codificación primaria de una única trama de audio). La codificación redundante 164, 206 y 214 también puede incluir uno o más bits 166, 208 y 216, respectivamente. El uno o más bits 216, 208 y 166 pueden incluir información asociada con las tramas de audio. Por ejemplo, el uno o más bits 216, 208 y 166 pueden ser bits desplazados. Para facilitar la ilustración, los paquetes adicionales de la secuencia de paquetes, tales como un paquete (N-1)-ésimo, un paquete (N+3)-ésimo, etc., no se muestran en la figura 2.
[0044] La pasarela de medios 120 puede proporcionar paquetes modificados al segundo dispositivo 140 a través de la red de circuitos conmutados 154 a intervalos fijos. Por ejemplo, la pasarela de medios puede proporcionar un paquete correspondiente a la N-ésima trama de audio durante un enésimo intervalo de tiempo 230, un paquete correspondiente a la (N+1)-ésima trama de audio durante un (N+1)-ésimo intervalo de tiempo 232, y un paquete correspondiente a la (N+2)-ésima trama de audio durante un (N+2)-ésimo intervalo de tiempo 234. La pasarela de medios 120 puede determinar un paquete que se modificará para proporcionar al segundo dispositivo 140 en función de si se ha recibido un paquete correspondiente desde el primer dispositivo 102 sin errores.
[0045] En el ejemplo ilustrado en la figura 2, el N-ésimo paquete 210 no está disponible para su uso en la generación de un paquete modificado. Por ejemplo, la pasarela de medios 120 puede determinar que el N-ésimo paquete 210 no está disponible en la memoria intermedia de eliminación de variación de retardo 130 (por ejemplo, que el N-ésimo paquete 210 no se ha recibido). Como otro ejemplo, la pasarela de medios 120 puede determinar que el N-ésimo paquete 210 está en la memoria intermedia de eliminación de variación de retardo 130, pero puede ocurrir un error durante la decodificación del N-ésimo paquete 210 (por ejemplo, el N-ésimo paquete 210, o una parte del mismo, es corrupto). Basado en una determinación de que el N-ésimo paquete 210 no está disponible (debido a corrupción o no se recibe), la pasarela de medios 120 puede verificar si la información de trama redundante para la N-ésima trama de audio está disponible en la memoria intermedia de eliminación de variación de retardo 130. Por ejemplo, la pasarela de medios 120 puede verificar cada paquete en la memoria intermedia de eliminación de variación de retardo 130, y basándose en un identificador (por ejemplo, un identificador de secuencia, una marca de tiempo, etc.) y un valor de desplazamiento, la pasarela de medios 120 puede determinar si es redundante la información de la N-ésima trama de audio está disponible.
[0046] Como se ilustra en la figura 2, el (N+2)-ésimo paquete 160 incluye la codificación redundante 164 de la N-ésima trama de audio. La pasarela de medios 120 puede generar el paquete 170 modificado modificando el (N+2)-ésimo paquete 160 (por ejemplo, la codificación redundante 164) para indicar la información de señalización 172 que especifica que la codificación redundante 164 debe decodificarse. Después de generar el paquete modificado 170, la pasarela de medios 120 puede transmitir el paquete modificado 170 al segundo dispositivo 140 durante el N-ésimo intervalo de tiempo 230. El segundo dispositivo 140 puede recibir el paquete modificado 170 con la información de señalización 172, decodificar la codificación redundante 164 de la N-ésima trama de audio basándose en la información de señalización 172, y generar la N-ésima trama de audio para reproducción en el segundo dispositivo 140. Por lo tanto, el paquete modificado 170 con la información de señalización 172 puede permitir que el segundo dispositivo 140 compense (u oculte) un error en la red de paquetes conmutados 152. Si el paquete 160 que incluye la codificación redundante 164 de la N-ésima trama de audio no está disponible en la memoria intermedia de eliminación de variación de retardo 130, la pasarela de medios 120 puede realizar una operación de ocultación de error diferente. Aunque se ilustra en la figura 2 como se incluye en la codificación redundante, en otras implementaciones, uno o más bits pueden incluirse en otras porciones de paquetes modificados para indicar información de señalización. Por ejemplo, una codificación primaria de paquetes modificados puede indicar información de señalización. Como otro ejemplo, otras porciones de cargas útiles de paquetes modificados pueden indicar información de señalización, como se describe adicionalmente con referencia a la figura 3.
[0047] Si se recibe un paquete correspondiente sin error en la pasarela de medios 120, la pasarela de medios 120 puede modificar el paquete para incluir uno o más bits para indicar información de señalización. Por ejemplo, el uno o más bits que especifican que la codificación primaria se va a decodificar. La pasarela de medios 120 puede transmitir el paquete modificado al segundo dispositivo 140 durante el intervalo de tiempo correspondiente. Por ejemplo, la pasarela de medios 120 puede recibir el paquete (N+1)-ésimo 202 sin error, generar el paquete modificado 220 que incluye la información de señalización 222 dentro de la codificación redundante 206 que indica que la codificación primaria 204 de la (N+1)-ésima trama de audio debe decodificarse y transmitir el paquete modificado 220 al segundo dispositivo 140 durante el (N+1 )-ésimo intervalo de tiempo 232. Como otro ejemplo, la pasarela de medios 120 puede recibir el (N+2)-ésimo paquete 160 sin error, generar el paquete modificado 250 que incluye información de señalización 252 dentro de la codificación redundante 164 que indica que la codificación primaria 162 de la (N+2)-ésima trama de audio debe decodificarse y transmitir el paquete modificado 250 al segundo dispositivo 140 durante el (N+2)-ésimo intervalo de tiempo 234. Como se ilustra en la figura 2, los paquetes modificados 170 y 250 pueden incluir la misma codificación primaria 162 y codificación redundante 164, pero la información de señalización 172 y 252 son diferentes para indicar que se deben decodificar diferentes porciones.
[0048] Por lo tanto, la figura 2 ilustra cómo la pasarela de medios 120 puede usar la codificación redundante de tramas de audio almacenadas en la memoria intermedia de eliminación de variación de retardo 130 para proporcionar una trama modificada cuando un paquete que incluye la codificación primaria de una trama de audio particular no está disponible. Proporcionar la trama modificada con información de señalización que indica que la codificación redundante de la trama de audio particular se va a decodificar permite que el segundo dispositivo 140 genere la trama de audio particular para su reproducción en el segundo dispositivo 140 y puede compensar (u ocultar) un error de red en la red de paquetes conmutados 152.
[0049] La figura 3 ilustra ejemplos de cargas útiles del paquete modificado 170 de la figura 1. Como se ilustra en la figura 3, el paquete modificado 170 incluye un encabezado 302 y una carga útil 304. El encabezado 302 puede incluir uno o más bits de encabezado. La carga útil 304 puede incluir bits de datos (por ejemplo, de la codificación primaria 162 y la codificación redundante 164) u otros bits, como se describe adicionalmente en el presente documento. La carga útil 304 puede modificarse de varias maneras para incluir uno o más bits que indican la información de señalización 172, como se ilustra en los ejemplos 310, 330, 340 y 350 de la figura 3.
[0050] La carga útil 304 puede incluir una región de codificación primaria 312 de una primera trama de audio (por ejemplo, la trama de audio (N+2)-ésima de las figuras 1 y 2) y una región de codificación redundante 314 de una segunda trama de audio (por ejemplo, la N-ésima trama de audio de las figuras 1 y 2). La región de codificación redundante 314 también puede incluir una región de bits de relleno 316, una región de bits de desplazamiento 328, una región de indicador de tipo de códec 318, una región de bandera de trama de redundancia 320, una región de bandera nítida 322, una región de indicador de modo 324 y una región de parámetros de capas de extensión de ancho de banda (BWE) 326. La región de codificación primaria 312 también puede incluir bits o regiones adicionales, tales como bits de relleno, que no se ilustran por conveniencia. La disposición de las regiones del paquete modificado 170 en la figura 3 es por conveniencia y no es limitante. En otras implementaciones, las regiones 312-328 pueden estar dispuestas en un orden diferente al mostrado en la figura 3. Además, se pueden omitir una o más regiones, y se pueden incluir una o más regiones adicionales en el paquete modificado 170.
Además, los tamaños de las regiones 312-328 pueden ser diferentes de los descritos en el presente documento. En una implementación particular, el número, la disposición y los tamaños de las regiones del paquete modificado 170 se definen en uno o más estándares de comunicación inalámbrica, como un estándar EVS.
[0051] La región de codificación primaria 312 incluye la codificación primaria 162 de la primera trama de audio. La codificación primaria 162 puede incluir un núcleo codificado de banda baja de la primera trama de audio y parámetros de banda alta de la primera trama de audio. La región de codificación redundante 314 puede incluir la codificación redundante 164 de la segunda trama de audio. La codificación redundante 164 puede incluir un indicador de forma de ganancia asociado con una forma de ganancia de banda alta de la segunda trama de audio. Adicional o alternativamente, la codificación redundante puede incluir un indicador de trama de ganancia de banda alta asociado con una forma de ganancia de banda alta de la primera trama de audio. Adicional o alternativamente, la codificación redundante puede incluir un indicador de par espectral de línea de banda alta (LSP) asociado con LSP de banda alta de la segunda trama de audio.
[0052] Para ilustrar, una trama de audio puede incluir una porción codificada de banda baja, denominada "núcleo de banda baja". La porción codificada de banda baja puede incluir filtro de predicción lineal de banda baja e información de excitación. Por ejemplo, la parte codificada de banda baja puede incluir índice(s) LSP de banda baja e información de excitación de banda baja. En implementaciones alternativas, el núcleo de banda baja de una trama de audio puede incluir información diferente. La trama de audio también puede incluir parámetros de banda alta. Los parámetros de banda alta ocupan menos espacio que el núcleo de banda baja codificado e incluyen un conjunto de parámetros que puede usar un decodificador, de acuerdo con un modelo de codificación de señal de audio, para reconstruir una porción de banda alta de una trama de audio. En el ejemplo de la figura 3, los parámetros de banda alta pueden incluir una información de excitación de banda baja transformada, una forma de ganancia de banda alta, una trama de ganancia de banda alta e índice(s) LSP de banda alta. En implementaciones alternativas, una trama de audio puede incluir diferentes parámetros de banda alta.
[0053] En una implementación particular, el(los) índice(s) LSP de banda baja y la información de excitación de banda baja, la información de excitación de banda baja transformada, la forma de ganancia de banda alta, la trama de ganancia de banda alta y el(los) índice(s) LSP de banda alta HB se generan durante el análisis de audio en un codificador (por ejemplo, el codificador 108 de la figura 1). Por ejemplo, una señal de audio puede pasar a través de un banco de filtros de análisis que separa la señal de audio en una señal de banda baja y una señal de banda alta. Las señales de banda baja y banda alta pueden superponerse o no. La señal de banda baja puede ingresarse en un módulo de análisis de predicción lineal (LP) que codifica una envoltura espectral de la señal de banda baja como un conjunto de coeficientes LP (LPC). Un módulo de transformación puede transformar los LPC en LSP, que alternativamente pueden denominarse pares espectrales de línea (LSP). Un cuantificador puede cuantificar los LSP identificando una entrada de un libro de códigos LSP de banda baja que esté "más cerca" de los LSP. El cuantificador puede generar el índice de la entrada en el libro de códigos como el(los) índice(s) LSP de banda baja. El módulo de análisis de banda baja también puede generar la información de excitación de banda baja y la información de excitación de banda baja transformada. Por ejemplo, la información de excitación de banda baja codificada que se genera cuantificando una señal residual LP generada durante el proceso LP realizado por el módulo de análisis LP. La señal residual LP puede representar un error de predicción.
[0054] Un módulo de análisis de banda alta puede recibir la señal de banda alta del banco de filtros de análisis y la señal de excitación de banda baja del módulo de análisis de banda baja. El módulo de análisis de banda alta puede generar los índices LSP de banda alta utilizando un proceso de codificación, transformación y cuantificación LPC similar al proceso descrito para generar el(los) índice(s) LSP de banda baja y la información de excitación de banda baja. El(los) índice(s) LSP de banda alta pueden ocupar menos bits que el(los) índice(s) LSP de banda baja. El módulo de análisis de banda alta también puede generar la forma de ganancia de banda alta y la trama de ganancia de banda alta. La forma de ganancia de banda alta y la trama de ganancia de banda alta pueden permitir que un decodificador (por ejemplo, el decodificador 146 de la figura 1) ajuste la forma de ganancia de banda alta y la ganancia de trama para reproducir con mayor precisión la señal de banda alta. La codificación primaria 162 y la codificación redundante 164 pueden incluir uno o más de los valores descritos anteriormente, con referencia a la primera trama de audio y la segunda trama de audio, respectivamente.
[0055] Volviendo al paquete modificado 170, la región de bits de relleno 316 incluye uno o más bits de relleno de la codificación redundante 164. Los bits de relleno se pueden agregar a la codificación primaria 162, la codificación redundante 164, o alguna otra porción del paquete 160 de modo que el paquete 160 (o una porción del mismo) tenga un tamaño fijo. La región de bits de desplazamiento 328 incluye uno o más bits de desplazamiento (por ejemplo, bits de desplazamiento FEC) que indican un desplazamiento entre la primera trama de audio y la segunda trama de audio en la secuencia de tramas. La región indicadora de tipo de códec 318 incluye bits que indican un tipo de códec utilizado para decodificar la primera trama de audio, la segunda trama de audio, o ambas. La región de bandera de trama de redundancia 320 incluye una bandera de trama de redundancia (RF) que indica si el paquete modificado 170 incluye información de trama redundante. La región de indicador agudo 322 incluye un indicador agudo (por ejemplo, un indicador de nitidez de tono armónico) que indica si un tono armónico de una trama de audio es "agudo". La región del indicador de modo 324 incluye un indicador de modo que indica un modo de operación a ser utilizado por un decodificador, tal como un modo de operación primario o un modo de operación de banda ancha (WB). La región de parámetros de capas BWE 326 incluye uno o más parámetros asociados con la codificación de señales de banda alta usando BWE.
[0056] La pasarela de medios 120 de la figura 1 puede configurarse para incluir el uno o más bits que indican la información de señalización 172 en el paquete modificado 170 (por ejemplo, en la codificación redundante 164) usando una variedad de técnicas. En un primer ejemplo 310, un solo bit de señalización ubicado en la carga útil 304 puede indicar la información de señalización 172. La ubicación del bit de señalización en la carga útil 304 puede depender de un tipo de trama consciente del canal (CA), un tipo de codificador, un modo de ancho de banda (por ejemplo, modo de banda súper ancha (swb) o modo de banda ancha (wb)), o una combinación de los mismos. Por ejemplo, si el tipo de trama CA tiene un primer valor, si el modo de ancho de banda es un modo swb, y si el tipo de codificador tiene un primer valor, entonces el bit de señalización puede ubicarse en una primera región de la carga útil 304. Por el contrario, si la trama CA tiene el primer valor, si el modo de ancho de banda es un modo wb, y si el tipo de codificador tiene el primer valor, entonces el bit de señalización puede ubicarse en una segunda región de la carga útil 304 que es distinta de la primera región.
[0057] En un segundo ejemplo 330 de la carga útil 304, la región de bits de desplazamiento 328 puede indicar la información de señalización 172. En una implementación particular, la información de señalización 172 puede reemplazar los bits de desplazamiento. Alternativamente, un valor de la información de señalización 172 puede representar qué trama de audio se va a decodificar y el valor de desplazamiento. En un tercer ejemplo 340 de la carga útil 304, la región de bits de relleno 316 puede indicar la información de señalización 172. La información de señalización 172 puede reemplazar algunos o todos los bits de relleno.
[0058] En un cuarto ejemplo 350 de la carga útil 304, uno o más bits de la carga útil 304 pueden tener una marca de agua para indicar información de señalización. La marca de agua se puede realizar utilizando cualquier técnica de ocultación de datos o esteganografía de datos que sea capaz de incluir datos adicionales (por ejemplo, la información de señalización 172) en los datos con marca de agua. En una implementación particular, el segundo dispositivo 140 puede configurarse para decodificar datos con marca de agua para recuperar los datos almacenados (por ejemplo, la información de señalización 172). En otras implementaciones, la presencia de marcas de agua puede ser indicativa de la información de señalización 172. Por ejemplo, la presencia de marcas de agua puede indicar que la codificación primaria 162 de la primera trama de audio debe decodificarse, y la ausencia de marcas de agua puede indicar que la codificación redundante 164 de la segunda trama de audio debe decodificarse. Alternativamente, la presencia de marcas de agua puede indicar que la codificación redundante 164 de la segunda trama de audio debe decodificarse, y la ausencia de marcas de agua puede indicar que la codificación primaria 162 de la primera trama de audio debe decodificarse. En una implementación particular, se puede aplicar una primera marca de agua 352 a la codificación primaria 162 para incluir la información de señalización 172. En otra implementación particular, se puede aplicar una segunda marca de agua 354 a la codificación redundante 164 para incluir la información de señalización 172. En otra implementación particular, se puede aplicar una tercera marca de agua 356 a los datos en una o más de las regiones 316-328 para incluir la información de señalización 172.
[0059] En un quinto ejemplo (no representado), uno o más bits de la región del indicador del tipo de códec, la región del indicador de trama de redundancia, la región del indicador agudo, la región del indicador de modo, la región del parámetro de capas BWE o una combinación de las mismas puede indicar la señalización información. La información de señalización puede reemplazar uno o más bits de cualquiera de las regiones en este ejemplo. En una implementación particular, la información de señalización también puede incorporar la información de los bits reemplazados. Por ejemplo, un valor de la información de señalización puede indicar si se debe decodificar la codificación primaria o la codificación redundante y además puede indicar el desplazamiento entre la primera trama de audio y la segunda trama de audio.
[0060] Por lo tanto, la figura 3 ilustra varias técnicas para generar un paquete modificado que incluye uno o más bits que indican información de señalización 172. Debido a que la información de señalización 172 está incluida en el paquete modificado 170, el segundo dispositivo 140 puede saber qué trama de audio (por ejemplo, la codificación primaria 162 de la primera trama de audio o la codificación redundante 164 de la segunda trama de audio) se decodifica para generar una trama de audio particular. Por lo tanto, los dispositivos en una red de circuitos conmutados pueden usar paquetes que tienen información redundante para compensar (u ocultar) los errores de red de una red de paquetes conmutados.
[0061] En referencia a la figura 4, se muestra un diagrama de una primera implementación de recuperación de información de trama no utilizada para generar tramas de audio y generalmente se designa como 400. La información de trama no utilizada puede almacenarse en la memoria de un dispositivo de destino en una red de circuitos conmutados. El dispositivo de destino puede incluir o corresponder al segundo dispositivo 140 en la red de circuitos conmutados 154 de la figura 1.
[0062] A medida que los paquetes son recibidos por la interfaz de red 148, los paquetes pueden decodificarse y una parte de los paquetes puede usarse para generar tramas de audio para reproducción en el segundo dispositivo 140. La parte que no se usa para decodificar las tramas de audio puede almacenarse en la memoria 144, tal como la memoria intermedia de redundancia previa 150, y puede recuperarse si se produce un error de paquete. Como se describe con referencia a la figura 1, los paquetes pueden recibirse en un orden particular a intervalos fijos. Sin embargo, debido a las condiciones de la red en la red de circuitos conmutados 154, uno o más de los paquetes enviados por la pasarela de medios 120 pueden estar dañados o no llegar en absoluto. Por ejemplo, el segundo dispositivo 140 puede recibir el (N+2)-ésimo paquete modificado 170 durante un N-ésimo intervalo de tiempo 440. En una implementación particular, el paquete modificado 170 se recibe desde la pasarela de medios 120 durante el N-ésimo intervalo de tiempo 440 en respuesta a un error asociado con la recepción de la codificación primaria de la N-ésima trama de audio en la pasarela de medios 120, como se describe con referencia a la figura 2. El segundo dispositivo 140 también puede recibir un paquete 402 modificado (N+1)-ésimo durante un (N+1)-ésimo intervalo de tiempo 442. Debido a un error de red, un (N+2)-ésimo paquete modificado 410 puede no recibirse correctamente durante un (N+2)-ésimo intervalo de tiempo 444.
[0063] En una implementación particular, cada uno de los paquetes de la secuencia de paquetes incluye la codificación de múltiples tramas de audio. Por ejemplo, el (N+2)-ésimo paquete modificado 170 incluye la codificación primaria 162 de la (N+2)-ésima trama de audio y la codificación redundante 164 de la N-ésima trama de audio, el (N+1 )-ésimo paquete modificado 402 incluye la codificación primaria 404 de la (N+1 )-ésima trama de audio y la codificación redundante 406 de la (N-1 )-ésima trama de audio, y el (N+2)-ésimo paquete modificado 410 incluye la codificación primaria 162 de la (N 2)-ésima trama de audio y la codificación redundante 164 de la N-ésima trama de audio. Alternativamente, uno o más paquetes pueden incluir codificación de una única trama de audio (por ejemplo, codificación primaria de una única trama de audio). Se pueden incluir uno o más bits en la codificación redundante 164, 406 de los paquetes modificados 170, 402 y 410 para indicar información de señalización 172, 408 y 412, respectivamente. La información de señalización 172, 408 y 412 puede especificar qué trama de audio se va a decodificar en el paquete modificado correspondiente. Por ejemplo, la información de señalización 172 puede indicar que la codificación redundante 164 de la N-ésima trama de audio debe decodificarse, la información de señalización 408 puede indicar que la codificación primaria 404 de la (N+1 )-ésima trama de audio debe decodificarse, y la información de señalización 412 puede indicar que la codificación primaria 162 de la (N+2)-ésima trama de audio debe decodificarse. Para facilitar la ilustración, los paquetes adicionales de la secuencia de paquetes, como un (N-1)-ésimo paquete modificado, un (N+3)-ésimo paquete modificado, etc., no se muestran en la figura 4.
[0064] El segundo dispositivo 140 puede decodificar los paquetes recibidos para generar tramas de audio para reproducción en el segundo dispositivo 140. Por ejemplo, el segundo dispositivo 140 puede decodificar la codificación redundante 164 de la N-ésima trama de audio basándose en la información de señalización 172 para generar la N-ésima trama de audio 420 para reproducción en el segundo dispositivo 140. Además, el segundo dispositivo 140 puede almacenar una copia 430 de la codificación primaria 162 de la (N+2)-ésima trama de audio (por ejemplo, la porción no utilizada del paquete modificado 170) en la memoria intermedia de redundancia previa 150. Para ilustrar más, el segundo dispositivo 140 puede decodificar la codificación primaria 404 de la (N+1 )-ésima trama de audio para generar la (N+1 )-ésima trama de audio 422 para reproducir en el segundo dispositivo 140, y el segundo dispositivo 140 puede almacenar una copia 432 de la codificación redundante 406 de la (N-1)-ésima trama de audio (por ejemplo, la porción no utilizada del paquete modificado 402) en la memoria intermedia de redundancia previa 150. Alternativamente, debido a que ha pasado un intervalo de tiempo (N-1 )-ésimo, el segundo dispositivo 140 puede descartar la trama de audio (N-1 )-ésima.
[0065] En el ejemplo ilustrado en la figura 4, el (N+2)-ésimo paquete 410 no está disponible para decodificar. El segundo dispositivo 140 puede determinar que un error está asociado con el (N+2)-ésimo intervalo de tiempo 444. Por ejemplo, el segundo dispositivo 140 puede determinar que el (N+2)-ésimo paquete modificado 410 (o una parte del mismo) está dañado. Como otro ejemplo, el segundo dispositivo 140 puede determinar que el (N+2)-ésimo paquete modificado 410 no ha sido recibido. Basado en una determinación de que el (N+2)-ésimo paquete modificado 410 no está disponible (debido a corrupción o no se recibe), el segundo dispositivo 140 puede verificar si una copia de la información de trama no utilizada para la (N+2)-ésima trama de audio está disponible en la memoria intermedia de redundancia previa 150. Por ejemplo, el segundo dispositivo 140 puede verificar cada paquete en la memoria intermedia de redundancia previa 150, y basándose en un identificador (por ejemplo, un identificador de secuencia, una marca de tiempo, etc.) y un valor de desplazamiento, el segundo dispositivo 140 puede determinar si una copia de codificación del (N+2)-ésimo paquete está disponible.
[0066] Como se ilustra en la figura 4, la memoria intermedia de redundancia previa 150 almacena la copia 430 de la codificación primaria 162 de la (N+2)-ésima trama de audio. El segundo dispositivo 140 puede recuperar la copia 430 de la codificación primaria 162 de la memoria intermedia de redundancia previa 150 y puede generar la (N+2)-ésima trama de audio 424 para su reproducción en el segundo dispositivo 140 basado en la copia 430. Por lo tanto, la copia 430 de la codificación primaria 162 puede permitir que el segundo dispositivo 140 compense (u oculte) un error en la red de circuitos conmutados 154. Si una copia de la trama de audio (N+2)-ésima no está disponible en la memoria intermedia de redundancia previa 150, el segundo dispositivo 140 puede realizar una operación de ocultación de errores diferente.
[0067] Por lo tanto, la figura 4 ilustra cómo el segundo dispositivo 140 puede usar copias de porciones no utilizadas de tramas de audio almacenadas en la memoria intermedia de redundancia previa 150 para generar una trama de audio particular cuando un paquete que contiene la codificación primaria de una trama de audio particular no está disponible. La generación de la trama de audio particular para la reproducción en el segundo dispositivo 140 basándose en la copia almacenada puede compensar (u ocultar) un error de red en la red de circuitos conmutados 154.
[0068] Con referencia a la figura 5, se muestra un ejemplo ilustrativo particular de un sistema configurado para comunicar información de trama redundante usando una secuencia de bits y generalmente designado como 500. En una implementación particular, el sistema 500 incluye el primer dispositivo 102, la pasarela de medios 120 y el segundo dispositivo 140 de la figura 1. El primer dispositivo 102 puede realizar comunicaciones de datos con la pasarela de medios 120 a través de la red de paquetes conmutados 152, y la pasarela de medios 120 puede realizar comunicaciones de datos con el segundo dispositivo 140 a través de la red de circuitos conmutados 154.
[0069] Durante el funcionamiento, el primer dispositivo 102 puede codificar y transmitir una secuencia de paquetes, incluido el paquete 160, a la pasarela de medios 120 a través de la red de paquetes conmutados 152. El paquete 160 puede incluir la codificación primaria 162 de la primera trama de audio (por ejemplo, la (N+2)-ésima trama de audio) y la codificación redundante 164 de la segunda trama de audio (por ejemplo, la N-ésima trama de audio). La codificación primaria 162 puede incluir un núcleo codificado de banda baja de la primera trama de audio y parámetros de banda alta de la primera trama de audio, y la codificación redundante 164 incluye un indicador de forma de ganancia asociado con una forma de ganancia de banda alta de la segunda trama de audio, un indicador de trama de ganancia de banda alta asociada con una trama de ganancia de banda alta de la segunda trama de audio, un indicador de LSP de banda alta asociado con LSP de banda alta de la segunda trama de audio, o una combinación de los mismos, como se describe con referencia a las figuras 1 y 3.
[0070] La codificación primaria 162 puede incluir uno o más bits de relleno 502. El uno o más bits de relleno 502 pueden agregarse al paquete 160 (o a una porción específica del mismo) de modo que el paquete 160 (y/o la porción específica del mismo) mantenga un tamaño particular. Por ejemplo, 11,6 kps de un total de 13,2 kps pueden reservarse para la codificación primaria 162, pero la codificación primaria 162 puede no ser lo suficientemente grande como para ocupar los 11,6 kps completos. Para garantizar que la codificación primaria 162 tenga el tamaño fijo de 11,6 kps, el uno o más bits de relleno 502 pueden agregarse a la codificación primaria 162 de modo que la combinación de la codificación primaria 162 y el uno o más bits de relleno 502 ocupe el total 11,6 kps. Adicional o alternativamente, se pueden agregar bits de relleno a la codificación redundante 164. En otra implementación particular, el uno o más bits de relleno 502 pueden ser distintos de la codificación primaria 162 y la codificación redundante 164 (por ejemplo, de modo que el paquete 160 en su conjunto, o al menos una porción de datos/carga útil del mismo, ocupe la totalidad de 13,2 kps). El uno o más bits de relleno 502 pueden tener un valor particular, tal como todos los valores cero o todos los valores uno, que indica que uno o más bits de relleno 502 deben descartarse durante la decodificación.
[0071] La pasarela de medios 120 puede almacenar en memoria intermedia los paquetes recibidos (por ejemplo, tramas de audio) en la memoria intermedia de eliminación de variación de retardo 130. La pasarela de medios 120 puede transmitir paquetes modificados al segundo dispositivo 140 a través de la red de circuitos conmutados 154 a un intervalo fijo. Si la pasarela de medios 120 determina que un paquete que incluye una trama de audio particular no está disponible para la transmisión en un intervalo de tiempo asociado con la trama de audio particular, la pasarela de medios 120 puede intentar generar un paquete modificado para la transmisión durante el intervalo de tiempo. Por ejemplo, si la pasarela de medios 120 determina que un paquete que incluye la codificación primaria de la segunda trama de audio no está disponible, la pasarela de medios 120 genera un paquete modificado 510.
[0072] En comparación con el paquete modificado 170 de la figura 1, el paquete modificado 510 de la figura 5 incluye una secuencia de bits 512 (o la información de señalización 172). Para ilustrar, el procesador 122 puede configurarse para generar el paquete modificado 510 reemplazando al menos una parte de los bits de relleno 502 de la codificación primaria 162 con la secuencia de bits 512 (o con la información de señalización 172). La secuencia de bits 512 (o la información de señalización 172) puede indicar que la codificación redundante 164 debe decodificarse. La secuencia de bits 512 puede incluir una secuencia predeterminada de valores de bits. La secuencia predeterminada de valores de bits puede ser definida por un estándar de comunicación inalámbrica (por ejemplo, un estándar EVS, como un estándar EVS del Proyecto de Asociación de 3a Generación (3GPP)), puede ser definido por un proveedor o fabricante del primer dispositivo 102 y el segundo dispositivo 140, puede ser negociado por los dispositivos 102 y 140, o puede ser algún otro valor. En una implementación particular, la secuencia de bits 512 incluye todos los valores. Alternativamente, la secuencia de bits 512 incluye todos los valores cero. Como otro ejemplo, la secuencia de bits 512 puede incluir al menos un valor distinto de cero. En otras implementaciones, la secuencia de bits 512 incluye otros valores. En una implementación particular, la secuencia de bits 512 no reemplaza la totalidad de los bits de relleno 502 de la codificación primaria 162, de modo que una parte de los bits de relleno 502 permanece en el paquete modificado 510 junto con la codificación redundante 164 de la segunda trama de audio (por ejemplo, la N-ésima trama de audio). Alternativamente, la secuencia de bits 512 puede reemplazar una totalidad de los bits de relleno 502 de la codificación primaria 162. En otra implementación, los bits de relleno 502 pueden ser reemplazados total o parcialmente por otra información de señalización, tal como la información de señalización 172 descrita con referencia a la figura 1 y a la Tabla 1.
[0073] En una implementación particular, el paquete 160 y el paquete modificado 510 pueden incluir uno o más bits (por ejemplo, el uno o más bits 166 de la figura 1) en la codificación redundante respectiva, que no se ilustran por conveniencia. El uno o más bits pueden incluir bits de desplazamiento (por ejemplo, bits de desplazamiento FEC) u otros bits relacionados con la decodificación de la primera trama de audio o la segunda trama de audio. El paquete 160 y el paquete modificado 510 también pueden incluir uno o más bits que no están relacionados con la decodificación de la primera trama de audio y la segunda trama de audio, tales como bits CMR como un ejemplo no limitante.
[0074] El procesador 122 puede configurarse para generar el paquete modificado 510 en respuesta a una determinación de que un segundo paquete (por ejemplo, un paquete (N+2)-ésimo) que incluye la codificación primaria de la segunda trama de audio no está disponible. Como ejemplo, la determinación de que el segundo paquete no está disponible puede basarse en una determinación de que el segundo paquete (o una parte del mismo) está dañado. Como otro ejemplo, la determinación de que el segundo paquete no está disponible se puede basar en una determinación de que el segundo paquete no se ha recibido (por ejemplo, no está disponible en la memoria intermedia de eliminación de variación de retardo 130).
[0075] Después de generar el paquete modificado 510, la pasarela de medios 120 puede transmitir el paquete modificado 510 al segundo dispositivo 140 durante un intervalo de tiempo asociado con la segunda trama de audio. El segundo dispositivo 140 puede recibir el paquete modificado 510 y decodificar una porción del paquete modificado 510 en base a la secuencia de bits 512 (o la información de señalización 172) para generar la segunda trama de audio (por ejemplo, la N-ésima trama de audio) para reproducción en el segundo dispositivo 140. En una implementación particular, el procesador 142 está configurado para detectar la secuencia de bits 512 (o la información de señalización 172) dentro de una porción de los bits de relleno 502 de la codificación primaria 162. En algunas implementaciones, el segundo dispositivo 140 puede almacenar la codificación primaria 162 en la memoria intermedia de redundancia previa 150. Si se produce un error durante un intervalo de tiempo asociado con la primera trama de audio (por ejemplo, la (N+2)-ésima trama de audio), el segundo dispositivo 140 puede recuperar la codificación primaria 162 de la memoria intermedia de redundancia previa 150 para generar el primer audio fotograma (por ejemplo, la (N+2)-ésima trama de audio) para la reproducción, tal como se describe también con referencia a las figuras 1 y 4.
[0076] En una implementación alternativa, la pasarela de medios 120 puede modificar toda la codificación redundante 164 (por ejemplo, a todos los valores cero, a todos los valores uno, a los valores alternativos uno y cero, o a alguna otra secuencia de bits única que no es generada por un CODEC durante la generación de codificación redundante) del paquete 160 para indicar que la codificación primaria 162 del paquete modificado 510 debe decodificarse en el segundo dispositivo 140. Por ejemplo, si el enésimo paquete está disponible (por ejemplo, en la memoria intermedia de eliminación de variación de retardo 130), la pasarela de medios 120 puede enviar un N-ésimo paquete modificado modificando la codificación redundante completa en el N-ésimo paquete para indicar que la codificación primaria en el N-ésimo paquete modificado se decodificará en un intervalo de tiempo correspondiente a N en el segundo dispositivo 140. El segundo dispositivo 140 (por ejemplo, el procesador 122) puede identificar esta modificación en la codificación redundante del N-ésimo paquete modificado y determinar que la codificación primaria del N-ésimo paquete modificado debe decodificarse. En otro ejemplo, si el N-ésimo paquete no está disponible y un paquete futuro (por ejemplo, el (N+2)-ésimo paquete 160 que contiene la codificación redundante 164 de la segunda trama de audio) está disponible en el memoria intermedia de reducción de variación de retardo 130, entonces la pasarela de medios 120 puede enviar el paquete 160 no modificado (N+2)-ésimo al segundo dispositivo 140 a través de la red de circuitos conmutados 154. El segundo dispositivo 140 (por ejemplo, el procesador 142) puede determinar que la codificación redundante 164 no se ha modificado, y en base a esta determinación, el segundo dispositivo 140 puede decodificar la codificación redundante 164. El (N+2)-ésimo paquete no modificado 160 recibido puede almacenarse en la memoria intermedia de redundancia previa 150 para su uso en la decodificación de redundancia previa si no se recibe un paquete correspondiente durante el (N+2)-ésimo intervalo de tiempo en el segundo dispositivo 140, como se describe con referencia a las figuras 1 y 4.
[0077] El sistema 500 de la figura 5 permite que la pasarela de medios 120 use información de trama redundante para proporcionar paquetes modificados con secuencias de bits a un dispositivo de red de circuitos conmutados (por ejemplo, el segundo dispositivo 140). La secuencia de bits 512 (o la información de señalización 172) indica al segundo dispositivo 140 qué porción del paquete modificado 510 se va a decodificar. Por lo tanto, un paquete que tiene codificación redundante de una trama de audio particular puede proporcionarse al segundo dispositivo 140 si un paquete que tiene codificación primaria no está disponible, y el segundo dispositivo 140 puede usar la codificación redundante para compensar (u ocultar) errores de red en la red de paquetes conmutados 152. El segundo dispositivo 140 también puede almacenar copias de porciones no utilizadas de paquetes en la memoria intermedia de redundancia previa 150 para su uso en la compensación (u ocultación) de errores de red en la red de circuitos conmutados 154, como se describe adicionalmente con referencia a la figura 1.
[0078] En la descripción anterior, se describen diversas funciones realizadas por el sistema 500 de la figura 5 que están realizadas por determinados componentes. Sin embargo, esta división de componentes sirve solo para ilustrar. En una implementación alternativa, una función realizada por un componente particular puede, en su lugar, dividirse entre múltiples componentes. Además, en una implementación alternativa, dos o más componentes de la figura 5 pueden estar integrados en un único componente. Cada componente ilustrado en la figura 5 puede implementarse usando hardware (por ejemplo, un FPGA, un ASIC, un DSP, un controlador, etc.), software (por ejemplo, instrucciones ejecutables por un procesador), o una combinación de los mismos.
[0079] Con referencia a la figura 6, se muestra un diagrama de una implementación particular que modifica una secuencia de paquetes en una pasarela de medios para incluir una secuencia de bits y generalmente se designa 600. La pasarela de medios puede incluir o corresponder a la pasarela de medios 120 de la figura 5.
[0080] A medida que los paquetes son recibidos por la primera interfaz de red 126, los paquetes (por ejemplo, las tramas de audio) pueden almacenarse en la memoria intermedia de eliminación de variación de retardo 130. Como se describe con referencia a la figura 5, debido a las condiciones de red en la red de paquetes conmutados 152, los paquetes enviados por un dispositivo fuente (por ejemplo, el primer dispositivo 102) pueden llegar fuera de servicio, pueden estar dañados o pueden no llegar en absoluto. La pasarela de medios 120 (por ejemplo, el procesador 122) puede recuperar paquetes (por ejemplo, tramas de audio) de la memoria intermedia de eliminación de variación de retardo 130 de acuerdo con una secuencia de paquetes o una secuencia de tramas. Por ejemplo, los paquetes pueden recuperarse en función de números de secuencia, marcas de tiempo u otra información de secuencia incluida en los paquetes. Para ilustrar, la pasarela de medios 120 puede intentar recuperar un N-ésimo paquete 610 antes de un (N+1)-ésimo paquete 602, y la pasarela de medios 120 puede intentar recuperar el (N+1 )-ésimo paquete 602 antes de (N+2)-ésimo paquete 160.
[0081] En una implementación particular, cada uno de los paquetes de la secuencia de paquetes incluye la codificación de múltiples tramas de audio. Por ejemplo, el enésimo paquete 610 incluye la codificación primaria 612 de la N-ésima trama de audio y la codificación redundante 614 de la (N-2)-ésima trama de audio, el (N+1)-ésimo paquete 602 incluye la codificación primaria 604 de la (N+1)-ésima trama de audio y la codificación redundante 606 de la trama de audio (N-1)-ésima, y el paquete (N+2)-ésimo 160 incluye la codificación primaria 162 de la trama de audio (N+2)-ésima y la codificación redundante 164 de la N-ésima trama de audio. Alternativamente, uno o más paquetes pueden incluir codificación de una única trama de audio (por ejemplo, codificación primaria de una única trama de audio). La codificación primaria 162 puede incluir los bits de relleno 502, la codificación primaria 604 puede incluir los bits de relleno 608, y la codificación primaria 612 puede incluir los bits de relleno 616. En algunas implementaciones, los paquetes 610, 602 y 160 también pueden incluir bits respectivos (por ejemplo, bits de desplazamiento) relacionados con una o más de las tramas de audio del paquete correspondiente. Para facilitar la ilustración, los paquetes adicionales de la secuencia de paquetes, tales como un paquete (N-1)-ésimo, un paquete (N+3)-ésimo, etc., no se muestran en la figura 6.
[0082] La pasarela de medios 120 puede proporcionar paquetes, paquetes modificados, o ambos, al segundo dispositivo 140 a través de la red de circuitos conmutados 154 a intervalos fijos. Por ejemplo, la pasarela de medios puede proporcionar un paquete correspondiente a la N-ésima trama de audio durante un enésimo intervalo de tiempo 630, un paquete correspondiente a la (N+1)-ésima trama de audio durante un (N+1)-ésimo intervalo de tiempo 632, y un paquete correspondiente a la (N+2)-ésima trama de audio durante un (N+2)-ésimo intervalo de tiempo 634. La pasarela de medios 120 puede determinar si modificar un paquete o reenviar un paquete sin modificación en función de si se ha recibido un paquete correspondiente desde el primer dispositivo 102 sin errores.
[0083] En el ejemplo ilustrado en la figura 6, el N-ésimo paquete 610 no está disponible para su uso en la generación de un paquete modificado. Por ejemplo, la pasarela de medios 120 puede determinar que el N-ésimo paquete 610 no está disponible en la memoria intermedia de eliminación de variación de retardo 130 (por ejemplo, que el N-ésimo paquete 610 no se ha recibido). Como otro ejemplo, la pasarela de medios 120 puede determinar que el N-ésimo paquete 610 está en la memoria intermedia de eliminación de variación de retardo 130, pero puede ocurrir un error durante la decodificación del N-ésimo paquete 610 (por ejemplo, el N-ésimo paquete 610, o una parte del mismo, es corrupto). Basado en una determinación de que el N-ésimo paquete 610 no está disponible (debido a corrupción o no se recibe), la pasarela de medios 120 puede verificar si la información de trama redundante para la N-ésima trama de audio está disponible en la memoria intermedia de eliminación de variación de retardo 130. Por ejemplo, la pasarela de medios 120 puede verificar cada paquete en la memoria intermedia de eliminación de variación de retardo 130, y basándose en un identificador (por ejemplo, un identificador de secuencia, una marca de tiempo, etc.) y un valor de desplazamiento, la pasarela de medios 120 puede determinar si es redundante la información de la N-ésima trama de audio está disponible.
[0084] Como se ilustra en la figura 6, el (N+2)-ésimo paquete 160 incluye la codificación redundante 164 de la N-ésima trama de audio. La pasarela de medios 120 puede generar el paquete 510 modificado modificando el (N+2)-ésimo paquete 160 para incluir la secuencia de bits 512 (u otra información de señalización, tal como la información de señalización 172) que indica que la codificación redundante 164 debe ser descifrada. La secuencia de bits puede reemplazar una parte de (o una totalidad de) los bits de relleno 502 de la codificación primaria 162 de la (N+2)-ésima trama de audio. Después de generar el paquete modificado 510, la pasarela de medios 120 puede transmitir el paquete modificado 510 al segundo dispositivo 140 durante el N-ésimo intervalo de tiempo 630. El segundo dispositivo 140 puede recibir el paquete modificado 510 con la secuencia de bits 512 (o la información de señalización 172), detectar la secuencia de bits 512 (o la información de señalización 172) en los bits de relleno 502, decodificar la codificación redundante 164 del enésimo audio trama basada en la detección de la secuencia de bits 512, y genera la N-ésima trama de audio para reproducción en el segundo dispositivo 140. Por lo tanto, el paquete modificado 510 con la secuencia de bits 512 puede permitir que el segundo dispositivo 140 compense (u oculte) un error en la red de paquetes conmutados 152. Si el paquete 160 que incluye la codificación redundante 164 de la N-ésima trama de audio no está disponible en la memoria intermedia de eliminación de variación de retardo 130, la pasarela de medios 120 puede realizar una operación de ocultación de error diferente.
[0085] Si se recibe un paquete correspondiente sin error en la pasarela de medios 120, la pasarela de medios 120 puede reenviar el paquete al segundo dispositivo 140. Por ejemplo, la pasarela de medios 120 puede recibir el (N+1)-ésimo paquete 602 sin error y puede transmitir el paquete 602 al segundo dispositivo 140 durante el (N+1)-ésimo intervalo de tiempo 632. Como otro ejemplo, la pasarela de medios 120 puede recibir el (N+2)-ésimo paquete 160 sin error y puede transmitir el paquete 160 al segundo dispositivo 140 durante el (N+2)-ésimo intervalo de tiempo 634. En una implementación particular, los paquetes 602 y 160 pueden reenviarse sin modificación, y el segundo dispositivo 140 puede configurarse para decodificar la codificación primaria correspondiente basándose en la ausencia de la secuencia de bits 512 (o la información de señalización 172). Alternativamente, los paquetes 602 y 160 pueden incluir una segunda secuencia de bits que es distinta de la secuencia de bits 512 (u otra información de señalización, como la información de señalización 172) para indicar que la codificación primaria en cada uno de los paquetes 602 y 160 se va a decodificar.
[0086] Por lo tanto, la figura 6 ilustra cómo la pasarela de medios 120 puede usar la codificación redundante de tramas de audio almacenadas en la memoria intermedia de eliminación de variación de retardo 130 para proporcionar una trama modificada cuando un paquete que incluye la codificación primaria de una trama de audio particular no está disponible. Proporcionar la trama modificada con una secuencia de bits que indica que la codificación redundante de la trama de audio particular se va a decodificar permite que el segundo dispositivo 140 genere la trama de audio particular para su reproducción en el segundo dispositivo 140 y puede compensar (u ocultar) un error de red en la red de paquetes conmutados 152.
[0087] En referencia a la figura 7, se muestra un diagrama de una segunda implementación de recuperación de información de trama no utilizada para generar tramas de audio y generalmente se designa como 700. La información de trama no utilizada puede almacenarse en la memoria de un dispositivo de destino en una red de circuitos conmutados. El dispositivo de destino puede incluir o corresponder al segundo dispositivo 140 en la red de circuitos conmutados 154 de la figura 1.
[0088] A medida que los paquetes son recibidos por la interfaz de red 148, los paquetes pueden decodificarse y una parte de los paquetes puede usarse para generar tramas de audio para reproducción en el segundo dispositivo 140. La parte que no se usa para decodificar las tramas de audio puede almacenarse en la memoria 144, tal como la memoria intermedia de redundancia previa 150, y puede recuperarse si se produce un error de paquete. Como se describe con referencia a la figura 1, los paquetes pueden recibirse en un orden particular a intervalos fijos. Sin embargo, debido a las condiciones de la red en la red de circuitos conmutados 154, uno o más de los paquetes enviados por la pasarela de medios 120 pueden estar dañados o no llegar en absoluto. Por ejemplo, el segundo dispositivo 140 puede recibir el (N+2)-ésimo paquete modificado 170 durante un N-ésimo intervalo de tiempo 740. En una implementación particular, el paquete modificado 170 se recibe desde la pasarela de medios 120 durante el N-ésimo intervalo de tiempo 740 en respuesta a un error asociado con la recepción de la codificación primaria de la N-ésima trama de audio en la pasarela de medios 120, como se describe con referencia a la figura 2. El segundo dispositivo 140 también puede recibir un paquete 702 modificado (N+1)-ésimo durante un (N+1)-ésimo intervalo de tiempo 742. Debido a un error de red, un (N+2)-ésimo paquete modificado 710 puede no recibirse correctamente durante un (N+2)-ésimo intervalo de tiempo 744.
[0089] En una implementación particular, cada uno de los paquetes de la secuencia de paquetes incluye la codificación de múltiples tramas de audio. Por ejemplo, el (N+2)-ésimo paquete modificado 170 incluye la codificación primaria 162 de la (N+2)-ésima trama de audio y la codificación redundante 164 de la N-ésima trama de audio, el (N+1 )-ésimo paquete modificado 702 incluye la codificación primaria 704 de la (N+1 )-ésima trama de audio y la codificación redundante 708 de la (N-1 )-ésima trama de audio, y el (N+2)-ésimo paquete modificado 710 incluye la codificación primaria 162 de la (N 2)-ésima trama de audio y la codificación redundante 164 de la N-ésima trama de audio. Alternativamente, uno o más paquetes pueden incluir codificación de una única trama de audio (por ejemplo, codificación primaria de una única trama de audio). Se pueden incluir uno o más bits en la codificación primaria 162, 704 de los paquetes modificados 170, 702 y 710 para indicar información de señalización 172, 706 y 712, respectivamente. La información de señalización 172, 706 y 712 puede especificar qué trama de audio se va a decodificar en el paquete modificado correspondiente. Por ejemplo, la información de señalización 172 puede indicar que la codificación redundante 164 de la (N)-ésima trama de audio debe decodificarse, la información de señalización 708 puede indicar que la codificación primaria 704 de la (N+1 )-ésima trama de audio debe decodificarse, y la información de señalización 712 puede indicar que la codificación primaria 162 de la (N+2)-ésima trama de audio debe decodificarse. Para facilitar la ilustración, los paquetes adicionales de la secuencia de paquetes, como un (N-1)-ésimo paquete modificado, un (N+3)-ésimo paquete modificado, etc., no se muestran en la figura 7.
[0090] El segundo dispositivo 140 puede decodificar los paquetes recibidos para generar tramas de audio para reproducción en el segundo dispositivo 140. Por ejemplo, el segundo dispositivo 140 puede decodificar la codificación redundante 164 de la N-ésima trama de audio basándose en la información de señalización 172 para generar la N-ésima trama de audio 720 para reproducción en el segundo dispositivo 140. Además, el segundo dispositivo 140 puede almacenar una copia 730 de la codificación primaria 162 de la (N+2)-ésima trama de audio (por ejemplo, la porción no utilizada del paquete modificado 170) en la memoria intermedia de redundancia previa 150. Para ilustrar más, el segundo dispositivo 140 puede decodificar la codificación primaria 704 de la (N+1)-ésima trama de audio para generar la (N+1 )-ésima trama de audio 722 para reproducir en el segundo dispositivo 140, y el segundo dispositivo 140 puede almacenar una copia 732 de la codificación redundante 708 de la (N-1)-ésima trama de audio (por ejemplo, la porción no utilizada del paquete modificado 702) en la memoria intermedia de redundancia previa 150. Alternativamente, debido a que ha pasado un intervalo de tiempo (N-1 )-ésimo, el segundo dispositivo 140 puede descartar la trama de audio (N-1 )-ésima.
[0091] En el ejemplo ilustrado en la figura 7, el (N+2)-ésimo paquete 710 no está disponible para decodificar. El segundo dispositivo 140 puede determinar que un error está asociado con el (N+2)-ésimo intervalo de tiempo 744. Por ejemplo, el segundo dispositivo 140 puede determinar que el (N+2)-ésimo paquete modificado 710 (o una parte del mismo) está dañado. Como otro ejemplo, el segundo dispositivo 140 puede determinar que el (N+2)-ésimo paquete modificado 710 no ha sido recibido. Basado en una determinación de que el (N+2)-ésimo paquete modificado 710 no está disponible (debido a corrupción o no se recibe), el segundo dispositivo 140 puede verificar si una copia de la información de trama no utilizada para la (N+2)-ésima trama de audio está disponible en la memoria intermedia de redundancia previa 150. Por ejemplo, el segundo dispositivo 140 puede verificar cada paquete en la memoria intermedia de redundancia previa 150, y basándose en un identificador (por ejemplo, un identificador de secuencia, una marca de tiempo, etc.) y un valor de desplazamiento, el segundo dispositivo 140 puede determinar si una copia de codificación del (N+2)-ésimo paquete está disponible.
[0092] Como se ilustra en la figura 7, la memoria intermedia de redundancia previa 150 almacena la copia 730 de la codificación primaria 162 de la (N+2)-ésima trama de audio. El segundo dispositivo 140 puede recuperar la copia 730 de la codificación primaria 162 de la memoria intermedia de redundancia previa 150 y puede generar la (N+2)-ésima trama de audio 724 para su reproducción en el segundo dispositivo 140 basado en la copia 730. Por lo tanto, la copia 730 de la codificación primaria 162 puede permitir que el segundo dispositivo 140 compense (u oculte) un error en la red de circuitos conmutados 154. Si una copia de la trama de audio (N+2)-ésima no está disponible en la memoria intermedia de redundancia previa 150, el segundo dispositivo 140 puede realizar una operación de ocultación de errores diferente.
[0093] Por lo tanto, la figura 7 ilustra cómo el segundo dispositivo 140 puede usar copias de porciones no utilizadas de tramas de audio almacenadas en la memoria intermedia de redundancia previa 150 para generar una trama de audio particular cuando un paquete que contiene la codificación primaria de una trama de audio particular no está disponible. La generación de la trama de audio particular para la reproducción en el segundo dispositivo 140 basándose en la copia almacenada puede compensar (u ocultar) un error de red en la red de circuitos conmutados 154.
[0094] Con referencia a la figura 8, se muestra un ejemplo ilustrativo particular de un sistema configurado para usar información de trama redundante para comunicar paquetes desde una red de paquetes conmutados a una red de circuitos conmutados, y generalmente se designa como 800. En una implementación particular, el sistema 800 incluye el primer dispositivo 102, la pasarela de medios 120 y el segundo dispositivo 140 de la figura 1. El primer dispositivo 102 puede realizar comunicaciones de datos con la pasarela de medios 120 a través de la red de paquetes conmutados 152, y la pasarela de medios 120 puede realizar comunicaciones de datos con el segundo dispositivo 140 a través de la red de circuitos conmutados 154.
[0095] Como se ilustra en la figura 8, la pasarela de medios 120 incluye un decodificador 802 y un codificador 804. En una implementación particular, el decodificador 802 y el codificador 804 pueden ser parte de un codificador de voz (un codificador-decodificador de voz) que está configurado para realizar operaciones de codificación y decodificación. El decodificador 802 puede configurarse para decodificar uno o más de los paquetes para generar las tramas de audio correspondientes, y el codificador 804 puede configurarse para volver a codificar una o más de las tramas de audio en codificaciones que se incluyen en paquetes modificados. Decodificar el paquete para generar una trama de audio particular y luego codificar la trama de audio particular puede denominarse "transcodificación" de la trama de audio particular. En una implementación particular, el decodificador 802 y el codificador 804 pueden usarse para decodificar la codificación redundante de una trama de audio particular y para volver a codificar la trama de audio particular como codificación primaria. En otras implementaciones, se pueden realizar otros tipos de decodificación y codificación.
[0096] Durante el funcionamiento, el primer dispositivo 102 puede codificar y transmitir una secuencia de paquetes, incluido el paquete 160, a la pasarela de medios 120 a través de la red de paquetes conmutados 152. El paquete 160 puede incluir la codificación primaria 162 de la primera trama de audio (por ejemplo, la (N+2)-ésima trama de audio) y la codificación redundante 164 de la segunda trama de audio (por ejemplo, la N-ésima trama de audio). La codificación primaria 162 puede incluir un núcleo codificado de banda baja de la primera trama de audio y parámetros de banda alta de la primera trama de audio, y la codificación redundante 164 incluye un indicador de forma de ganancia asociado con una forma de ganancia de banda alta de la segunda trama de audio, un indicador de trama de ganancia de banda alta asociada con una trama de ganancia de banda alta de la segunda trama de audio, un indicador de LSP de banda alta asociado con LSP de banda alta de la segunda trama de audio, o una combinación de los mismos, como se describe con referencia a las figuras 1 y 3. La pasarela de medios 120 puede almacenar en memoria intermedia los paquetes recibidos (por ejemplo, tramas de audio) en la memoria intermedia de eliminación de variación de retardo 130. La pasarela de medios 120 puede transmitir paquetes al segundo dispositivo 140 a través de la red de circuitos conmutados 154 a un intervalo fijo. Si la pasarela de medios 120 determina que un paquete que incluye una trama de audio particular no está disponible para la transmisión en un intervalo de tiempo asociado con la trama de audio particular, la pasarela de medios 120 puede intentar generar un paquete modificado para la transmisión durante el intervalo de tiempo. Por ejemplo, si la pasarela de medios 120 determina que un paquete que incluye la codificación primaria de la segunda trama de audio no está disponible, la pasarela de medios 120 puede generar un paquete modificado 810.
[0097] El paquete modificado 810 de la figura 8 incluye una nueva codificación 812 basada en la codificación redundante 164. Para ilustrar, el decodificador 802 puede decodificar el paquete 160 para generar la segunda trama de audio basada en la codificación redundante 164 de la segunda trama de audio, el codificador 804 puede codificar la segunda trama de audio para generar la nueva codificación 812, y el procesador 122 puede configurarse para generar el paquete modificado 810 que incluye la codificación 812 de la segunda trama de audio. En una implementación particular, la nueva codificación 812 es una codificación primaria de la codificación redundante decodificada 164 de la segunda trama de audio. Debido a que se incluye una única trama de audio en el paquete modificado 810, el paquete modificado 810 puede no incluir uno o más bits que indiquen información de señalización para especificar qué porción del paquete modificado 810 se decodifica.
[0098] En una implementación particular, el paquete 160, el paquete modificado 810, o ambos, pueden incluir uno o más bits (por ejemplo, el uno o más bits 166 de la figura 1) de la codificación redundante respectiva, que no se ilustran por conveniencia. El uno o más bits pueden incluir bits de desplazamiento (por ejemplo, bits de desplazamiento FEC) u otros bits relacionados con la primera trama de audio o la segunda trama de audio. El paquete 160 y el paquete modificado 810 también pueden incluir uno o más bits que no están relacionados con la decodificación de la primera trama de audio y la segunda trama de audio, tales como bits CMR como un ejemplo no limitante.
[0099] El procesador 122 puede configurarse para generar el paquete modificado 810 en respuesta a una determinación de que un segundo paquete (por ejemplo, un paquete (N+2)-ésimo) que incluye la codificación primaria de la segunda trama de audio no está disponible. Como ejemplo, la determinación de que el segundo paquete no está disponible puede basarse en una determinación de que el segundo paquete (o una parte del mismo) está dañado. Como otro ejemplo, la determinación de que el segundo paquete no está disponible se puede basar en una determinación de que el segundo paquete no se ha recibido (por ejemplo, no está disponible en la memoria intermedia de eliminación de variación de retardo 130).
[0100] Después de generar el paquete modificado 810, la pasarela de medios 120 puede transmitir el paquete modificado 810 al segundo dispositivo 140 durante un intervalo de tiempo asociado con la segunda trama de audio. El segundo dispositivo 140 puede recibir el paquete modificado 810 y decodificar el paquete modificado 810 para generar la segunda trama de audio (por ejemplo, la N-ésima trama de audio) para su reproducción en el segundo dispositivo 140.
[0101] El sistema 800 de la figura 8 permite que la pasarela de medios 120 use información de trama redundante para proporcionar paquetes modificados con nuevas codificaciones de la información de trama redundante a un dispositivo de red de circuitos conmutados (por ejemplo, el segundo dispositivo 140). La nueva codificación se decodifica y se utiliza para generar una trama de audio particular. Por lo tanto, un paquete que tiene una nueva codificación de la trama de audio particular puede proporcionarse al segundo dispositivo 140 si un paquete que tiene codificación primaria no está disponible, y la nueva codificación de la trama de audio particular puede ser utilizada por el segundo dispositivo 140 para compensar (u ocultar) errores de red en la red de paquetes conmutados 152.
[0102] En la descripción anterior, se describen diversas funciones realizadas por el sistema 800 de la figura 8 que están realizadas por determinados componentes. Sin embargo, esta división de componentes sirve solo para ilustrar. En una implementación alternativa, una función realizada por un componente particular puede, en su lugar, dividirse entre múltiples componentes. Además, en una implementación alternativa, dos o más componentes de la figura 8 pueden estar integrados en un único componente. Cada componente ilustrado en la figura 8 puede implementarse usando hardware (por ejemplo, un FPGA, un ASIC, un DSP, un controlador, etc.), software (por ejemplo, instrucciones ejecutables por un procesador), o una combinación de los mismos.
[0103] Con referencia a la figura 9, se muestra un diagrama de una implementación particular de generación de paquetes basada en información de trama redundante en paquetes recibidos desde una red de paquetes conmutados y generalmente se designa 900. Los paquetes pueden generarse en una pasarela de medios. La pasarela de medios puede incluir o corresponder a la pasarela de medios 120 de la figura 8.
[0104] A medida que los paquetes son recibidos por la primera interfaz de red 126, los paquetes (por ejemplo, las tramas de audio) pueden almacenarse en la memoria intermedia de eliminación de variación de retardo 130. Como se describe con referencia a la figura 8, debido a las condiciones de red en la red de paquetes conmutados 152, los paquetes enviados por un dispositivo fuente (por ejemplo, el primer dispositivo 102) pueden llegar fuera de servicio, pueden estar dañados o pueden no llegar en absoluto. La pasarela de medios 120 (por ejemplo, el procesador 122) puede recuperar paquetes (por ejemplo, tramas de audio) de la memoria intermedia de eliminación de variación de retardo 130 de acuerdo con una secuencia de paquetes o una secuencia de tramas. Por ejemplo, los paquetes pueden recuperarse en función de números de secuencia, marcas de tiempo u otra información de secuencia incluida en los paquetes. Para ilustrar, la pasarela de medios 120 puede intentar recuperar un N-ésimo paquete 910 antes de un (N+1)-ésimo paquete 902, y la pasarela de medios 120 puede intentar recuperar el (N+1 )-ésimo paquete 902 antes de (N+2)-ésimo paquete 160.
[0105] En una implementación particular, cada uno de los paquetes de la secuencia de paquetes incluye la codificación de múltiples tramas de audio. Por ejemplo, el enésimo paquete 910 incluye la codificación primaria 912 de la N-ésima trama de audio y la codificación redundante 914 de la (N-2)-ésima trama de audio, el (N+1)-ésimo paquete 902 incluye la codificación primaria 904 de la (N+1)-ésima trama de audio y la codificación redundante 906 de la trama de audio (N-1)-ésima, y el paquete (N+2)-ésimo 160 incluye la codificación primaria 162 de la trama de audio (N+2)-ésima y la codificación redundante 164 de la N-ésima trama de audio. Alternativamente, uno o más paquetes pueden incluir codificación de una única trama de audio (por ejemplo, codificación primaria de una única trama de audio). Los paquetes 910, 902 y 160 también pueden incluir bits respectivos (por ejemplo, bits de desplazamiento) que están relacionados con las tramas de audio incluidas en el paquete correspondiente. Para facilitar la ilustración, los paquetes adicionales de la secuencia de paquetes, tales como un paquete (N-1 )-ésimo, un paquete (N+3)-ésimo, etc., no se muestran en la figura 9.
[0106] La pasarela de medios 120 puede proporcionar paquetes, paquetes modificados, o ambos, al segundo dispositivo 140 a través de la red de circuitos conmutados 154 a intervalos fijos. Por ejemplo, la pasarela de medios 120 puede proporcionar un paquete correspondiente a la N-ésima trama de audio durante un enésimo intervalo de tiempo 930, un paquete correspondiente a la (N+1)-ésima trama de audio durante un (N+1)-ésimo intervalo de tiempo 932, y un paquete correspondiente a la (N+2)-ésima trama de audio durante un (N+2)-ésimo intervalo de tiempo 934. La pasarela de medios 120 puede determinar si reenviar un paquete o modificar un paquete en función de si se ha recibido un paquete correspondiente desde el primer dispositivo 102 sin errores.
[0107] En el ejemplo ilustrado en la figura 9, el N-ésimo paquete 910 no está disponible para su uso en la generación de un paquete modificado. Por ejemplo, la pasarela de medios 120 puede determinar que el N-ésimo paquete 910 no está disponible en la memoria intermedia de eliminación de variación de retardo 130 (por ejemplo, que el N-ésimo paquete 910 no se ha recibido). Como otro ejemplo, la pasarela de medios 120 puede determinar que el N-ésimo paquete 910 está en la memoria intermedia de eliminación de variación de retardo 130, pero puede ocurrir un error durante la decodificación del N-ésimo paquete 910 (por ejemplo, el N-ésimo paquete 210, o una parte del mismo, es corrupto). Basado en una determinación de que el N-ésimo paquete 910 no está disponible (debido a corrupción o no se recibe), la pasarela de medios 120 puede verificar si la información de trama redundante para la N-ésima trama de audio está disponible en la memoria intermedia de eliminación de variación de retardo 130. Por ejemplo, la pasarela de medios 120 puede verificar cada paquete en la memoria intermedia de eliminación de variación de retardo 130, y basándose en un identificador (por ejemplo, un identificador de secuencia, una marca de tiempo, etc.) y un valor de desplazamiento, la pasarela de medios 120 puede determinar si es redundante la información de la N-ésima trama de audio está disponible.
[0108] Como se ilustra en la figura 9, el (N+2)-ésimo paquete 160 incluye la codificación redundante 164 de la N-ésima trama de audio. La pasarela de medios 120 puede decodificar la codificación redundante 164 de la N-ésima trama de audio a través del decodificador 802 y puede volver a codificar la codificación redundante decodificada 164 como la nueva codificación 812. Por ejemplo, el decodificador 802 puede decodificar la codificación redundante 164, y el codificador 804 puede codificar la codificación redundante 164 para generar la nueva codificación 812. En una implementación particular, la nueva codificación 812 puede ser una codificación primaria de la segunda trama de audio basada en la codificación redundante 164. Volver a codificar la codificación redundante 164 como codificación primaria también puede denominarse transcodificación de la codificación redundante 164. La pasarela de medios 120 puede generar el paquete modificado 810 que incluye la nueva codificación 812, y la pasarela de medios 120 puede transmitir el paquete modificado 810 al segundo dispositivo 140 durante el N-ésimo intervalo de tiempo 930. El segundo dispositivo 140 puede recibir el paquete modificado 810, decodificar la nueva codificación 812 de la N-ésima trama de audio y generar la N-ésima trama de audio para reproducción en el segundo dispositivo 140. Por lo tanto, el paquete modificado 810 con la nueva codificación 812 puede permitir que el segundo dispositivo 140 compense (u oculte) un error en la red de paquetes conmutados 152. Si el paquete 160 que incluye la codificación redundante 164 de la N-ésima trama de audio no está disponible en la memoria intermedia de eliminación de variación de retardo 130, la pasarela de medios 120 puede realizar una operación de ocultación de error diferente.
[0109] Si se recibe un paquete correspondiente sin error en la pasarela de medios 120, la pasarela de medios 120 puede reenviar el paquete al segundo dispositivo 140. Por ejemplo, la pasarela de medios 120 puede recibir el (N+1 )-ésimo paquete 902 sin error y puede transmitir el paquete 902 al segundo dispositivo 140 durante el (N+1 )-ésimo intervalo de tiempo 932. Como otro ejemplo, la pasarela de medios 120 puede recibir el (N+2)-ésimo paquete 160 sin error y puede transmitir el paquete 160 al segundo dispositivo 140 durante el (N+2)-ésimo intervalo de tiempo 934. En una implementación particular, los paquetes 902 y 160 pueden reenviarse sin modificación, y el segundo dispositivo 140 puede configurarse para decodificar la codificación primaria correspondiente por defecto. Alternativamente, los paquetes 902 y 160 pueden incluir uno o más bits (por ejemplo, una secuencia de bits) que indican información de señalización para especificar que la codificación primaria en cada uno de los paquetes 902 y 160 se va a decodificar.
[0110] Por lo tanto, la figura 9 ilustra las técnicas empleadas por la pasarela de medios 120 para usar la codificación redundante de tramas de audio almacenadas en la memoria intermedia de eliminación de variación de retardo 130 para proporcionar una trama modificada con una nueva codificación de la información redundante cuando un paquete que incluye la codificación primaria de una trama de audio particular es indisponible. Proporcionar la trama modificada con la codificación redundante de una trama de audio particular permite que el segundo dispositivo 140 genere la trama de audio particular para su reproducción en el segundo dispositivo 140 y puede compensar (u ocultar) un error de red en la red de paquetes conmutados 152.
[0111] Con referencia a la figura 10, un diagrama de flujo de una implementación ilustrativa particular de un procedimiento para modificar un paquete de audio para incluir uno o más bits que indican que se muestra información de señalización y generalmente se designa 1000. Se puede realizar el procedimiento 1000 mediante la pasarela de medios 120 de las figuras 1 y 2.
[0112] El procedimiento 1000 incluye recibir un paquete a través de una red de paquetes conmutados en una primera interfaz de red, en 1002. El paquete incluye codificación primaria de una primera trama de audio y codificación redundante de una segunda trama de audio. Por ejemplo, el paquete 160 se recibe en la primera interfaz de red 126 de la pasarela de medios 120 a través de la red de paquetes conmutados 152. El paquete 160 incluye la codificación primaria 162 y la codificación redundante 164.
[0113] El procedimiento 1000 incluye generar un paquete modificado que incluye uno o más bits que indican información de señalización, en 1004. La información de señalización corresponde a la decodificación de al menos una de la codificación primaria o la codificación redundante. Por ejemplo, el procesador 122 genera el paquete modificado 170 al incluir uno o más bits que indican la información de señalización 172 en el paquete modificado 170. La información de señalización 172 corresponde a la decodificación de al menos una de la codificación primaria 162 o la codificación redundante 164. Por ejemplo, la información de señalización 172 indica si se debe decodificar la codificación primaria 162 o la codificación redundante 164. En una implementación, un solo bit puede indicar la información de señalización 172. En una implementación, un valor "0" del bit único puede indicar que la codificación primaria debe decodificarse, y un valor "1" del bit único puede indicar que la codificación redundante debe decodificarse.
[0114] En una implementación particular, un solo bit de la codificación redundante 164 puede indicar la información de señalización 172, como se ilustra en la figura 1. En otra implementación, un solo bit de la codificación primaria 162 puede indicar la información de señalización 172. En otra implementación, un bit correspondiente a otros valores en la carga útil 304, como se ilustra en la figura 3, puede indicar la información de señalización 172. En otras implementaciones, más de un bit, como el uno o más bits 166 de la figura 1, puede indicar la información de señalización 172.
[0115] El procedimiento 1000 incluye además transmitir el paquete modificado desde una segunda interfaz de red a través de una red de circuitos conmutados, en 1006. Por ejemplo, la pasarela de medios 120 transmite el paquete modificado 170 desde la segunda interfaz de red 128 a través de la red de circuitos conmutados 154 al segundo dispositivo 140.
[0116] En una implementación particular, el uno o más bits 166 del paquete 160 corresponden a bits de desplazamiento. Los bits de desplazamiento pueden indicar un desplazamiento entre la primera trama de audio y la segunda trama de audio en una secuencia de tramas de audio. En otra implementación particular, el uno o más bits 166 del paquete 160 corresponden a un indicador de tipo de códec, una bandera de trama de redundancia, una bandera aguda, un indicador de modo, un parámetro de capas de extensión de ancho de banda (BWE), o una combinación de los mismos.
[0117] En otra implementación particular, el procedimiento 1000 incluye además generar el paquete modificado 170 en respuesta a una determinación de que un segundo paquete que incluye la codificación primaria de la segunda trama de audio no está disponible. Como ejemplo, la determinación de que el segundo paquete no está disponible puede basarse en una determinación de que el segundo paquete está dañado. Como otro ejemplo, la determinación de que el segundo paquete no está disponible se basa en una determinación de que el segundo paquete no se ha recibido. Adicional o alternativamente, el paquete modificado 170 puede transmitirse durante el enésimo intervalo de tiempo 230 (por ejemplo, un intervalo de tiempo asociado con la segunda trama de audio).
[0118] En una implementación particular, el procedimiento 1000 puede incluir una marca de agua en uno o más bits 166 de la codificación redundante 164 para indicar la información de señalización 172, como se describe con referencia al cuarto ejemplo 350 de la carga útil 304 de la figura 3. En otra implementación particular, la codificación primaria 162 puede incluir un núcleo codificado de banda baja de la primera trama de audio y parámetros de banda alta de la primera trama de audio. Adicionalmente o alternativamente, la codificación redundante 164 puede incluir un indicador de forma de ganancia asociado con una forma de ganancia de banda alta de la segunda trama de audio, un indicador de trama de ganancia de banda alta asociado con una trama de ganancia de banda alta de la segunda trama de audio, un Indicador de par espectral de línea de banda alta (LSP) asociado con LSP de banda alta de la segunda trama de audio, o una combinación de los mismos.
[0119] Alternativamente, la información de señalización puede codificarse en bits de relleno. Por ejemplo, uno de los bits de relleno puede corresponder a un bit de señalización y un valor del bit de señalización puede indicar si se va a decodificar la codificación redundante. En otra implementación, el procedimiento 1000 incluye recuperar un paquete de una memoria intermedia de eliminación de variación de retardo y generar un paquete modificado a partir del paquete durante un período de tiempo correspondiente a la transmisión de una trama de audio. En otra implementación, un paquete puede incluir una pluralidad de bits, algunos de los cuales corresponden a bits de desplazamiento. Los bits de desplazamiento pueden corresponder a un desplazamiento entre una primera trama de audio y una segunda trama de audio en una secuencia de tramas de audio. La información de señalización puede corresponder a un bit de los bits de desplazamiento.
[0120] El procedimiento 1000 permite la generación de un paquete modificado que tiene codificación primaria de una primera trama de audio, codificación redundante de una segunda trama de audio e información de señalización que indica qué codificación decodificar. El paquete de audio modificado puede transmitirse en lugar de un paquete asociado con un error en una red de paquetes conmutados.
[0121] Con referencia a la figura 11, se muestra un diagrama de flujo de una implementación ilustrativa particular de un procedimiento de decodificación de un paquete de audio que incluye información de señalización y generalmente se designa 1100. Se puede realizar el procedimiento 1100 mediante el segundo dispositivo 140 de las figuras 1 y 2.
[0122] El procedimiento 1100 incluye recibir un paquete en una interfaz de red a través de una red de circuitos conmutados, en 1102. El paquete incluye codificación primaria de una primera trama de audio, codificación redundante de una segunda trama de audio e información de señalización correspondiente a la decodificación de al menos una de la codificación primaria o la codificación redundante. Uno o más bits de la codificación redundante pueden indicar la información de señalización. Por ejemplo, el segundo dispositivo 140 recibe el paquete 170 modificado en la interfaz de red 148 a través de la red de circuitos conmutados 154. El paquete modificado 170 incluye la codificación primaria 162, la codificación redundante 164 y uno o más bits 166 en la codificación redundante 164, indicando el uno o más bits 166 la información de señalización 172. Como un ejemplo particular, la región de bits de desplazamiento 328 de la figura 3 puede indicar la información de señalización 172. La información de señalización 172 corresponde a la decodificación de al menos una de la codificación primaria 162 o la codificación redundante 164. Por ejemplo, la información de señalización 172 indica si la codificación primaria 162 o la codificación redundante 164 se va a decodificar. Alternativamente, un solo bit de la codificación redundante, la codificación primaria u otro segmento de una porción de carga útil del paquete modificado 170 puede indicar la información de señalización 172.
[0123] El procedimiento 1100 incluye además decodificar una porción del paquete en base a la información de señalización, en 1104. Por ejemplo, el decodificador 146 puede decodificar la codificación primaria 162 o la codificación redundante 164 en base a la información de señalización 172.
[0124] En una implementación particular, la decodificación de la porción del paquete modificado 170 incluye la decodificación de la codificación primaria 162 en base a la información de señalización 172. Alternativamente, la decodificación de la porción del paquete modificado 170 incluye la decodificación de la codificación redundante 164 basada en la información de señalización 172.
[0125] En otra implementación particular, la información de señalización 172 indica además un desplazamiento entre la primera trama de audio y la segunda trama de audio en una secuencia de tramas de audio. En otra implementación particular, el paquete modificado 170 se recibe durante el N-ésimo intervalo de tiempo 230 (por ejemplo, un intervalo de tiempo asociado con un segundo paquete que incluye la codificación primaria de la segunda trama de audio). En otra implementación particular, el uno o más bits 166 incluye un campo de desplazamiento (por ejemplo, la región de bits de desplazamiento 328 de la figura 3). En otra implementación particular, la información de señalización 172 se indica mediante una marca de agua de la codificación redundante 164.
[0126] En otra implementación particular, el procedimiento 1100 incluye almacenar una porción no codificada del paquete en una memoria intermedia de redundancia previa en respuesta a la decodificación de la porción del paquete. Por ejemplo, haciendo referencia a la figura 1, el segundo dispositivo 140 puede configurarse para almacenar una porción no codificada del paquete en la memoria intermedia de redundancia previa 150. En respuesta a la decodificación de una porción del paquete, el segundo dispositivo 140 puede configurarse para almacenar la porción no codificada del paquete en la memoria intermedia de redundancia previa 150.
[0127] El procedimiento 1100 puede incluir además, en respuesta a una condición de error relacionada con el segundo paquete, recuperar, desde la memoria intermedia de redundancia previa, la porción no codificada del paquete. Por ejemplo, haciendo referencia a la figura 1, un procesador 142 del segundo dispositivo 140 puede configurarse para recuperar la porción no codificada del paquete de la memoria intermedia de redundancia previa 150 en respuesta a una condición de error asociada con un segundo paquete recibido en el segundo dispositivo 140. Para elaborar, el segundo dispositivo 140 puede recibir un segundo paquete en una interfaz de red 148. El segundo paquete puede recibirse a través de la red de circuitos conmutados 154. El segundo paquete puede recibirse en un intervalo de tiempo posterior al intervalo de tiempo en el que se recibió el paquete. El segundo dispositivo 140 puede configurarse para determinar que los datos asociados con el segundo paquete se han dañado. Por ejemplo, el segundo paquete puede carecer de ciertos bits, y el procesador 142 del segundo dispositivo 140 puede estar configurado para determinar que faltan dichos bits.
[0128] El procedimiento 1100 puede incluir adicionalmente, basándose en la determinación de que los datos en el segundo paquete se han dañado, recuperar la porción no codificada del paquete de la memoria intermedia de redundancia previa. La porción no codificada del paquete puede corresponder a los datos corruptos. Para ilustrar, el procesador 142 del segundo dispositivo 140 puede configurarse para recuperar la porción no codificada del paquete de la memoria intermedia de redundancia previa 150 basándose en la determinación de que los datos incluidos en el segundo paquete se han dañado. La porción no codificada del paquete puede ser una copia no corrompida de los datos corruptos en el segundo paquete.
[0129] El procedimiento 1100 permite la decodificación de un paquete modificado que tiene codificación primaria de una primera trama de audio, codificación redundante de una segunda trama de audio e información de señalización que indica qué trama de audio decodificar. El paquete modificado puede recibirse en lugar de un paquete asociado con un error de red en una red de paquetes conmutados.
[0130] Con referencia a la figura 12, se muestra un diagrama de flujo de una implementación ilustrativa particular de un procedimiento para mantener una copia almacenada de información de trama no utilizada en un paquete de audio y generalmente se designa 1200. Se puede realizar el procedimiento 1200 mediante el segundo dispositivo 140 de las figuras 1 y 4.
[0131] El procedimiento 1200 incluye recibir un paquete en una interfaz de red a través de una red de circuitos conmutados, en 1202. El paquete incluye codificación primaria de una primera trama de audio y codificación redundante de una segunda trama de audio. Por ejemplo, el segundo dispositivo 140 recibe el paquete 170 modificado en la interfaz de red 148 a través de la red de circuitos conmutados 154. El paquete modificado 170 incluye la codificación primaria 162 y la codificación redundante 164.
[0132] El procedimiento 1200 incluye la decodificación de la codificación redundante de la segunda trama de audio, en 1204. Por ejemplo, el decodificador 146 decodifica la codificación redundante 164 (por ejemplo, en base a la información de señalización 172). El procedimiento 1200 incluye además almacenar la codificación primaria de la primera trama de audio en una memoria después de la decodificación de la codificación redundante de la segunda trama de audio, en 1206. Por ejemplo, el segundo dispositivo 140 almacena la codificación primaria 162 en la memoria intermedia de redundancia previa 150 después de la decodificación de la codificación redundante 164.
[0133] En una implementación particular, el procedimiento 1200 incluye, en el (N+2)-ésimo intervalo de tiempo 444 (por ejemplo, un intervalo de tiempo asociado con la primera trama de audio), recuperar la copia 430 de la codificación primaria 162 de la primera trama de audio de la memoria 144 (por ejemplo, la memoria intermedia de redundancia previa 150) y la decodificación de la primera trama de audio usando la copia 430 de la codificación primaria 160 de la primera trama de audio. La codificación primaria 162 de la primera trama de audio puede recuperarse en respuesta a una determinación de que un error está asociado con el (N+2)-ésimo intervalo de tiempo 444. En una implementación particular, el error se determina basándose en la determinación de que un segundo paquete que incluye la codificación primaria 162 de la primera trama de audio está dañado. Alternativamente, el error puede determinarse basándose en una determinación de que un segundo paquete que incluye la codificación primaria 162 de la primera trama de audio no se ha recibido durante el (N+2)-ésimo intervalo de tiempo 444.
[0134] En otra implementación particular, el paquete modificado 170 incluye además uno o más bits 166 que indican la información de señalización 172. La información de señalización 172 especifica si decodificar la codificación primaria 162 o la codificación redundante 164. La codificación redundante 164 puede decodificarse en base a la información de señalización 172. Adicional o alternativamente, la información de señalización 172 puede indicar además un desplazamiento entre la primera trama de audio y la segunda trama de audio en una secuencia de tramas de audio.
[0135] En otra implementación particular, el paquete modificado 170 se recibe desde la pasarela de medios 120, durante el N-ésimo intervalo de tiempo 440 (por ejemplo, un segundo intervalo de tiempo asociado con la segunda trama de audio), en respuesta a un error asociado con la recepción de la codificación primaria de la segunda trama de audio en la pasarela de medios 120. Adicional o alternativamente, la codificación primaria 162 puede incluir un núcleo codificado de banda baja de la primera trama de audio y parámetros de banda alta de la primera trama de audio. Adicionalmente o alternativamente, la codificación redundante 164 puede incluir un indicador de forma de ganancia asociado con una forma de ganancia de banda alta de la segunda trama de audio, un indicador de trama de ganancia de banda alta asociado con una trama de ganancia de banda alta de la segunda trama de audio, un Indicador de par espectral de línea de banda alta (LSP) asociado con LSP de banda alta de la segunda trama de audio, o una combinación de los mismos.
[0136] El procedimiento 1200 permite mantener una copia almacenada de la información de la trama de audio no utilizada. La copia almacenada se puede usar para generar una trama de audio cuando se produce un error al recibir un paquete asociado con la trama de audio no utilizada.
[0137] Con referencia a la figura 13, se muestra un diagrama de flujo de una implementación ilustrativa particular de un procedimiento de codificación adicional de información de trama redundante y generalmente se designa 1300. Se puede realizar el procedimiento 1300 mediante la pasarela de medios 120 de las figuras 8 y 9.
[0138] El procedimiento 1300 incluye recibir un paquete a través de una red de paquetes conmutados en una primera interfaz de red, en 1302. El paquete incluye codificación primaria de una primera trama de audio y codificación redundante de una segunda trama de audio. Por ejemplo, la primera interfaz de red 126 de la pasarela de medios 120 recibe el paquete 160 a través de la red de paquetes conmutados 152. El paquete 160 incluye la codificación primaria 162 y la codificación redundante 164.
[0139] El procedimiento 1300 incluye generar un paquete modificado que incluye una nueva codificación de la codificación redundante de la segunda trama de audio, en 1304. Por ejemplo, el decodificador 802 decodifica la codificación redundante 164, y el codificador 804 genera la nueva codificación 812 de la codificación redundante 164. El procesador 122 genera el paquete modificado 810 que incluye la nueva codificación 812.
[0140] El procedimiento 1300 incluye además transmitir el paquete modificado desde una segunda interfaz de red a través de una red de circuitos conmutados, en 1306. Por ejemplo, la pasarela de medios 120 transmite el paquete modificado 810 desde la segunda interfaz de red 128 al segundo dispositivo 140 a través de la red de circuitos conmutados 154.
[0141] En una implementación particular, el procedimiento 1300 incluye la decodificación de la codificación redundante 164 de la segunda trama de audio, donde generar la nueva codificación 812 de la codificación redundante 164 incluye generar la codificación primaria de la codificación redundante decodificada 164 de la segunda trama de audio. La generación de la nueva codificación 812 puede denominarse transcodificación. En otra implementación particular, el paquete modificado 810 se transmite en respuesta a una determinación de que un segundo paquete que incluye la codificación primaria de la segunda trama de audio no está disponible.
[0142] En otra implementación particular, el procedimiento 1300 incluye generar la nueva codificación 812 de la codificación redundante 164 en respuesta a la recepción del paquete 160. De manera adicional o alternativa, el procedimiento 1300 incluye almacenar la nueva codificación 812 de la codificación redundante 162 en una memoria (por ejemplo, la memoria intermedia de eliminación de variación de retardo 130). En algunas implementaciones, el procedimiento 1300 incluye además recuperar la codificación 812 de la codificación redundante 164 de la memoria (por ejemplo, la memoria intermedia de eliminación de variación de retardo 130) para generar el paquete modificado 810 en respuesta a la determinación de que un segundo paquete que incluye la codificación primaria de la segunda trama de audio no está disponible. La determinación de que el segundo paquete no está disponible puede basarse en una determinación de que el segundo paquete está dañado o que el segundo paquete no se ha recibido.
[0143] En otra implementación particular, la codificación primaria 162 incluye un núcleo codificado de banda baja de la primera trama de audio y parámetros de banda alta de la primera trama de audio. Adicionalmente o alternativamente, la codificación redundante 164 incluye un indicador de forma de ganancia asociado con una forma de ganancia de banda alta de la segunda trama de audio, un indicador de trama de ganancia de banda alta asociado con una trama de ganancia de banda alta de la segunda trama de audio, un Indicador de par espectral de línea de banda alta (LSP) asociado con LSP de banda alta de la segunda trama de audio, o una combinación de los mismos.
[0144] El procedimiento 1300 permite la generación de un paquete modificado con información de trama redundante codificada de nuevo. El paquete de audio modificado puede transmitirse durante un intervalo de tiempo asociado con una trama de audio particular que está asociada con un error en una red de paquetes conmutados.
[0145] Con referencia a la figura 14, se muestra un diagrama de flujo de una implementación ilustrativa particular de un procedimiento para modificar un paquete de audio para incluir una secuencia de bits que indica cómo decodificar el paquete de audio y generalmente se designa como 1400. Se puede realizar el procedimiento 1400 mediante la pasarela de medios 120 de las figuras 5 y 6.
[0146] El procedimiento 1400 incluye recibir un paquete a través de una red de paquetes conmutados en una primera interfaz de red, en 1402. El paquete incluye codificación primaria de una primera trama de audio y codificación redundante de una segunda trama de audio. Por ejemplo, la primera interfaz de red 126 de la pasarela de medios 120 recibe el paquete 160 a través de la red de paquetes conmutados 152. El paquete 160 incluye la codificación primaria 162 y la codificación redundante 164.
[0147] El procedimiento 1400 incluye generar un paquete modificado reemplazando al menos una parte de los bits de relleno de la codificación primaria con una secuencia de bits, en 1404. Por ejemplo, el procesador 122 puede reemplazar al menos una parte de los bits de relleno 502 de la codificación primaria 162 con la secuencia de bits 512 para generar el paquete modificado 510. En una implementación, la generación del paquete modificado 510 puede incluir sobrescribir al menos uno o más bits de relleno de la porción de codificación primaria o uno o más bits de desplazamiento de la porción de codificación redundante del paquete. En otra implementación, el paquete modificado puede generarse colocando un solo bit (es decir, que comprende información de señalización) dentro de los bits de relleno o porciones de bits de relleno de un paquete que se transmite a una velocidad de 13,2 kilobits por segundo, a lo que puede referirse como un "paquete de 13,2 kilobits por segundo".
[0148] El procedimiento 1400 incluye además transmitir el paquete modificado desde una segunda interfaz de red a través de una red de circuitos conmutados, en 1406. Por ejemplo, la pasarela de medios 120 puede transmitir el paquete modificado 510 desde la segunda interfaz de red 128 al segundo dispositivo 140 a través de la red de circuitos conmutados 154.
[0149] En una implementación particular, la secuencia de bits 512 (o la información de señalización 172) indica que la codificación redundante 164 debe decodificarse. Adicional o alternativamente, la secuencia de bits 512 (o la información de señalización 172) incluye una secuencia predeterminada de valores de bits. La secuencia de bits puede incluir todos los valores uno o al menos un valor distinto de cero, como ejemplos no limitantes.
[0150] En otra implementación particular, el procedimiento 1400 incluye generar el paquete modificado 510 en respuesta a una determinación de que un segundo paquete que incluye la codificación primaria de la segunda trama de audio no está disponible. La determinación de que el segundo paquete no está disponible puede basarse en una determinación de que el segundo paquete está dañado. Alternativamente, la determinación de que el segundo paquete no está disponible puede basarse en una determinación de que el segundo paquete no se ha recibido. Adicional o alternativamente, el paquete modificado 510 puede transmitirse durante el enésimo intervalo de tiempo 630 (por ejemplo, un intervalo de tiempo asociado con la segunda trama de audio). En otra implementación particular, uno o más bits 166 de la codificación primaria 162 o la codificación redundante 164 pueden tener una marca de agua para indicar información de señalización (por ejemplo, la información de señalización 172 de la figura 1).
[0151] En una implementación particular, la codificación primaria 162 puede incluir un núcleo codificado de banda baja de la primera trama de audio y parámetros de banda alta de la primera trama de audio. Adicionalmente o alternativamente, la codificación redundante 164 puede incluir un indicador de forma de ganancia asociado con una forma de ganancia de banda alta de la segunda trama de audio, un indicador de trama de ganancia de banda alta asociado con una trama de ganancia de banda alta de la segunda trama de audio, un Indicador de par espectral de línea de banda alta (LSP) asociado con LSP de banda alta de la segunda trama de audio, o una combinación de los mismos.
[0152] En otra implementación particular, el procesador 122 puede estar configurado para abstenerse de modificar el paquete de audio cuando la segunda interfaz de red 128 está configurada para transmitir el paquete de audio a través de la red de paquetes conmutados 152. Abstenerse de modificar el paquete puede incluir no generar un paquete modificado reemplazando una parte de los bits de relleno de un paquete recibido y, en su lugar, transmitir el paquete recibido a través de la red de paquetes conmutados.
[0153] El procedimiento 1400 permite la generación de un paquete modificado que tiene una secuencia de bits que indica cómo decodificar el paquete de audio modificado. El paquete de audio modificado puede transmitirse durante un intervalo de tiempo de una trama de audio particular que está asociado con un error en una red de paquetes conmutados.
[0154] Con referencia a la figura 15, se muestra un diagrama de flujo de una implementación ilustrativa particular de un procedimiento de decodificación de un paquete de audio que incluye una secuencia de bits particular y generalmente se designa 1500. Se puede realizar el procedimiento 1500 mediante el segundo dispositivo 140 de las figuras 5 y 6.
[0155] El procedimiento 1500 incluye recibir un paquete a través de una red de circuitos conmutados en una interfaz de red, en 1502. El paquete incluye un primer conjunto de bits asignados para la codificación primaria de una primera trama de audio y un segundo conjunto de bits asignados para la codificación redundante de una segunda trama de audio. Por ejemplo, la interfaz de red 148 del segundo dispositivo 140 puede recibir el paquete modificado 510 a través de la red de circuitos conmutados 154. El paquete modificado 510 puede incluir un primer conjunto de bits asignados para la codificación primaria 162 y un segundo conjunto de bits asignados para la codificación redundante 164.
[0156] El procedimiento 1500 incluye detectar una secuencia de bits en el primer conjunto de bits, indicando la secuencia de bits que la codificación redundante debe decodificarse, en 1504. Por ejemplo, el procesador 142 puede detectar la secuencia de bits 512 (o la información de señalización 172) en el primer conjunto de bits. La secuencia de bits 512 (o la información de señalización 172) puede indicar que la codificación redundante 164 debe decodificarse.
[0157] El procedimiento 1500 incluye además decodificar la codificación redundante basada en la detección de la secuencia de bits, en 1506. Por ejemplo, el decodificador 146 puede decodificar la codificación redundante 164 basándose en la detección de la secuencia de bits 512 (o la información de señalización 172).
[0158] En una implementación particular, la secuencia de bits 512 (o la información de señalización 172) puede detectarse en una porción de bits de relleno del primer conjunto de bits. En otra implementación particular, la secuencia de bits 512 incluye una secuencia predeterminada de valores de bits. Por ejemplo, la secuencia de bits 512 puede incluir todos los valores cero. Alternativamente, la secuencia de bits 512 puede incluir todos los valores. Alternativamente, la secuencia de bits 512 puede incluir al menos un valor distinto de cero. En otra implementación particular, el paquete modificado 510 se recibe durante el enésimo intervalo de tiempo 630 (por ejemplo, un intervalo de tiempo asociado con la segunda trama de audio).
[0159] El procedimiento 1500 permite la decodificación de un paquete modificado que tiene codificación primaria de una primera trama de audio, codificación redundante de una segunda trama de audio y una secuencia de bits que indica qué trama de audio decodificar. El paquete modificado puede recibirse en lugar de un paquete asociado con un error de red en una red de paquetes conmutados.
[0160] Con referencia a la figura 16, se representa un diagrama de bloques de una implementación ilustrativa particular de un dispositivo móvil (por ejemplo, un dispositivo de comunicación inalámbrica) y, en general, se designa 1600. En diversos ejemplos, el dispositivo 1600 puede tener menos o más componentes de los ilustrados en la figura 16. En una implementación ilustrativa, el dispositivo 1600 puede corresponder a uno o más del primer dispositivo 102, la pasarela de medios 120 y el segundo dispositivo 140 de las figuras 1,5 y 8.
[0161] En una implementación particular, el dispositivo 1600 incluye un procesador 1606 (por ejemplo, una unidad de procesamiento central (CPU)). El dispositivo 1600 puede incluir uno o más procesadores 1610 adicionales (por ejemplo, uno o más procesadores de señales digitales (DSP)). El procesador 1610 puede incluir un codificador-decodificador (CÓDEC) de voz y música 1608. En una implementación, el CODEC 1608 de voz y música puede incluir un codificador de codificador de voz (por ejemplo, el codificador 108 de las figuras 1, 5 y 8), un decodificador de codificador de voz (por ejemplo, el decodificador 146 de las figuras 1,4, 5, 7 y 8), o ambos. En una implementación particular, el CODEC 1608 de voz y música puede ser un CODEC de servicios de voz mejorados (EVS) que se comunica de acuerdo con una o más especificaciones o protocolos, como un protocolo EVS del Proyecto de Asociación de 3ra Generación (3GPP). En una implementación alternativa, el dispositivo 1600 puede incluir una memoria 1632 y un CODEC 1634. Aunque no se muestra, la memoria 1632 puede incluir la codificación primaria 162, la codificación redundante 164 de la figura 1, o ambas. La memoria 1632 puede incluir una memoria intermedia de eliminación de variación de retardo 130. En una implementación, la memoria intermedia de eliminación de variación de retardo 130 puede configurarse para almacenar el paquete 160. El dispositivo 1600 puede incluir una primera interfaz de red 1640 acoplada, a través de un primer transceptor 1650, a una primera antena 1642. El dispositivo 1600 puede incluir además una segunda interfaz de red 1670 acoplada, a través de un segundo transceptor 1612, a una segunda antena 1614.
[0162] El dispositivo 1600 puede incluir una pantalla 1628 acoplada a un controlador de pantalla 1626. Se puede acoplar un altavoz 1646, un micrófono 1648 o una combinación de los mismos al CODEC 1634. El CODEC 1634 puede incluir un DAC 1602 y un CODEC 1604. En una implementación particular, el CODEC 1634 puede recibir señales analógicas desde el micrófono 1648, convertir las señales analógicas a señales digitales usando el ADC 1604 y proporcionar las señales digitales al procesador 1610. El procesador 1610 puede procesar las señales digitales. En una implementación particular, el procesador 1610 puede proporcionar señales digitales al CODEC 1634. El CODEC 1634 puede convertir las señales digitales en señales analógicas usando el DAC 1602 y puede proporcionar las señales analógicas al altavoz 1646.
[0163] En una implementación particular, el dispositivo 1600 puede estar incluido en un dispositivo de sistema en paquete o de sistema en chip 1622. En una implementación particular, la memoria 1632, el procesador 1606, el procesador 1610, el controlador de pantalla 1626, el CODEC 1634, la primera interfaz de red 1640, la segunda interfaz de red 1670, el primer transceptor 1650 y el segundo transceptor 1612 están incluidos en un sistema en paquete o dispositivo de sistema en chip 1622. En una implementación particular, un dispositivo de entrada 1630 y una fuente de alimentación 1644 están acoplados al dispositivo de sistema en chip 1622. Además, en una implementación particular, como se ilustra en la figura 16, la pantalla 1628, el dispositivo de entrada 1630, el altavoz 1646, el micrófono 1648, la primera antena 1642, la segunda antena 1614 y la fuente de alimentación 1644 son externos con respecto al dispositivo de sistema en chip 1622. En una implementación particular, cada uno de la pantalla 1628, el dispositivo de entrada 1630, el altavoz 1646, el micrófono 1648, la primera antena 1642, la segunda antena 1614 y la fuente de alimentación 1644 se pueden acoplar a un componente del dispositivo de sistema en un chip 1622, tal como una interfaz o un controlador.
[0164] El dispositivo 1600 puede incluir un dispositivo de comunicación móvil, unos auriculares, un teléfono inteligente, un teléfono celular, un ordenador portátil, un ordenador, una tableta, un asistente digital personal, un dispositivo de visualización, un televisor, una consola de juegos, un reproductor de música, una radio, un reproductor de vídeo digital, un reproductor de disco de vídeo digital (DVD), un sintonizador, una cámara, un dispositivo de navegación, un vehículo, un componente de un vehículo, o cualquier combinación de los mismos.
[0165] En una implementación ilustrativa, la memoria 1632 incluye o almacena instrucciones 1660 (por ejemplo, instrucciones ejecutables) tales como instrucciones legibles por ordenador o instrucciones legibles por procesador. Por ejemplo, la memoria 1632 puede incluir o corresponder a un medio legible por ordenador no transitorio que almacena las instrucciones 1660. Las instrucciones 1660 pueden incluir una o más instrucciones que son ejecutables por un ordenador, tal como el procesador 1606 o el procesador 1610. Las instrucciones 1660 pueden hacer que el procesador 1606 o el procesador 1610 realicen cualquiera de los procedimientos 1000-1500 de las figuras 10-15.
[0166] En una implementación particular, la primera interfaz de red 1640 puede configurarse para recibir el paquete modificado 170 a través de la red de circuitos conmutados 154. El paquete modificado 170 incluye la codificación primaria 162, la codificación redundante 164 y la información de señalización 172. El decodificador 146 puede configurarse para decodificar una porción del paquete modificado 170 basado en la información de señalización 172, como se describe con referencia a las figuras 1 y 2. En otra implementación particular, la primera interfaz de red 1640 puede configurarse para recibir, a través de la red de circuitos conmutados 154, el paquete modificado 170 que incluye la codificación primaria 162 y la codificación redundante 164. El decodificador 146 puede configurarse para decodificar la codificación redundante 164, y la memoria intermedia de redundancia previa 150 puede configurarse para almacenar la codificación primaria 162 después de la decodificación de la codificación redundante 164, como se describe con referencia a las figuras 1 y 4.
[0167] En otra implementación particular, la primera interfaz de red 1640 puede configurarse para recibir, a través de la red de circuitos conmutados 154, el paquete modificado 510 que incluye un primer conjunto de bits asignados para la codificación primaria (por ejemplo, la codificación primaria 162) y un segundo conjunto de bits asignados para codificación redundante (por ejemplo, la codificación redundante 164). El procesador 1606 o el procesador 1610 pueden configurarse para detectar la secuencia de bits 512 en el primer conjunto de bits, y el decodificador 146 puede configurarse para decodificar la codificación redundante 164 basándose en la detección de la secuencia de bits 512, como se describe con referencia a las figuras 5 y 6. En otra implementación, la interfaz inalámbrica está configurada para recibir, a través de la red de circuitos conmutados 154, el paquete modificado 510 que incluye uno o más bits que indican información de señalización. El decodificador 146 puede configurarse para decodificar una porción del paquete modificado 510 en base a la información de señalización.
[0168] En una implementación particular, la primera interfaz de red 1640 puede configurarse para recibir un paquete 160 a través de una red de paquetes conmutados 152. Por ejemplo, la primera interfaz de red 1640 puede recibir el paquete 160 a través del primer transceptor 1650 y la primera antena 1642. El paquete 160 puede incluir una codificación primaria 162 de una primera trama de audio y una codificación redundante 164 de una segunda trama de audio. El procesador 1606 puede estar configurado para generar un paquete modificado 170. Uno o más bits del paquete modificado 170 pueden indicar la información de señalización 172. Por ejemplo, un solo bit de la codificación primaria 162 o de la codificación redundante 164 puede indicar la información de señalización 172. Alternativamente, el paquete modificado puede incluir uno o más bits que indican información de señalización 172. La segunda interfaz de red puede configurarse para transmitir el paquete modificado 170 a través de una red de circuitos conmutados 154. Por ejemplo, el paquete 170 modificado puede transmitirse a la red de circuitos conmutados a través del segundo transceptor 1612 y la segunda antena 1614.
[0169] En referencia a la figura 1700, se representa un diagrama de bloques de un ejemplo ilustrativo particular de una estación base 1700. En diversos ejemplos, la estación base 1700 puede tener menos componentes o más componentes de los ilustrados en la figura 17. En un primer ejemplo ilustrativo, la estación base 1700 puede corresponder al segundo dispositivo 140. En un segundo ejemplo ilustrativo, la estación base 1700 puede incluir la pasarela de medios 120 de la figura 1. La estación base 1700 puede funcionar de acuerdo con uno o más de los procedimientos de las figuras 10, 13 y 15.
[0170] La estación base 1700 puede ser parte de un sistema de comunicación inalámbrica. El sistema de comunicación inalámbrica puede incluir múltiples estaciones base y múltiples dispositivos inalámbricos. El sistema de comunicación inalámbrica puede ser un sistema de Evolución a Largo Plazo (LTE), un sistema de Acceso Múltiple por División de Código (CDMA), un Sistema global para comunicaciones móviles (GSM), un sistema de Red inalámbrica de área local (WLAN), o algún otro sistema inalámbrico. Un sistema CDMA puede implementar CDMA de banda ancha (WCDMA), CDMA 1X, evolución de datos optimizados (EVDO), CDMA síncrono por división de tiempo (TD-SCDMA) o alguna otra versión de CDMA.
[0171] Los dispositivos inalámbricos también pueden denominarse como un equipo de usuario (UE), una estación móvil, un terminal, un terminal de acceso, una pasarela móvil, una unidad de abonado, una estación, etc. Los dispositivos inalámbricos pueden incluir un teléfono móvil, un teléfono inteligente, una tableta, un módem inalámbrico, un asistente digital personal (PDA), un dispositivo portátil, un ordenador portátil, un smartbook, un netbook, un teléfono inalámbrico, una estación de bucle local inalámbrico (WLL), un dispositivo Bluetooth, etc. Los dispositivos inalámbricos pueden incluir o corresponder al primer dispositivo 102 o al segundo dispositivo 140 de la figura 1.
[0172] Uno o más componentes de la estación base 1700 pueden realizar diversas funciones (y/o en otros componentes no mostrados), tales como enviar y recibir mensajes y datos (por ejemplo, datos de audio). En un ejemplo particular, la estación base 1700 incluye un procesador 1706 (por ejemplo, una CPU). La estación base 1700 puede incluir un transcodificador 1710. El transcodificador 1710 puede incluir un CODEC de audio 1708. Por ejemplo, el transcodificador 1710 puede incluir uno o más componentes (por ejemplo, circuitos) configurados para realizar operaciones del CODEC de audio 1708. Como otro ejemplo, el transcodificador 1710 puede configurarse para ejecutar una o más instrucciones legibles por ordenador para realizar las operaciones del CODEC de audio 1708. Aunque se ilustra el CODEC de audio 1708 como un componente del transcodificador 1710, en otros ejemplos se pueden incluir uno o más componentes del CODEC de audio 1708 en el procesador 1706, otro componente de procesamiento o una combinación de los mismos. Por ejemplo, un decodificador 1738 (por ejemplo, un decodificador de codificador de voz) puede incluirse en un procesador de datos receptor 1764. Como otro ejemplo, se puede incluir un codificador 1736 (por ejemplo, un codificador de codificador de voz) en un procesador de datos de transmisión 1782.
[0173] El transcodificador 1710 puede funcionar para transcodificar mensajes y datos entre dos o más redes. El transcodificador 1710 puede configurarse para convertir mensajes y datos de audio de un primer formato (por ejemplo, un formato digital) a un segundo formato. Para ilustrar, el decodificador 1738 puede decodificar señales codificadas que tienen un primer formato y el codificador 1736 puede codificar las señales decodificadas en señales codificadas que tienen un segundo formato. Adicional o alternativamente, el transcodificador 1710 puede configurarse para realizar la adaptación de la velocidad de datos. Por ejemplo, el transcodificador 1710 puede reducir la velocidad de datos o aumentar la velocidad de datos sin cambiar el formato de los datos de audio. Para ilustrar, el transcodificador 1710 puede convertir a la baja las señales de 64 kbit/s en señales de 16 kbit/s.
[0174] El CODEC de audio 1708 puede incluir el codificador 1736 y el decodificador 1738. El codificador 1736 puede incluir un selector de codificador, un codificador de voz y un codificador sin voz. El decodificador 1738 puede incluir un selector de decodificador, un decodificador de voz y un decodificador sin voz.
[0175] En una implementación, la estación base 1700 puede incluir una memoria intermedia de redundancia previa 150. Alternativa o adicionalmente, la estación base 1700 puede incluir una memoria intermedia de eliminación de variación de retardo 130, y la estación base 1700 puede incluir una memoria 1732. La memoria 1732, como un dispositivo de almacenamiento legible por ordenador, puede incluir instrucciones. Las instrucciones pueden incluir una o más instrucciones que son ejecutables por el procesador 1706, el transcodificador 1710 o una combinación de los mismos. La estación base 1700 puede incluir múltiples transmisores y receptores (por ejemplo, transceptores), tales como un primer transceptor 1752 y un segundo transceptor 1754, acoplados a una matriz de antenas. El conjunto de antenas puede incluir una primera antena 1742 y una segunda antena 1744. El conjunto de antenas puede configurarse para comunicarse de forma inalámbrica con uno o más dispositivos inalámbricos. Por ejemplo, la segunda antena 1744 puede recibir una corriente de datos 1714 (por ejemplo, una corriente de bits) desde un dispositivo inalámbrico. La corriente de datos 1714 puede incluir mensajes, datos (por ejemplo, datos de voz codificados) o una combinación de los mismos. Una primera interfaz de red 126 de la pasarela de medios 120 puede corresponder al primer transceptor 1752, y una segunda interfaz de red 128 de la pasarela de medios 120 puede corresponder al segundo transceptor 1754.
[0176] La estación base 1700 puede incluir una conexión de red 1760, tal como una conexión de retorno. La conexión de red 1760 puede configurarse para comunicarse con una red central o una o más estaciones base de la red de comunicación inalámbrica. Por ejemplo, la estación base 1700 puede recibir una segunda corriente de datos (por ejemplo, mensajes o datos de audio) desde una red central a través de la conexión de red 1760. La estación base 1700 puede procesar la segunda corriente de datos para generar mensajes o datos de audio y proporcionar los mensajes o los datos de audio a uno o más dispositivos inalámbricos a través de una o más antenas del conjunto de antenas u otra estación base a través de la conexión de red 1760. En una implementación particular, la conexión de red 1760 puede ser una conexión de red de área amplia (WAN), como un ejemplo ilustrativo, no limitante. En algunas implementaciones, la red central puede incluir o corresponder a una red telefónica pública conmutada (PSTN), una red troncal de paquetes, o ambas.
[0177] La estación base 1700 puede incluir una pasarela de medios 120 que está acoplada a la conexión de red 1760 y al procesador 1706. La pasarela de medios 120 puede configurarse para convertir entre corrientes de medios de diferentes tecnologías de telecomunicaciones. Por ejemplo, la pasarela de medios 120 puede convertir entre diferentes protocolos de transmisión, diferentes esquemas de codificación, o ambos. Para ilustrar, la pasarela de medios 120 puede convertir de señales PCM a señales de Protocolo de transporte en tiempo real (RTP), como un ejemplo ilustrativo, no limitante. La pasarela de medios 120 puede convertir datos entre redes de paquetes conmutados (por ejemplo, una red de Protocolo de Voz sobre Internet (VoIP), un Subsistema Multimedia IP (IMS), una red inalámbrica de cuarta generación (4G), como LTE, WiMax y UMB, etc.), redes de circuitos conmutados (p. ej., una PSTN) y redes híbridas (por ejemplo, una red inalámbrica de segunda generación (2G), como GSM, GPRS y EDGE, una red inalámbrica de tercera generación (3G), como WCDMA, EV-DO y HSPA, etc.). En una implementación particular, la pasarela de medios 120 puede incluir una memoria intermedia de eliminación de variación de retardo 130. La pasarela de medios 120 está configurada para realizar los procedimientos descritos en las figuras 10, 13 y 15.
[0178] La estación base 1700 puede incluir un demodulador 1762 que está acoplado a los transceptores 1752, 1754, al procesador de datos del receptor 1764 y al procesador 1706, y el procesador de datos del receptor 1764 puede estar acoplado al procesador 1706. El demodulador 1762 puede configurarse para demodular señales moduladas recibidas desde los transceptores 1752, 1754 y para proporcionar datos demodulados al procesador de datos del receptor 1764. El procesador de datos del receptor 1764 puede configurarse para extraer un mensaje o datos de audio de los datos demodulados y enviar el mensaje o los datos de audio al procesador 1706.
[0179] La estación base 1700 puede incluir un procesador de transmisión de datos 1782 y un procesador de transmisión múltiple de entrada-salida múltiple (MIMO) 1784. El procesador de datos de transmisión 1782 puede estar acoplado al procesador 1706 y al procesador MIMO de transmisión 1784. El procesador MIMO de transmisión 1784 puede estar acoplado a los transceptores 1752, 1754 y al procesador 1706. En algunas implementaciones, el procesador MIMO de transmisión 1784 puede estar acoplado a la pasarela de medios 1770. El procesador de datos de transmisión 1782 puede configurarse para recibir los mensajes o los datos de audio del procesador 1706 y codificar los mensajes o los datos de audio en base a un esquema de codificación, tal como CDMA o multiplexación por división de frecuencia ortogonal (OFDM), como ejemplos ilustrativos, no limitantes. El procesador de datos de transmisión 1782 puede proporcionar los datos codificados al procesador MIMO de transmisión 1784.
[0180] Los datos codificados pueden multiplexarse con otros datos, tal como datos piloto, utilizando técnicas CDMA u OFDM para generar datos multiplexados. Los datos multiplexados pueden entonces ser modulados (es decir, mapeados por símbolos) por el procesador de datos de transmisión 1782 basado en un esquema de modulación particular (por ejemplo, codificación de desplazamiento de fase binaria ("BPSK"), codificación de desplazamiento de fase en cuadratura ("QSPK"), modulación por desplazamiento de fase M-ary ("M-PSK"), modulación de amplitud de cuadratura M-ary ("M-QAM"), etc.) para generar símbolos de modulación. En una implementación particular, los datos codificados y otros datos pueden modularse usando diferentes esquemas de modulación. La velocidad de transferencia de datos, la codificación y la modulación para cada flujo de datos pueden determinarse mediante instrucciones ejecutadas por el procesador 1706.
[0181] El procesador MIMO de transmisión 1784 puede configurarse para recibir los símbolos de modulación del procesador de datos de transmisión 1782 y puede procesar adicionalmente los símbolos de modulación y puede realizar la formación de haces en los datos. Por ejemplo, el procesador MIMO de transmisión 1784 puede aplicar ponderaciones de formación de haz a los símbolos de modulación. Las ponderaciones de formación de haz pueden corresponder a una o más antenas del conjunto de antenas desde las cuales se transmiten los símbolos de modulación.
[0182] Durante el funcionamiento, la segunda antena 1744 de la estación base 1700 puede recibir una corriente de datos 1714. El segundo transceptor 1754 puede recibir la corriente de datos 1714 desde la segunda antena 1744 y puede proporcionar la corriente de datos 1714 al demodulador 1762. El demodulador 1762 puede demodular señales moduladas del flujo de datos 1714 y proporcionar datos demodulados al procesador de datos del receptor 1764. El procesador de datos del receptor 1764 puede extraer datos de audio de los datos demodulados y proporcionar los datos de audio extraídos al procesador 1706.
[0183] El procesador 1706 puede proporcionar los datos de audio al transcodificador 1710 para la transcodificación. El decodificador 1738 del transcodificador 1710 puede decodificar los datos de audio de un primer formato en datos de audio decodificados y el codificador 1736 puede codificar los datos de audio decodificados en un segundo formato. En algunas implementaciones, el codificador 1736 puede codificar los datos de audio usando una velocidad de datos más alta (por ejemplo, conversión ascendente) o una velocidad de datos más baja (por ejemplo, conversión descendente) que la recibida desde el dispositivo inalámbrico. En otras implementaciones, los datos de audio pueden no ser transcodificados. Aunque la transcodificación (por ejemplo, decodificación y codificación) se ilustra como realizada por un transcodificador 1710, las operaciones de transcodificación (por ejemplo, decodificación y codificación) pueden realizarse por múltiples componentes de la estación base 1700. Por ejemplo, la decodificación puede ser realizada por el procesador de datos del receptor 1764 y la codificación puede ser realizada por el procesador de datos de transmisión 1782. En otras implementaciones, el procesador 1706 puede proporcionar los datos de audio a la pasarela de medios 1770 para la conversión a otro protocolo de transmisión, esquema de codificación, o ambos. La pasarela de medios 1770 puede proporcionar los datos convertidos a otra estación base o red central a través de la conexión de red 1760.
[0184] El decodificador 1738 y el codificador 1736 pueden seleccionar un decodificador correspondiente (por ejemplo, un decodificador de voz o un decodificador sin voz) y un codificador correspondiente para transcodificar (por ejemplo, decodificar y codificar) la trama. El decodificador 1738 y el codificador 1736 pueden determinar, trama por trama, si cada trama recibida de la corriente de datos 1714 corresponde a una trama de banda estrecha o a una trama de banda ancha y puede seleccionar un modo de salida de decodificación correspondiente (por ejemplo, un modo de salida de banda estrecha o un modo de salida de banda ancha) y un modo de salida de codificación correspondiente para transcodificar (por ejemplo, decodificar y codificar) la trama. Los datos de audio codificados generados en el codificador 1736, tales como los datos transcodificados, pueden proporcionarse al procesador de datos de transmisión 1782 o a la conexión de red 1760 a través del procesador 1706.
[0185] Por lo tanto, la estación base 1700 puede incluir un dispositivo de almacenamiento legible por ordenador (por ejemplo, la memoria 1732) que almacena instrucciones que, cuando son ejecutadas por un procesador (por ejemplo, el procesador 1706 o el transcodificador 1710), hacen que el procesador realice operaciones que incluyen la recepción de un paquete (que indica información de señalización) a través de una red de circuitos conmutados en una interfaz de red y decodifica una parte del paquete en función de la información de señalización.
[0186] En una implementación, los datos de audio transcodificados desde el transcodificador 1710 pueden proporcionarse al procesador de datos de transmisión 1782 para codificar de acuerdo con un esquema de modulación, tal como OFDM, para generar símbolos de modulación correspondientes al esquema de modulación seleccionado. El procesador de datos de transmisión 1782 puede proporcionar los símbolos de modulación al procesador MIMO de transmisión 1784 para su posterior procesamiento y formación de haces. El procesador MIMO de transmisión 1784 puede aplicar ponderaciones de formación de haz y puede proporcionar datos correspondientes a los símbolos de modulación a una o más antenas del conjunto de antenas, tales como la primera antena 1742 a través del primer transceptor 1752. Por lo tanto, la estación base 1700 puede proporcionar una corriente de datos transcodificados 1716, que corresponde a la corriente de datos 1714 recibida desde el dispositivo inalámbrico, a otro dispositivo inalámbrico. La corriente de datos transcodificados 1716 puede tener un formato de codificación, velocidad de datos o ambos diferentes, que la corriente de datos 1714. En otras implementaciones, la corriente de datos transcodificados 1716 puede proporcionarse a la conexión de red 1760 para su transmisión a otra estación base o una red central.
[0187] La estación base 1700 puede incluir un dispositivo de almacenamiento legible por ordenador (por ejemplo, la memoria 1732) que almacena instrucciones que, cuando son ejecutadas por un procesador (por ejemplo, el procesador 1706 o el transcodificador 1710), hacen que el procesador realice operaciones que incluyen recibir un paquete a través de una red de paquetes conmutados en una primera interfaz de red, incluyendo el paquete la codificación primaria de una primera trama de audio y la codificación redundante de una segunda trama de audio. Las operaciones pueden incluir además generar un paquete modificado que incluye uno o más bits que indican información de señalización, la información de señalización correspondiente a la decodificación de al menos una de la codificación primaria o la codificación redundante, y transmitir el paquete modificado desde una segunda interfaz de red a través de una red de circuitos conmutados.
[0188] Junto con los aspectos descritos, un primer aparato incluye medios para recibir un paquete a través de una red de paquetes conmutados, incluyendo el paquete la codificación primaria de una primera trama de audio, la codificación redundante de una segunda trama de audio y uno o más bits relacionados con la decodificación de la primera trama de audio o la segunda trama de audio. Los medios para recibir pueden incluir o corresponder a la primera interfaz de red 126 de las figuras 1,2, 5; 6, 8 y 9; la primera antena 1642, la primera interfaz de red 1640, el primer transceptor 1650 de la figura 16; el primer transceptor 1752 o el segundo transceptor 1754 de la figura 17; una o más estructuras o circuitos configurados para recibir el paquete a través de la red de paquetes conmutados; o cualquier combinación de los mismos.
[0189] El primer aparato incluye medios para generar un paquete modificado que incluye uno o más bits que indican información de señalización, indicando la información de señalización si decodificar la codificación primaria o la codificación redundante. Los medios para generar pueden incluir o corresponder al procesador 122 de las figuras 1,2, 5, 6, 8 y 9; el procesador 1606 o el procesador 1610 de la figura 16; una o más estructuras o circuitos configurados para generar el paquete modificado; o cualquier combinación de los mismos.
[0190] El primer aparato incluye además medios para transmitir el paquete modificado a través de una red de circuitos conmutados. Los medios para transmitir pueden incluir o corresponder a la segunda interfaz de red 128 de las figuras 1,2, 5, 6, 8 y 9; la segunda antena 1614, la segunda interfaz de red 1670 y el segundo transceptor 1612 de la figura 16; el primer transceptor 1752 o el segundo transceptor 1754 de la figura 17; una o más estructuras o circuitos configurados para transmitir el paquete modificado a través de la red de circuitos conmutados, o cualquier combinación de los mismos.
[0191] El primer aparato incluye además medios para almacenar una nueva codificación de una codificación redundante. Los medios para almacenar pueden corresponder a la memoria 124 de las figuras 1, 2, 5, 8 y 9. Además, el primer aparato puede incluir también medios para almacenar y reordenar paquetes recibidos desde una red de paquetes conmutados en base a identificadores en los paquetes, tales como marcas de tiempo o números de secuencia. Los medios para almacenar y reordenar paquetes pueden corresponder a la memoria intermedia de eliminación de variación de retardo 130 de las figuras 1,2, 5, 8 y 16; una o más estructuras o circuitos configurados para transmitir el paquete modificado a través de la red de circuitos conmutados; o cualquier combinación de los mismos.
[0192] Junto con los aspectos descritos, un segundo aparato incluye medios para recibir un paquete a través de una red de circuitos conmutados, incluyendo el paquete la codificación primaria de una primera trama de audio, la codificación redundante de una segunda trama de audio y la información de señalización que indica si decodificar la codificación primaria o la codificación redundante, la información de señalización incluida en uno o más bits del paquete. Los medios para recibir pueden incluir o corresponder a la interfaz de red 148 de las figuras 1,4, 5, 7 y 8, la primera antena 1642, la primera interfaz de red 1640, el primer transceptor 1650 de la figura 16, una o más estructuras o circuitos configurados para recibir el paquete a través de la red de circuitos conmutados, o cualquier combinación de los mismos. En una implementación particular, el uno o más bits pueden comprender una secuencia de bits.
[0193] El segundo aparato incluye además medios para decodificar una porción del paquete basándose en la información de señalización. Los medios para decodificar pueden incluir o corresponder al decodificador 146 de las figuras 1,4, 5, 7 y 8; el CODEC 1608 de voz y música o el procesador 1610 de la figura 16; el procesador 1706 de la figura 17; una o más estructuras o circuitos configurados para decodificar la porción del paquete en función de la información de señalización; o cualquier combinación de los mismos.
[0194] El segundo aparato puede incluir además medios para almacenar la codificación primaria en respuesta a la codificación redundante que se decodifica. Los medios para almacenar la codificación primaria pueden incluir o corresponder a la memoria intermedia de redundancia previa 150 de las figuras 1,4, 5, 7, 8. 16, y 17. Alternativa o adicionalmente, el segundo aparato incluye además medios para almacenar la codificación redundante en respuesta a la codificación primaria que se decodifica. Los medios para almacenar la codificación redundante pueden incluir o corresponder a la memoria intermedia de redundancia previa 150 de las figuras 1,4, 5, 7, 8, 16 y 17.
[0195] Junto con los aspectos descritos, un tercer aparato incluye medios para recibir un paquete a través de una red de circuitos conmutados, incluyendo el paquete la codificación primaria de una primera trama de audio y la codificación redundante de una segunda trama de audio. Los medios para recibir pueden incluir o corresponder a la interfaz de red 148 de las figuras 1, 4, 5, 7 y 8; la primera antena 1642, la primera interfaz de red 1640, y el primer transceptor 1650 de la figura 16; una o más estructuras o circuitos configurados para recibir el paquete a través de la red de circuitos conmutados; o cualquier combinación de los mismos.
[0196] El tercer aparato incluye medios para decodificar la codificación redundante de la segunda trama de audio. Los medios para decodificar pueden incluir o corresponder al decodificador 146 de las figuras 1, 4, 5, 8 y 16; el CODEC 1608 de voz y música o el procesador 1610 de la figura 16; una o más estructuras o circuitos configurados para decodificar la codificación redundante; o cualquier combinación de los mismos.
[0197] El tercer aparato incluye además medios para almacenar la codificación primaria de la primera trama de audio después de la decodificación de la codificación redundante de la segunda trama de audio. Los medios para almacenar pueden incluir o corresponder a la memoria 144 de las figuras 1, 4, 5, 7 y 8; la memoria intermedia de redundancia previa 150 de las figuras 1,4, 5, 7, 8 y 16; la memoria 1632 de la figura 16; una o más estructuras o circuitos configurados para almacenar la codificación primaria; o cualquier combinación de los mismos.
[0198] Junto con los aspectos descritos, un cuarto aparato incluye medios para recibir un paquete a través de una red de paquetes conmutados, incluyendo el paquete la codificación primaria de una primera trama de audio y la codificación redundante de una segunda trama de audio. Los medios para recibir pueden incluir o corresponder a la primera interfaz de red 126 de las figuras 1, 2, 5, 6, 8 y 9; la primera antena 1642, la primera interfaz de red 1640, y el primer transceptor 1650 de la figura 16; una o más estructuras o circuitos configurados para recibir el paquete a través de la red de paquetes conmutados; o cualquier combinación de los mismos.
[0199] El cuarto aparato incluye medios para generar un paquete modificado que incluye una nueva codificación de la codificación redundante de la segunda trama de audio. Los medios para generar pueden incluir o corresponder al procesador 122 de las figuras 1,2, 5, 6, 8 y 9; el procesador 1606 o el procesador 1610 de la figura 16; una o más estructuras o circuitos configurados para generar el paquete modificado; o cualquier combinación de los mismos.
[0200] El cuarto aparato incluye además medios para transmitir el paquete modificado desde una segunda interfaz de red a través de una red de circuitos conmutados. Los medios para transmitir pueden incluir o corresponder a la segunda interfaz de red 128 de las figuras 1, 5, 6, 8 y 9; la segunda antena 1614, la segunda interfaz de red 1670 y el segundo transceptor 1612 de la figura 16; una o más estructuras o circuitos configurados para transmitir el paquete modificado a través de la red de circuitos conmutados; o cualquier combinación de los mismos.
[0201] Junto con los aspectos descritos, un quinto aparato incluye medios para recibir un paquete a través de una red de paquetes conmutados, incluyendo el paquete la codificación primaria de una primera trama de audio y la codificación redundante de una segunda trama de audio. Los medios para recibir pueden incluir o corresponder a la primera interfaz de red 126 de las figuras 1, 2, 5, 6, 8, y 9; la primera antena 1642, la primera interfaz de red 1640, y el primer transceptor 1650 de la figura 16; una o más estructuras o circuitos configurados para recibir el paquete a través de la red de paquetes conmutados; o cualquier combinación de los mismos.
[0202] El quinto aparato incluye medios para generar un paquete modificado reemplazando al menos una porción de la codificación primaria con una secuencia de bits. Los medios para generar pueden incluir o corresponder al procesador 122 de las figuras 1,2, 5, 6, 8 y 9; el procesador 1606 o el procesador 1610 de la figura 16; una o más estructuras o circuitos configurados para generar el paquete modificado; o cualquier combinación de los mismos.
[0203] El quinto aparato incluye además medios para transmitir el paquete modificado a través de una red de circuitos conmutados. Los medios para transmitir pueden incluir o corresponder a la segunda interfaz de red 128 de las figuras 1,2, 5, 6, 8 y 9; la segunda antena 1614; la segunda interfaz de red 1670; y el segundo transceptor 1612 de la figura 16; una o más estructuras o circuitos configurados para transmitir el paquete modificado a través de la red de circuitos conmutados; o cualquier combinación de los mismos.
[0204] En conjunción con los aspectos descritos, un sexto aparato incluye medios para recibir un paquete a través de una red de circuitos conmutados, incluyendo el paquete un primer conjunto de bits asignados para la codificación primaria de una primera trama de audio y un segundo conjunto de bits asignados para la codificación redundante de una segunda trama de audio. Los medios para recibir pueden incluir o corresponder a la interfaz de red 148 de las figuras 1,4, 5, 7 y 8; la primera antena 1642, la primera interfaz de red 1640, y el primer transceptor 1650 de la figura 16; una o más estructuras o circuitos configurados para recibir el paquete a través de la red de paquetes conmutados; o cualquier combinación de los mismos.
[0205] El sexto aparato incluye medios para detectar una secuencia de bits en el primer conjunto de bits, indicando la secuencia de bits que se va a decodificar la codificación redundante. Los medios para detectar pueden incluir o corresponder al procesador 142 de las figuras 1,4, 5, 7 y 8; el procesador 1606 o el procesador 1610 de la figura 16; una o más estructuras o circuitos configurados para detectar la secuencia de bits en el primer conjunto de bits; o cualquier combinación de los mismos.
[0206] El sexto aparato incluye además medios para decodificar la codificación redundante basada en la detección de la secuencia de bits. Los medios para decodificar pueden incluir o corresponder al decodificador 146 de las figuras 1,4, 5, 7, 8 y 16; el CODEC 1608 de voz y música, el procesador 1606, o el procesador 1610 de la figura 16; una o más estructuras o circuitos configurados para decodificar la codificación redundante; o cualquier combinación de los mismos.
[0207] Uno o más de los aspectos divulgados pueden implementarse en un sistema o un aparato, tal como el dispositivo 1600, que puede incluir un dispositivo de comunicaciones, una unidad de datos de ubicación fija, una unidad de datos de ubicación móvil, un teléfono móvil, un teléfono celular, un teléfono satelital, un ordenador, una tableta, un ordenador portátil, un dispositivo de pantalla, un reproductor de medios, o un ordenador de escritorio. De forma alternativa o adicionalmente, el dispositivo 1600 puede incluir un descodificador, una unidad de entretenimiento, un dispositivo de navegación, un asistente digital personal (PDA), un monitor, un monitor de ordenador, un televisor, un sintonizador, una radio, una radio satelital, un reproductor de música, un reproductor de música digital, un reproductor de música portátil, un reproductor de vídeo, un reproductor de vídeo digital, un reproductor de disco de vídeo digital (DVD), un reproductor de vídeo digital portátil, un satélite, un vehículo, cualquier otro dispositivo que incluye un procesador o que almacene o recupere datos o instrucciones del ordenador, o una combinación de los mismos. Como otro ejemplo ilustrativo y no limitante, el sistema o el aparato pueden incluir unidades remotas, como unidades de sistemas de comunicación personal (PCS) portátiles, unidades de datos portátiles tales como dispositivos habilitados para el sistema de posicionamiento global (GPS), equipos de lectura de medidores o cualquier otro dispositivo que incluye un procesador o que almacena o recupera datos o instrucciones del ordenador, o cualquier combinación de los mismos.
[0208] Aunque una o más de las figuras 1 -17 ilustran sistemas, aparatos y/o procedimientos de acuerdo con las enseñanzas de la divulgación, la divulgación no se limita a estos sistemas, aparatos y/o procedimientos ilustrados. Una o más funciones o componentes de cualquiera de las FIGS. 1 -17, como se ilustran o describen en el presente documento, pueden combinarse con una o más partes de otras de las FIGS. 1-17. Por consiguiente, ninguna implementación única descrita en el presente documento debe interpretarse como limitante y las implementaciones de la divulgación pueden combinarse adecuadamente sin apartarse de las enseñanzas de la divulgación. Como ejemplo, uno o más de los procedimientos de las figuras 10-15, individualmente o en combinación, pueden ser realizados por los procesadores 104, 122 y 142 de las figuras 1,5 y 8, los procesadores 1606 o 1610 de la figura 16, o el procesador 1706 de la figura 17. Para ilustrar, una porción de uno de los procedimientos de las figuras 10­ 15 pueden combinarse con una segunda porción de uno de los procedimientos de las figuras 10-15. Además, una o más operaciones descritas con referencia a las figuras 10-15 pueden ser opcionales, pueden realizarse al menos parcialmente de manera concurrente, y/o pueden realizarse en un orden diferente al mostrado o descrito.
[0209] Los expertos en la técnica apreciarán, además, que los diversos bloques lógicos, configuraciones, módulos, circuitos y etapas de algoritmo ilustrativos descritos en conexión con las implementaciones divulgadas en el presente documento se pueden implementar como hardware electrónico, software informático ejecutado por un ordenador o combinaciones de ambos. Se han descrito anteriormente diversos componentes, bloques, configuraciones, módulos, circuitos y etapas ilustrativos, en general, en lo que respecta a su funcionalidad. Que dicha funcionalidad se implemente como hardware o instrucciones ejecutables por procesador depende de la aplicación particular y de las restricciones de diseño impuestas al sistema global. Los expertos en la técnica pueden implementar la funcionalidad descrita de diferentes maneras para cada aplicación en particular, pero no se debe interpretar que dichas decisiones de implementación suponen apartarse del alcance de la presente divulgación.
[0210] Las etapas de un procedimiento o algoritmo descritas en relación con la divulgación del presente documento se pueden incorporar directamente en hardware, en un módulo de software ejecutado por un procesador o en una combinación de ambos. Un módulo de software puede residir en una memoria de acceso aleatorio (RAM), memoria flash, memoria de solo lectura (ROM), memoria de solo lectura programable (PROM), memoria de solo lectura programable y borrable (EPROM), memoria de solo lectura programable y borrable eléctricamente (EEPROM), registros, disco duro, disco extraíble, disco compacto con memoria de solo lectura (CD-ROM) o en cualquier otra forma de medio de almacenamiento no transitorio conocido en la técnica. Un medio de almacenamiento ejemplar se acopla al procesador de modo que el procesador pueda leer información de, y escribir información en, el medio de almacenamiento. De forma alternativa, el medio de almacenamiento puede estar integrado en el procesador. El procesador y el medio de almacenamiento pueden residir en un circuito integrado específico de la aplicación (ASIC). El ASIC puede residir en un dispositivo informático o en un terminal de usuario. Como alternativa, el procesador y el medio de almacenamiento pueden residir como componentes discretos en un dispositivo informático o en un terminal de usuario.
[0211] La descripción anterior de las implementaciones divulgadas se proporciona para permitir que un experto en la materia elabore o use las implementaciones divulgadas. Diversas modificaciones de estas implementaciones resultarán fácilmente evidentes para los expertos en la materia, y los principios definidos en el presente documento se pueden aplicar a otras implementaciones sin apartarse del alcance de la divulgación. Por tanto, la presente divulgación no está prevista para limitarse a las implementaciones mostradas en el presente documento, sino que se le ha de conceder el alcance más amplio posible compatible con los principios y los rasgos característicos novedosos como se define en las reivindicaciones siguientes.

Claims (13)

REIVINDICACIONES
1. Un procedimiento de comunicación inalámbrica, comprendiendo el procedimiento:
recibir (1102) un paquete en una interfaz de red a través de una red de circuitos conmutados, incluyendo el paquete una codificación primaria (162) de una primera trama de audio, una codificación redundante (164) de una segunda trama de audio y uno o más bits que indican información de señalización, indicando la información de señalización cuál de la codificación primaria (162) y de la codificación redundante (164) se va a decodificar; y
decodificar (1104) la porción de codificación primaria (162) o la de codificación redundante (164) del paquete en función de la información de señalización.
2. El procedimiento de la reivindicación 1, en el que el uno o más bits comprenden un solo bit de señalización, y en el que el solo bit de señalización está incluido en la codificación redundante (164).
3. El procedimiento de la reivindicación 1, en el que el uno o más bits comprenden un solo bit de señalización, y en el que el solo bit de señalización está incluido en la codificación primaria (162).
4. El procedimiento de acuerdo con la reivindicación 1, que comprende almacenar una porción no decodificada del paquete en una memoria intermedia de redundancia previa (150) en respuesta a la decodificación de la porción del paquete.
5. El procedimiento de acuerdo con la reivindicación 4, que comprende además incluir, en respuesta a una pérdida de paquetes relativa a un segundo paquete, recuperar, desde la memoria intermedia de redundancia previa (150), la porción no decodificada del paquete.
6. El procedimiento de la reivindicación 5, en el que el segundo paquete corresponde a un intervalo de tiempo que es posterior al intervalo de tiempo en el cual se recibe el paquete en la interfaz de red.
7. El procedimiento de acuerdo con la reivindicación 4, que comprende además:
recibir un segundo paquete en la interfaz de red, el segundo paquete recibido en un segundo intervalo de tiempo posterior al intervalo de tiempo en el cual se recibió el paquete;
determinar que los datos correspondientes al segundo paquete están corruptos; y
en función de determinar que los datos están corruptos, recuperar, desde la memoria intermedia de redundancia previa (150), la porción no decodificada del paquete, la porción no decodificada correspondiendo a los datos corruptos.
8. El procedimiento de la reivindicación 1, en el que la codificación primaria (162) corresponde a la porción del paquete que se decodifica en función de la información de señalización.
9. El procedimiento de la reivindicación 1, en el que la codificación redundante (164) corresponde a la porción del paquete que se decodifica en función de la información de señalización.
10. El procedimiento de la reivindicación 1, en el que la codificación primaria (162) incluye un núcleo codificado de banda baja de la primera trama de audio y parámetros de banda alta de la primera trama de audio.
11. Un aparato que comprende:
medios para recibir, a través de una red de circuitos conmutados, un paquete que incluye una codificación primaria (162) de una primera trama de audio, una codificación redundante (164) de una segunda trama de audio, y uno o más bits que indican información de señalización, indicando la información de señalización cuál de la codificación primaria (162) y de la codificación redundante (164) se va a decodificar; y medios para decodificar la porción de codificación primaria (162) o la de codificación redundante (164) del paquete en función de la información de señalización.
12. El aparato de la reivindicación 11, que comprende además medios para almacenar la codificación primaria (162) en respuesta a la codificación redundante (164) que se decodifique.
13. El aparato de la reivindicación 11, en el que el uno o más bits comprenden una secuencia de bits o información de señalización.
Un dispositivo de almacenamiento legible por ordenador que almacena instrucciones que, cuando se ejecutan por un procesador, causan que el procesador realice el procedimiento de acuerdo con una cualquiera de las reivindicaciones 1 a 10.
ES16774575T 2015-10-29 2016-09-14 Información de señalización de soporte de paquete indicativa de si decodificar una codificación primaria o una codificación redundante del paquete Active ES2770926T3 (es)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562248271P 2015-10-29 2015-10-29
US201562248265P 2015-10-29 2015-10-29
US201562248275P 2015-10-29 2015-10-29
US15/263,905 US10049681B2 (en) 2015-10-29 2016-09-13 Packet bearing signaling information indicative of whether to decode a primary coding or a redundant coding of the packet
PCT/US2016/051767 WO2017074587A1 (en) 2015-10-29 2016-09-14 Packet bearing signaling information indicative of whether to decode a primary coding or a redundant coding of the packet

Publications (1)

Publication Number Publication Date
ES2770926T3 true ES2770926T3 (es) 2020-07-03

Family

ID=57018183

Family Applications (1)

Application Number Title Priority Date Filing Date
ES16774575T Active ES2770926T3 (es) 2015-10-29 2016-09-14 Información de señalización de soporte de paquete indicativa de si decodificar una codificación primaria o una codificación redundante del paquete

Country Status (11)

Country Link
US (1) US10049681B2 (es)
EP (1) EP3369197B1 (es)
JP (1) JP6495544B2 (es)
KR (1) KR101980058B1 (es)
CN (1) CN108352927B (es)
AU (1) AU2016343906B2 (es)
BR (1) BR112018008779A2 (es)
ES (1) ES2770926T3 (es)
HU (1) HUE048690T2 (es)
TW (1) TWI664840B (es)
WO (1) WO2017074587A1 (es)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10049682B2 (en) 2015-10-29 2018-08-14 Qualcomm Incorporated Packet bearing signaling information indicative of whether to decode a primary coding or a redundant coding of the packet
US9967306B1 (en) * 2016-09-08 2018-05-08 Sprint Spectrum L.P. Prioritized transmission of redundancy data for packetized voice communication
US10454811B2 (en) * 2017-04-07 2019-10-22 Qualcomm Incorporated Apparatus and method for de-jitter buffer delay adjustment
CN107241166A (zh) * 2017-06-12 2017-10-10 京信通信系统(中国)有限公司 一种长期演进上的语音Volte数据保障方法和设备
GB201820161D0 (en) * 2018-12-11 2019-01-23 Nordic Semiconductor Asa Radio devices with switchable antennas
US11522816B2 (en) * 2019-09-25 2022-12-06 MIXHalo Corp. Multi-stride packet payload mapping for robust transmission of data
US11108898B1 (en) * 2019-12-05 2021-08-31 Amazon Technologies, Inc. Packets with header replicas for contention resolution in communications systems
US11711322B2 (en) * 2021-10-31 2023-07-25 Zoom Video Communications, Inc. Packet processing at a server

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6731625B1 (en) * 1997-02-10 2004-05-04 Mci Communications Corporation System, method and article of manufacture for a call back architecture in a hybrid network with support for internet telephony
US6757654B1 (en) * 2000-05-11 2004-06-29 Telefonaktiebolaget Lm Ericsson Forward error correction in speech coding
US20020174434A1 (en) 2001-05-18 2002-11-21 Tsu-Chang Lee Virtual broadband communication through bundling of a group of circuit switching and packet switching channels
JP4400571B2 (ja) * 2003-09-30 2010-01-20 日本電気株式会社 異種通信網間接続における符号化データの処理方法及びゲートウェイ装置
US7177804B2 (en) * 2005-05-31 2007-02-13 Microsoft Corporation Sub-band voice codec with multi-stage codebooks and redundant coding
JP2007288342A (ja) * 2006-04-13 2007-11-01 Nec Corp メディアストリーム中継装置および方法
US8346235B2 (en) 2010-01-25 2013-01-01 Research In Motion Limited DTMF signalling between mobile and server
CN102143367B (zh) * 2010-01-30 2013-01-30 华为技术有限公司 一种纠错校验方法、设备和系统
US9047863B2 (en) * 2012-01-12 2015-06-02 Qualcomm Incorporated Systems, methods, apparatus, and computer-readable media for criticality threshold control
US9275644B2 (en) * 2012-01-20 2016-03-01 Qualcomm Incorporated Devices for redundant frame coding and decoding
TWI646812B (zh) 2012-01-24 2019-01-01 內數位專利控股公司 無線傳輸/接收單元、在無線傳輸/接收單元中實施的方法以及網路節點
US10614816B2 (en) * 2013-10-11 2020-04-07 Qualcomm Incorporated Systems and methods of communicating redundant frame information
US10049682B2 (en) 2015-10-29 2018-08-14 Qualcomm Incorporated Packet bearing signaling information indicative of whether to decode a primary coding or a redundant coding of the packet

Also Published As

Publication number Publication date
TW201717585A (zh) 2017-05-16
WO2017074587A1 (en) 2017-05-04
AU2016343906A1 (en) 2018-04-12
KR20180077167A (ko) 2018-07-06
KR101980058B1 (ko) 2019-08-28
JP2019501404A (ja) 2019-01-17
CN108352927A (zh) 2018-07-31
US10049681B2 (en) 2018-08-14
BR112018008779A2 (pt) 2018-10-30
HUE048690T2 (hu) 2020-08-28
JP6495544B2 (ja) 2019-04-03
TWI664840B (zh) 2019-07-01
EP3369197B1 (en) 2019-11-06
CN108352927B (zh) 2019-08-16
AU2016343906B2 (en) 2019-06-27
US20170125028A1 (en) 2017-05-04
EP3369197A1 (en) 2018-09-05

Similar Documents

Publication Publication Date Title
ES2775615T3 (es) Paquete llevando información de señalización indicativa de si decodificar una codificación primaria o una codificación redundante del paquete
ES2770926T3 (es) Información de señalización de soporte de paquete indicativa de si decodificar una codificación primaria o una codificación redundante del paquete
ES2967136T3 (es) Sistemas y procedimientos de comunicación de información de trama redundante
US8938663B2 (en) Modem architecture for joint source channel decoding
ES2958212T3 (es) Señalización de una solicitud de adaptación de una sesión de comunicación de voz sobre IP
NZ717780B2 (en) Systems and methods of communicating redundant frame information