ES2945723T3 - Método de codificación y decodificación y aparato de codificación y decodificación para señales estéreo - Google Patents

Método de codificación y decodificación y aparato de codificación y decodificación para señales estéreo Download PDF

Info

Publication number
ES2945723T3
ES2945723T3 ES18839134T ES18839134T ES2945723T3 ES 2945723 T3 ES2945723 T3 ES 2945723T3 ES 18839134 T ES18839134 T ES 18839134T ES 18839134 T ES18839134 T ES 18839134T ES 2945723 T3 ES2945723 T3 ES 2945723T3
Authority
ES
Spain
Prior art keywords
current frame
time difference
decoding
signal
encoding
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
ES18839134T
Other languages
English (en)
Inventor
Eyal Shlomot
Haiting Li
Bin Wang
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Application granted granted Critical
Publication of ES2945723T3 publication Critical patent/ES2945723T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • 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/18Vocoders using multiple modes
    • G10L19/20Vocoders using multiple modes using sound class specific coding, hybrid encoders or object based 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/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/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S3/00Systems employing more than two channels, e.g. quadraphonic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S3/00Systems employing more than two channels, e.g. quadraphonic
    • H04S3/008Systems employing more than two channels, e.g. quadraphonic in which the audio signals are in digital form, i.e. employing more than two discrete digital channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2420/00Techniques used stereophonic systems covered by H04S but not provided for in its groups
    • H04S2420/03Application of parametric coding in stereophonic audio systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Stereophonic System (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
  • Stereo-Broadcasting Methods (AREA)

Abstract

Un método de codificación y decodificación y un aparato de codificación y decodificación para una señal estéreo. El método de codificación para una señal estéreo comprende: determinar una diferencia de tiempo de un cuadro actual entre canales de sonido (410); realizar un procesamiento de interpolación de acuerdo con la diferencia de tiempo del cuadro actual entre los canales de sonido y una diferencia de tiempo de un cuadro anterior al cuadro actual entre los canales de sonido, para obtener una diferencia de tiempo, después del procesamiento de interpolación, del cuadro actual entre el canales de sonido (420); realizar el procesamiento de alineación de retardo en una señal estéreo del cuadro actual de acuerdo con la diferencia de tiempo del cuadro actual entre los canales de sonido, para obtener la señal estéreo, después del procesamiento de alineación de retardo, del cuadro actual (430); realizar un procesamiento de mezcla descendente en el dominio del tiempo en la señal estéreo, después del procesamiento de alineación de retardo, del cuadro actual, para obtener una señal de canal de sonido principal y una señal de canal de sonido secundario del cuadro actual (440); realizar una codificación cuantificada sobre la diferencia de tiempo, después del procesamiento de interpolación, del cuadro actual entre los canales de sonido y escribirlo en un flujo de código (450); y realizar la codificación cuantificada en la señal del canal de sonido principal y la señal del canal de sonido secundario del cuadro actual y escribir la misma en el flujo de código (460). El método puede reducir la desviación entre una diferencia de tiempo de una señal estéreo, finalmente obtenida por decodificación, entre canales de sonido, y una diferencia de tiempo de una señal estéreo original entre los canales de sonido. después del procesamiento de alineación de retardo, del cuadro actual, para obtener una señal de canal de sonido principal y una señal de canal de sonido secundario del cuadro actual (440); realizar una codificación cuantificada sobre la diferencia de tiempo, después del procesamiento de interpolación, del cuadro actual entre los canales de sonido y escribirlo en un flujo de código (450); y realizar la codificación cuantificada en la señal del canal de sonido principal y la señal del canal de sonido secundario del cuadro actual y escribir la misma en el flujo de código (460). El método puede reducir la desviación entre una diferencia de tiempo de una señal estéreo, finalmente obtenida por decodificación, entre canales de sonido, y una diferencia de tiempo de una señal estéreo original entre los canales de sonido. después del procesamiento de alineación de retardo, del cuadro actual, para obtener una señal de canal de sonido principal y una señal de canal de sonido secundario del cuadro actual (440); realizar una codificación cuantificada sobre la diferencia de tiempo, después del procesamiento de interpolación, del cuadro actual entre los canales de sonido y escribirlo en un flujo de código (450); y realizar la codificación cuantificada en la señal del canal de sonido principal y la señal del canal de sonido secundario del cuadro actual y escribir la misma en el flujo de código (460). El método puede reducir la desviación entre una diferencia de tiempo de una señal estéreo, finalmente obtenida por decodificación, entre canales de sonido, y una diferencia de tiempo de una señal estéreo original entre los canales de sonido. para obtener una señal de canal de sonido principal y una señal de canal de sonido secundario del cuadro actual (440); realizar una codificación cuantificada sobre la diferencia de tiempo, después del procesamiento de interpolación, del cuadro actual entre los canales de sonido y escribirlo en un flujo de código (450); y realizar la codificación cuantificada en la señal del canal de sonido principal y la señal del canal de sonido secundario del cuadro actual y escribir la misma en el flujo de código (460). El método puede reducir la desviación entre una diferencia de tiempo de una señal estéreo, finalmente obtenida por decodificación, entre canales de sonido, y una diferencia de tiempo de una señal estéreo original entre los canales de sonido. para obtener una señal de canal de sonido principal y una señal de canal de sonido secundario del cuadro actual (440); realizar una codificación cuantificada sobre la diferencia de tiempo, después del procesamiento de interpolación, del cuadro actual entre los canales de sonido y escribirlo en un flujo de código (450); y realizar la codificación cuantificada en la señal del canal de sonido principal y la señal del canal de sonido secundario del cuadro actual y escribir la misma en el flujo de código (460). El método puede reducir la desviación entre una diferencia de tiempo de una señal estéreo, finalmente obtenida por decodificación, entre canales de sonido, y una diferencia de tiempo de una señal estéreo original entre los canales de sonido. del cuadro actual entre los canales de sonido y escribirlo en un flujo de código (450); y realizar la codificación cuantificada en la señal del canal de sonido principal y la señal del canal de sonido secundario del cuadro actual y escribir la misma en el flujo de código (460). El método puede reducir la desviación entre una diferencia de tiempo de una señal estéreo, finalmente obtenida por decodificación, entre canales de sonido, y una diferencia de tiempo de una señal estéreo original entre los canales de sonido. del cuadro actual entre los canales de sonido y escribirlo en un flujo de código (450); y realizar la codificación cuantificada en la señal del canal de sonido principal y la señal del canal de sonido secundario del cuadro actual y escribir la misma en el flujo de código (460). El método puede reducir la desviación entre una diferencia de tiempo de una señal estéreo, finalmente obtenida por decodificación, entre canales de sonido, y una diferencia de tiempo de una señal estéreo original entre los canales de sonido. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Método de codificación y decodificación y aparato de codificación y decodificación para señales estéreo
Esta solicitud reclama prioridad de la Solicitud de patente china Núm. 201710614326.7, presentada ante la Oficina de Patentes de China el 25 de julio de 2017 y titulada "ENCODING AND DECODING METHODS, AND ENCODING AND DECODING APPARATUSES FOR STEREO SIGNAL".
Campo técnico
Esta solicitud se relaciona con el campo de las tecnologías de codificación y decodificación de señales de audio y, más específicamente, con los métodos de codificación y decodificación y los aparatos de codificación y decodificación para una señal estéreo.
Antecedentes
Una tecnología de codificación y decodificación estéreo paramétrica, una tecnología de codificación y decodificación estéreo en el dominio del tiempo y similares pueden usarse para codificar una señal estéreo. La codificación y decodificación de la señal estéreo mediante el uso de la tecnología de codificación y decodificación estéreo en el dominio del tiempo generalmente incluye los siguientes procesos:
Un proceso de codificación:
estimar una diferencia de tiempo entre canales de la señal estéreo;
realizar la alineación de retardo en la señal estéreo con base en la diferencia de tiempo entre canales; realizar, con base en un parámetro de procesamiento de mezcla descendente en el dominio del tiempo, un procesamiento de mezcla descendente en el dominio del tiempo en una señal que se obtiene después de la alineación de retardo, para obtener una señal de canal principal y una señal de canal secundario; y codificar la diferencia de tiempo entre canales, el parámetro de procesamiento de mezcla descendente en el dominio del tiempo, la señal del canal principal y la señal del canal secundario, para obtener un flujo de bits codificado.
Un proceso de decodificación:
decodificar el flujo de bits para obtener una señal de canal principal, una señal de canal secundario, un parámetro de procesamiento de mezcla descendente en el dominio del tiempo y una diferencia de tiempo entre canales;
realizar un procesamiento de mezcla ascendente en el dominio del tiempo en la señal del canal principal y la señal del canal secundario con base en el parámetro de procesamiento de mezcla descendente en el dominio del tiempo, para obtener una señal reconstruida del canal izquierdo y una señal reconstruida del canal derecho que se obtienen después del procesamiento de mezcla ascendente en el dominio del tiempo; y
ajustar, con base en la diferencia de tiempo entre canales, un retardo de la señal reconstruida del canal izquierdo y la señal reconstruida del canal derecho que se obtienen después del procesamiento de mezcla ascendente en el dominio del tiempo, para obtener una señal estéreo decodificada.
En los procesos de codificación y decodificación de la señal estéreo mediante el uso de la tecnología de codificación estéreo en el dominio del tiempo, aunque se considera la diferencia de tiempo entre canales, porque hay retardos en la codificación y decodificación en los procesos de codificación y decodificación de la señal del canal principal y la señal del canal secundario, hay una desviación entre la diferencia de tiempo entre canales de la señal estéreo que finalmente se emite desde un extremo de decodificación y la diferencia de tiempo entre canales de la señal estéreo original, que afecta una imagen de sonido estéreo de la salida de señal estéreo por decodificación.
La codificación estéreo de diferencia de suma flexible basada en componentes de señal alineados en el tiempo, Jonas Lindblom, Jan H. Plasberg y Renat Vafin, 16-19 de octubre de 2005, divulga una infraestructura para la codificación de señales de audio estéreo generales. Los métodos basados en la infraestructura se pueden usar junto con un codificador arbitrario de un solo canal (mono) para lograr una transición perfecta de la codificación estéreo paramétrica pura a la codificación de aproximación de forma de onda a medida que aumenta la tasa de bits. La idea, basada en la codificación de suma-diferencia de componentes de señal alineados en el tiempo, se presenta como una infraestructura general.
Resumen
Esta solicitud proporciona métodos de codificación y decodificación, y aparatos de codificación y decodificación para una señal estéreo, para reducir la desviación entre la diferencia de tiempo entre canales de una señal estéreo que se obtiene mediante la decodificación y la diferencia de tiempo entre canales de una señal estéreo original.
Según un primer aspecto, se proporciona un método de codificación para una señal estéreo. El método de codificación incluye: determinar una diferencia de tiempo entre canales en una trama actual; realizar un procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual y una diferencia de tiempo entre canales en una trama anterior de la trama actual, para obtener una diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual; realizar la alineación de retardo en una señal estéreo en la trama actual con base en la diferencia de tiempo entre canales en la trama actual, para obtener una señal estéreo después de la alineación de retardo en la trama actual; realizar un procesamiento de mezcla descendente en el dominio del tiempo en la señal estéreo después de la alineación del retardo en la trama actual, para obtener una señal de canal principal y una señal de canal secundario en la trama actual; cuantificar la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, y escribir una diferencia de tiempo entre canales cuantificada en un flujo de bits; y cuantificar la señal del canal principal y la señal del canal secundario en la trama actual, y escribir una señal cuantificada del canal principal y señal cuantificada del canal secundario en el flujo de bits.
Realizando el procesamiento de interpolación en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, y codificando y luego escribiendo la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual en un flujo de bits, una diferencia de tiempo entre canales en la trama actual, que se obtiene al decodificar, por un extremo de decodificación, un flujo de bits recibido, puede coincidir con el flujo de bits, incluida la señal del canal principal y la señal del canal secundario en la trama actual, de modo que el extremo de decodificación pueda realizar la decodificación con base en la diferencia de tiempo entre canales en la trama actual que coincida con el flujo de bits que incluye la señal del canal principal y la señal del canal secundario en la trama actual. Esto puede reducir una desviación entre una diferencia de tiempo entre canales de una señal estéreo que finalmente se obtiene mediante la decodificación y una diferencia de tiempo entre canales de una señal estéreo original. Por lo tanto, se mejora la precisión de una imagen de sonido estéreo de la señal estéreo que finalmente se obtiene mediante la decodificación.
Específicamente, cuando el extremo de codificación codifica la señal del canal principal y la señal del canal secundario que se obtienen después del procesamiento de mezcla descendente, y cuando el extremo de decodificación decodifica el flujo de bits para obtener una señal del canal principal y una señal del canal secundario, hay retardos en la codificación y decodificación. Sin embargo, cuando el extremo de codificación codifica la diferencia de tiempo entre canales, y cuando el extremo de decodificación decodifica el flujo de bits para obtener una diferencia de tiempo entre canales, no existen los mismos retardos de codificación y decodificación, y un códec de audio realiza el procesamiento con base en tramas. Por lo tanto, hay un retardo entre una señal de canal principal y una señal de canal secundario en la trama actual que se obtienen al decodificar, por el extremo de decodificación, un flujo de bits en la trama actual y una diferencia de tiempo entre canales en la trama actual que se obtiene decodificando el flujo de bits en la trama actual. En este caso, si el extremo de la decodificación aún usa la diferencia de tiempo entre canales en la trama actual para ajustar un retardo de una señal reconstruida del canal izquierdo y una señal reconstruida del canal derecho en la trama actual que se obtienen después del subsiguiente procesamiento de mezcla ascendente en el dominio del tiempo se realiza en la señal del canal principal y la señal del canal secundario en la trama actual que se obtienen al decodificar el flujo de bits, existe una desviación relativamente grande entre la diferencia de tiempo entre canales de la señal estéreo finalmente obtenida y la diferencia de tiempo entre canales de la señal estéreo original. Sin embargo, el extremo de codificación realiza un procesamiento de interpolación para ajustar la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual para obtener la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, codifica la diferencia de tiempo entre canales después del procesamiento de interpolación, y transmite la diferencia de tiempo entre canales codificada junto con un flujo de bits que incluye una señal de canal principal y una señal de canal secundario que se obtienen al codificar la trama actual al extremo de decodificación, de modo que la diferencia de tiempo entre canales en la trama actual obtenido por decodificación, mediante el extremo de decodificación, el flujo de bits puede coincidir con la señal reconstruida del canal izquierdo y la señal reconstruida del canal derecho en la trama actual que se obtienen mediante el extremo de decodificación. Por lo tanto, la desviación entre la diferencia de tiempo entre canales de la señal estéreo finalmente obtenida y la diferencia de tiempo entre canales de la señal estéreo original se reduce realizando el ajuste de retardo.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = a • B (1 - a) • C, donde A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, a es un primer coeficiente de interpolación, y 0<a<1.
La diferencia de tiempo entre canales se puede ajustar utilizando la fórmula, de modo que la diferencia de tiempo entre canales obtenida finalmente después del procesamiento de interpolación en la trama actual esté entre la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, y la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual coincide con una diferencia de tiempo entre canales obtenida decodificando actualmente tanto como sea posible.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, el primer coeficiente de interpolación a es inversamente proporcional a un retardo de codificación y decodificación, y es directamente proporcional a la longitud de la trama actual, donde el retardo de codificación y decodificación incluye un retardo de codificación en un proceso de codificación, por el extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por parte del extremo de decodificación, el flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, el primer coeficiente de interpolación a satisface una fórmula a = (N - S)/N, donde S es el retardo de codificación y decodificación, y N es la longitud de trama de la trama actual.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, el primer coeficiente de interpolación a está previamente almacenado.
El almacenamiento previo del primer coeficiente de interpolación a puede reducir la complejidad del cálculo de un proceso de codificación y mejorar la eficiencia de la codificación.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = (1 - p) • B p • C, donde A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, p es un segundo coeficiente de interpolación, y 0<p<1.
La diferencia de tiempo entre canales se puede ajustar utilizando la fórmula, de modo que la diferencia de tiempo entre canales obtenida finalmente después del procesamiento de interpolación en la trama actual esté entre la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, y la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual coincide con una diferencia de tiempo entre canales obtenida decodificando actualmente tanto como sea posible.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, el segundo coeficiente de interpolación p es directamente proporcional a un retardo de codificación y decodificación, y es inversamente proporcional a la longitud de la trama actual, donde el retardo de codificación y decodificación incluye un retardo de codificación en un proceso de codificación, por el extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por el extremo de decodificación, el flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, el segundo coeficiente de interpolación p satisface una fórmula p = S/N, donde S es el retardo de codificación y decodificación, y N es la longitud de la trama actual.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, el segundo coeficiente de interpolación p está previamente almacenado.
El almacenamiento previo del segundo coeficiente de interpolación p puede reducir la complejidad del cálculo de un proceso de codificación y mejorar la eficiencia de la codificación.
Según un segundo aspecto, se proporciona un método de decodificación para una señal multicanal. El método incluye: decodificar un flujo de bits para obtener una señal de canal principal y una señal de canal secundario en una trama actual y una diferencia de tiempo entre canales en la trama actual; realizar un procesamiento de mezcla ascendente en el dominio del tiempo en la señal del canal principal y la señal del canal secundario en la trama actual, para obtener una señal reconstruida del canal izquierdo y una señal reconstruida del canal derecho que se obtienen después del procesamiento de mezcla ascendente en el dominio del tiempo; realizar un procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual y una diferencia de tiempo entre canales en una trama anterior de la trama actual, para obtener una diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual; y ajustar un retardo de la señal reconstruida del canal izquierdo y la señal reconstruida del canal derecho con base en la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual.
Al realizar un procesamiento de interpolación en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual puede coincidir con la señal del canal principal y la señal del canal secundario en la trama actual que se obtienen mediante la decodificación. Esto puede reducir una desviación entre una diferencia de tiempo entre canales de una señal estéreo que finalmente se obtiene mediante la decodificación y una diferencia de tiempo entre canales de una señal estéreo original. Por lo tanto, se mejora la precisión de una imagen de sonido estéreo de la señal estéreo que finalmente se obtiene mediante la decodificación. Con referencia al segundo aspecto, en algunas implementaciones del segundo aspecto, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = a • B (1 - a) • C, donde A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, a es un primer coeficiente de interpolación, y 0<a<1. La diferencia de tiempo entre canales se puede ajustar utilizando la fórmula, de modo que la diferencia de tiempo entre canales obtenida finalmente después del procesamiento de interpolación en la trama actual esté entre la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, y la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual coincide con una diferencia de tiempo entre canales obtenida decodificando actualmente tanto como sea posible.
Con referencia al segundo aspecto, en algunas implementaciones del segundo aspecto, el primer coeficiente de interpolación a es inversamente proporcional a un retardo de codificación y decodificación, y es directamente proporcional a la longitud de la trama actual, donde el retardo de codificación y decodificación incluye un retardo de codificación en un proceso de codificación, por un extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, del flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
Con referencia al segundo aspecto, en algunas implementaciones del segundo aspecto, el primer coeficiente de interpolación a satisface una fórmula a = (N - S)/N, donde S es el retardo de codificación y decodificación, y N es la longitud de trama de la trama actual.
Con referencia al segundo aspecto, en algunas implementaciones del segundo aspecto, el primer coeficiente de interpolación a está previamente almacenado.
El almacenamiento previo del primer coeficiente de interpolación a puede reducir la complejidad de cálculo de un proceso de decodificación y mejorar la eficiencia de decodificación.
Con referencia al segundo aspecto, en algunas implementaciones del segundo aspecto, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = (1 - p) • B p • C, donde A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, p es un primer coeficiente de interpolación, y 0<p<1. La diferencia de tiempo entre canales se puede ajustar utilizando la fórmula, de modo que la diferencia de tiempo entre canales obtenida finalmente después del procesamiento de interpolación en la trama actual esté entre la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, y la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual coincide con una diferencia de tiempo entre canales obtenida decodificando actualmente tanto como sea posible.
Con referencia al segundo aspecto, en algunas implementaciones del segundo aspecto, el segundo coeficiente de interpolación p es directamente proporcional a un retardo de codificación y decodificación, y es inversamente proporcional a la longitud de la trama actual, donde el retardo de codificación y decodificación incluye un retardo de codificación en un proceso de codificación, por un extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, el flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
Con referencia al segundo aspecto, en algunas implementaciones del segundo aspecto, el segundo coeficiente de interpolación p satisface una fórmula p = S/N, donde
S es el retardo de codificación y decodificación, y N es la longitud de la trama actual.
Con referencia al segundo aspecto, en algunas implementaciones del segundo aspecto, el segundo coeficiente de interpolación p está previamente almacenado.
El almacenamiento previo del segundo coeficiente de interpolación p puede reducir la complejidad de cálculo de un proceso de decodificación y mejorar la eficiencia de decodificación.
De acuerdo con un tercer aspecto, se proporciona un aparato de codificación. El aparato de codificación incluye un módulo configurado para realizar el primer aspecto o varias implementaciones del primer aspecto.
De acuerdo con un cuarto aspecto, se proporciona un aparato de decodificación. El aparato de decodificación incluye un módulo configurado para realizar el segundo aspecto o varias implementaciones del segundo aspecto. De acuerdo con un quinto aspecto, se proporciona un aparato de codificación. El aparato de codificación incluye un medio de almacenamiento y una unidad central de procesamiento, donde el medio de almacenamiento puede ser un medio de almacenamiento no volátil y almacena un programa ejecutable por ordenador, y la unidad central de procesamiento está conectada al medio de almacenamiento no volátil y ejecuta el programa ejecutable por ordenador para implementar el método en el primer aspecto o varias implementaciones del primer aspecto.
De acuerdo con un sexto aspecto, se proporciona un aparato de decodificación. El aparato de decodificación incluye un medio de almacenamiento y una unidad central de procesamiento, donde el medio de almacenamiento puede ser un medio de almacenamiento no volátil y almacena un programa ejecutable por ordenador, y la unidad central de procesamiento está conectada al medio de almacenamiento no volátil y ejecuta el programa ejecutable por ordenador para implementar el método en el segundo aspecto o varias implementaciones del segundo aspecto. De acuerdo con un séptimo aspecto, se proporciona un medio de almacenamiento legible por ordenador. El medio de almacenamiento legible por ordenador almacena el código del programa para ser ejecutado por un dispositivo, y el código del programa incluye una instrucción utilizada para realizar el método en el primer aspecto o varias implementaciones del primer aspecto.
De acuerdo con un octavo aspecto, se proporciona un medio de almacenamiento legible por ordenador. El medio de almacenamiento legible por ordenador almacena el código del programa para ser ejecutado por un dispositivo, y el código del programa incluye una instrucción utilizada para realizar el método en el segundo aspecto o varias implementaciones del segundo aspecto.
Breve descripción de los dibujos
La Figura 1 es un diagrama de flujo esquemático de un método de codificación estéreo en el dominio del tiempo existente;
La Figura 2 es un diagrama de flujo esquemático de un método de decodificación estéreo en el dominio del tiempo existente;
La Figura 3 es un diagrama esquemático de una desviación de retardo entre una señal estéreo obtenida por decodificación utilizando una tecnología existente de codificación y decodificación estéreo en el dominio del tiempo y una señal estéreo original;
La Figura 4 es un diagrama de flujo esquemático de un método de codificación para una señal estéreo de acuerdo con una realización de esta solicitud;
La Figura 5 es un diagrama esquemático de una desviación de retardo entre una señal estéreo obtenida al decodificar un flujo de bits que se obtiene usando un método de codificación para una señal estéreo y una señal estéreo original de acuerdo con una realización de esta solicitud;
La Figura 6 es un diagrama de flujo esquemático de un método de codificación para una señal estéreo de acuerdo con una realización de esta solicitud;
La Figura 7 es un diagrama de flujo esquemático de un método de decodificación para una señal estéreo de acuerdo con una realización de esta solicitud;
La Figura 8 es un diagrama de flujo esquemático de un método de decodificación para una señal estéreo de acuerdo con una realización de esta solicitud;
La Figura 9 es un diagrama de bloques esquemático de un aparato de codificación de acuerdo con una realización de esta solicitud;
La Figura 10 es un diagrama de bloques esquemático de un aparato de decodificación de acuerdo con una realización de esta solicitud;
La Figura 11 es un diagrama de bloques esquemático de un aparato de codificación de acuerdo con una realización de esta solicitud;
La Figura 12 es un diagrama de bloques esquemático de un aparato de decodificación de acuerdo con una realización de esta solicitud;
La Figura 13 es un diagrama esquemático de un dispositivo terminal de acuerdo con una realización de esta solicitud;
La Figura 14 es un diagrama esquemático de un dispositivo de red de acuerdo con una realización de esta solicitud;
La Figura 15 es un diagrama esquemático de un dispositivo de red de acuerdo con una realización de esta solicitud;
La Figura 16 es un diagrama esquemático de un dispositivo terminal de acuerdo con una realización de esta solicitud;
La Figura 17 es un diagrama esquemático de un dispositivo de red de acuerdo con una realización de esta solicitud; y
La Figura 18 es un diagrama esquemático de un dispositivo de red de acuerdo con una realización de esta solicitud.
Descripción de las realizaciones
A continuación, se describen las soluciones técnicas en esta solicitud con referencia a los dibujos adjuntos.
Para comprender mejor los métodos de codificación y decodificación en las realizaciones de esta solicitud, a continuación, se describe primero en detalle los procesos de los métodos de codificación y decodificación estéreo en el dominio del tiempo existentes con referencia a la Figura 1 y la Figura 2.
La Figura 1 es un diagrama de flujo esquemático del método de codificación estéreo en el dominio del tiempo existente. El método de codificación 100 incluye específicamente las siguientes etapas.
110. Un extremo de codificación estima una diferencia de tiempo entre canales de una señal estéreo, para obtener la diferencia de tiempo entre canales de la señal estéreo.
La señal estéreo incluye una señal de canal izquierdo y una señal de canal derecho. La diferencia de tiempo entre canales de la señal estéreo es una diferencia de tiempo entre la señal del canal izquierdo y la señal del canal derecho.
120. Realizar la alineación de retardo en la señal del canal izquierdo y la señal del canal derecho con base en la diferencia de tiempo entre canales estimada.
130. Codificar la diferencia de tiempo entre canales de la señal estéreo para obtener un índice de codificación de la diferencia de tiempo entre canales y escribir el índice de codificación en un flujo de bits codificado en estéreo.
140. Determinar un factor de escala de combinación de canales, codificar el factor de escala de combinación de canales para obtener un índice de codificación del factor de escala de combinación de canales y escribir el índice de codificación en el flujo de bits codificado en estéreo.
150. Realizar, con base en el factor de escala de combinación de canales, el procesamiento de mezcla descendente en el dominio del tiempo en una señal del canal izquierdo y una señal del canal derecho que se obtienen después de la alineación del retardo.
160. Codificar por separado una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente, para obtener flujos de bits de la señal de canal principal y la señal de canal secundario, y escribir los flujos de bits en el flujo de bits codificado estéreo.
La Figura 2 es un diagrama de flujo esquemático del método de decodificación estéreo en el dominio del tiempo existente. El método de decodificación 200 incluye específicamente las siguientes etapas.
210. Decodificar un flujo de bits recibido para obtener una señal de canal principal y una señal de canal secundario. La etapa 210 es equivalente a realizar por separado la decodificación de la señal del canal principal y la decodificación de la señal del canal secundario para obtener la señal del canal principal y la señal del canal secundario.
220. Decodificar el flujo de bits recibido para obtener un factor de escala de combinación de canales.
230. Realizar un procesamiento de mezcla ascendente en el dominio del tiempo en la señal del canal principal y la señal del canal secundario con base en el factor de escala de combinación de canales, para obtener una señal reconstruida del canal izquierdo y una señal reconstruida del canal derecho que se obtienen después del procesamiento de mezcla ascendente en el dominio del tiempo.
240. Decodificar el flujo de bits recibido para obtener una diferencia de tiempo entre canales.
250. Ajustar, con base en la diferencia de tiempo entre canales, un retardo de la señal reconstruida del canal izquierdo y la señal reconstruida del canal derecho que se obtienen después del procesamiento de mezcla ascendente en el dominio del tiempo, para obtener una señal estéreo decodificada.
En los métodos de codificación y decodificación estéreo en el dominio del tiempo existentes, un retardo de codificación adicional (este retardo puede ser específicamente un tiempo requerido para codificar la señal del canal principal y la señal del canal secundario) y un retardo de decodificación adicional (este retardo puede ser específicamente un tiempo requerido para decodificar la señal del canal principal y la señal del canal secundario) se introducen en los procesos de codificación (específicamente mostrado en la etapa 160) y decodificación (específicamente mostrado en la etapa 210) la señal del canal principal y la señal de canal secundario. Sin embargo, no hay el mismo retardo de codificación ni el mismo retardo de decodificación en los procesos de codificación y decodificación de la diferencia de tiempo entre canales. Por lo tanto, hay una desviación entre la diferencia de tiempo entre canales de la señal estéreo que finalmente se obtiene por decodificación y la diferencia de tiempo entre canales de la señal estéreo original, y luego hay un retardo entre una señal en la señal estéreo obtenida por decodificación y la misma señal en la señal estéreo original, lo que afecta la precisión de una imagen de sonido estéreo de la señal estéreo obtenida por decodificación.
Específicamente, en los procesos de codificación y decodificación de la diferencia de tiempo entre canales, no hay un retardo de codificación y un retardo de decodificación que sean los mismos que en los procesos de codificación y decodificación de la señal del canal principal y la señal del canal secundario. Por lo tanto, una señal de canal principal y una señal de canal secundario que se obtienen al decodificar actualmente por el extremo de decodificación no coinciden con una diferencia de tiempo entre canales obtenida por decodificación actual.
La Figura 3 muestra un retardo entre una señal en una señal estéreo obtenida por decodificación utilizando una tecnología existente de codificación y decodificación estéreo en el dominio del tiempo y la misma señal en una señal estéreo original. Como se muestra en la Figura 3, cuando el valor de una diferencia de tiempo entre canales entre señales estéreo en diferentes tramas cambia mucho (como se muestra por un área en una trama rectangular en la Figura 3), se produce un retardo obvio entre la señal en la señal estéreo que finalmente es obtenido por decodificación por un extremo de decodificación y la misma señal en la señal estéreo original (la señal en la señal estéreo que finalmente se obtiene mediante la decodificación obviamente queda detrás de la misma señal en la señal estéreo original). Sin embargo, cuando el valor de la diferencia de tiempo entre canales entre las señales estéreo en diferentes tramas no cambia obviamente (como se muestra por un área fuera de la trama rectangular en la Figura 3), el retardo entre la señal en la señal estéreo que es finalmente obtenido por decodificación por el extremo de decodificación y la misma señal en la señal estéreo original no es evidente.
Por lo tanto, esta solicitud proporciona un nuevo método de codificación para una señal de canal estéreo. De acuerdo con el método de codificación, el procesamiento de interpolación se realiza en una diferencia de tiempo entre canales en una trama actual y una diferencia de tiempo entre canales en una trama anterior de la trama actual, para obtener una diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, y la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se codifica y luego se transmite a un extremo de decodificación. Sin embargo, la alineación de retardo todavía se realiza utilizando la diferencia de tiempo entre canales en la trama actual. En comparación con la técnica anterior, la diferencia de tiempo entre canales en la trama actual obtenida en esta solicitud coincide mejor con una señal de canal principal y una señal de canal secundario que se obtienen después de la codificación y la decodificación, y tiene un grado relativamente alto de coincidencia con una señal estéreo correspondiente. Esto reduce la desviación entre una diferencia de tiempo entre canales de una señal estéreo que finalmente se obtiene decodificando por un extremo de decodificación y una diferencia de tiempo entre canales de una señal estéreo original. Por lo tanto, se puede mejorar un efecto de la señal estéreo que finalmente se obtiene decodificando por el extremo de decodificación.
Debe entenderse que la señal estéreo en esta solicitud puede ser una señal estéreo original, una señal estéreo que incluye dos señales que se incluyen en una señal multicanal o una señal estéreo que incluye dos señales que se generan conjuntamente por una pluralidad de señales incluidas en una señal multicanal. El método de codificación para una señal estéreo también puede ser un método de codificación para una señal estéreo que se usa en un método de codificación multicanal. El método de decodificación de una señal estéreo también puede ser un método de decodificación de una señal estéreo que se utiliza en un método de decodificación multicanal.
La Figura 4 es un diagrama de flujo esquemático de un método de codificación para una señal estéreo de acuerdo con una realización de esta solicitud. El método 400 puede ser ejecutado por un extremo de codificación, y el extremo de codificación puede ser un codificador o un dispositivo que tenga la función de codificar una señal estéreo. El método 400 incluye específicamente las siguientes etapas.
410. Determinar una diferencia de tiempo entre canales en una trama actual.
Debe entenderse que una señal estéreo procesada en este documento puede incluir una señal del canal izquierdo y una señal del canal derecho, y la diferencia de tiempo entre canales en la trama actual puede obtenerse estimando un retardo de la señal del canal izquierdo y la señal del canal derecho. Puede obtenerse una diferencia de tiempo entre canales en una trama anterior de la trama actual estimando un retardo de una señal del canal izquierdo y una señal del canal derecho en un proceso de codificación de una señal estéreo en la trama anterior. Por ejemplo, se calcula un coeficiente de correlación cruzada de un canal izquierdo y un canal derecho con base en la señal del canal izquierdo y la señal del canal derecho en la trama actual, y luego un valor de índice correspondiente a un valor máximo del coeficiente de correlación cruzada se utiliza como la diferencia de tiempo entre canales en la trama actual.
Específicamente, la estimación del retardo se puede realizar de la manera descrita en un ejemplo 1 a un ejemplo 3, para obtener la diferencia de tiempo entre canales en la trama actual.
Ejemplo 1:
En una frecuencia de muestreo actual, un valor máximo y un valor mínimo de la diferencia de tiempo entre canales son respectivamente Tmáx y Tmín, donde Tmáx y Tmín son números reales preestablecidos, y Tmáx > Tmín. En este caso, se puede buscar un valor máximo del coeficiente de correlación cruzada de los canales izquierdo y derecho, cuyo valor de índice está entre el valor máximo y el valor mínimo de la diferencia de tiempo entre canales. Finalmente, se determina un valor de índice correspondiente al valor máximo buscado del coeficiente de correlación cruzada de los canales izquierdo y derecho como la diferencia de tiempo entre canales en la trama actual. Específicamente, los valores de Tmáx y Tmín pueden ser 40 y -40 respectivamente. De esta forma, el valor máximo del coeficiente de correlación cruzada de los canales izquierdo y derecho puede buscarse en un rango de -40< i <40, y luego se usa un valor de índice correspondiente al valor máximo del coeficiente de correlación cruzada como la diferencia de tiempo entre canales en la trama actual.
Ejemplo 2:
En una frecuencia de muestreo actual, un valor máximo y un valor mínimo de la diferencia de tiempo entre canales son respectivamente Tmáx y Tmín, donde Tmáx y Tmín son números reales preestablecidos, y Tmáx > Tmín. Se calcula una función de correlación cruzada del canal izquierdo y derecho con base en la señal del canal izquierdo y la señal del canal derecho en la trama actual. Además, el procesamiento de suavizado se realiza en la función de correlación cruzada calculada de los canales izquierdo y derecho en la trama actual con base en una función de correlación cruzada de los canales izquierdo y derecho en las tramas L anteriores (L es un número entero mayor o igual que 1), para obtener una función de correlación cruzada suavizada de los canales izquierdo y derecho. Luego, se busca un valor máximo de un coeficiente de correlación cruzada de los canales izquierdo y derecho después del procesamiento de suavizado en un rango de Tm¡n<i<Tmáx, y se usa un valor de índice i correspondiente al valor máximo como la diferencia de tiempo entre canales en la trama actual.
Ejemplo 3:
Después de estimar la diferencia de tiempo entre canales en la trama actual de acuerdo con el método del ejemplo 1 o el ejemplo 2, el procesamiento de suavizado entre tramas se realiza en una diferencia de tiempo entre canales en M tramas anteriores (M es un número entero mayor que o igual a 1) de la trama actual y la diferencia de tiempo entre canales estimada en la trama actual, y una diferencia de tiempo entre canales obtenida después del procesamiento de suavizado se usa como la diferencia de tiempo entre canales en la trama actual.
Debe entenderse que, antes de estimar el retardo de la señal del canal izquierdo y la señal del canal derecho (la señal del canal izquierdo y la señal del canal derecho aquí son señales en el dominio del tiempo) para obtener la diferencia de tiempo entre canales en la trama actual, el preprocesamiento en el dominio del tiempo se puede realizar adicionalmente en la señal del canal izquierdo y la señal del canal derecho en la trama actual. Específicamente, el procesamiento de filtrado de paso alto se puede realizar en la señal del canal izquierdo y la señal del canal derecho en la trama actual para obtener una señal preprocesada del canal izquierdo y una señal preprocesada del canal derecho en la trama actual. Además, el procesamiento previo en el dominio del tiempo en este documento puede ser alternativamente otro procesamiento además del procesamiento de filtrado de paso alto. Por ejemplo, se realiza el procesamiento de pre-énfasis.
420. Realizar un procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, para obtener una diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual.
Debe entenderse que la diferencia de tiempo entre canales en la trama actual puede ser una diferencia de tiempo entre la señal del canal izquierdo en la trama actual y la señal del canal derecho en la trama actual, y la diferencia de tiempo entre canales en la trama anterior de la trama actual puede ser una diferencia de tiempo entre una señal del canal izquierdo en la trama anterior de la trama actual y una señal del canal derecho en la trama anterior de la trama actual.
Debe entenderse que realizar un procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual es equivalente a realizar un procesamiento promedio ponderado en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual. De esta forma, la diferencia de tiempo entre canales finalmente obtenida después del procesamiento de interpolación en la trama actual está entre la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual.
Puede haber una pluralidad de formas específicas para realizar el procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual. Por ejemplo, el procesamiento de interpolación se puede realizar de la siguiente manera 1 y manera 2.
Manera 1:
La diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula (1).
Figure imgf000010_0001
En la fórmula (1), A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, a es un primer coeficiente de interpolación y a es un número real que satisface 0<a <1.
La diferencia de tiempo entre canales se puede ajustar usando la fórmula A = a • B (1 - a) • C, de modo que la diferencia de tiempo entre canales obtenida finalmente después del procesamiento de interpolación en la trama actual está entre la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, y la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual coincide, en la medida de lo posible, con una diferencia de tiempo entre canales de una señal estéreo original que no está codificada y decodificada.
Específicamente, suponiendo que la trama actual es una iésima trama, la trama anterior de la trama actual es una (i -1)ésima trama. En este caso, se puede determinar una diferencia de tiempo entre canales en la iésima trama de acuerdo con una fórmula (2).
Figure imgf000010_0002
En la fórmula (2), d _ int (i) es una diferencia de tiempo entre canales después del procesamiento de interpolación en la iésima trama, d (i) es la diferencia de tiempo entre canales en la trama actual, d (i - 1) es una diferencia de tiempo entre canales en la (i - 1)ésima trama, y a tiene el mismo significado que a en la fórmula (1), y también es un primer coeficiente de interpolación.
El primer coeficiente de interpolación puede ser fijado directamente por el personal técnico. Por ejemplo, el primer coeficiente de interpolación a se puede establecer directamente en 0,4 o 0,6.
Además, el primer coeficiente de interpolación a también puede determinarse con base en la longitud de trama de la trama actual y un retardo de codificación y decodificación. El retardo de codificación y decodificación aquí puede incluir un retardo de codificación en un proceso de codificación, por parte del extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, un flujo de bits para obtener una señal de canal principal y una señal de canal secundario. Además, el retardo de codificación y decodificación aquí puede ser una suma del retardo de codificación y el retardo de decodificación. El retardo de codificación y decodificación puede determinarse después de determinar un algoritmo de codificación y decodificación utilizado por un códec. Por lo tanto, el retardo de codificación y decodificación es un parámetro conocido para un codificador o decodificador.
Opcionalmente, el primer coeficiente de interpolación a puede ser específicamente inversamente proporcional al retardo de codificación y decodificación, y es directamente proporcional a la longitud de la trama actual. En otras palabras, el primer coeficiente de interpolación a disminuye a medida que aumenta el retardo de codificación y decodificación, y aumenta a medida que aumenta la longitud de la trama actual.
Opcionalmente, el primer coeficiente de interpolación a puede determinarse de acuerdo con una fórmula (3).
Figure imgf000010_0003
En la fórmula (3), N es la longitud de la trama actual y S es el retardo de codificación y decodificación.
Cuando N = 320 y S = 192, se puede obtener lo siguiente según la fórmula (3):
Figure imgf000011_0001
Finalmente, se puede obtener que el primer coeficiente de interpolación a es 0,4.
Alternativamente, el primer coeficiente de interpolación a se almacena previamente. Debido a que el retardo de codificación y decodificación y la longitud de la trama pueden conocerse de antemano, el primer coeficiente de interpolación a correspondiente también puede determinarse y almacenarse de antemano con base en el retardo de codificación y decodificación y la longitud de la trama. Específicamente, el primer coeficiente de interpolación a puede almacenarse previamente en el extremo de codificación. De esta forma, cuando se realiza el procesamiento de interpolación, el extremo de codificación puede realizar directamente el procesamiento de interpolación con base en el primer coeficiente de interpolación a previamente almacenado sin calcular un valor del primer coeficiente de interpolación a. Esto puede reducir la complejidad del cálculo de un proceso de codificación y mejorar la eficiencia de la codificación.
Manera 2:
La diferencia de tiempo entre canales en la trama actual se determina de acuerdo con una fórmula (5).
Figure imgf000011_0002
En la fórmula (5), A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, p es un segundo coeficiente de interpolación y es un número real que satisface 0<3 <1.
La diferencia de tiempo entre canales se puede ajustar usando la fórmula A = (1 -p) • B p • C, de modo que la diferencia de tiempo entre canales obtenida finalmente después del procesamiento de interpolación en la trama actual está entre la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, y la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual coincide, en la medida de lo posible, con una diferencia de tiempo entre canales de una señal estéreo original que no está codificada y decodificada.
Específicamente, suponiendo que la trama actual es una iésima trama, la trama anterior de la trama actual es una (i -1)ésima trama. En este caso, se puede determinar una diferencia de tiempo entre canales en la iésima trama de acuerdo con una fórmula (6).
Figure imgf000011_0003
En la fórmula (6), d _ int (i) es la diferencia de tiempo entre canales en la iésima trama, d(i) es la diferencia de tiempo entre canales en la trama actual, d(i - 1) es una diferencia de tiempo entre canales en la (i - i ) ésima trama, y p tiene el mismo significado que p en la fórmula (5), y también es un segundo coeficiente de interpolación.
El coeficiente de interpolación anterior podrá ser fijado directamente por el personal técnico. Por ejemplo, el segundo coeficiente de interpolación p puede establecerse directamente en 0,6 o 0,4.
Además, el segundo coeficiente de interpolación p también puede determinarse con base en la longitud de la trama actual y un retardo de codificación y decodificación. El retardo de codificación y decodificación aquí puede incluir un retardo de codificación en un proceso de codificación, por parte del extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, un flujo de bits para obtener una señal de canal principal y una señal de canal secundario. Además, el retardo de codificación y decodificación aquí puede ser una suma del retardo de codificación y el retardo de decodificación.
Opcionalmente, el segundo coeficiente de interpolación p puede ser específicamente directamente proporcional al retardo de codificación y decodificación. Además, el segundo coeficiente de interpolación p puede ser específicamente inversamente proporcional a la longitud de la trama actual.
Opcionalmente, el segundo coeficiente de interpolación puede determinarse de acuerdo con una fórmula (7).
Figure imgf000012_0001
En la fórmula (7), N es la longitud de la trama actual y S es el retardo de codificación y decodificación.
Cuando N = 320 y S = 192, se puede obtener lo siguiente según la fórmula (7):
Figure imgf000012_0002
Finalmente, se puede obtener que el segundo coeficiente de interpolación p es 0,6.
Alternativamente, el segundo coeficiente de interpolación p se almacena previamente. Debido a que el retardo de codificación y decodificación y la longitud de la trama pueden conocerse de antemano, el segundo coeficiente de interpolación p correspondiente también puede determinarse y almacenarse con antelación con base en el retardo de codificación y decodificación y la longitud de la trama. Específicamente, el segundo coeficiente de interpolación p puede almacenarse previamente en el extremo de codificación. De esta forma, cuando se realiza el procesamiento de interpolación, el extremo de codificación puede realizar directamente el procesamiento de interpolación con base en el segundo coeficiente de interpolación p almacenado previamente sin calcular un valor del segundo coeficiente de interpolación p. Esto puede reducir la complejidad del cálculo de un proceso de codificación y mejorar la eficiencia de la codificación.
430. Realizar la alineación de retardo en una señal estéreo en la trama actual con base en la diferencia de tiempo entre canales en la trama actual, para obtener una señal estéreo después de la alineación de retardo en la trama actual.
Cuando la alineación de retardo se realiza en la señal del canal izquierdo y la señal del canal derecho en la trama actual, una o dos de las señales del canal izquierdo y la señal del canal derecho pueden comprimirse o extenderse con base en la diferencia de tiempo entre canales en la trama actual, de modo que no haya diferencia de tiempo entre canales entre una señal de canal izquierdo y una señal de canal derecho después de la alineación de retardo. La señal del canal izquierdo y la señal del canal derecho después de la alineación de retardo en la trama actual, que se obtienen después de realizar la alineación de retardo en la señal del canal izquierdo y la señal del canal derecho en la trama actual, son señales estéreo después de la alineación de retardo en la trama actual.
440. Realizar el procesamiento de mezcla descendente en el dominio del tiempo en la señal estéreo después de la alineación del retardo en la trama actual, para obtener una señal de canal principal y una señal de canal secundario en la trama actual.
Cuando el procesamiento de mezcla descendente en el dominio del tiempo se realiza en la señal del canal izquierdo y la señal del canal derecho después de la alineación de retardo, la señal del canal izquierdo y la señal del canal derecho pueden mezclarse en una señal del canal medio (Mid channel) y una señal de canal lateral (Side channel). La señal del canal central puede indicar información relacionada entre el canal izquierdo y el canal derecho, y la señal del canal lateral puede indicar información diferente entre el canal izquierdo y el canal derecho.
Suponiendo que L representa la señal del canal izquierdo y R representa la señal del canal derecho, la señal del canal medio es 0,5 x (L R) y la señal del canal lateral es 0,5 x (L - R).
Además, cuando el procesamiento de mezcla descendente en el dominio del tiempo se realiza en la señal del canal izquierdo y la señal del canal derecho después de la alineación de retardo, para controlar una proporción de la señal del canal izquierdo y la señal del canal derecho en el procesamiento de mezcla descendente, se puede calcular el factor de escala de combinación de canales, y luego se realiza el procesamiento de mezcla descendente en el dominio del tiempo en la señal del canal izquierdo y la señal del canal derecho, el factor de escala de combinación de canales, para obtener una señal de canal principal y una señal de canal secundario.
Hay una pluralidad de métodos para calcular el factor de escala de combinación de canales. Por ejemplo, se puede calcular un factor de escala de combinación de canales en la trama actual con base en la energía de la trama del canal izquierdo y el canal derecho. Un proceso específico es el siguiente:
(1). Calcular la energía de la trama de la señal del canal izquierdo y la señal del canal derecho con base en la señal del canal izquierdo y la señal del canal derecho después de la alineación de retardo en la trama actual. La energía de trama rms _ L del canal izquierdo en la trama actual satisface:
Figure imgf000013_0001
La energía de trama rms _ R del canal derecho en la trama actual satisface:
Figure imgf000013_0002
es la señal del canal izquierdo después de la alineación de retardo en la trama actual, x^(” ) es la señal del canal derecho después de la alineación del retardo en la trama actual, n es un número de punto de muestreo y n = 0, 1, ..., N -1.
(2). Calcular el factor de escala de combinación de canales en la trama actual con base en la energía de la trama del canal izquierdo y el canal derecho.
La relación de factor de escala de combinación de canales en la trama actual satisface:
Figure imgf000013_0003
Por lo tanto, el factor de escala de combinación de canales se calcula con base en la energía de trama de la señal del canal izquierdo y la señal del canal derecho.
Después de obtener la relación del factor de escala de la combinación de canales, el procesamiento de mezcla descendente en el dominio del tiempo se puede realizar con base en la relación del factor de escala de la combinación de canales. Por ejemplo, la señal del canal principal y la señal del canal secundario después del procesamiento de mezcla descendente en el dominio del tiempo pueden determinarse de acuerdo con una fórmula (12).
Figure imgf000013_0004
Y(n) es la señal del canal principal en la trama actual, X(n) es la señal del canal secundario en la trama actual, Xl es la señal del canal izquierdo después de la alineación de retardo en la trama actual, XR es la señal del canal derecho después de la alineación de retardo en la trama actual, n es el número de punto de muestreo, n = 0, 1, ..., N -1, N es la longitud de la trama y la relación es el factor de escala de combinación de canales.
(3). Cuantificar el factor de escala de combinación de canales y escribir un factor de escala de combinación de canales cuantificado en un flujo de bits.
450. Cuantificar la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual y escribir una diferencia de tiempo entre canales cuantificada en un flujo de bits.
Específicamente, en un proceso de cuantificación de la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, se puede usar cualquier algoritmo de cuantificación en la técnica anterior para cuantificar la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, para obtener un índice de cuantificación. Luego, el índice de cuantificación se codifica y luego se escribe en un flujo de bits.
460. Cuantificar la señal del canal principal y la señal del canal secundario en la trama actual y escribir una señal cuantificada del canal principal y señal cuantificada del canal secundario en el flujo de bits.
Opcionalmente, se puede usar un método de codificación y decodificación de señales monofónicas para codificar la señal del canal principal y la señal del canal secundario que se obtienen después del procesamiento de mezcla descendente. Específicamente, los bits de codificación de un canal principal y un canal secundario pueden asignarse con base en la información de parámetros obtenida en un proceso de codificación de una señal de canal principal en la trama anterior y/o una señal de canal secundario en la trama anterior y un número total de bits de codificación de la señal del canal principal y la señal del canal secundario. Luego, la señal del canal principal y la señal del canal secundario se codifican por separado con base en un resultado de asignación de bits, para obtener un índice de codificación de la codificación del canal principal y un índice de codificación de la codificación del canal secundario. Debe entenderse que el flujo de bits obtenido después de la etapa 460 incluye un flujo de bits que se obtiene después de la diferencia de tiempo entre canales después de cuantificar el procesamiento de interpolación en la trama actual y un flujo de bits que se obtiene después que la señal del canal principal y la señal del canal secundario están cuantificadas.
Opcionalmente, en el método 400, el factor de escala de combinación de canales que se usa cuando se realiza el procesamiento de mezcla descendente en el dominio del tiempo en la etapa 440 puede cuantificarse para obtener un flujo de bits correspondiente.
Por lo tanto, el flujo de bits finalmente obtenido en el método 400 puede incluir el flujo de bits que se obtiene después de la diferencia de tiempo entre canales después de cuantificar el procesamiento de interpolación en la trama actual, el flujo de bits que se obtiene después de la señal del canal principal y la señal del canal secundario en la trama actual se cuantifica, y el flujo de bits que se obtiene después del factor de escala de combinación de canales se cuantifica.
En esta aplicación, la diferencia de tiempo entre canales en la trama actual se usa en el extremo de codificación para realizar la alineación de retardo, para obtener la señal del canal principal y la señal del canal secundario. Sin embargo, el procesamiento de interpolación se realiza sobre la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, de modo que la diferencia de tiempo entre canales en la trama actual que se obtiene después del procesamiento de interpolación puede coincidir con la señal del canal principal y la señal del canal secundario que se obtienen mediante la codificación y la decodificación. La diferencia de tiempo entre canales después del procesamiento de interpolación se codifica y luego se transmite al extremo de decodificación, de modo que el extremo de decodificación pueda realizar la decodificación con base en la diferencia de tiempo entre canales en la trama actual que coincide con la señal del canal principal y la señal del canal secundario que se obtienen por decodificación. Esto puede reducir una desviación entre una diferencia de tiempo entre canales de una señal estéreo que finalmente se obtiene mediante la decodificación y una diferencia de tiempo entre canales de una señal estéreo original. Por lo tanto, se mejora la precisión de una imagen de sonido estéreo de la señal estéreo que finalmente se obtiene mediante la decodificación.
Debe entenderse que, el flujo de bits finalmente obtenido en el método 400 puede transmitirse al extremo de decodificación, y el extremo de decodificación puede decodificar el flujo de bits recibido para obtener la señal del canal principal y la señal del canal secundario en la trama actual y la diferencia de tiempo entre canales en la trama actual y ajusta, con base en la diferencia de tiempo entre canales en la trama actual, un retardo de una señal reconstruida del canal izquierdo y una señal reconstruida del canal derecho que se obtienen después del procesamiento de mezcla ascendente en el dominio del tiempo, para obtener una señal estéreo decodificada. Un proceso específico ejecutado por el extremo de decodificación puede ser el mismo que el proceso del método de decodificación estéreo en el dominio del tiempo en la técnica anterior que se muestra en la Figura 2.
El extremo de decodificación decodifica el flujo de bits generado en el método 400, y la diferencia entre una señal en la señal estéreo obtenida finalmente y la misma señal en la señal estéreo original se puede mostrar en la Figura 5. Al comparar la Figura 5 y la Figura 3, se puede encontrar que, en comparación con la Figura 3, en la Figura 5, el retardo entre la señal en la señal estéreo que finalmente se obtiene mediante la decodificación y la misma señal en la señal estéreo original se ha vuelto muy pequeño. En particular, cuando el valor de la diferencia de tiempo entre canales cambia mucho (como se muestra por un área en una trama rectangular en la Figura 5), se produce un retardo entre la señal en el canal que finalmente obtiene el extremo de decodificación y la misma señal en la señal del canal original también es muy pequeña. En otras palabras, de acuerdo con el método de codificación para una señal estéreo en esta realización de esta solicitud, una desviación entre la diferencia de tiempo entre canales de la señal estéreo que finalmente se obtiene mediante la decodificación y la diferencia de tiempo entre canales en la señal estéreo original se puede reducir.
Debe entenderse que el procesamiento de mezcla descendente puede implementarse adicionalmente aquí de otra manera, para obtener la señal del canal principal y la señal del canal secundario.
Un proceso detallado del método de codificación para una señal estéreo en las realizaciones de esta solicitud se describe a continuación con referencia a la Figura 6.
La Figura 6 es un diagrama de flujo esquemático de un método de codificación para una señal estéreo de acuerdo con una realización de esta solicitud. El método 600 puede ser ejecutado por un extremo de codificación, y el extremo de codificación puede ser un codificador o un dispositivo que tenga la función de codificar una señal de canal. El método 600 incluye específicamente las siguientes etapas.
610. Realizar un preprocesamiento en el dominio del tiempo en una señal estéreo para obtener una señal del canal izquierdo y una señal del canal derecho después del preprocesamiento.
Específicamente, el preprocesamiento en el dominio del tiempo en la señal estéreo puede implementarse mediante el uso de filtrado de paso alto, procesamiento de preénfasis o similares.
620. Realizar una estimación de retardo basada en la señal del canal izquierdo y la señal del canal derecho después del preprocesamiento en la trama actual, para obtener una diferencia de tiempo estimada entre canales en la trama actual.
La diferencia de tiempo entre canales estimada en la trama actual es equivalente a la diferencia de tiempo entre canales en la trama actual en el método 400.
630. Realizar la alineación de retardo en la señal del canal izquierdo y la señal del canal derecho con base en la diferencia de tiempo estimada entre canales en la trama actual, para obtener una señal estéreo después de la alineación de retardo.
640. Realizar el procesamiento de interpolación en la diferencia de tiempo estimada entre canales.
Una diferencia de tiempo entre canales después del procesamiento de interpolación es equivalente a la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual en la descripción anterior. 650. Cuantificar la diferencia de tiempo entre canales después del procesamiento de interpolación.
660. Determinar un factor de escala de combinación de canales con base en la señal estéreo después de la alineación de retardo y cuantice el factor de escala de combinación de canales.
670. Realizar, con base en el factor de escala de combinación de canales, el procesamiento de mezcla descendente en el dominio del tiempo en una señal de canal izquierdo y una señal de canal derecho que se obtienen después de la alineación de retardo, para obtener una señal de canal principal y una señal de canal secundario.
680. Codificar, utilizando un método de codificación y decodificación de señales monofónicas, la señal del canal principal y la señal del canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo.
Lo anterior describe en detalle el método de codificación para una señal estéreo en las realizaciones de esta solicitud con referencia a la Figura 4 a la Figura 6. Debe entenderse que, un método de decodificación correspondiente al método de codificación para una señal estéreo en las realizaciones descritas con referencia a la Figura 4 y la Figura 6 en esta solicitud puede ser un método de decodificación existente para una señal estéreo. Específicamente, el método de decodificación correspondiente al método de codificación para una señal estéreo en las realizaciones descritas con referencia a la Figura 4 y la Figura 6 en esta solicitud puede ser el método de decodificación 200 mostrado en la Figura 2.
A continuación, se describe en detalle el método de decodificación de una señal estéreo en las realizaciones de esta solicitud con referencia a la Figura 7 y la Figura 8. Debe entenderse que, un método de codificación correspondiente al método de decodificación para una señal estéreo en las realizaciones descritas con referencia a la Figura 7 y la Figura 8 en esta solicitud puede ser un método de codificación existente para una señal estéreo, pero no puede ser el método de codificación para una señal estéreo en las realizaciones descritas con referencia a la Figura 4 y la Figura 6 en esta solicitud.
La Figura 7 es un diagrama de flujo esquemático de un método de decodificación para una señal estéreo de acuerdo con una realización de esta solicitud. El método 700 puede ser ejecutado por un extremo de decodificación, y el extremo de decodificación puede ser un decodificador o un dispositivo que tenga la función de decodificar una señal estéreo. El método 700 incluye específicamente las siguientes etapas.
710. Decodificar un flujo de bits para obtener una señal de canal principal y una señal de canal secundario en una trama actual, y una diferencia de tiempo entre canales en la trama actual.
Debe entenderse que, en la etapa 710, un método para decodificar la señal del canal principal necesita corresponder a un método para codificar la señal del canal principal por un extremo de codificación. De manera similar, un método para decodificar el canal secundario también debe corresponder a un método para codificar la señal del canal secundario por parte del extremo de codificación.
Opcionalmente, el flujo de bits en la etapa 710 puede ser un flujo de bits recibido por el extremo de decodificación. Debe entenderse que una señal estéreo procesada aquí puede incluir una señal de canal izquierdo y una señal de canal derecho, y la diferencia de tiempo entre canales en la trama actual puede obtenerse estimando, por el extremo de codificación, un retardo de la señal del canal izquierdo y la señal del canal derecho, y luego la diferencia de tiempo entre canales en la trama actual se cuantifica antes de transmitirse al extremo de decodificación (la diferencia de tiempo entre canales en la trama actual se puede determinar específicamente después que el extremo de decodificación decodifica el flujo de bits recibido). Por ejemplo, el extremo de codificación calcula una función de correlación cruzada de un canal izquierdo y un canal derecho con base en una señal de canal izquierdo y una señal de canal derecho en la trama actual, luego usa un valor de índice correspondiente a un valor máximo de la función de correlación cruzada como la diferencia de tiempo entre canales en la trama actual, cuantifica y codifica la diferencia de tiempo entre canales en la trama actual, y transmite una diferencia de tiempo entre canales cuantificada al extremo de decodificación. El extremo de decodificación decodifica el flujo de bits recibido para determinar la diferencia de tiempo entre canales en la trama actual. Una manera específica en la que el extremo de codificación estima el retardo de la señal del canal izquierdo y la señal del canal derecho se puede mostrar mediante el ejemplo 1 al ejemplo 3 en la descripción anterior.
720. Realizar un procesamiento de mezcla ascendente en el dominio del tiempo en la señal del canal principal y la señal del canal secundario en la trama actual, para obtener una señal reconstruida del canal izquierdo y una señal reconstruida del canal derecho que se obtienen después del procesamiento de mezcla ascendente en el dominio del tiempo.
Específicamente, el procesamiento de mezcla ascendente en el dominio del tiempo se puede realizar, con base en un factor de escala de combinación de canales, en la señal del canal principal y la señal del canal secundario en la trama actual que se obtienen mediante la decodificación, para obtener la señal reconstruida del canal izquierdo y la señal reconstruida del canal derecho que se obtiene después del procesamiento de mezcla ascendente en el dominio del tiempo (que también puede denominarse señal de canal izquierdo y señal de canal derecho que se obtiene después del procesamiento de mezcla ascendente en el dominio del tiempo).
Debe entenderse que el extremo de codificación y el extremo de decodificación pueden usar muchos métodos para realizar el procesamiento de mezcla descendente en el dominio del tiempo y el procesamiento de mezcla ascendente en el dominio del tiempo, respectivamente. Sin embargo, un método para realizar el procesamiento de mezcla ascendente en el dominio del tiempo por el extremo de decodificación necesita corresponder a un método para realizar el procesamiento de mezcla descendente en el dominio del tiempo por el extremo de codificación. Por ejemplo, cuando el extremo de codificación obtiene la señal del canal principal y la señal del canal secundario de acuerdo con la fórmula (12), el extremo de decodificación puede obtener primero el factor de escala de la combinación de canales al decodificar el flujo de bits recibido y luego obtener la señal del canal izquierdo y la señal del canal derecho que se obtienen después del procesamiento de mezcla ascendente en el dominio del tiempo de acuerdo con una fórmula (13).
Figure imgf000016_0001
En la fórmula (13), xL \n ) |a señal del canal izquierdo después del procesamiento de mezcla ascendente en el x' (yt\
dominio del tiempo en la trama actual, R v ' es la señal del canal derecho después del procesamiento de mezcla ascendente en el dominio del tiempo en la trama actual, Y(n) es la señal del canal principal en la trama actual que se obtiene mediante la decodificación, X(n) es la señal del canal secundario en la trama actual trama actual que se obtiene mediante la decodificación, n es un número de punto de muestreo, n = 0, 1, ..., N - 1, N es una longitud de trama y la relación es el factor de escala de combinación de canales que se obtiene mediante la decodificación. 730. Realizar un procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual y una diferencia de tiempo entre canales en una trama anterior de la trama actual, para obtener una diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual.
En la etapa 730, realizar un procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual es equivalente a realizar un procesamiento promedio ponderado en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual. De esta forma, la diferencia de tiempo entre canales finalmente obtenida después del procesamiento de interpolación en la trama actual está entre la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual. En la etapa 730, la manera 3 y la manera 4 siguientes pueden usarse cuando se realiza el procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual.
Manera 3:
La diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula (14).
Figure imgf000016_0002
En la fórmula (14), A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, a es un primer coeficiente de interpolación y a es un número real que satisface 0<a <1.
La diferencia de tiempo entre canales se puede ajustar usando la fórmula A = a • B (1 - a) • C, de modo que la diferencia de tiempo entre canales obtenida finalmente después del procesamiento de interpolación en la trama actual esté entre la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, y la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual coincide, en la medida de lo posible, con una diferencia de tiempo entre canales de una señal estéreo original que no está codificada y decodificada.
Asumiendo que la trama actual es una iésima trama, la trama anterior de la trama actual es una (i - i ) ésima trama. En este caso, la fórmula (14) puede transformarse en una fórmula (15).
Figure imgf000017_0001
En la fórmula (15), d _ int (i) es una diferencia de tiempo entre canales después del procesamiento de interpolación en la iésima trama, d (i) es la diferencia de tiempo entre canales en la trama actual, d (i - 1) es una diferencia de tiempo entre canales en la (i - 1)ésima trama.
El primer coeficiente de interpolación a en las fórmulas (14) y (15) puede ser fijado directamente por el personal técnico (puede ser fijado directamente según la experiencia). Por ejemplo, el primer coeficiente de interpolación a se puede establecer directamente en 0,4 o 0,6.
Opcionalmente, el coeficiente de interpolación a también puede determinarse con base en la longitud de la trama actual y un retardo de codificación y decodificación. El retardo de codificación y decodificación aquí puede incluir un retardo de codificación en un proceso de codificación, por parte del extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, un flujo de bits para obtener una señal de canal principal y una señal de canal secundario. Además, el retardo de codificación y decodificación aquí puede ser una suma del retardo de codificación en el extremo de codificación y el retardo de decodificación en el extremo de decodificación.
Opcionalmente, el coeficiente de interpolación a puede ser específicamente inversamente proporcional al retardo de codificación y decodificación, y el primer coeficiente de interpolación a es directamente proporcional a la longitud de la trama actual. En otras palabras, el primer coeficiente de interpolación a disminuye a medida que aumenta el retardo de codificación y decodificación, y aumenta a medida que aumenta la longitud de la trama actual.
Opcionalmente, el primer coeficiente de interpolación a puede calcularse de acuerdo con una fórmula (16).
Figure imgf000017_0002
En la fórmula (16), N es la longitud de la trama actual y S es el retardo de codificación y decodificación.
Se supone que la longitud de la trama actual es 320 y el retardo de codificación y decodificación es 192, en otras palabras, N = 320 y S = 192. En este caso, N y S se sustituyen en la fórmula (16) para obtener:
Figure imgf000017_0003
Finalmente, se puede obtener que el primer coeficiente de interpolación a es 0,4.
Opcionalmente, el primer coeficiente de interpolación a se almacena previamente. Específicamente, el primer coeficiente de interpolación a puede almacenarse previamente en el extremo de decodificación. De esta forma, cuando se realiza el procesamiento de interpolación, el extremo de decodificación puede realizar directamente el procesamiento de interpolación con base en el primer coeficiente de interpolación a previamente almacenado sin calcular un valor del primer coeficiente de interpolación a. Esto puede reducir la complejidad de cálculo de un proceso de decodificación y mejorar la eficiencia de decodificación.
Manera 4:
La diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula (18).
Figure imgf000018_0002
En la fórmula (18), A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, y p es un segundo coeficiente de interpolación y es un número real que satisface 0<a <1.
La diferencia de tiempo entre canales se puede ajustar utilizando la fórmula A = (1 - p) • B p • C, de modo que la diferencia de tiempo entre canales obtenida finalmente después del procesamiento de interpolación en la trama actual se encuentra entre la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, y la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual coincide, en la medida de lo posible, con una diferencia de tiempo entre canales de una señal estéreo original que no está codificada y decodificada.
Asumiendo que la trama actual es una iésima trama, la trama anterior de la trama actual es una (i - 1)ésima trama. En este caso, la fórmula (18) puede transformarse en la siguiente fórmula:
Figure imgf000018_0003
En la fórmula (15), d _ int (i) es una diferencia de tiempo entre canales después del procesamiento de interpolación en la iésima trama, d (i) es la diferencia de tiempo entre canales en la trama actual, d (i - 1) es una diferencia de tiempo entre canales en la (i - 1)ésima trama.
De manera similar a la manera de establecer el primer coeficiente de interpolación a, el segundo coeficiente de interpolación p también puede ser establecido directamente por personal técnico (puede establecerse directamente de acuerdo con la experiencia). Por ejemplo, el segundo coeficiente de interpolación p puede establecerse directamente en 0,6 o 0,4.
Opcionalmente, el segundo coeficiente de interpolación p también puede determinarse con base en una longitud de trama de la trama actual y un retardo de codificación y decodificación. El retardo de codificación y decodificación aquí puede incluir un retardo de codificación en un proceso de codificación, por parte del extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificar, por un extremo de decodificación, un flujo de bits para obtener una señal de canal principal y una señal de canal secundario. Además, el retardo de codificación y decodificación aquí puede ser una suma del retardo de codificación en el extremo de codificación y el retardo de decodificación en el extremo de decodificación.
Opcionalmente, el segundo coeficiente de interpolación p puede ser específicamente directamente proporcional al retardo de codificación y decodificación, y es inversamente proporcional a la longitud de la trama actual. En otras palabras, el segundo coeficiente de interpolación p aumenta a medida que aumenta el retardo de codificación y decodificación, y disminuye a medida que aumenta la longitud de la trama actual.
Opcionalmente, el segundo coeficiente de interpolación puede determinarse de acuerdo con una fórmula (20).
Figure imgf000018_0001
En la fórmula (20), N es la longitud de la trama actual y S es el retardo de codificación y decodificación.
Se asume que N = 320 y S = 192. En este caso, N = 320 y S = 192 se sustituyen en la fórmula (20) para obtener:
Figure imgf000018_0004
Finalmente, se puede obtener que el segundo coeficiente de interpolación p es 0,6.
Opcionalmente, el segundo coeficiente de interpolación p se almacena previamente. Específicamente, el segundo coeficiente de interpolación p puede almacenarse previamente en el extremo de decodificación. De esta forma, cuando se realiza el procesamiento de interpolación, el extremo de decodificación puede realizar directamente el procesamiento de interpolación con base en el segundo coeficiente de interpolación p almacenado previamente sin calcular un valor del segundo coeficiente de interpolación p. Esto puede reducir la complejidad de cálculo de un proceso de decodificación y mejorar la eficiencia de decodificación.
740. Ajustar un retardo de la señal reconstruida del canal izquierdo y la señal reconstruida del canal derecho con base en la diferencia de tiempo entre canales en la trama actual.
Debe entenderse que, opcionalmente, la señal reconstruida del canal izquierdo y la señal reconstruida del canal derecho que se obtienen después del ajuste del retardo son señales estéreo decodificadas.
Opcionalmente, después de la etapa 740, el método puede incluir además obtener las señales estéreo decodificadas con base en la señal reconstruida del canal izquierdo y la señal reconstruida del canal derecho que se obtienen después del ajuste del retardo. Por ejemplo, el procesamiento de deénfasis se realiza en la señal reconstruida del canal izquierdo y la señal reconstruida del canal derecho que se obtienen después del ajuste del retardo, para obtener las señales estéreo decodificadas. Para otro ejemplo, el procesamiento posterior se realiza en la señal reconstruida del canal izquierdo y la señal reconstruida del canal derecho que se obtienen después del ajuste de retardo, para obtener las señales estéreo decodificadas.
En esta solicitud, al realizar el procesamiento de interpolación en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual puede hacer coincidir la señal del canal principal y la señal del canal secundario que se obtienen con la decodificación actual. Esto puede reducir una desviación entre una diferencia de tiempo entre canales de una señal estéreo que finalmente se obtiene mediante la decodificación y una diferencia de tiempo entre canales de una señal estéreo original. Por lo tanto, se mejora la precisión de una imagen de sonido estéreo de la señal estéreo que finalmente se obtiene mediante la decodificación. Específicamente, la diferencia entre una señal en la señal estéreo obtenida finalmente en el método 700 y la misma señal en la señal estéreo original se puede mostrar en la Figura 5. Al comparar la Figura 5 y la Figura 3, se puede encontrar que, en la Figura 5, el retardo entre la señal en la señal estéreo que finalmente se obtiene mediante la decodificación y la misma señal en la señal estéreo original se ha vuelto muy pequeño. En particular, cuando el valor de la diferencia de tiempo entre canales cambia mucho (como se muestra por un área en una trama rectangular en la Figura 5), una desviación de retardo entre la señal del canal que finalmente se obtiene por el extremo de decodificación y la señal del canal original también es muy pequeño. En otras palabras, según el método de decodificación para una señal estéreo en esta realización de esta solicitud, se puede reducir una desviación de retardo entre la señal en la señal estéreo que finalmente se obtiene mediante la decodificación y la misma señal en la señal estéreo original.
Debe entenderse que el método de codificación del extremo de codificación correspondiente al método 700 puede ser un método de codificación estéreo en el dominio del tiempo existente. Por ejemplo, el método de codificación estéreo en el dominio del tiempo correspondiente al método 700 puede ser el método 100 que se muestra en la Figura 1.
Un proceso detallado del método de decodificación para una señal estéreo en las realizaciones de esta solicitud se describe a continuación con referencia a la Figura 8.
La Figura 8 es un diagrama de flujo esquemático de un método de decodificación para una señal estéreo de acuerdo con una realización de esta solicitud. El método 800 puede ser ejecutado por un extremo de decodificación, y el extremo de decodificación puede ser un decodificador o un dispositivo que tenga la función de decodificar una señal de canal. El método 800 incluye específicamente las siguientes etapas.
810. Decodificar una señal de canal principal y una señal de canal secundario, respectivamente, con base en un flujo de bits recibido.
Específicamente, un método de decodificación para decodificar la señal del canal principal por el extremo de decodificación corresponde a un método de codificación para codificar la señal del canal principal por un extremo de codificación. Un método de decodificación para decodificar la señal de canal secundario por el extremo de decodificación corresponde a un método de codificación para codificar la señal de canal secundario por el extremo de codificación.
820. Decodificar el flujo de bits recibido para obtener un factor de escala de combinación de canales.
Específicamente, el flujo de bits recibido puede decodificarse para obtener un índice de codificación del factor de escala de combinación de canales, y luego el factor de escala de combinación de canales se obtiene decodificando con base en el índice de codificación obtenido del factor de escala de combinación de canales.
830. Realizar un procesamiento de mezcla ascendente en el dominio del tiempo en la señal del canal principal y la señal del canal secundario con base en el factor de escala de combinación de canales, para obtener una señal reconstruida del canal izquierdo y una señal reconstruida del canal derecho que se obtienen después del procesamiento de mezcla ascendente en el dominio del tiempo.
840. Decodificar el flujo de bits recibido para obtener una diferencia de tiempo entre canales en una trama actual.
850. Realizar un procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual que se obtiene mediante la decodificación y una diferencia de tiempo entre canales en una trama anterior de la trama actual, para obtener una diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual.
860. Ajustar, con base en la diferencia de tiempo entre canales después del procesamiento de interpolación, un retardo de la señal reconstruida del canal izquierdo y la señal reconstruida del canal derecho que se obtienen después del procesamiento de mezcla ascendente en el dominio del tiempo, para obtener una señal estéreo decodificada.
Debe entenderse que, en esta solicitud, el proceso de realizar el procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior se puede realizar en el extremo de codificación o en el extremo de decodificación. Después de realizar el procesamiento de interpolación en el extremo de codificación con base en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior, no es necesario realizar el procesamiento de interpolación en el extremo de decodificación, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se puede obtener directamente con base en el flujo de bits, y el ajuste de retardo posterior se realiza con base en la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual. Sin embargo, cuando el procesamiento de interpolación no se realiza en el extremo de codificación, el extremo de decodificación debe realizar el procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior, y luego realiza el ajuste de retardo posterior con base en la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual que se obtiene a través del procesamiento de interpolación.
Lo anterior describe en detalle los métodos de codificación y decodificación para una señal estéreo en las realizaciones de esta solicitud con referencia a la Figura 1 a la Figura 8. A continuación, se describen los aparatos de codificación y decodificación para una señal estéreo en realizaciones de esta solicitud con referencia a la Figura 9 a la Figura 12. Debe entenderse que el aparato de codificación de la Figura 9 a la Figura 12 corresponde al método de codificación para una señal estéreo en las realizaciones de esta solicitud, y el aparato de codificación puede realizar el método de codificación para una señal estéreo en las realizaciones de esta solicitud. El aparato de decodificación de la Figura 9 a la Figura 12 corresponde al método de decodificación de una señal estéreo en las realizaciones de esta solicitud, y el aparato de decodificación puede realizar el método de decodificación de una señal estéreo en las realizaciones de esta solicitud. Por brevedad, las descripciones repetidas se omiten apropiadamente a continuación.
La Figura 9 es un diagrama de bloques esquemático de un aparato de codificación de acuerdo con una realización de esta solicitud. El aparato de codificación 900 mostrado en la Figura 9 incluye:
un módulo de determinación 910, configurado para determinar una diferencia de tiempo entre canales en una trama actual;
un módulo de interpolación 920, configurado para realizar un procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual y una diferencia de tiempo entre canales en una trama anterior de la trama actual, para obtener una diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual;
un módulo de alineación de retardo 930, configurado para realizar la alineación de retardo en una señal estéreo en la trama actual con base en la diferencia de tiempo entre canales en la trama actual, para obtener una señal estéreo después de la alineación de retardo en la trama actual;
un módulo de mezcla descendente 940, configurado para realizar un procesamiento de mezcla descendente en el dominio del tiempo en la señal estéreo después de la alineación de retardo en la trama actual, para obtener una señal de canal principal y una señal de canal secundario en la trama actual; y
un módulo de codificación 950, configurado para cuantificar la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, y escribir una diferencia de tiempo entre canales cuantificada en un flujo de bits.
El módulo de codificación 950 está configurado además para cuantificar la señal del canal principal y la señal del canal secundario en la trama actual, y escribir una señal cuantificada del canal principal y señal cuantificada del canal secundario en el flujo de bits.
En esta solicitud, la diferencia de tiempo entre canales en la trama actual se usa en el aparato de codificación para realizar la alineación de retardo, para obtener la señal del canal principal y la señal del canal secundario. Sin embargo, el procesamiento de interpolación se realiza sobre la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, de modo que la diferencia de tiempo entre canales en la trama actual que se obtiene después del procesamiento de interpolación puede coincidir con la señal del canal principal y la señal del canal secundario que se obtienen mediante la codificación y la decodificación. La diferencia de tiempo entre canales después del procesamiento de interpolación se codifica y luego se transmite al extremo de decodificación, de modo que el extremo de decodificación pueda realizar la decodificación con base en la diferencia de tiempo entre canales en la trama actual que coincide con la señal del canal principal y la señal del canal secundario que se obtienen por decodificación. Esto puede reducir una desviación entre una diferencia de tiempo entre canales de una señal estéreo que finalmente se obtiene mediante la decodificación y una diferencia de tiempo entre canales de una señal estéreo original. Por lo tanto, se mejora la precisión de una imagen de sonido estéreo de la señal estéreo que finalmente se obtiene mediante la decodificación.
Opcionalmente, en una realización, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = a • B (1 - a) • C, donde A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, a es un primer coeficiente de interpolación y 0<a<1.
Opcionalmente, en una realización, el primer coeficiente de interpolación a es inversamente proporcional a un retardo de codificación y decodificación, y es directamente proporcional a una longitud de trama de la trama actual, donde el retardo de codificación y decodificación incluye un retardo de codificación en un proceso de codificación, por un extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, un flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
Opcionalmente, en una realización, el primer coeficiente de interpolación a satisface una fórmula a = (N - S)/N, donde S es el retardo de codificación y decodificación, y N es la longitud de la trama actual.
Opcionalmente, en una realización, el primer coeficiente de interpolación a se almacena previamente.
Opcionalmente, en una realización, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = (1 - p) • B p • C.
En la fórmula, A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, p es un segundo coeficiente de interpolación y 0<p<1.
Opcionalmente, en una realización, el segundo coeficiente de interpolación p es directamente proporcional a un retardo de codificación y decodificación, y es inversamente proporcional a la longitud de la trama actual, donde el retardo de codificación y decodificación incluye un retardo de codificación en un proceso de codificación, por un extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, un flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
Opcionalmente, en una realización, el segundo coeficiente de interpolación p satisface una fórmula p = S/N, donde S es el retardo de codificación y decodificación, y N es la longitud de la trama actual.
Opcionalmente, en una realización, el segundo coeficiente de interpolación p se almacena previamente.
La Figura 10 es un diagrama de bloques esquemático de un aparato de decodificación de acuerdo con una realización de esta solicitud. El aparato de decodificación 1000 mostrado en la Figura 10 incluye:
un módulo de decodificación 1010, configurado para decodificar un flujo de bits para obtener una señal de canal principal y una señal de canal secundario en una trama actual, y una diferencia de tiempo entre canales en la trama actual;
un módulo de mezcla ascendente 1020, configurado para realizar un procesamiento de mezcla ascendente en el dominio del tiempo en la señal del canal principal y la señal del canal secundario en la trama actual, para obtener una señal del canal principal y una señal del canal secundario que se obtienen después del procesamiento de mezcla ascendente en el dominio del tiempo;
un módulo de interpolación 1030, configurado para realizar un procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual y una diferencia de tiempo entre canales en una trama anterior de la trama actual, para obtener una diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual; y
un módulo de ajuste de retardo 1040, configurado para ajustar, con base en la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, un retardo de la señal del canal principal y la señal del canal secundario que se obtienen después del procesamiento de mezcla ascendente en el dominio del tiempo.
En esta solicitud, al realizar el procesamiento de interpolación en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual puede hacer coincidir la señal del canal principal y la señal del canal secundario que se obtienen con la decodificación actual. Esto puede reducir una desviación entre una diferencia de tiempo entre canales de una señal estéreo que finalmente se obtiene mediante la decodificación y una diferencia de tiempo entre canales de una señal estéreo original. Por lo tanto, se mejora la precisión de una imagen de sonido estéreo de la señal estéreo que finalmente se obtiene mediante la decodificación. Opcionalmente, en una realización, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = a • B (1 - a) • C, donde A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, a es un primer coeficiente de interpolación y 0<a<1.
Opcionalmente, en una realización, el primer coeficiente de interpolación a es inversamente proporcional a un retardo de codificación y decodificación, y es directamente proporcional a una longitud de trama de la trama actual, donde el retardo de codificación y decodificación incluye un retardo de codificación en un proceso de codificación, por un extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, un flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
Opcionalmente, en una realización, el primer coeficiente de interpolación a satisface una fórmula a = (N - S)/N, donde S es el retardo de codificación y decodificación, y N es la longitud de la trama actual.
Opcionalmente, en una realización, el primer coeficiente de interpolación a se almacena previamente.
Opcionalmente, en una realización, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = (1 - p) • B p • C, donde A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, p es un segundo coeficiente de interpolación y 0<p<1.
Opcionalmente, en una realización, el segundo coeficiente de interpolación p es directamente proporcional a un retardo de codificación y decodificación, y es inversamente proporcional a la longitud de la trama actual, donde el retardo de codificación y decodificación incluye un retardo de codificación en un proceso de codificación, por un extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, de un flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
Opcionalmente, en una realización, el segundo coeficiente de interpolación p satisface una fórmula p = S/N, donde S es el retardo de codificación y decodificación, y N es la longitud de la trama actual.
Opcionalmente, en una realización, el segundo coeficiente de interpolación p se almacena previamente.
La Figura 11 es un diagrama de bloques esquemático de un aparato de codificación de acuerdo con una realización de esta solicitud. El aparato de codificación 1100 mostrado en la Figura 11 incluye:
una memoria 1110, configurada para almacenar un programa; y
un procesador 1120, configurado para ejecutar el programa almacenado en la memoria 1110, donde cuando se ejecuta el programa en la memoria 1110, el procesador 1120 está específicamente configurado para: realizar un procesamiento de interpolación con base en una diferencia de tiempo entre canales en una trama actual y una diferencia de tiempo entre canales en una trama anterior de la trama actual, para obtener una diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual; realizar la alineación de retardo en una señal estéreo en la trama actual con base en la diferencia de tiempo entre canales en la trama actual, para obtener una señal estéreo después de la alineación de retardo en la trama actual; realizar un procesamiento de mezcla descendente en el dominio del tiempo en la señal estéreo después de la alineación del retardo en la trama actual, para obtener una señal de canal principal y una señal de canal secundario en la trama actual; cuantificar la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, y escribir una diferencia de tiempo entre canales cuantificada en un flujo de bits; y cuantificar la señal del canal principal y la señal del canal secundario en la trama actual, y escribir una señal cuantificada del canal principal y señal cuantificada del canal secundario en el flujo de bits.
En esta solicitud, la diferencia de tiempo entre canales en la trama actual se usa en el aparato de codificación para realizar la alineación de retardo, para obtener la señal del canal principal y la señal del canal secundario. Sin embargo, el procesamiento de interpolación se realiza sobre la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, de modo que la diferencia de tiempo entre canales en la trama actual que se obtiene después del procesamiento de interpolación puede coincidir con la señal del canal principal y la señal del canal secundario que se obtienen mediante la codificación y la decodificación. La diferencia de tiempo entre canales después del procesamiento de interpolación se codifica y luego se transmite al extremo de decodificación, de modo que el extremo de decodificación pueda realizar la decodificación con base en la diferencia de tiempo entre canales en la trama actual que coincide con la señal del canal principal y la señal del canal secundario que se obtienen por decodificación. Esto puede reducir una desviación entre una diferencia de tiempo entre canales de una señal estéreo que finalmente se obtiene mediante la decodificación y una diferencia de tiempo entre canales de una señal estéreo original. Por lo tanto, se mejora la precisión de una imagen de sonido estéreo de la señal estéreo que finalmente se obtiene mediante la decodificación.
Opcionalmente, en una realización, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = a • B (1 - a) • C, donde A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, a es un primer coeficiente de interpolación y 0<a<1.
Opcionalmente, en una realización, el primer coeficiente de interpolación a es inversamente proporcional a un retardo de codificación y decodificación, y es directamente proporcional a una longitud de trama de la trama actual, donde el retardo de codificación y decodificación incluye un retardo de codificación en un proceso de codificación, por un extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, un flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
Opcionalmente, en una realización, el primer coeficiente de interpolación a satisface una fórmula a = (N - S)/N, donde S es el retardo de codificación y decodificación, y N es la longitud de la trama actual.
Opcionalmente, en una realización, el primer coeficiente de interpolación a se almacena previamente.
El primer coeficiente de interpolación a puede almacenarse en la memoria 1110.
Opcionalmente, en una realización, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = (1-p) • B p • C.
En la fórmula, A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, p es un segundo coeficiente de interpolación y 0<p<1.
Opcionalmente, en una realización, el segundo coeficiente de interpolación p es directamente proporcional a un retardo de codificación y decodificación, y es inversamente proporcional a la longitud de la trama actual, donde el retardo de codificación y decodificación incluye un retardo de codificación en un proceso de codificación, por un extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, de un flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
Opcionalmente, en una realización, el segundo coeficiente de interpolación p satisface una fórmula p = S/N, donde S es el retardo de codificación y decodificación, y N es la longitud de la trama actual.
Opcionalmente, en una realización, el segundo coeficiente de interpolación p se almacena previamente.
El segundo coeficiente de interpolación p puede almacenarse en la memoria 1110.
La Figura 12 es un diagrama de bloques esquemático de un aparato de decodificación de acuerdo con una realización de esta solicitud. El aparato de decodificación 1200 mostrado en la Figura 12 incluye:
una memoria 1210, configurada para almacenar un programa; y
un procesador 1220, configurado para ejecutar el programa almacenado en la memoria 1210, donde cuando el programa se ejecuta en la memoria 1210, el procesador 1220 está específicamente configurado para: decodificar un flujo de bits para obtener una señal de canal principal y una señal de canal secundario en una trama actual; realizar un procesamiento de mezcla ascendente en el dominio del tiempo en la señal del canal principal y la señal del canal secundario en la trama actual, para obtener una señal del canal principal y una señal del canal secundario que se obtienen después del procesamiento de la mezcla ascendente en el dominio del tiempo; realizar un procesamiento de interpolación con base en una diferencia de tiempo entre canales en la trama actual y una diferencia de tiempo entre canales en una trama anterior de la trama actual, para obtener una diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual; y ajustar, con base en la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, un retardo de la señal del canal principal y la señal del canal secundario que se obtienen después del procesamiento de mezcla ascendente en el dominio del tiempo.
En esta solicitud, al realizar el procesamiento de interpolación en la diferencia de tiempo entre canales en la trama actual y la diferencia de tiempo entre canales en la trama anterior de la trama actual, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual puede hacer coincidir la señal del canal principal y la señal del canal secundario que se obtienen con la decodificación actual. Esto puede reducir una desviación entre una diferencia de tiempo entre canales de una señal estéreo que finalmente se obtiene mediante la decodificación y una diferencia de tiempo entre canales de una señal estéreo original. Por lo tanto, se mejora la precisión de una imagen de sonido estéreo de la señal estéreo que finalmente se obtiene mediante la decodificación. Opcionalmente, en una realización, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = a • B (1 - a) • C, donde A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, a es un primer coeficiente de interpolación y 0<a<1.
Opcionalmente, en una realización, el primer coeficiente de interpolación a es inversamente proporcional a un retardo de codificación y decodificación, y es directamente proporcional a una longitud de trama de la trama actual, donde el retardo de codificación y decodificación incluye un retardo de codificación en un proceso de codificación, por un extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, de un flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
Opcionalmente, en una realización, el primer coeficiente de interpolación a satisface una fórmula a = (N - S)/N, donde S es el retardo de codificación y decodificación, y N es la longitud de la trama actual.
Opcionalmente, en una realización, el primer coeficiente de interpolación a se almacena previamente.
El primer coeficiente de interpolación a puede almacenarse en la memoria 1210.
Opcionalmente, en una realización, la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = (1 - p) • B p • C, donde A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, p es un segundo coeficiente de interpolación y 0<p<1.
Opcionalmente, en una realización, el segundo coeficiente de interpolación p es directamente proporcional a un retardo de codificación y decodificación, y es inversamente proporcional a la longitud de la trama actual, donde el retardo de codificación y decodificación incluye un retardo de codificación en un proceso de codificación, por un extremo de codificación, una señal de canal principal y una señal de canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, un flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
Opcionalmente, en una realización, el segundo coeficiente de interpolación p satisface una fórmula p = S/N, donde S es el retardo de codificación y decodificación, y N es la longitud de la trama actual.
Opcionalmente, en una realización, el segundo coeficiente de interpolación p se almacena previamente.
El segundo coeficiente de interpolación p puede almacenarse en la memoria 1210.
Debe entenderse que los métodos de codificación y decodificación para una señal estéreo en las realizaciones de esta solicitud pueden ser realizados por un dispositivo terminal o un dispositivo de red en la Figura 13 a la Figura 15. Además, los aparatos de codificación y decodificación en las realizaciones de esta solicitud pueden disponerse además en el dispositivo terminal o el dispositivo de red en la Figura 13 a la Figura 15. Específicamente, el aparato de codificación en las realizaciones de esta solicitud puede ser un codificador estéreo en el dispositivo terminal o el dispositivo de red en la Figura 13 a la Figura 15, y el aparato de decodificación en las realizaciones de esta solicitud puede ser un decodificador estéreo en el dispositivo terminal o el dispositivo de red en la Figura 13 a la Figura 15.
Como se muestra en la Figura 13, en comunicación de audio, un codificador estéreo en un primer dispositivo terminal realiza la codificación estéreo en una señal estéreo recopilada, y un codificador de canal en el primer dispositivo terminal puede realizar la codificación de canal en un flujo de bits obtenido por el codificador estéreo. A continuación, los datos obtenidos por el primer dispositivo terminal después de la codificación del canal se transmiten a un segundo dispositivo terminal utilizando un primer dispositivo de red y un segundo dispositivo de red. Después de que el segundo dispositivo terminal recibe los datos del segundo dispositivo de red, un decodificador de canales en el segundo dispositivo terminal realiza la decodificación del canal para obtener un flujo de bits codificado de señal estéreo. Un decodificador estéreo en el segundo dispositivo terminal luego restaura una señal estéreo mediante la decodificación, y el dispositivo terminal reproduce la señal estéreo. De esta forma, la comunicación de audio se completa entre diferentes dispositivos terminales.
Debe entenderse que, en la Figura 13, el segundo dispositivo terminal también puede codificar una señal estéreo recopilada y finalmente transmite, usando el segundo dispositivo de red y el primer dispositivo de red, datos que finalmente se obtienen codificando al primer dispositivo terminal. El primer dispositivo terminal realiza la decodificación de canal y la decodificación estéreo de los datos para obtener una señal estéreo.
En la Figura 13, el primer dispositivo de red y el segundo dispositivo de red pueden ser dispositivos de comunicaciones de red inalámbrica o dispositivos de comunicaciones de red por cable. El primer dispositivo de red y el segundo dispositivo de red pueden comunicarse entre sí utilizando un canal digital.
El primer dispositivo terminal o el segundo dispositivo terminal en la Figura 13 puede realizar los métodos de codificación y decodificación para una señal estéreo en las realizaciones de esta solicitud. Los aparatos de codificación y decodificación en las realizaciones de esta solicitud pueden ser, respectivamente, el codificador estéreo y el decodificador estéreo en el primer dispositivo terminal o en el segundo dispositivo terminal.
En la comunicación de audio, un dispositivo de red puede implementar la transcodificación de un formato de codificación y decodificación de una señal de audio. Como se muestra en la Figura 14, si un formato de codificación y decodificación de una señal recibida por un dispositivo de red es un formato de codificación y decodificación correspondiente a otro decodificador estéreo, un decodificador de canal en el dispositivo de red realiza la decodificación de canal en la señal recibida, para obtener un flujo de bits codificado correspondiente al otro decodificador estéreo. El otro decodificador estéreo decodifica el flujo de bits codificado para obtener una señal estéreo. Un codificador estéreo codifica la señal estéreo para obtener un flujo de bits codificado de la señal estéreo. Finalmente, un codificador de canal realiza la codificación de canal en el flujo de bits codificado de la señal estéreo, para obtener una señal final (la señal puede transmitirse a un dispositivo terminal u otro dispositivo de red). Debe entenderse que un formato de codificación y decodificación correspondiente al codificador estéreo de la Figura 14 es diferente del formato de codificación y decodificación correspondiente al otro decodificador estéreo. Se supone que el formato de codificación y decodificación correspondiente al otro decodificador estéreo es un primer formato de codificación y decodificación, y el formato de codificación y decodificación correspondiente al codificador estéreo es un segundo formato de codificación y decodificación. En la Figura 14, el dispositivo de red convierte la señal de audio del primer formato de codificación y decodificación al segundo formato de codificación y decodificación.
De manera similar, como se muestra en la Figura 15, si un formato de codificación y decodificación de una señal recibida por un dispositivo de red es el mismo que un formato de codificación y decodificación correspondiente a un decodificador estéreo, después de que un decodificador de canal del dispositivo de red realice la decodificación de canal para obtener un flujo de bits codificado de una señal estéreo, el decodificador estéreo puede decodificar el flujo de bits codificado de la señal estéreo, para obtener una señal estéreo. A continuación, otro codificador estéreo codifica la señal estéreo con base en otro formato de codificación y decodificación para obtener un flujo de bits codificado correspondiente al otro codificador estéreo. Finalmente, un codificador de canal realiza la codificación de canal en el flujo de bits codificado correspondiente a otro codificador estéreo, para obtener una señal final (la señal puede transmitirse a un dispositivo terminal u otro dispositivo de red). Igual que el caso de la Figura 14, el formato de codificación y decodificación correspondiente al decodificador estéreo de la Figura 15 también es diferente del formato de codificación y decodificación correspondiente al otro codificador estéreo. Si el formato de codificación y decodificación correspondiente al otro codificador estéreo es un primer formato de codificación y decodificación, y el formato de codificación y decodificación correspondiente al decodificador estéreo es un segundo formato de codificación y decodificación, en la Figura 15, el dispositivo de red convierte la señal de audio del segundo formato de codificación y decodificación al primer formato de codificación y decodificación.
En la Figura 14 y la Figura 15, el otro codificador y decodificador estéreo y el codificador y decodificador estéreo corresponden a diferentes formatos de codificación y decodificación respectivamente. Por lo tanto, la transcodificación del formato de codificación y decodificación de la señal estéreo se implementa después del procesamiento del otro codificador y decodificador estéreo y el codificador y decodificador estéreo.
Debe entenderse además que el codificador estéreo de la Figura 14 puede implementar el método de codificación para una señal estéreo en las realizaciones de esta solicitud, y el decodificador estéreo en la Figura 15 puede implementar el método de decodificación para una señal estéreo en las realizaciones de esta solicitud. El aparato de codificación en las realizaciones de esta solicitud puede ser el codificador estéreo en el dispositivo de red de la Figura 14, y el aparato de decodificación en las realizaciones de esta solicitud puede ser el decodificador estéreo en el dispositivo de red en la Figura 15. Además, el dispositivo de red de la Figura 14 y la Figura 15 puede ser específicamente un dispositivo de comunicaciones de red inalámbrica o un dispositivo de comunicaciones de red cableada.
Debe entenderse que los métodos de codificación y decodificación para una señal estéreo en las realizaciones de esta solicitud también pueden ser realizados por un dispositivo terminal o un dispositivo de red en la Figura 16 a la Figura 18. Además, los aparatos de codificación y decodificación en las realizaciones de esta solicitud pueden disponerse además en el dispositivo terminal o el dispositivo de red en la Figura 16 a la Figura 18. Específicamente, el aparato de codificación en las realizaciones de esta solicitud puede ser un codificador estéreo en un codificador multicanal en el dispositivo terminal o el dispositivo de red en la Figura 16 a la Figura 18, y el aparato de decodificación en las realizaciones de esta solicitud puede ser un decodificador estéreo en el codificador multicanal en el dispositivo terminal o el dispositivo de red en la Figura 16 a la Figura 18.
Como se muestra en la Figura 16, en comunicación de audio, un codificador estéreo en un codificador multicanal en un primer dispositivo terminal realiza la codificación estéreo en una señal estéreo generada a partir de una señal multicanal recopilada. Un flujo de bits obtenido por el codificador multicanal incluye un flujo de bits obtenido por el codificador estéreo. Un codificador de canal en el primer dispositivo terminal puede además realizar la codificación de canal en el flujo de bits obtenido por el codificador multicanal. A continuación, los datos obtenidos por el primer dispositivo terminal después de la codificación del canal se transmiten a un segundo dispositivo terminal utilizando un primer dispositivo de red y un segundo dispositivo de red. Después de que el segundo dispositivo terminal recibe los datos del segundo dispositivo de red, un decodificador de canal del segundo dispositivo terminal realiza la decodificación del canal para obtener un flujo de bits codificado de la señal multicanal, donde el flujo de bits codificado de la señal multicanal incluye un flujo de bits codificado de la señal estéreo. Un decodificador estéreo en un decodificador multicanal en el segundo dispositivo terminal restaura una señal estéreo mediante decodificación. El decodificador multicanal decodifica la señal estéreo restaurada para obtener una señal multicanal. El segundo dispositivo terminal reproduce la señal multicanal. De esta forma, la comunicación de audio se completa entre diferentes dispositivos terminales.
Debe entenderse que, en la Figura 16, el segundo dispositivo terminal también puede codificar la señal multicanal recopilada (específicamente, un codificador estéreo en un codificador multicanal del segundo dispositivo terminal realiza la codificación estéreo en la señal estéreo generada a partir de la señal multicanal recopilada, un codificador de canal en el segundo dispositivo terminal luego realiza la codificación de canal en un flujo de bits obtenido por el codificador multicanal), y finalmente, los datos obtenidos se transmiten al primer dispositivo terminal usando el segundo dispositivo de red y el primer dispositivo de red. El primer dispositivo terminal obtiene una señal multicanal mediante la decodificación de canales y la decodificación multicanal.
En la Figura 16, el primer dispositivo de red y el segundo dispositivo de red pueden ser dispositivos de comunicaciones de red inalámbrica o dispositivos de comunicaciones de red por cable. El primer dispositivo de red y el segundo dispositivo de red pueden comunicarse entre sí utilizando un canal digital.
El primer dispositivo terminal o el segundo dispositivo terminal en la Figura 16 puede realizar los métodos de codificación y decodificación para una señal estéreo en las realizaciones de esta solicitud. Además, el aparato de codificación en las realizaciones de esta solicitud puede ser el codificador estéreo en el primer dispositivo terminal o el segundo dispositivo terminal, y el aparato de decodificación en las realizaciones de esta solicitud puede ser el decodificador estéreo en el primer dispositivo terminal o el segundo dispositivo terminal.
En la comunicación de audio, un dispositivo de red puede implementar la transcodificación de un formato de codificación y decodificación de una señal de audio. Como se muestra en la Figura 17, si un formato de codificación y decodificación de una señal recibida por un dispositivo de red es un formato de codificación y decodificación correspondiente a otro decodificador multicanal, un decodificador de canal en el dispositivo de red realiza la decodificación de canal en la señal recibida, para obtener un flujo de bits codificado correspondiente al otro decodificador multicanal. El otro decodificador multicanal decodifica el flujo de bits codificado para obtener una señal multicanal. Un codificador multicanal codifica la señal multicanal para obtener un flujo de bits codificado de la señal multicanal. Un codificador estéreo en el codificador multicanal realiza la codificación estéreo en una señal estéreo generada a partir de la señal multicanal para obtener un flujo de bits codificado de la señal estéreo. El flujo de bits codificado de la señal multicanal incluye el flujo de bits codificado de la señal estéreo. Finalmente, un codificador de canal realiza la codificación de canal en el flujo de bits codificado, para obtener una señal final (la señal puede transmitirse a un dispositivo terminal o a otro dispositivo de red).
De manera similar, como se muestra en la Figura 18, si un formato de codificación y decodificación de una señal recibida por un dispositivo de red es el mismo que un formato de codificación y decodificación correspondiente a un decodificador multicanal, después de que un decodificador de canal del dispositivo de red realice la decodificación de canal para obtener un flujo de bits codificado de una señal multicanal, el decodificador multicanal puede decodificar el flujo de bits codificado de la señal multicanal, para obtener una señal multicanal, donde un decodificador estéreo en el decodificador multicanal realiza la decodificación estéreo en un flujo de bits codificado de una señal estéreo en el flujo de bits codificado de la señal multicanal. A continuación, otro codificador multicanal codifica la señal multicanal con base en otro formato de codificación y decodificación, para obtener un flujo de bits codificado de la señal multicanal correspondiente al otro codificador multicanal. Finalmente, un codificador de canal realiza la codificación de canal en el flujo de bits codificado correspondiente a otro codificador multicanal, para obtener una señal final (la señal puede transmitirse a un dispositivo terminal u otro dispositivo de red).
Debe entenderse que, en la Figura 17 y la Figura 18, el otro codificador y decodificador multicanal y el codificador y decodificador multicanal corresponden a diferentes formatos de codificación y decodificación respectivamente. Por ejemplo, en la Figura 17, el formato de codificación y decodificación correspondiente al otro decodificador estéreo es un primer formato de codificación y decodificación, y el formato de codificación y decodificación correspondiente al codificador multicanal es un segundo formato de codificación y decodificación. En este caso, en la Figura 17, el dispositivo de red convierte la señal de audio del primer formato de codificación y decodificación al segundo formato de codificación y decodificación. De manera similar, en la Figura 18, se asume que el formato de codificación y decodificación correspondiente al codificador multicanal es un segundo formato de codificación y decodificación, y el formato de codificación y decodificación correspondiente al otro decodificador estéreo es un primer formato de codificación y decodificación. En este caso, en la Figura 18, el dispositivo de red convierte la señal de audio del segundo formato de codificación y decodificación al primer formato de codificación y decodificación. Por lo tanto, la transcodificación del formato de codificación y decodificación de la señal de audio se implementa después del procesamiento del otro codificador y decodificador multicanal y el codificador y decodificador multicanal.
Debe entenderse además que el codificador estéreo de la Figura 17 puede implementar el método de codificación para una señal estéreo en esta solicitud, y el decodificador estéreo en la Figura 18 puede implementar el método de decodificación para una señal estéreo en esta solicitud. El aparato de codificación en las realizaciones de esta solicitud puede ser el codificador estéreo en el dispositivo de red de la Figura 17, y el aparato de decodificación en las realizaciones de esta solicitud puede ser el decodificador estéreo en el dispositivo de red de la Figura 18. Además, el dispositivo de red de la Figura 17 y la Figura 18 puede ser específicamente un dispositivo de comunicaciones de red inalámbrica o un dispositivo de comunicaciones de red cableada.
Un experto en la técnica puede estar consciente de que, en combinación con los ejemplos descritos en las realizaciones descritas en esta especificación, las etapas de unidades y algoritmos pueden implementarse por hardware electrónico o una combinación de software informático y hardware electrónico. Si las funciones se realizan mediante hardware o software depende de aplicaciones particulares y condiciones de restricción de diseño de las soluciones técnicas. Un experto en la técnica puede usar diferentes métodos para implementar las funciones descritas para cada aplicación particular, pero no debe considerarse que la implementación va más allá del alcance de esta solicitud.
Un experto en la técnica puede entender claramente que, para el propósito de una descripción conveniente y breve, para un proceso de trabajo detallado del sistema, aparato y unidad anteriores, referirse a un proceso correspondiente en las realizaciones del método anterior, y los detalles no se describen en la presente descripción nuevamente.
En las diversas realizaciones que se proporcionan en esta solicitud, debe entenderse que los sistemas, aparatos y métodos descritos pueden implementarse de otras maneras. Por ejemplo, las realizaciones del aparato descritas son simplemente ejemplos. Por ejemplo, la división de unidades es simplemente una división de función lógica y puede ser otra división en la implementación real. Por ejemplo, una pluralidad de unidades o componentes pueden combinarse o integrarse en otro sistema o algunas características pueden ignorarse o no ejecutarse. Además, los acoplamientos mutuos mostrados o discutidos o los acoplamientos directos o las conexiones de comunicación pueden implementarse mediante el uso de algunas interfaces. Los acoplamientos indirectos o las conexiones de comunicación entre los aparatos o unidades pueden implementarse en forma electrónica, mecánica u otras formas. Las unidades descritas como partes separadas pueden o no estar físicamente separadas, y las partes mostradas como unidades pueden o no ser unidades físicas, pueden estar localizadas en una posición o pueden distribuirse en una pluralidad de unidades de red. Algunas o todas las unidades pueden seleccionarse con base en los requisitos reales para lograr los objetivos de las soluciones de las realizaciones.
Además, las unidades funcionales en las realizaciones de esta solicitud pueden integrarse dentro de una unidad de procesamiento, o cada una de las unidades puede existir sola físicamente, o dos o más unidades se integran dentro de una unidad.
Cuando las funciones se implementan en forma de una unidad funcional de software y se venden o usan como un producto independiente, las funciones pueden almacenarse en un medio de almacenamiento legible por ordenador. Con base en tal comprensión, las soluciones técnicas de esta solicitud esencialmente o la parte que contribuye a la técnica anterior o algunas de las soluciones técnicas pueden implementarse en forma de un producto de software. El producto de software se almacena en un medio de almacenamiento e incluye diversas instrucciones para indicar a un dispositivo informático (que puede ser un ordenador personal, un servidor, un dispositivo de red o similar) que realice la totalidad o parte de las etapas de los métodos descrito en las realizaciones de esta solicitud. El medio de almacenamiento anterior incluye: cualquier medio que pueda almacenar código de programa, tal como una unidad flash USB, un disco duro extraíble, una memoria de solo lectura (Read-Only Memory, ROM), una memoria de acceso aleatorio (Random Access Memory, RAM), un disco magnético o un disco óptico.
Las descripciones anteriores son simplemente implementaciones específicas de esta solicitud, pero no pretenden limitar el alcance de protección de esta solicitud. Cualquier variación o reemplazo fácilmente resuelto por un experto en la técnica dentro del alcance técnico descrito en esta solicitud caerá dentro del alcance de protección de esta solicitud. Por lo tanto, el alcance de protección de esta solicitud estará sujeto al alcance de protección de las reivindicaciones.

Claims (18)

REIVINDICACIONES
1. Un método de codificación para una señal estéreo, que comprende:
determinar (410) una diferencia de tiempo entre canales en una trama actual;
realizar (420) un procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual y una diferencia de tiempo entre canales en una trama anterior de la trama actual, para obtener una diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual;
realizar (430) alineación de retardo en una señal estéreo en la trama actual con base en la diferencia de tiempo entre canales en la trama actual, para obtener una señal estéreo después de la alineación de retardo en la trama actual;
realizar (440) el procesamiento de mezcla descendente en el dominio del tiempo en la señal estéreo después de la alineación del retardo en la trama actual, para obtener una señal de canal principal y una señal de canal secundario en la trama actual;
cuantificar (450) la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, y escribir una diferencia de tiempo entre canales cuantificada en un flujo de bits; y cuantificar (460) la señal del canal principal y la señal del canal secundario en la trama actual, y escribir una señal cuantificada del canal principal y señal cuantificada del canal secundario en el flujo de bits.
2. El método de acuerdo con la reivindicación 1, en donde la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = a • B (1 - a) • C, en donde
A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, a es un primer coeficiente de interpolación, y 0<a<1.
3. El método de acuerdo con la reivindicación 2, en donde el primer coeficiente de interpolación a es inversamente proporcional a un retardo de codificación y decodificación, y es directamente proporcional a una longitud de trama de la trama actual, en donde el retardo de codificación y decodificación comprende un retardo de codificación en un proceso de codificación, por un extremo de codificación, la señal del canal principal y la señal del canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, el flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
4. El método de acuerdo con la reivindicación 3, en donde el primer coeficiente de interpolación a satisface una fórmula a = (N - S)/N, en donde S es el retardo de codificación y decodificación, y N es la longitud de la trama actual.
5. El método de acuerdo con una cualquiera de las reivindicaciones 2 a 4, en donde
6. El método de acuerdo con la reivindicación 1, en donde la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = (1 - p) • B p • C, en donde
A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, p es un segundo coeficiente de interpolación, y 0<p<1.
7. El método de acuerdo con la reivindicación 6, en donde el segundo coeficiente de interpolación p es directamente proporcional a un retardo de codificación y decodificación, y es inversamente proporcional a la longitud de la trama actual, en donde el retardo de codificación y decodificación comprende un retardo de codificación en un proceso de codificación, por un extremo de codificación, la señal del canal principal y la señal del canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, el flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
8. El método de acuerdo con la reivindicación 7, en donde el segundo coeficiente de interpolación p satisface una fórmula p = S/N, en donde S es el retardo de codificación y decodificación, y N es la longitud de la trama actual.
9. El método de acuerdo con cualquiera de las reivindicaciones 6 a 8, en donde el segundo coeficiente de interpolación está previamente almacenado.
10. Un aparato de codificación (900), que comprende:
un módulo de determinación (910), configurado para determinar una diferencia de tiempo entre canales en una trama actual;
un módulo de interpolación (920), configurado para realizar un procesamiento de interpolación con base en la diferencia de tiempo entre canales en la trama actual y una diferencia de tiempo entre canales en una trama anterior de la trama actual, para obtener una diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual;
un módulo de alineación de retardo (930), configurado para realizar la alineación de retardo en una señal estéreo en la trama actual con base en la diferencia de tiempo entre canales en la trama actual, para obtener una señal estéreo después de la alineación de retardo en la trama actual; un módulo de mezcla descendente (940), configurado para realizar un procesamiento de mezcla descendente en el dominio del tiempo en la señal estéreo después de la alineación de retardo en la trama actual, para obtener una señal de canal principal y una señal de canal secundario en la trama actual; y
un módulo de codificación (950), configurado para cuantificar la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, y escribir una diferencia de tiempo entre canales cuantificada en un flujo de bits, en donde
el módulo de codificación (950) está configurado además para cuantificar la señal del canal principal y la señal del canal secundario en la trama actual, y escribir una señal cuantificada del canal principal y señal cuantificada del canal secundario en el flujo de bits.
11. El aparato (900) de acuerdo con la reivindicación 10, en donde la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = a • B (1 -a) • C, en donde
A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, a es un primer coeficiente de interpolación, y 0<a<1.
12. El aparato (900) de acuerdo con la reivindicación 11, en donde el primer coeficiente de interpolación a es inversamente proporcional a un retardo de codificación y decodificación, y es directamente proporcional a la longitud de la trama actual, en donde el retardo de codificación y decodificación comprende un retardo de codificación en un proceso de codificación, por un extremo de codificación, la señal del canal principal y la señal del canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, del flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
13. El aparato (900) de acuerdo con la reivindicación 12, en donde el primer coeficiente de interpolación a satisface una fórmula a = (N - S)/N, en donde S es el retardo de codificación y decodificación, y N es la longitud de la trama actual.
14. El aparato (900) de acuerdo con cualquiera de las reivindicaciones 11 a 13, en donde el primer coeficiente de interpolación a está previamente almacenado.
15. El aparato (900) de acuerdo con la reivindicación 10, en donde la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual se calcula de acuerdo con una fórmula A = (1 - p) • B p • C, en donde
A es la diferencia de tiempo entre canales después del procesamiento de interpolación en la trama actual, B es la diferencia de tiempo entre canales en la trama actual, C es la diferencia de tiempo entre canales en la trama anterior de la trama actual, p es un segundo coeficiente de interpolación, y 0<p<1.
16. El aparato (900) de acuerdo con la reivindicación 15, en donde el segundo coeficiente de interpolación p es directamente proporcional a un retardo de codificación y decodificación, y es inversamente proporcional a la longitud de la trama actual, en donde el retardo de codificación y decodificación comprende un retardo de codificación en un proceso de codificación, por un extremo de codificación, la señal del canal principal y la señal del canal secundario que se obtienen después del procesamiento de mezcla descendente en el dominio del tiempo, y un retardo de decodificación en un proceso de decodificación, por un extremo de decodificación, del flujo de bits para obtener una señal de canal principal y una señal de canal secundario.
17. El aparato (900) de acuerdo con la reivindicación 16, en donde el segundo coeficiente de interpolación p satisface una fórmula p = S/N, en donde S es el retardo de codificación y decodificación, y N es la longitud de la trama actual.
18. El aparato (900) de acuerdo con cualquiera de las reivindicaciones 15 a 17, en donde el segundo coeficiente de interpolación p está previamente almacenado.
ES18839134T 2017-07-25 2018-07-25 Método de codificación y decodificación y aparato de codificación y decodificación para señales estéreo Active ES2945723T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710614326.7A CN109300480B (zh) 2017-07-25 2017-07-25 立体声信号的编解码方法和编解码装置
PCT/CN2018/096973 WO2019020045A1 (zh) 2017-07-25 2018-07-25 立体声信号的编解码方法和编解码装置

Publications (1)

Publication Number Publication Date
ES2945723T3 true ES2945723T3 (es) 2023-07-06

Family

ID=65039996

Family Applications (1)

Application Number Title Priority Date Filing Date
ES18839134T Active ES2945723T3 (es) 2017-07-25 2018-07-25 Método de codificación y decodificación y aparato de codificación y decodificación para señales estéreo

Country Status (7)

Country Link
US (3) US11238875B2 (es)
EP (2) EP3648101B1 (es)
KR (1) KR102288111B1 (es)
CN (1) CN109300480B (es)
BR (1) BR112020001633A2 (es)
ES (1) ES2945723T3 (es)
WO (1) WO2019020045A1 (es)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112151045B (zh) * 2019-06-29 2024-06-04 华为技术有限公司 一种立体声编码方法、立体声解码方法和装置
CN115346537A (zh) * 2021-05-14 2022-11-15 华为技术有限公司 一种音频编码、解码方法及装置
CN115497485A (zh) * 2021-06-18 2022-12-20 华为技术有限公司 三维音频信号编码方法、装置、编码器和系统
CN115881138A (zh) * 2021-09-29 2023-03-31 华为技术有限公司 解码方法、装置、设备、存储介质及计算机程序产品

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7006636B2 (en) * 2002-05-24 2006-02-28 Agere Systems Inc. Coherence-based audio coding and synthesis
CN101188878B (zh) * 2007-12-05 2010-06-02 武汉大学 立体声音频信号的空间参数量化及熵编码方法和所用系统
CN101582259B (zh) * 2008-05-13 2012-05-09 华为技术有限公司 立体声信号编解码方法、装置及编解码系统
US8504378B2 (en) * 2009-01-22 2013-08-06 Panasonic Corporation Stereo acoustic signal encoding apparatus, stereo acoustic signal decoding apparatus, and methods for the same
CN102388417B (zh) 2009-03-17 2015-10-21 杜比国际公司 基于自适应地可选择的左/右或中央/侧边立体声编码和参数立体声编码的组合的高级立体声编码
EP3035330B1 (en) * 2011-02-02 2019-11-20 Telefonaktiebolaget LM Ericsson (publ) Determining the inter-channel time difference of a multi-channel audio signal
WO2013149672A1 (en) * 2012-04-05 2013-10-10 Huawei Technologies Co., Ltd. Method for determining an encoding parameter for a multi-channel audio signal and multi-channel audio encoder
CN104681029B (zh) * 2013-11-29 2018-06-05 华为技术有限公司 立体声相位参数的编码方法及装置
RU2764287C1 (ru) 2015-09-25 2022-01-17 Войсэйдж Корпорейшн Способ и система для кодирования левого и правого каналов стереофонического звукового сигнала с выбором между моделями двух и четырех подкадров в зависимости от битового бюджета

Also Published As

Publication number Publication date
EP3648101A1 (en) 2020-05-06
CN109300480A (zh) 2019-02-01
EP3648101A4 (en) 2020-07-15
KR102288111B1 (ko) 2021-08-09
KR20200027008A (ko) 2020-03-11
US11741974B2 (en) 2023-08-29
US20220108710A1 (en) 2022-04-07
WO2019020045A1 (zh) 2019-01-31
BR112020001633A2 (pt) 2020-07-21
EP3648101B1 (en) 2023-04-26
US20200160872A1 (en) 2020-05-21
EP4258697A2 (en) 2023-10-11
EP4258697A3 (en) 2023-10-25
CN109300480B (zh) 2020-10-16
US20230352034A1 (en) 2023-11-02
US11238875B2 (en) 2022-02-01

Similar Documents

Publication Publication Date Title
ES2930374T3 (es) Aparato y método para codificar o decodificar parámetros de codificación de audio direccional utilizando diferentes resoluciones de tiempo/frecuencia
ES2945723T3 (es) Método de codificación y decodificación y aparato de codificación y decodificación para señales estéreo
ES2641390T3 (es) Codificación y decodificación eficientes de una señal de audio multicanal con múltiples flujos secundarios
TWI579831B (zh) 用於參數量化的方法、用於量化的參數之解量化方法及其電腦可讀取的媒體、音頻編碼器、音頻解碼器及音頻系統
ES2873880T3 (es) Procedimiento de codificación y aparato de codificación para señal estéreo
BR112020024140A2 (pt) método e aparelho para calcular sinal de downmix e sinal residual, e meio de armazenamento legível por computador
EP3800638A1 (en) Method and apparatus for determining weighting coefficient during stereo signal coding process
ES2624668T3 (es) Codificación y descodificación de objetos de audio
BR112020003543A2 (pt) método e aparelho para reconstruir sinal durante codificação de sinal estéreo