ES2873880T3 - Procedimiento de codificación y aparato de codificación para señal estéreo - Google Patents

Procedimiento de codificación y aparato de codificación para señal estéreo Download PDF

Info

Publication number
ES2873880T3
ES2873880T3 ES18848208T ES18848208T ES2873880T3 ES 2873880 T3 ES2873880 T3 ES 2873880T3 ES 18848208 T ES18848208 T ES 18848208T ES 18848208 T ES18848208 T ES 18848208T ES 2873880 T3 ES2873880 T3 ES 2873880T3
Authority
ES
Spain
Prior art keywords
window
linear prediction
current frame
prediction analysis
length
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
ES18848208T
Other languages
English (en)
Inventor
Eyal Shlomot
Jonathan Alastair Gibbs
Haiting Li
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 ES2873880T3 publication Critical patent/ES2873880T3/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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/45Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of analysis window

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

Un procedimiento de codificación de señales estéreo, que comprende: determinar (310) una longitud de ventana de una ventana de atenuación en un cuadro actual basado en una diferencia de tiempo entre canales en el cuadro actual; determinar (320) una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde los valores de al menos algunos puntos desde un punto (L - sub_ventana_lon) a un punto (L - 1) en la ventana de análisis de predicción lineal modificada son menores que los valores de los puntos correspondientes desde un punto (L - sub_ventana_lon) a un punto (L - 1) en una ventana de análisis de predicción lineal inicial, sub_ventana_lon representa la longitud de ventana de la ventada atenuación en el cuadro actual, L representa una longitud de ventana de la ventana de análisis de predicción lineal modificada, y la longitud de ventana de la ventana de análisis de predicción lineal modificada es igual a una longitud de ventana de la ventana de análisis de predicción lineal; y realizar (330) análisis de predicción lineal en una señal de canal de sonido a procesar basado en la ventana de análisis de predicción lineal modificada.

Description

DESCRIPCIÓN
Procedimiento de codificación y aparato de codificación para señal estéreo
CAMPO TÉCNICO
Esta solicitud se refiere al campo de las tecnologías de codificación/ decodificación de señales de audio y, más específicamente, a un procedimiento de codificación de señales estéreo y un aparato de codificación.
ANTECEDENTES
Un procedimiento general de codificación de una señal estéreo mediante el uso de una tecnología de codificación estéreo en el dominio del tiempo incluye las siguientes etapas:
estimar una diferencia de tiempo entre canales de una señal estéreo;
realizar el procesamiento de alineación de retardo en la señal estéreo basado en la diferencia de tiempo entre canales;
realizar, basándose en un parámetro para el procesamiento de mezcla descendente en el dominio del tiempo, procesamiento de mezcla descendente en el dominio del tiempo en una señal obtenida después del procesamiento de alineación de retardo, para obtener una señal de canal primario de sonido y una señal de canal secundario de sonido; y
codificar la diferencia de tiempo entre canales, el parámetro para el procesamiento de mezcla descendente en el dominio del tiempo, la señal del canal de sonido primario y la señal del canal de sonido secundario, para obtener un flujo de bits codificado.
Una estrategia de codificación ejemplar para una señal estéreo que usa una diferencia de tiempo entre canales se describe en US 2017/0116997 A1.
Antes de que se realice el procesamiento de alineación de retardo en la señal estéreo basado en la diferencia de tiempo entre canales, primero, se puede seleccionar un canal de sonido con un mayor retardo de entre un canal de sonido izquierdo y un canal de sonido derecho de la señal estéreo basado en la diferencia de tiempo entre canales para que sirva como canal de sonido diana, y el otro canal de sonido se selecciona como canal de sonido de referencia para realizar el procesamiento de alineación de retardo en el canal de sonido diana; a continuación, el procesamiento de alineación de retardo se realiza en una señal de canal de sonido diana. De esta manera, no hay diferencia de tiempo entre canales entre una señal de canal de sonido diana obtenida después del procesamiento de alineación de retardo y una señal de canal de sonido de referencia. Además, el procesamiento de alineación de retardo incluye además la reconstrucción manual de una señal directa en el canal de sonido diana.
Sin embargo, algunas señales (incluida una señal de segmento de transición y la señal directa) en el canal de sonido diana se determinan manualmente, y estas señales determinadas manualmente y las señales reales difieren mucho. En consecuencia, un coeficiente de predicción lineal real y un coeficiente de predicción lineal pueden diferir hasta cierto punto, donde el coeficiente de predicción lineal se obtiene cuando se realiza un análisis de predicción lineal, utilizando un algoritmo de codificación mono, en la señal del canal de sonido primario y el canal de sonido secundario. señales que se determinan basado en una señal estéreo obtenida después del procesamiento de alineación de retardo, y la calidad de codificación se ve afectada.
RESUMEN
Esta solicitud proporciona un procedimiento de codificación de señales estéreo y un aparato de codificación para mejorar la precisión de la predicción lineal en un procedimiento de codificación.
Debe entenderse que una señal estéreo en esta solicitud puede ser una señal estéreo sin procesar, una señal estéreo que incluye dos señales incluidas en una señal multicanal o una señal estéreo que incluye dos señales generadas conjuntamente por una pluralidad de señales incluidas en una señal multicanal.
Además, el procedimiento de codificación de señales estéreo en esta solicitud puede ser un procedimiento de codificación de señales estéreo usado en un procedimiento de codificación multicanal.
Según un primer aspecto, se proporciona un procedimiento de codificación de señales estéreo. El procedimiento incluye: determinar una longitud de ventana de una ventana de atenuación en un cuadro actual basado en una diferencia de tiempo entre canales en el cuadro actual; determinar una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde los valores de al menos algunos puntos desde un punto (L - sub_ventana_lon) a un punto (L - 1) en la ventana de análisis de predicción lineal modificada son menores que los valores de los puntos correspondientes desde un punto (L - sub_ventana_lon) a un punto (L - 1) en una ventana de análisis de predicción lineal inicial, sub_ventana_lon representa la longitud de ventana de la ventana de atenuación en el cuadro actual, y L representa una longitud de ventana de la ventana de análisis de predicción lineal modificada, y la longitud de ventana de la ventana de análisis de predicción lineal modificada es igual a una longitud de ventana de una ventana de análisis de predicción lineal inicial; y realizar análisis de predicción lineal en una señal de canal de sonido a procesar basado en la ventana de análisis de predicción lineal modificada.
Como los valores de al menos algunos puntos desde el punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada son menores que los valores de los puntos correspondientes desde el punto (L - sub_ventana_lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal, el impacto realizado por una señal reconstruida manualmente (donde la señal reconstruida puede incluir una señal de segmento de transición y una señal directa) en un canal de sonido diana en el cuadro actual puede reducirse durante la predicción lineal, de modo que el impacto de un error entre la señal reconstruida manualmente y una señal real sobre la precisión del resultado de un análisis de predicción lineal se reduce. Por lo tanto, se puede reducir la diferencia entre un coeficiente de predicción lineal obtenido a través del análisis de predicción lineal y un coeficiente de predicción lineal real, y se puede mejorar la precisión del análisis de predicción lineal.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, un valor de cualquier punto desde el punto (L - sub_ventana lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal modificada es menor que un valor de un punto correspondiente desde el punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal inicial.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la determinación de una longitud de ventana de una ventana de atenuación en un cuadro actual basada en una diferencia de tiempo entre canales en el cuadro actual incluye: determinar la longitud de ventana de la ventana de atenuación en el cuadro actual basado en la diferencia de tiempo entre canales en el cuadro actual y una longitud preestablecida de un segmento de transición. Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la determinación de la longitud de ventana de la ventana de atenuación en el cuadro actual basado en la diferencia de tiempo entre canales en el cuadro actual y una longitud preestablecida de un segmento de transición comprende: determinar una suma de un valor absoluto de la diferencia de tiempo entre canales en el cuadro actual y la longitud preestablecida del segmento de transición como la longitud de ventana de la ventana de atenuación en el cuadro actual.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la determinación de la longitud de ventana de la ventana de atenuación en el cuadro actual basado en la diferencia de tiempo entre canales en el cuadro actual y una longitud preestablecida de un segmento de transición incluye: cuando un valor absoluto de la diferencia de tiempo entre canales en el cuadro actual es mayor o igual que la longitud preestablecida del segmento de transición, determinando una suma del valor absoluto de la diferencia de tiempo entre canales en el cuadro actual y la longitud preestablecida del segmento de transición como la longitud de ventana de la ventana de atenuación en el cuadro actual; o cuando un valor absoluto de la diferencia de tiempo entre canales en el cuadro actual es menor que la longitud preestablecida del segmento de transición, determinando N veces el valor absoluto de la diferencia de tiempo entre canales en el cuadro actual como la longitud de ventana de la ventana de atenuación en el cuadro actual, donde N es un número real preestablecido mayor que 0 y menor que L/MAX_RETARDO, y MAX_RETARDO es un número real preestablecido mayor que 0.
Opcionalmente, MAX_RETARDO es un valor máximo del valor absoluto de la diferencia de tiempo entre canales. Debe entenderse que la diferencia de tiempo entre canales en esta invención puede ser una diferencia de tiempo entre canales que es preestablecida durante la codificación/decodificación de una señal estéreo.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la determinación de una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual incluye: modificar la ventana de análisis de predicción lineal inicial basada en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde los valores de atenuación de los valores del punto (L -sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada en relación con los valores de los puntos correspondientes desde el punto (L - sub_ventana_lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal inicial muestra una tendencia ascendente.
El valor de atenuación puede ser un valor de atenuación de un valor de un punto en la ventana de análisis de predicción lineal modificada en relación con un valor de un punto correspondiente en la ventana de análisis de predicción lineal inicial.
Específicamente, por ejemplo, un primer punto es cualquier punto desde el punto (L - sub_ventana lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal modificada, y un segundo punto es un punto que está en la ventana de análisis de predicción lineal y que corresponde al primer punto. En este caso, el valor de atenuación puede ser un valor de atenuación de un valor del primer punto en relación con un valor del segundo punto.
Cuando se realiza el procesamiento de alineación de retardo en una señal de canal de sonido, es necesario reconstruir manualmente una señal directa en el canal de sonido diana en el cuadro actual. Sin embargo, en la señal directa reconstruida manualmente, un valor de señal estimado de un punto más alejado de una señal real en el canal de sonido diana en el cuadro actual es más inexacto. Sin embargo, la ventana de análisis de predicción lineal modificada actúa sobre la señal directa reconstruida manualmente. Por lo tanto, cuando la señal directa se procesa utilizando la ventana de análisis de predicción lineal modificada en esta solicitud, una proporción de una señal que está en la señal directa reconstruida manualmente y que corresponde al punto más alejado de la señal real en el análisis de predicción lineal puede reducirse, de modo que la precisión de la predicción lineal pueda mejorarse aún más.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la ventana de análisis de predicción lineal modificada cumple una fórmula:
fw(i), i = 0,1, L-sub_ventana_lon-l
w adp(0 = ]vv(i)-[i-(L-sub_ventana_lon) ]*deha.
Figure imgf000004_0001
donde
wadp(i) representa la ventana de análisis de predicción lineal modificada, w(i) representa la ventana de análisis de predicción lineal inicial,
MAX ATEN
delta =
sub ventana lon-1 ’
y MAX_ATEN es un número real preestablecido mayor que 0.
Debe entenderse que MAX_ATEN puede ser un valor de atenuación máximo de una pluralidad de valores de atenuación que son preestablecidos durante la codificación/decodificación de una señal de canal de sonido.
Con referencia a al primer aspecto, en algunas implementaciones del primer aspecto, la determinación de una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual incluye: determinar la ventana de atenuación en el cuadro actual basado en la longitud de ventana de la ventana de atenuación en el cuadro actual; y modificar la ventana de análisis de predicción lineal inicial basado en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde los valores de atenuación de los valores del punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada en relación con los valores de los puntos correspondientes desde el punto (L - sub_ventana_lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal inicial muestran una tendencia ascendente.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la determinación de la ventana de atenuación en el cuadro actual basado en la longitud de ventana de la ventana de atenuación en el cuadro actual incluye: determinar la ventana de atenuación en el cuadro actual a partir de una pluralidad de ventanas de atenuación candidatas prealmacenadas basado en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde la pluralidad de ventanas de atenuación candidatas corresponde a diferentes intervalos de valores de longitud de ventana, y no hay un conjunto de intersección entre los diferentes intervalos de valores de longitud de ventana. La ventana de atenuación en el cuadro actual se determina a partir de la pluralidad de ventanas de atenuación candidatas prealmacenadas, de modo que se pueda reducir la complejidad del cálculo para determinar la ventana de atenuación.
Específicamente, después de que las ventanas de atenuación correspondientes se calculan por separado basado en las longitudes de ventana de las ventanas de atenuación preseleccionadas correspondientes a las longitudes de ventana de las ventanas de atenuación dentro de diferentes intervalos de valores, las ventanas de atenuación corresponden a las longitudes de ventana de las ventanas de atenuación dentro de los diferentes intervalos de valores pueden ser almacenadas. De esta manera, después de determinar posteriormente la longitud de ventana de la ventana de atenuación en el cuadro actual, la ventana de atenuación en el cuadro actual se puede determinar directamente a partir de la pluralidad de ventanas de atenuación prealmacenadas basado en un intervalo de valores que es cumplido por la longitud de ventana de la ventana de atenuación en el cuadro actual. Esto puede reducir un procedimiento de cálculo y simplificar la complejidad del cálculo.
Debe entenderse que, cuando se calcula la ventana de atenuación, las longitudes de ventana de las ventanas de atenuación preseleccionadas pueden ser todos los valores posibles de la longitud de ventana de la ventana de atenuación o un subconjunto de todos los valores posibles de la longitud de ventana de la ventana de atenuación. Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la ventana de atenuación en el cuadro actual cumple una fórmula:
MAXATEN
sub ventana (i) = i i - 0,1, • • •,sub ventana lon-1
sub ventana lon-1
donde
sub_ventana(i) representa la ventana de atenuación en el cuadro actual, y MAX_ATEN es un número real preestablecido mayor que 0.
Debe entenderse que MAX_ATEN puede ser un valor de atenuación máximo de una pluralidad de valores de atenuación que son preestablecidos durante la codificación/decodificación de una señal de canal de sonido.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la ventana de análisis de predicción lineal modificada cumple una fórmula:
^ J w(i), i = 0,1, • • •, L-sub_ventana_lon-l
aíp [w(i)-sub_ventana(i-(L-sub_ventana_lon) ),
Figure imgf000005_0001
donde
wadp(i) representa una función de ventana de la ventana de análisis de predicción lineal modificada, w (i) representa la ventana de análisis de predicción lineal inicial, y sub_ventana(.) representa la ventana de atenuación en el cuadro actual.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la determinación de una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual incluye: determinar la ventana de análisis de predicción lineal modificada a partir de una pluralidad de ventanas de análisis de predicción lineal candidatas basadas en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde la pluralidad de ventanas de análisis de predicción lineal candidatas corresponden a diferentes intervalos de valores de longitud de ventana, y no hay un conjunto de intersección entre los diferentes intervalos de valores de longitud de ventana.
La ventana de análisis de predicción lineal modificada se determina a partir de la pluralidad de ventanas de análisis de predicción lineal candidatas prealmacenadas, de modo que se pueda reducir la complejidad del cálculo para determinar la ventana de análisis de predicción lineal modificada.
Específicamente, después de que las ventanas de análisis de predicción lineal modificadas correspondientes se calculan por separado basado en la ventana de análisis de predicción lineal inicial y las longitudes de ventana de las ventanas de atenuación preseleccionadas correspondientes a las longitudes de ventana de las ventanas de atenuación dentro de diferentes intervalos de valores, las ventanas de análisis de predicción lineal modificadas correspondientes a las longitudes de ventana de las ventanas de atenuación dentro de diferentes intervalos de valores pueden ser almacenadas. De esta manera, después de determinar posteriormente la longitud de ventana de la ventana de atenuación en el cuadro actual, la ventana de análisis de predicción lineal modificada se puede determinar directamente a partir de la pluralidad de ventanas de análisis de predicción lineal prealmacenadas basado en un intervalo de valores que es cumplido por la longitud de ventana de la ventana de atenuación en el cuadro actual. Esto puede reducir un procedimiento de cálculo y simplificar la complejidad del cálculo.
Opcionalmente, cuando se calcula la ventana de análisis de predicción lineal modificada, las longitudes de ventana de las ventanas de atenuación preseleccionadas pueden ser todos los valores posibles de la longitud de ventana de la ventana de atenuación o un subconjunto de todos los valores posibles de la longitud de ventana de la ventana de atenuación.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, antes de determinar una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual, el procedimiento incluye además: modificar la longitud de ventana de la ventana de atenuación en el cuadro actual basada en un paso de intervalo preestablecido, para obtener una longitud de ventana modificada de la ventana de atenuación, donde el paso del intervalo es un entero positivo preestablecido; y la determinación de una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual incluye: determinar la ventana de análisis de predicción lineal modificada basado en la ventana de análisis de predicción lineal inicial y la longitud de ventana modificada de la ventana de atenuación.
Opcionalmente, el paso del intervalo es un número entero positivo menor que el valor máximo de la longitud de ventana de la ventana de atenuación.
La longitud de ventana de la ventana de atenuación en el cuadro actual se modifica mediante el paso del intervalo preestablecido, de modo que se pueda reducir la longitud de ventana de la ventana de atenuación. Además, un posible valor de la longitud de ventana modificada de la ventana de atenuación está restringido a ser incluido en un conjunto que incluye una cantidad limitada de valores, y es conveniente almacenar una ventana de atenuación correspondiente al valor posible de la longitud de ventana modificada de la ventana de atenuación, de modo que se reduce la complejidad del cálculo posterior.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la longitud de ventana modificada de la ventana de atenuación cumple una fórmula:
su b v en tan a l on_m od= [su b v en tan a l on/1 on_paso] *1 on_paso, donde
sub_ventana_lon_mod representa la longitud de ventana modificada de la ventana de atenuación, y lon_paso representa el paso del intervalo.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la determinación de la ventana de análisis de predicción lineal modificada basada en la ventana de análisis de predicción lineal inicial y la longitud de ventana modificada de la ventana de atenuación incluye: modificar la ventana de análisis de predicción lineal inicial basada en la longitud de ventana modificada de la ventana de atenuación.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, determinar la ventana de análisis de predicción lineal modificada basada en la ventana de análisis de predicción lineal inicial y la longitud de ventana modificada de la ventana de atenuación incluye: determinar la ventana de atenuación en el cuadro actual basado en la longitud de ventana modificada de la ventana de atenuación; y modificar la ventana de análisis de predicción lineal inicial en el cuadro actual basado en la ventana de atenuación modificada.
Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la determinación de la ventana de atenuación en el cuadro actual basado en la longitud de ventana modificada de la ventana de atenuación incluye: determinar la ventana de atenuación en el cuadro actual a partir de una pluralidad de ventanas de atenuación candidatas prealmacenadas basadas en la longitud de ventana modificada de la ventana de atenuación, donde la pluralidad de ventanas de atenuación candidatas prealmacenadas son ventanas de atenuación correspondientes a diferentes valores de la longitud de ventana modificada de las ventanas de atenuación.
Después de calcular las ventanas de atenuación correspondientes basándose en longitudes de ventana de un grupo de ventanas de atenuación modificadas preseleccionadas, las ventanas de atenuación correspondientes a las longitudes de ventana de las ventanas de atenuación modificadas preseleccionadas pueden ser almacenadas. De esta manera, después de determinar posteriormente la longitud de ventana modificada de la ventana de atenuación, la ventana de atenuación en el cuadro actual se puede determinar directamente a partir de la pluralidad de ventanas de atenuación candidatas prealmacenadas basado en la longitud de ventana modificada de la ventana de atenuación. Esto puede reducir un procedimiento de cálculo y simplificar la complejidad del cálculo.
Debe entenderse que las longitudes de ventana de las ventanas de atenuación modificadas preseleccionadas en esta invención pueden ser todos los valores posibles de la longitud de ventana modificada de la ventana de atenuación o un subconjunto de todos los valores posibles de la longitud de ventana modificada de la ventana de atenuación. Con referencia al primer aspecto, en algunas implementaciones del primer aspecto, la determinación de la ventana de análisis de predicción lineal modificada basada en la ventana de análisis de predicción lineal inicial en el cuadro actual y la longitud de ventana modificada de la ventana de atenuación incluye: determinar la ventana de análisis de predicción lineal modificada de una pluralidad de ventanas de análisis de predicción lineal candidatas prealmacenadas basado en la longitud de ventana modificada de la ventana de atenuación, donde la pluralidad de ventanas de análisis de predicción lineal candidatas prealmacenadas son las correspondientes ventanas de análisis de predicción lineal modificadas cuando las longitudes de ventana modificadas de las ventanas de atenuación son de diferentes valores. Después de que las ventanas de análisis de predicción lineal modificadas correspondientes se calculan por separado basado en la ventana de análisis de predicción lineal inicial en el cuadro actual y las longitudes de ventana de un grupo de ventanas de atenuación modificadas preseleccionadas, las ventanas de análisis de predicción lineal modificadas correspondientes a las longitudes de ventana de las ventanas de atenuación modificadas preseleccionadas pueden ser almacenadas. De esta manera, después de determinar posteriormente la longitud de ventana modificada de la ventana de atenuación, la ventana de análisis de predicción lineal modificada se puede determinar directamente a partir de la pluralidad de ventanas de análisis de predicción lineal candidatas prealmacenadas basado en las longitudes de ventana de las ventanas de atenuación modificadas en el cuadro actual. Esto puede reducir un procedimiento de cálculo y simplificar la complejidad del cálculo.
Opcionalmente, las longitudes de ventana de las ventanas de atenuación modificadas preseleccionadas en esta invención son todos los valores posibles de la longitud de ventana modificada de la ventana de atenuación o un subconjunto de todos los valores posibles de la longitud de ventana modificada de la ventana de atenuación.
Según un segundo aspecto, se proporciona un aparato de codificación, que incluye una memoria y un procesador. La memoria está configurada para almacenar un programa y el procesador está configurado para ejecutar el programa. Cuando se ejecuta el programa, el procesador realiza el procedimiento en cualquiera del primer aspecto o las implementaciones del primer aspecto.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
La FIG. 1 es un diagrama de flujo esquemático de un procedimiento de codificación estéreo en el dominio del tiempo;
La FIG. 2 es un diagrama de flujo esquemático de un procedimiento de codificación estéreo en el dominio del tiempo;
La FIG. 3 es un diagrama de flujo esquemático de un procedimiento de un procedimiento de codificación de señal estéreo según una realización de esta solicitud;
La FIG. 4 es un diagrama espectral de una diferencia entre un coeficiente de predicción lineal obtenido usando un procedimiento de codificación de señal estéreo y un coeficiente de predicción lineal real según una realización de esta solicitud;
La FIG. 5 es un diagrama de flujo esquemático de un procedimiento de un procedimiento de codificación de señal estéreo según una realización de esta solicitud;
La FIG. 6 es un diagrama esquemático del procesamiento de alineación de retardo según una realización de esta solicitud;
La FIG. 7 es un diagrama esquemático del procesamiento de alineación de retardo según una realización de esta solicitud;
La FIG. 8 es un diagrama esquemático del procesamiento de alineación de retardo según una realización de esta solicitud;
La FIG. 9 es un diagrama de flujo esquemático de un procedimiento de análisis de predicción lineal según una realización de esta solicitud;
La FIG. 10 es un diagrama de flujo esquemático de un procedimiento de análisis de predicción lineal según una realización de esta solicitud;
La FIG. 11 es un diagrama de bloques esquemático de un aparato de codificación según una realización de esta solicitud;
La FIG. 12 es un diagrama de bloques esquemático de un aparato de codificación según una realización de esta solicitud;
La FIG. 13 es un diagrama esquemático de un dispositivo terminal según una realización de la presente solicitud; La FIG. 14 es un diagrama esquemático de un dispositivo de red según una realización de la presente solicitud; La FIG. 15 es un diagrama esquemático de un dispositivo de red según una realización de la presente solicitud; La FIG. 16 es un diagrama esquemático de un dispositivo terminal según una realización de la presente solicitud; la FIG. 17 es un diagrama esquemático de un dispositivo de red según una realización de esta solicitud; y La FIG. 18 es un diagrama esquemático de un dispositivo de red según una realización de esta solicitud.
DESCRIPCIÓN DE LAS REALIZACIONES
A continuación se describen soluciones técnicas de esta solicitud con referencia a los dibujos adjuntos.
Para facilitar la comprensión de un procedimiento de codificación de señales estéreo en las realizaciones de esta solicitud, a continuación se describe brevemente un procedimiento general de codificación/decodificación de un procedimiento de codificación/decodificación estéreo en el dominio del tiempo con referencia a la FIG. 1 y FIG. 2.
La FIG. 1 es un diagrama de flujo esquemático de un procedimiento de codificación estéreo en el dominio del tiempo. El procedimiento de codificación 100 incluye específicamente las siguientes etapas:
110. Un lado del codificador 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 de sonido izquierdo y una señal de canal de sonido derecho, y la diferencia de tiempo entre canales de la señal estéreo es una diferencia de tiempo entre la señal del canal de sonido izquierdo y la señal del canal de sonido derecho.
120. Realizar el procesamiento de alineación de retardo en la señal del canal de sonido izquierdo y la señal del canal de sonido derecho basado en la diferencia de tiempo entre canales.
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 relación de combinación de canales de sonido, codificar el factor de relación de combinación de canales de sonido para obtener un índice de codificación del factor de relación de combinación de canales de sonido y escribir el índice de codificación en el flujo de bits codificado en estéreo.
150. Realizar, basado en el factor de relación de combinación de canales de sonido, el procesamiento de mezcla descendente en el dominio del tiempo en una señal de canal de sonido izquierdo y una señal de canal de sonido derecho obtenida después del procesamiento de alineación de retardo.
160. Codificar por separado una señal de canal de sonido primario y una señal de canal de sonido secundario obtenidas después del procesamiento de mezcla descendente, para obtener un flujo de bits que incluya la señal del canal de sonido primario y la señal del canal de sonido secundario, y escribir el flujo de bits en un flujo de bits codificado en estéreo.
La FIG. 2 es un diagrama de flujo esquemático de un procedimiento de codificación estéreo en el dominio del tiempo. El procedimiento de codificación 200 incluye específicamente las siguientes etapas:
210. Obtener una señal de canal de sonido primario y una señal de canal de sonido secundario a través de decodificación basada en un flujo de bits recibido.
El flujo de bits en la etapa 210 puede ser recibido por un lado decodificador desde un lado codificador. Además, la etapa 210 es equivalente a decodificar por separado la señal del canal de sonido primario y la señal del canal de sonido secundario, para obtener la señal del canal de sonido primario y la señal del canal de sonido secundario. 220. Obtener un factor de relación de combinación de canales de sonido a través de decodificación basada en el flujo de bits recibido.
230. Realizar un procesamiento de mezcla ascendente en el dominio del tiempo en la señal del canal de sonido primario y la señal del canal de sonido secundario basado en el factor de relación de combinación del canal de sonido, para obtener una señal del canal de sonido izquierdo reconstruida y una señal del canal de sonido derecho reconstruida obtenidas después del procesamiento de mezcla ascendente en el dominio del tiempo.
240. Obtener una diferencia de tiempo entre canales a través de la decodificación basada en el flujo de bits recibido.
250. Realizar, basándose en la diferencia de tiempo entre canales, el ajuste de retardo en la señal del canal de sonido izquierdo reconstruido y la señal del canal de sonido derecho reconstruido obtenidas después del procesamiento de mezcla ascendente en el dominio del tiempo, para obtener una señal estéreo decodificada.
Cuando se realiza el procesamiento de alineación de retardo en la etapa 120 en el procedimiento 100, es necesario reconstruir manualmente una señal directa en un canal de sonido diana en un cuadro actual. Sin embargo, la señal directa reconstruida manualmente y una señal directa real en el canal de sonido diana en el cuadro actual difieren enormemente. Por lo tanto, durante el análisis de predicción lineal, debido a la señal directa reconstruida manualmente, un coeficiente de predicción lineal obtenido a través del análisis de predicción lineal cuando la señal del canal de sonido primario y la señal del canal de sonido secundario obtenidas después del procesamiento de mezcla descendente se codifican por separado en la etapa 160 es inexacto, y el coeficiente de predicción lineal obtenido a través del análisis de predicción lineal y un coeficiente de predicción lineal real difieren en cierta medida. Por lo tanto, es necesario proporcionar un nuevo procedimiento de codificación de señales estéreo. El procedimiento de codificación puede mejorar la precisión del análisis de predicción lineal y reducir la diferencia entre el coeficiente de predicción lineal obtenido a través del análisis de predicción lineal y el coeficiente de predicción lineal real.
Por lo tanto, esta solicitud proporciona un nuevo procedimiento de codificación estéreo. En el procedimiento, se modifica una ventana de análisis de predicción lineal inicial, de modo que el valor de un punto que se encuentra en una ventana de análisis de predicción lineal modificada y que corresponde a una señal directa reconstruida manualmente en un canal de sonido diana en un cuadro actual es menor que el valor de un punto que se encuentra en una ventana de análisis de predicción lineal a modificar y que corresponde a la señal directa reconstruida manualmente en el canal de sonido diana en el cuadro actual. Por lo tanto, durante la predicción lineal, se puede reducir el impacto de la señal directa reconstruida manualmente en el canal de sonido diana en el cuadro actual, y el impacto de un error entre la señal directa reconstruida manualmente y una señal directa real en la precisión de un resultado de análisis de predicción lineal es reducido. De esta manera, se puede reducir una diferencia entre un coeficiente de predicción lineal obtenido a través del análisis de predicción lineal y un coeficiente de predicción lineal real, y se puede mejorar la precisión del análisis de predicción lineal.
La FIG. 3 es un diagrama de flujo esquemático de un procedimiento de codificación según una realización de esta solicitud. El procedimiento 300 puede realizarse por un lado codificador. El lado codificador puede ser un codificador o un dispositivo que tiene la función de codificar una señal estéreo. Debe entenderse que el procedimiento 300 puede ser parte de un procedimiento completo de codificación de la señal del canal de sonido primario y la señal del canal de sonido secundario obtenidas después del procesamiento de mezcla descendente en la etapa 160 del procedimiento 100. Específicamente, el procedimiento 300 puede ser un procedimiento de realizar una predicción lineal en la señal del canal de sonido primario o en la señal del canal de sonido secundario obtenidas después del procesamiento de mezcla descendente en la etapa 160.
El procedimiento 300 incluye específicamente las siguientes etapas:
310. Determinar una longitud de ventana de una ventana de atenuación en un cuadro actual basándose en una diferencia de tiempo entre canales en el cuadro actual.
Opcionalmente, una suma de un valor absoluto de la diferencia de tiempo entre canales en el cuadro actual y una longitud preestablecida de un segmento de transición (el segmento de transición se encuentra entre una señal real y una señal directa reconstruida manualmente en el cuadro actual) en el cuadro actual se puede determinar directamente como la longitud de ventana de la ventana de atenuación.
Específicamente, la longitud de ventana de la ventana de atenuación en el cuadro actual se puede determinar según la Fórmula (1):
sub_ventana_lon= abs (cur itd) Ts2 (1)
En la fórmula (1), sub_ventana_lon representa la longitud de ventana de la ventana de atenuación, cur_itd representa la diferencia de tiempo entre canales en el cuadro actual, abs(cur_itd) representa el valor absoluto de la diferencia de tiempo entre canales en el cuadro actual, y Ts2 representa la longitud del segmento de transición que está preestablecido para mejorar la transición de suavidad entre una señal real en el cuadro actual y una señal directa reconstruida manualmente.
Se puede aprender de la Fórmula (1) que un valor máximo de la longitud de ventana de la ventana de atenuación cumple con la Fórmula (2):
MAX WIN l.F.N - MAX DELAY Ts2 (2)
MAX_WIN_LON representa el valor máximo de la longitud de ventana de la ventana de atenuación, un significado de Ts2 en la Fórmula (2) es el mismo que el significado de Ts2 en la Fórmula (1), y MAX_RETARDO es un número real preestablecido mayor que 0. Además, MAX_RETARDO puede ser un valor máximo obtenible del valor absoluto de la diferencia de tiempo entre canales. Para diferentes códecs, el valor máximo obtenible del valor absoluto de la diferencia de tiempo entre canales puede ser diferente, y MAX_RETARDO se puede configurar según lo requiera un usuario o un fabricante de códecs. Se puede entender que, cuando un códec funciona, un valor específico de MAX_RETARDO ya es un valor determinado.
Por ejemplo, cuando la tasa de muestreo de una señal estéreo es de 16 kHz, MAX_RETARDO puede ser 40 y Ts2 puede ser 10. En este caso, se puede aprender según la Fórmula (2) que el valor máximo mAx_WIN_LON de la longitud de ventana de la ventana de atenuación en el cuadro actual es 50.
Opcionalmente, la longitud de ventana de la ventana de atenuación en el cuadro actual se puede determinar dependiendo de un resultado de la comparación entre el valor absoluto de la diferencia de tiempo entre canales en el cuadro actual y la longitud preestablecida del segmento de transición en el cuadro actual.
Específicamente, cuando el valor absoluto de la diferencia de tiempo entre canales en el cuadro actual es mayor o igual que la longitud preestablecida del segmento de transición en el cuadro actual, la longitud de ventana de la ventana de atenuación en el cuadro actual es una suma del valor absoluto de la diferencia de tiempo entre canales en el cuadro actual y la longitud preestablecida del segmento de transición; o cuando el valor absoluto de la diferencia de tiempo entre canales en el cuadro actual es menor que la longitud preestablecida del segmento de transición en el cuadro actual, la longitud de ventana de la ventana de atenuación en el cuadro actual es N veces el valor absoluto de la diferencia de tiempo entre canales en el cuadro actual. Teóricamente, N puede ser cualquier número real preestablecido mayor que 0 y menor que L/MAX_RETARDO. Generalmente, N puede ser un número entero preestablecido mayor que 0 y menor o igual que 2.
Específicamente, la longitud de ventana de la ventana de atenuación en el cuadro actual se puede determinar según la Fórmula (3):
[ abs (curjtd ) Ts 2, abs (curjitd) > Ts 2
sub ventana lon = ( (3)
[ N* abs (cu rjtd ), abs (cu rjtd ) < Ts 2
En la fórmula (3), sub_ventana_lon representa la longitud de ventana de la ventana de atenuación, cur_itd representa la diferencia de tiempo entre canales en el cuadro actual, abs(cur_itd) representa el valor absoluto de la diferencia de tiempo entre canales en el cuadro actual, Ts2 representa la longitud del segmento de transición que está preestablecido para mejorar la transición de suavidad entre una señal real en el cuadro actual y una señal directa reconstruida manualmente en el cuadro actual, y N es un número real mayor que 0 y menor que L/MAX_RETARDO. Preferiblemente, N es un número entero preestablecido mayor que 0 y menor o igual que 2, por ejemplo, N es 2.
Opcionalmente, Ts2 es un entero positivo preestablecido. Por ejemplo, cuando una tasa de muestreo es de 16 kHz, Ts2 es 10. Además, con respecto a diferentes tasas de muestreo de una señal estéreo, Ts2 puede establecerse en un mismo valor o valores diferentes.
Cuando la longitud de ventana de la ventana de atenuación en el cuadro actual se determina según la Fórmula (3), el valor máximo de la longitud de ventana de la ventana de atenuación cumple con la Fórmula (4) o la Fórmula (5):
MAX WIN LEN = MAX DELAY Ts2 (4)
M A X W IN LEN = N*MAX_DELAY (5)
Por ejemplo, cuando la tasa de muestreo de una señal estéreo es de 16 kHz, MAX_RETARDO puede ser 40, Ts2 puede ser 10 y N puede ser 2. En este caso, se puede aprender según la Fórmula (4) que el valor máximo MAX_WIN_LON de la longitud de ventana de la ventana de atenuación en el cuadro actual es 50.
Por ejemplo, cuando la tasa de muestreo de una señal estéreo es de 16 kHz, MAX_RETARDO puede ser 40, Ts2 puede ser 50 y N puede ser 2. En este caso, se puede aprender según la Fórmula (5) que el valor máximo MAX_WIN_LON de la longitud de ventana de la ventana de atenuación en el cuadro actual es 80.
320. Determinar una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde los valores de al menos algunos puntos desde un punto (L -sub_ventana_lon) a un punto (L - 1) en la ventana de análisis de predicción lineal modificada son menores que los valores de los puntos correspondientes desde el punto (L - sub_ventana lon) hasta el punto (L - 1) en una ventana de análisis de predicción lineal inicial, sub_ventana_lon representa la longitud de ventana de la ventana de atenuación en el cuadro actual, L representa una longitud de ventana de la ventana de análisis de predicción lineal modificada y la longitud de ventana de la ventana de análisis de predicción lineal modificada es igual a la longitud de ventana de la ventana de análisis de predicción lineal inicial .
Además, un valor de cualquier punto desde el punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada es menor que el valor de un punto correspondiente desde el punto (L -sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal inicial.
Un punto desde el punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal inicial correspondiente a cualquier punto desde el punto (L - sub_ventana lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal modificada es un punto que está en la ventana de análisis de predicción lineal inicial y que tiene el mismo índice (índice) que cualquier punto. Por ejemplo, un punto en la ventana de análisis de predicción lineal inicial correspondiente al punto (L - sub_ventana lon) en la ventana de análisis de predicción lineal modificada es el punto (L - sub_ventana lon) en la ventana de análisis de predicción lineal inicial.
Opcionalmente, la determinación de una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual incluye específicamente: modificar la ventana de análisis de predicción lineal inicial basada en la longitud de ventana de la ventana de atenuación en el cuadro actual, para obtener la ventana de análisis de predicción lineal modificada. Además, los valores de atenuación de los valores del punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada en relación con los valores de los puntos correspondientes desde el punto (L - sub_ventana_lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal inicial muestra una tendencia ascendente.
Debe entenderse que el valor de atenuación puede ser un valor de atenuación de un valor de un punto en la ventana de análisis de predicción lineal modificada en relación con un valor de un punto correspondiente en la ventana de análisis de predicción lineal inicial. Por ejemplo, un valor de atenuación de un valor del punto (L - sub_ventana lon) en la ventana de análisis de predicción lineal modificada en relación con un valor de un punto correspondiente en la ventana de análisis de predicción lineal inicial puede determinarse específicamente determinando una diferencia entre el valor del punto (L - sub_ventana_lon) en la ventana de análisis de predicción lineal modificada y el valor del punto (L - sub_ventana_lon) en la ventana de análisis de predicción lineal.
Por ejemplo, un primer punto es cualquier punto desde el punto (L - sub_ventana lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal modificada, y un segundo punto es un punto que está en la ventana de análisis de predicción lineal y que corresponde al primer punto. En este caso, el valor de atenuación puede ser una diferencia entre un valor del primer punto y un valor del segundo punto.
Debe entenderse que modificar la ventana de análisis de predicción lineal inicial basada en la longitud de ventana de la ventana de atenuación en el cuadro actual es disminuir los valores de al menos algunos puntos desde el punto (L -sub_ventana lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal inicial. En otras palabras, después de que se modifique la ventana de análisis de predicción lineal inicial para obtener la ventana de análisis de predicción lineal modificada, los valores de al menos algunos puntos desde el punto (L - sub_ventana lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal modificada son menores que los valores de los puntos correspondientes en la ventana de análisis de predicción lineal inicial.
Debe entenderse que los valores de atenuación correspondientes a todos los puntos dentro de un intervalo de la longitud de ventana de la ventana de atenuación o los valores de todos los puntos en la ventana de atenuación pueden incluir 0 o no incluir 0. Además, los valores de todos los puntos dentro del intervalo de la longitud de ventana de la ventana de atenuación y los valores de todos los puntos en la ventana de atenuación pueden ser números reales menores o iguales a 0, o pueden ser números reales mayores o iguales que 0.
Cuando los valores de todos los puntos en la ventana de atenuación son números reales menores o iguales a 0, cuando la ventana de análisis de predicción lineal inicial se modifica basado en la longitud de ventana de la ventana de atenuación, un valor de cualquier punto desde el punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal inicial puede agregarse a un valor de un punto correspondiente en la ventana de atenuación, para obtener un valor de un punto correspondiente en la ventana de análisis de predicción lineal modificada.
Sin embargo, cuando los valores de todos los puntos en la ventana de atenuación son números reales menores o iguales a 0, cuando la ventana de análisis de predicción lineal inicial se modifica basado en la longitud de ventana de la ventana de atenuación, un valor de cualquier punto desde el punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal inicial puede sustraerse de un valor de un punto correspondiente en la ventana de atenuación, para obtener un valor de un punto correspondiente en la ventana de análisis de predicción lineal modificada.
Los dos párrafos anteriores describen formas de determinar los valores de los puntos correspondientes en la ventana de análisis de predicción lineal modificada en los casos en que los valores de todos los puntos en la ventana de atenuación son números reales mayores o iguales que 0 o los valores de todos los puntos en la ventana de atenuación son números reales menores o iguales a 0. Debe entenderse que, cuando los valores de todos los puntos dentro del intervalo de la longitud de ventana de la ventana de atenuación son números reales mayores o iguales a 0 o números reales menores o iguales que 0, los valores de los puntos correspondientes en la ventana de análisis de predicción lineal modificada también pueden determinarse respectivamente de maneras similares a las del contenido de los dos párrafos anteriores.
También debe entenderse que cuando los valores de todos los puntos en la ventana de atenuación son números reales distintos de cero, después de que se modifica la ventana de análisis de predicción lineal inicial, todos los valores del punto (L - sub_ventana lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada son menores que los valores de los puntos correspondientes desde el punto (L - sub_ventana lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal inicial.
Sin embargo, cuando los valores de algunos puntos en la ventana de atenuación son todos 0, después de que se modifica la ventana de análisis de predicción lineal inicial, todos los valores de al menos algunos punto desde el punto (L - sub_ventana lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada son menores que los valores de los puntos correspondientes desde el punto (L - sub_ventana lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal inicial.
Debe entenderse que cualquier tipo de ventana de análisis de predicción lineal puede seleccionarse como la ventana de análisis de predicción lineal inicial en el cuadro actual. Específicamente, la ventana de análisis de predicción lineal inicial en el cuadro actual puede ser una ventana simétrica o una ventana asimétrica.
Además, cuando la tasa de muestreo de una señal estéreo es de 12,8 kHz, la longitud de ventana L de la ventana de análisis de predicción lineal inicial puede ser de 320 puntos. En este caso, la ventana de análisis de predicción lineal inicial w(n) cumple la Fórmula (6):
Figure imgf000012_0001
L = L1 + L2, L1 = 188, y L2 = 132.
Además, existe una pluralidad de formas de determinar la ventana de análisis de predicción lineal inicial. Para ser específico, la ventana de análisis de predicción lineal inicial puede obtenerse calculando la ventana de análisis de predicción lineal inicial en tiempo real, o la ventana de análisis de predicción lineal inicial puede obtenerse directamente de las ventanas de análisis de predicción lineal prealmacenadas. Estas ventanas de análisis de predicción lineal prealmacenadas se pueden calcular y almacenar en forma de tabla.
En comparación con la forma de obtener la ventana de análisis de predicción lineal inicial mediante el cálculo de la ventana de análisis de predicción lineal inicial en tiempo real, la ventana de análisis de predicción lineal inicial se puede obtener rápidamente de la manera de obtener la ventana de análisis de predicción lineal a partir de las ventanas de análisis de predicción lineal prealmacenadas. Esto reduce la complejidad del cálculo y mejora la eficiencia de la codificación.
Cuando se realiza el procesamiento de alineación de retardo en una señal de canal de sonido, es necesario reconstruir manualmente una señal directa en el canal de sonido diana en el cuadro actual. Sin embargo, en la señal directa reconstruida manualmente, un valor de señal estimado de un punto más alejado de una señal real en el canal de sonido diana en el cuadro actual es más inexacto. Sin embargo, la ventana de análisis de predicción lineal modificada actúa sobre la señal directa reconstruida manualmente. Por lo tanto, cuando la señal directa se procesa utilizando la ventana de análisis de predicción lineal modificada en esta solicitud, una proporción de una señal que está en la señal directa reconstruida manualmente y que corresponde al punto más alejado de la señal real en el análisis de predicción lineal puede reducirse, de modo que la precisión de la predicción lineal pueda mejorarse aún más.
Específicamente, la ventana de análisis de predicción lineal modificada cumple con la Fórmula (7), y la ventana de análisis de predicción lineal modificada se puede determinar según la Fórmula (7):
i = ü,l,L.L-sub ventana lon-l
Wad MpOH Í W(Í)’
j w( i) -[i-(L-sub_ventana_lon)] * delta, i =L-sub_ventana_lon.L, L-1 (7)
En la fórmula (7), sub_ventana_lon representa la longitud de ventana de la ventana de atenuación en el cuadro actual, Wadp(i) representa la ventana de análisis de predicción lineal modificada, w (i) representa la ventana de análisis de predicción lineal inicial, L representa una longitud de ventana de la ventana de análisis de predicción lineal modificada,
, , MAX ATEN
delta = -----------------------su b v en tan a lo n -1
y MAX_ATEN es un número real preestablecido mayor que 0.
Debe entenderse que MAX_ATEN puede ser específicamente un valor de atenuación máximo que se puede obtener cuando la ventana de análisis de predicción lineal inicial se atenúa durante la modificación de la ventana de análisis de predicción lineal inicial. Un valor de MAX_ATEN puede ser 0,07, 0,08 o similar, y MAX_ATEN puede ser preestablecido por una persona experta basado en su experiencia.
Opcionalmente, en una realización, determinar la ventana de análisis de predicción lineal modificada basado en la ventana de análisis de predicción lineal inicial y la longitud de ventana de la ventana de atenuación en el cuadro actual incluye específicamente: determinar la ventana de atenuación en el cuadro actual basado en la longitud de ventana de la ventana de atenuación; y modificar la ventana de análisis de predicción lineal inicial basada en la ventana de atenuación en el cuadro actual, donde los valores de atenuación de los valores desde el punto (L - sub_ventana_lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal modificada en relación con los valores de los puntos correspondientes desde el punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal inicial muestran una tendencia ascendente. Que los valores de atenuación muestren una tendencia ascendente significa que los valores de atenuación están en una tendencia, aumentando con un aumento en un índice (índice) de un punto desde el punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada. En otras palabras, un valor de atenuación del punto (L - sub_ventana lon) es el más pequeño, un valor de atenuación del punto (L - 1) es el más grande y un valor de atenuación de un punto N es mayor que un valor de atenuación de un punto (N - 1), donde L - sub_ventana_lon < N < L - 1.
Debe entenderse que la ventana de atenuación puede ser una ventana lineal o una ventana no lineal.
Específicamente, cuando la ventana de atenuación se determina basado en la longitud de ventana de la ventana de atenuación en el cuadro actual, la ventana de atenuación cumple con la Fórmula (8), es decir, la ventana de atenuación se puede determinar según la Fórmula (8):
„ MAX ATEN
sub_ventana(i): : 0,1, L , su b v en tan a l on-1 (8)
sub ventana lon-1
MAX_ATEN representa un valor máximo de valores de atenuación y un significado de MAX_ATEN en la Fórmula (8) es el mismo que en la Fórmula (7).
La ventana de análisis de predicción lineal modificada obtenida al modificar la ventana de análisis de predicción lineal basada en la ventana de atenuación en el cuadro actual cumple con la Fórmula (9). En otras palabras, después de que se determina la ventana de atenuación según la Fórmula (8), la ventana de análisis de predicción lineal modificada se puede determinar según la Fórmula (9):
Figure imgf000013_0001
En la Fórmula (8) y la Fórmula (9), sub_ventana_lon representa la longitud de ventana de la ventana de atenuación en el cuadro actual, y_sub_ventana(.) representa la ventana de atenuación en el cuadro actual. Específicamente, sub_ventana (i-(L- sub_ventana lon)) representa un valor de la ventana de atenuación en el cuadro actual en un punto i-(L-sub_ventana_lon), wadp(i) representa la ventana de análisis de predicción lineal modificada, w (i) representa la ventana de análisis de predicción lineal inicial y L representa la longitud de ventana de la ventana de análisis de predicción lineal modificada.
Opcionalmente, cuando la ventana de atenuación se determina basado en la longitud de ventana de la ventana de atenuación en el cuadro actual, la ventana de atenuación en el cuadro actual se puede determinar específicamente a partir de una pluralidad de ventanas de atenuación candidatas prealmacenadas basado en la longitud de ventana de la ventana de atenuación en el cuadro actual. La pluralidad de ventanas de atenuación candidatas corresponden a diferentes intervalos de valores de longitud de ventana, y no hay un conjunto de intersección entre los diferentes intervalos de valores de longitud de ventana.
La ventana de atenuación en el cuadro actual se determina a partir de la pluralidad de ventanas de atenuación candidatas prealmacenadas, de modo que se pueda reducir la complejidad del cálculo para determinar la ventana de atenuación. Entonces, la ventana de análisis de predicción lineal modificada puede determinarse directamente a partir de la pluralidad de ventanas de atenuación prealmacenadas.
Específicamente, después de que las ventanas de atenuación correspondientes se calculan por separado basado en las longitudes de ventana de las ventanas de atenuación preseleccionadas correspondientes a las longitudes de ventana de las ventanas de atenuación dentro de diferentes intervalos de valores, las ventanas de atenuación corresponden a las longitudes de ventana de las ventanas de atenuación dentro de los diferentes intervalos de valores pueden ser almacenadas. De esta manera, después de determinar posteriormente la longitud de ventana de la ventana de atenuación en el cuadro actual, la ventana de atenuación en el cuadro actual se puede determinar directamente a partir de la pluralidad de ventanas de atenuación prealmacenadas basado en un intervalo de valores que es cumplido por la longitud de ventana de la ventana de atenuación en el cuadro actual. Esto puede reducir un procedimiento de cálculo y simplificar la complejidad del cálculo.
Debe entenderse que, cuando se calcula la ventana de atenuación, las longitudes de ventana de las ventanas de atenuación preseleccionadas pueden ser todos los valores posibles de la longitud de ventana de la ventana de atenuación o un subconjunto de todos los valores posibles de la longitud de ventana de la ventana de atenuación. Específicamente, se supone que, cuando la longitud de ventana de la ventana de atenuación es 20, la ventana de atenuación correspondiente se indica como sub_ventana_20(i); cuando la longitud de ventana de la ventana de atenuación es 40, la ventana de atenuación correspondiente se indica como sub_ventana_40(i); cuando la longitud de ventana de la ventana de atenuación es 60, la ventana de atenuación correspondiente se indica como sub_ventana_60(i); o cuando la longitud de ventana de la ventana de atenuación es 80, la ventana de atenuación correspondiente se indica como sub_ventana_80(i).
Por lo tanto, cuando la ventana de atenuación en el cuadro actual se determina a partir de la pluralidad de ventanas de atenuación prealmacenadas basado en la longitud de ventana de la ventana de atenuación en el cuadro actual, si la longitud de ventana de la ventana de atenuación en el cuadro actual es mayor o igual que a 20 y es menor de 40, sub_ventana_20(i) puede determinarse como la ventana de atenuación en el cuadro actual; si la longitud de ventana de la ventana de atenuación en el cuadro actual es mayor o igual a 40 y es menor que 60, sub_ventana_40(i) puede determinarse como la ventana de atenuación del cuadro actual; si la longitud de ventana de la ventana de atenuación en el cuadro actual es mayor o igual a 60 y es menor que 80, sub_ventana_60(i) puede determinarse como la ventana de atenuación del cuadro actual; o si la longitud de ventana de la ventana de atenuación en el cuadro actual es mayor o igual a 80, sub_ventana_80(i) puede determinarse como la ventana de atenuación del cuadro actual.
Específicamente, cuando la ventana de atenuación en el cuadro actual se determina a partir de la pluralidad de ventanas de atenuación prealmacenadas basado en la longitud de ventana de la ventana de atenuación en el cuadro actual, la ventana de atenuación en el cuadro actual se puede determinar directamente a partir de la pluralidad de ventanas de atenuación prealmacenadas basadas en un intervalo de valores de la longitud de ventana de la ventana de atenuación en el cuadro actual. Específicamente, la ventana de atenuación en el cuadro actual se puede determinar según la Fórmula (10):
sub_ventana_ 20(i), sub_ventana_lon <40, i = 0,1,...,19
sub_vcntana_ 40(i), 40 < sub ventana Ion <60, i = 0,1,...,39
sub ventana (i) =
sub_ventana_ 60 (i), 60 < sub ventana lon <80, i = 0,1,...,59
sub_ventana_ 80 (i), 80 < sub ventana Ion i = 0,1,...,79 (10) sub_ventana(i) representa la ventana de atenuación en el cuadro actual, sub_ventana_lon representa la longitud de ventana de la ventana de atenuación en el cuadro actual, y sub_ventana_20(i), sub_ventana_40(i), sub_ventana_60(i), y sub_ventana_80(i) son ventanas de atenuación correspondientes a ventanas de atenuación prealmacenadas con longitudes de ventana de 20, 40, 60 y 80 respectivamente.
Debe entenderse que la ventana de atenuación determinada según la Fórmula (10) es una ventana lineal. La ventana de atenuación en esta solicitud puede ser una ventana lineal o una ventana no lineal.
Cuando la ventana de atenuación es una ventana no lineal, la ventana de atenuación se puede determinar según cualquiera de la Fórmula (11) a la Fórmula (13):
süh ventana (sub ventana lon-1 - i) - M A X ATKN * 0 ,5+0 ,5 *cos(i*----------- ------------ ) I i = O ,i,L . sub_ventana_lon-l ( 11 )
( sub ventana lon J v
)
sub ventana (sub ventana Ion -1 -i)= M A X ATEN*COS i* . n = 0,1.L, sub ventana lon-1 (12)
2 *sub_ventana_lony
sub ventana (sub_ventana_lon_l-i) = M A X ATEN * |cosj i 2 * sub ventana Ion j j , n = 0 , l,L , sub_ventana_lon-l (13)
En la Fórmula (11) a la Fórmula (13), sub_ventana(i) representa la ventana de atenuación en el cuadro actual, y sub_ventana_lon representa la longitud de ventana de la ventana de atenuación en el cuadro actual, y un significado de MAX_ATEN es el mismo que el anterior.
Debe entenderse que, después de que se determina la ventana de atenuación según cualquiera de la Fórmula (11) a la Fórmula (13), la ventana de análisis de predicción lineal modificada también se puede determinar según la Fórmula (9).
La ventana de análisis de predicción lineal modificada obtenida al modificar la ventana de análisis de predicción lineal basada en la ventana de atenuación en el cuadro actual cumple con la Fórmula (14). En otras palabras, después de que se determina la ventana de atenuación según la Fórmula (10), la ventana de análisis de predicción lineal modificada se puede determinar según cualquiera de la Fórmula (14) a la Fórmula (17):
Figure imgf000015_0001
w(i), i = 0,1,..., L-40-1
W3dp(Í) = 40 < sub_ventana Jon <60 (15)
w(i)-sub_ventana_40(i-(L-40)), i = L-40....,L-1
w(i), i = 0,l,...,L-60-l
Wadp (O = 60 < sub_vcntana Jon < 80 (16)
w(i)-sub_ventana_60(i-(L-60)), i = L-60,...,L-1
w(i), i = 0,l,...,L-80-l
Wadp(í) = . 80 < sub_venlana Ion (17)
w(i)-sub_ventana_80(i-(L-80)), i = L-80,...,L-1
En la Fórmula (14) a la Fórmula (17), sub_ventana_lon representa la longitud de ventana de la ventana de atenuación en el cuadro actual, wadp(i) representa la ventana de análisis de predicción lineal modificada, w (i) representa la ventana de análisis de predicción lineal inicial y L representa una longitud de ventana de la ventana del análisis de predicción lineal modificado ventana. sub_ventana_20(.), sub_ventana_40(.), sub_ventana_60(.), y sub_ventana_80(.) son ventanas de atenuación correspondientes a ventanas de atenuación prealmacenadas con longitudes de 20, 40, 60 y 80 respectivamente. Según cualquiera de la Fórmula (10) a la Fórmula (13), las ventanas de atenuación correspondientes a los casos en los que las longitudes de ventana de las ventanas de atenuación son 20, 40, 60 y 80 pueden calcularse y almacenarse de antemano.
Cuando la ventana de análisis de predicción lineal modificada se calcula según cualquiera de la Fórmula (14) a la Fórmula (17), la ventana de análisis de predicción lineal modificada se puede determinar basado en un intervalo de valores de la longitud de ventana de la ventana de atenuación, siempre que se conozca la longitud de ventana de la ventana de atenuación del cuadro actual. Por ejemplo, si la longitud de ventana de la ventana de atenuación en el cuadro actual es 50, un valor de la longitud de ventana de la ventana de atenuación en el cuadro actual oscila entre 40 y 60 (mayor o igual a 40 y menor que 60). Por lo tanto, la ventana de análisis de predicción lineal modificada se puede determinar según la Fórmula (15). Si la longitud de ventana de la ventana de atenuación en el cuadro actual es 70, un valor de la longitud de ventana de la ventana de atenuación en el cuadro actual oscila entre 60 y 80 (mayor o igual a 60 y menor que 80). En este caso, la ventana de análisis de predicción lineal modificada se puede determinar según la Fórmula (16).
330. Realizar un análisis de predicción lineal en una señal de canal de sonido a procesar basado en la ventana de análisis de predicción lineal modificada.
La señal de canal de sonido a procesar puede ser una señal de canal de sonido primario o una señal de canal de sonido secundario. Además, la señal de canal de sonido a procesar puede ser una señal de canal de sonido obtenida después de que se realiza el preprocesamiento en el dominio del tiempo en la señal del canal de sonido primario o en la señal del canal de sonido secundario. La señal del canal de sonido primario y la señal del canal de sonido secundario pueden ser señales de canal de sonido obtenidas después del procesamiento de mezcla descendente.
La realización de un análisis de predicción lineal en la señal del canal de sonido a procesar basado en la ventana de análisis de predicción lineal modificada puede realizar específicamente el procesamiento de formación de ventana en la señal del canal de sonido a procesar basado en la ventana de análisis de predicción lineal modificada, y a continuación calcular (específicamente según un algoritmo de Levinson-Durbin) un coeficiente de predicción lineal en el cuadro actual basado en una señal obtenida después del procesamiento de formación de ventana.
En esta solicitud, como los valores de al menos algunos puntos desde el punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada son menores que los valores de los puntos correspondientes desde el punto (L - sub_ventana_lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal, el impacto realizado por una señal reconstruida manualmente (donde la señal reconstruida puede incluir una señal de segmento de transición y una señal directa) en un canal de sonido diana en el cuadro actual puede reducirse durante la predicción lineal, de modo que el impacto de un error entre la señal reconstruida manualmente y una señal real directa sobre la precisión del resultado de un análisis de predicción lineal se reduce. Por lo tanto, se puede reducir la diferencia entre un coeficiente de predicción lineal obtenido a través del análisis de predicción lineal y un coeficiente de predicción lineal real, y se puede mejorar la precisión del análisis de predicción lineal.
Específicamente, como se muestra en la FIG. 4, existe una distorsión espectral comparativamente grande entre un coeficiente de predicción lineal obtenido según una solución existente y un coeficiente de predicción lineal real, mientras que existe una distorsión espectral comparativamente pequeña entre un coeficiente de predicción lineal obtenido según esta solicitud y un coeficiente de predicción lineal real. Por lo tanto, se puede aprender que, según el procedimiento de codificación de señales estéreo en esta realización de esta solicitud, se puede reducir la distorsión espectral de un coeficiente de predicción lineal obtenido durante el análisis de predicción lineal, mejorando así la precisión del análisis de predicción lineal.
Opcionalmente, en una realización, la determinación de una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual incluye: determinar la ventana de análisis de predicción lineal modificada a partir de una pluralidad de ventanas de análisis de predicción lineal candidatas prealmacenadas basadas en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde la pluralidad de ventanas de análisis de predicción lineal candidatas corresponden a diferentes intervalos de valores de longitud de ventana, y no hay un conjunto de intersección entre los diferentes intervalos de valores de longitud de ventana.
La pluralidad de ventanas de análisis de predicción lineal candidatas prealmacenadas son ventanas de análisis de predicción lineal modificadas correspondientes a las longitudes de ventana de las ventanas de atenuación dentro de diferentes intervalos de valores en el cuadro actual.
Específicamente, después de que las ventanas de análisis de predicción lineal modificadas correspondientes se calculan por separado basado en la ventana de análisis de predicción lineal inicial y longitudes de ventana de las ventanas de atenuación preseleccionadas correspondientes a las longitudes de ventana de las ventanas de atenuación dentro de diferentes intervalos de valores, las ventanas de análisis de predicción lineal modificadas correspondientes a las longitudes de ventana de las ventanas de atenuación dentro de diferentes intervalos de valores pueden ser almacenadas. De esta manera, después de determinar posteriormente la longitud de ventana de la ventana de atenuación en el cuadro actual, la ventana de análisis de predicción lineal modificada se puede determinar directamente a partir de la pluralidad de ventanas de análisis de predicción lineal prealmacenadas basado en un intervalo de valores que es cumplido por la longitud de ventana de la ventana de atenuación en el cuadro actual. Esto puede reducir un procedimiento de cálculo y simplificar la complejidad del cálculo.
Opcionalmente, cuando se calcula la ventana de análisis de predicción lineal modificada, las longitudes de ventana de las ventanas de atenuación preseleccionadas pueden ser todos los valores posibles de la longitud de ventana de la ventana de atenuación o un subconjunto de todos los valores posibles de la longitud de ventana de la ventana de atenuación.
Específicamente, cuando la ventana de análisis de predicción lineal modificada se determina a partir de la pluralidad de ventanas de análisis de predicción lineal candidatas prealmacenadas basado en la longitud de ventana de la ventana de atenuación en el cuadro actual, la ventana de análisis de predicción lineal modificada se puede determinar según la Fórmula (18):
Figure imgf000017_0001
Wadp(i) representa la ventana de análisis de predicción lineal modificada, w (i) representa la ventana de análisis de predicción lineal inicial y wadp_20(i), wadp_40(i), wadp_60(i), y wadp_80(i) son una pluralidad de ventanas de análisis de predicción lineal prealmacenadas. Específicamente, las longitudes de ventana de las ventanas de atenuación correspondientes a wadp_20(i), wadp_40(i), wadp_60(i), y wadp_80(i) son 20, 40, 60 y 80 respectivamente.
Cuando la ventana de análisis de predicción lineal modificada se determina según la Fórmula (18), después de que se determina un valor de la longitud de ventana de la ventana de atenuación en el cuadro actual, la ventana de análisis de predicción lineal modificada se puede determinar directamente según la Fórmula (18) y basado en un intervalo de valores que cumple la longitud de ventana de la ventana de atenuación del cuadro actual.
Opcionalmente, en una realización, antes de que se determine la ventana de análisis de predicción lineal modificada basado en la longitud de ventana de la ventana de atenuación, el procedimiento 300 incluye además:
modificar la longitud de ventana de la ventana de atenuación en el cuadro actual basándose en un paso de intervalo preestablecido, para obtener una longitud de ventana modificada de la ventana de atenuación, donde el paso del intervalo es un número entero positivo preestablecido, y el paso del intervalo puede ser un número entero positivo menor que un valor máximo de la longitud de ventana de la ventana de atenuación.
Cuando se modifica la longitud de ventana de la ventana de atenuación, la determinación de una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación incluye específicamente: determinar la ventana de análisis de predicción lineal modificada basada en la ventana de análisis de predicción lineal inicial y la longitud de ventana modificada de la ventana de atenuación.
Específicamente, la longitud de ventana de la ventana de atenuación en el cuadro actual puede determinarse en primer lugar basándose en la diferencia de tiempo entre canales en el cuadro actual; y a continuación la longitud de ventana de la ventana de atenuación se modifica en base al paso de intervalo preestablecido, para obtener la longitud de ventana modificada de la ventana de atenuación.
La longitud de una ventana de atenuación adaptativa se modifica mediante el paso del intervalo preestablecido, de modo que se pueda reducir la longitud de ventana de la ventana de atenuación. Además, un valor de la longitud de ventana modificada de la ventana de atenuación está restringido a ser incluido en un conjunto que incluye una cantidad limitada de constantes, de modo que es conveniente pre-almacenar el valor, de modo que se reduce la complejidad del cálculo posterior.
La longitud de ventana modificada de la ventana de atenuación cumple con la Fórmula (19). En otras palabras, modificar la longitud de ventana de la ventana de atenuación basado en el paso del intervalo preestablecido puede modificar específicamente la longitud de ventana de la ventana de atenuación según la Fórmula (19):
sub_ventanaJon_mod= [sub_ventana_1on/lon_paso]*lon_paso
(19)
sub_ventana_lon_mod representa la longitud de ventana modificada de la ventana de atenuación, L -1 representa un operador de redondeo hacia abajo, sub_ventana_lon representa la longitud de ventana de la ventana de atenuación, y lon_paso representa un paso de intervalo, donde el paso del intervalo puede ser un número entero positivo menor que un valor máximo de la longitud de ventana de la ventana de atenuación adaptativa, por ejemplo, 15 o 20, y el paso del intervalo puede ser prefijado alternativamente por un experto.
Cuando el valor máximo de sub ventana_lon es 80, y lon_paso es 20, los valores de la longitud de ventana modificada de la ventana de atenuación incluyen solo 0, 20, 40, 60 y 80, es decir, la longitud de ventana modificada de la ventana de atenuación pertenece solo a {0,20,40,60,80}. Cuando la longitud de ventana modificada de la ventana de atenuación es 0, la ventana de análisis de predicción lineal inicial se usa directamente como la ventana de análisis de predicción lineal modificada.
Opcionalmente, en una realización, la determinación de la ventana de análisis de predicción lineal modificada basada en la ventana de análisis de predicción lineal inicial y la longitud de ventana modificada de la ventana de atenuación incluye: modificar la ventana de análisis de predicción lineal inicial basada en la longitud de ventana modificada de la ventana de atenuación.
Opcionalmente, en una realización, determinar la ventana de análisis de predicción lineal modificada basada en la ventana de análisis de predicción lineal inicial y la longitud de ventana modificada de la ventana de atenuación incluye adicionalmente: determinar la ventana de atenuación en el cuadro actual basado en la longitud de ventana modificada de la ventana de atenuación; y modificar la ventana de análisis de predicción lineal inicial de una ventana de análisis de predicción lineal en el cuadro actual basado en la ventana de atenuación modificada.
Opcionalmente, en una realización, la determinación de la ventana de atenuación en el cuadro actual basado en la longitud de ventana modificada de la ventana de atenuación incluye: determinar la ventana de atenuación en el cuadro actual a partir de una pluralidad de ventanas de atenuación candidatas prealmacenadas basadas en la longitud de ventana modificada de la ventana de atenuación, donde la pluralidad de ventanas de atenuación candidatas prealmacenadas son ventanas de atenuación correspondientes a diferentes valores de la longitud de ventana modificada de las ventanas de atenuación.
Después de calcular las ventanas de atenuación correspondientes basándose en longitudes de ventana de un grupo de ventanas de atenuación modificadas preseleccionadas, las ventanas de atenuación correspondientes a las longitudes de ventana de las ventanas de atenuación modificadas preseleccionadas pueden ser almacenadas. De esta manera, después de determinar posteriormente la longitud de ventana modificada de la ventana de atenuación, la ventana de atenuación en el cuadro actual se puede determinar directamente a partir de la pluralidad de ventanas de atenuación candidatas prealmacenadas basado en la longitud de ventana modificada de la ventana de atenuación. Esto puede reducir un procedimiento de cálculo y simplificar la complejidad del cálculo.
Debe entenderse que las longitudes de ventana de las ventanas de atenuación modificadas preseleccionadas en esta invención pueden ser todos los valores posibles de la longitud de ventana modificada de la ventana de atenuación o un subconjunto de todos los valores posibles de la longitud de ventana modificada de la ventana de atenuación. Específicamente, cuando la ventana de atenuación en el cuadro actual se determina a partir de la pluralidad de ventanas de atenuación candidatas prealmacenadas basadas en la longitud de ventana modificada de la ventana de atenuación en el cuadro actual, la ventana de atenuación en el cuadro actual se puede determinar según la Fórmula (20):
sub_ventana_20(i), i = 0,1,....19. sub_ventana_lon_mod = 20
sub ventana(i) =sub_ventana_40(i), i = 0.1,....39, sub ventana lon mod = 40
sub_vcntana (i) = (20) sub_ventana(i) = sub_vcntana_60(i), i = 0,1,...,59. sub_ventana_lon_mod = 60 sub_ventana(i)=sub_venlana_80(i), i = 0.1,...,79, sub_ventana_lon_mod = 80 sub_ventana(i) representa la ventana de atenuación en el cuadro actual, sub_ventana_lon representa la longitud de ventana modificada de la ventana de atenuación, y sub_ventana_20(i), sub_ventana_40(i), sub_ventana_60(i), y sub_ventana_80(i) son ventanas de atenuación correspondientes a ventanas de atenuación prealmacenadas con longitudes de ventana de 20, 40, 60 y 80 respectivamente. Cuando sub_ventana_lon_mod es igual a 0, la ventana de análisis de predicción lineal inicial se utiliza directamente como la ventana de análisis de predicción lineal modificada y, por lo tanto, no es necesario determinar la ventana de atenuación en el cuadro actual.
Opcionalmente, en una realización, la determinación de la ventana de análisis de predicción lineal modificada basada en la ventana de análisis de predicción lineal inicial y la longitud de ventana modificada de la ventana de atenuación incluye: determinar la ventana de análisis de predicción lineal modificada a partir de una pluralidad de ventanas de análisis de predicción lineal candidatas prealmacenadas basado en la longitud de ventana modificada de la ventana de atenuación, donde la pluralidad de ventanas de análisis de predicción lineal candidatas prealmacenadas son ventanas de análisis de predicción lineal modificadas correspondientes a las longitudes de ventana de la ventana de atenuación modificada de diferentes valores.
Después de que las ventanas de análisis de predicción lineal modificadas correspondientes se calculan por separado basado en la ventana de análisis de predicción lineal inicial y las longitudes de ventana de un grupo de ventanas de atenuación modificadas preseleccionadas, las ventanas de análisis de predicción lineal modificadas correspondientes a las longitudes de ventana de las ventanas de atenuación modificadas preseleccionadas pueden ser almacenadas.
De esta manera, después de determinar posteriormente la longitud de ventana modificada de la ventana de atenuación, la ventana de análisis de predicción lineal modificada se puede determinar directamente a partir de la pluralidad de ventanas de análisis de predicción lineal candidatas prealmacenadas basado en las longitudes de ventana de las ventanas de atenuación modificadas en el cuadro actual. Esto puede reducir un procedimiento de cálculo y simplificar la complejidad del cálculo.
Opcionalmente, las longitudes de ventana de las ventanas de atenuación modificadas preseleccionadas en esta invención son todos los valores posibles de la longitud de ventana modificada de la ventana de atenuación o un subconjunto de todos los valores posibles de la longitud de ventana modificada de la ventana de atenuación.
Específicamente, cuando la ventana de análisis de predicción lineal modificada se determina a partir de la pluralidad de ventanas de análisis de predicción lineal candidatas prealmacenadas basado en la longitud de ventana modificada de la ventana de atenuación en el cuadro actual, la ventana de análisis de predicción lineal modificada se puede determinar según la Fórmula (21):
Figure imgf000019_0001
wadp(i) representa la ventana de análisis de predicción lineal modificada, w (i) representa la ventana de análisis de predicción lineal inicial y wadp_20(i), wadp_40(i), wadp_60(i), y wadp_80(i) son una pluralidad de ventanas de análisis de predicción lineal prealmacenadas. Específicamente, las longitudes de ventana de las ventanas de atenuación correspondientes a wadp_20(i), wadp_40(i), wadp_60(i), y wadp_80(i) son 20, 40, 60 y 80 respectivamente.
Debe entenderse que el procedimiento 300 mostrado en la FIG. 3 es parte de un procedimiento de codificación de señales estéreo. Para comprender mejor el procedimiento de codificación de señales estéreo en esta solicitud, a continuación se describe un procedimiento completo del procedimiento de codificación de señales estéreo en las realizaciones de esta solicitud en detalle con referencia a de la FIG. 5 a la FIG. 10.
La FIG. 5 es un diagrama de flujo esquemático de un procedimiento de codificación de señal estéreo según una realización de esta solicitud. El procedimiento 500 de la FIG. 5 incluye específicamente las siguientes etapas.
510. Realizar el preprocesamiento en el dominio del tiempo en una señal estéreo en un cuadro actual.
Específicamente, la señal estéreo en esta invención es una señal en el dominio del tiempo, y la señal estéreo incluye específicamente una señal de canal de sonido izquierdo y una señal de canal de sonido derecho. Realizar un preprocesamiento en el dominio del tiempo en la señal estéreo puede ser específicamente realizar un procesamiento de filtrado de paso alto en la señal del canal de sonido izquierdo y una señal del canal de sonido derecho en el cuadro actual, para obtener una señal de canal de sonido izquierdo preprocesada y una señal de canal de sonido derecho preprocesada en el cuadro actual. Además, el preprocesamiento en el dominio del tiempo en esta invención puede ser otro procesamiento, como procesamiento con pre-énfasis, además del procesamiento de filtrado de paso alto. Por ejemplo, si la tasa de muestreo de una señal de audio estéreo es de 16 HKz y cada cuadro de la señal es de 20 ms, la longitud del cuadro es N = 320, es decir, cada cuadro incluye 320 puntos de muestreo. La señal estéreo en el cuadro actual incluye una señal de dominio de tiempo del canal de sonido izquierdo xi_(n) en el cuadro actual y una señal de dominio de tiempo del canal de sonido derecho xR(n) en el cuadro actual, donde n representa un número de punto de muestreo y n = 0, 1, L, N-1. A continuación, el preprocesamiento en el dominio del tiempo se realiza en la señal del dominio del tiempo del canal de sonido izquierdo xi_(n) en el cuadro actual y la señal del dominio del tiempo del canal de sonido derecho xR(n) en el cuadro actual, para obtener una señal en el dominio del tiempo de un canal de sonido izquierdo preprocesado XL(n) en el cuadro actual y una señal en el dominio del tiempo del canal de sonido derecho preprocesada XR(n) en el cuadro actual.
520. Estimar una diferencia de tiempo entre canales entre la señal de dominio de tiempo del canal de sonido izquierdo preprocesada y la señal de dominio de tiempo del canal de sonido derecho preprocesada, para obtener una diferencia de tiempo entre canales entre la señal del canal de sonido izquierdo y la señal del canal de sonido derecho.
La estimación de la diferencia de tiempo entre canales puede consistir en calcular específicamente un coeficiente de correlación cruzada entre un canal de sonido izquierdo y un canal de sonido derecho basado en la señal del canal de sonido izquierdo preprocesada y la señal del canal de sonido derecho preprocesada en el cuadro actual, y a continuación 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 el cuadro actual.
Específicamente, la diferencia de tiempo entre canales puede estimarse de la Manera 1 a la Manera 3. Debe entenderse que esta solicitud no se limita al uso de procedimientos de la Manera 1 a la Manera 3 para estimar la diferencia de tiempo entre canales y otra técnica anterior se puede utilizar en esta solicitud para estimar la diferencia de tiempo entre canales.
Manera 1:
A una tasa de muestreo actual, un valor máximo y un valor mínimo de la diferencia de tiempo entre canales son Tmax y Tm in, respectivamente, donde Tmax y Tmin son números reales preestablecidos, y Tmax > Tm in. Por lo tanto, se busca un valor máximo del coeficiente de correlación cruzada entre el canal de sonido izquierdo y el canal de sonido derecho entre el valor máximo y el valor mínimo de la diferencia de tiempo entre canales. Finalmente, un valor de índice correspondiente al valor máximo encontrado del coeficiente de correlación cruzada entre el canal de sonido izquierdo y el canal de sonido derecho se determina como la diferencia de tiempo entre canales en el cuadro actual. Por ejemplo, los valores de Tmax y Tmin pueden ser 40 y -40. Por lo tanto, se busca un valor máximo del coeficiente de correlación cruzada entre el canal de sonido izquierdo y el canal de sonido derecho en un intervalo de -40 < i < 40. A continuación, 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 el cuadro actual.
Manera 2:
Un valor máximo y un valor mínimo de la diferencia de tiempo entre canales a la tasa de muestreo actual son Tmax y Tmin, donde Tmax y Tmin son números reales preestablecidos, y Tmax > Tmin. Por lo tanto, puede calcularse una función de correlación cruzada entre el canal de sonido izquierdo y el canal de sonido derecho basándose en la señal del canal de sonido izquierdo y la señal del canal de sonido derecho en el cuadro actual. A continuación, el procesamiento de suavidad se realiza en la función de correlación cruzada calculada entre el canal de sonido izquierdo y el canal de sonido derecho en el cuadro actual según una función de correlación cruzada entre el canal de sonido izquierdo y el canal de sonido derecho en los primeros cuadros L (donde L es un número entero mayor o igual que 1), para obtener la función de correlación cruzada entre un canal de sonido izquierdo y un canal de sonido derecho obtenida después del procesamiento de suavidad. A continuación, se busca un valor máximo de un coeficiente de correlación cruzada, obtenido después del procesamiento de suavidad, entre el canal de sonido izquierdo y el canal de sonido derecho en un intervalo de Tmin < i < Tmax, y un valor de índice i correspondiente al valor máximo se utiliza como la diferencia de tiempo entre canales en el cuadro actual.
Manera 3:
Después de estimar la diferencia de tiempo entre canales en el cuadro actual según el Ejemplo 1 o el Ejemplo 2, el procesamiento de suavidad entre cuadros se realiza en las diferencias de tiempo entre canales en M (donde M es un número entero mayor o igual que 1) cuadros anteriores al cuadro actual y la diferencia de tiempo entre canales estimada en el cuadro actual, y una diferencia de tiempo entre canales obtenida después del procesamiento de suavidad se usa como diferencia de tiempo final entre canales en el cuadro actual.
Debe entenderse que realizar el preprocesamiento en el dominio del tiempo en la señal del dominio del tiempo del canal de sonido izquierdo y la señal en el dominio del tiempo del canal de sonido derecho en el cuadro actual en la etapa 510 no es una etapa necesaria. Si no hay ninguna etapa para realizar el preprocesamiento en el dominio del tiempo, la señal del canal de sonido izquierdo y la señal del canal de sonido derecho entre las cuales se estima la diferencia de tiempo entre canales son una señal del canal de sonido izquierdo y una señal del canal de sonido derecho en una señal estéreo sin procesar. La señal del canal de sonido izquierdo y la señal del canal de sonido derecho en la señal estéreo sin procesar pueden recopilarse como señales de modulación de código de pulso (Modulación de Código de Pulso, pCm - Pulse Code Modulation) obtenidas a través de conversión de analógico a digital (A/D). Además, la tasa de muestreo de la señal de audio estéreo puede ser de 8 kHz, 16 kHz, 32 kHz, 44,1 kHz, 48 kHz o similares.
530. Realizar el procesamiento de alineación de retardo en la señal de dominio de tiempo preprocesada del canal de sonido izquierdo y la señal de dominio de tiempo preprocesada del canal de sonido derecho preprocesada en el cuadro actual basado en la diferencia de tiempo entre canales estimada.
Específicamente, realizar el procesamiento de alineación de retardo en la señal del canal de sonido izquierdo y la señal del canal de sonido derecho en el cuadro actual puede realizar específicamente el procesamiento de compresión o estiramiento en una o ambas de la señal del canal de sonido izquierdo y la señal del canal de sonido derecho basado en la diferencia de tiempo entre canales en el cuadro actual, de modo que no exista diferencia de tiempo entre canales entre una señal de canal de sonido izquierdo y una señal de canal de sonido derecho obtenida después del procesamiento de alineación de retardo. La señal del canal de sonido izquierdo y la señal del canal de sonido derecho obtenidas después del procesamiento de alineación de retardo en el cuadro actual son señales estéreo obtenidas después del procesamiento de alineación de retardo en el cuadro actual.
Cuando el procesamiento de alineación de retardo se realiza en la señal del canal de sonido izquierdo y la señal del canal de sonido derecho en el cuadro actual basado en la diferencia de tiempo entre canales, primero es necesario seleccionar un canal de sonido diana y un canal de sonido de referencia en el cuadro actual. seleccionado basado en la diferencia de tiempo entre canales en el cuadro actual y una diferencia de tiempo entre canales en un cuadro anterior. Entonces, el procesamiento de alineación de retardo se puede realizar de diferentes maneras dependiendo del resultado de la comparación entre un valor absoluto abs(cur_itd) de la diferencia de tiempo entre canales en el cuadro actual y un valor absoluto abs(prev_itd) de la diferencia de tiempo entre canales en el cuadro anterior del cuadro actual.
La diferencia de tiempo entre canales en el cuadro actual se indica como cur_itd, y la diferencia de tiempo entre canales en el cuadro anterior se denota como prev_itd. Específicamente, la selección de un canal de sonido diana y un canal de sonido de referencia en el cuadro actual basado en la diferencia de tiempo entre canales en el cuadro actual y la diferencia de tiempo entre canales en el cuadro anterior se puede describir como sigue. Si cur_itd = 0, el canal de sonido diana en el cuadro actual permanece consistente con un canal de sonido diana en el cuadro anterior; si cur_itd < 0, el canal de sonido diana en el cuadro actual es un canal de sonido izquierdo; o si cur_itd > 0, el canal de sonido diana en el cuadro actual es un canal de sonido derecho.
Una vez determinados el canal de sonido diana y el canal de sonido de referencia, se pueden utilizar diferentes formas de procesamiento de alineación de retardo dependiendo de los diferentes resultados de la comparación entre el valor absoluto abs(cur_itd) de la diferencia de tiempo entre canales en el cuadro actual y el valor absoluto abs(prev_itd) de la diferencia de tiempo entre canales en el cuadro anterior del cuadro actual. Específicamente, se incluyen los siguientes tres casos. Debe entenderse que, en esta solicitud, una forma de procesamiento utilizada para el procesamiento de alineación de retardo no se limita a una forma de procesamiento en los tres casos siguientes. En esta solicitud, se puede utilizar cualquier otra forma de procesamiento de alineación de retardo de la técnica anterior para realizar el procesamiento de alineación de retardo.
Caso 1: abs(cur_itd) es igual a abs(prev_itd).
Cuando el valor absoluto de la diferencia de tiempo entre canales en el cuadro actual es igual al valor absoluto de la diferencia de tiempo entre canales en el cuadro anterior del cuadro actual, no se realiza ningún procesamiento de compresión o estiramiento en la señal del canal de sonido de destino. Como se muestra en la FIG. 6, se genera una señal con una longitud de Ts2 puntos basada en la señal del canal de sonido de referencia en el cuadro actual y la señal del canal de sonido diana en el cuadro actual, y se utiliza como una señal obtenida después del procesamiento de alineación de retardo desde un punto (N - Ts2) a un punto (N - 1) en el canal de sonido diana. Además, una señal con una longitud de abs(cur_itd) los puntos se reconstruyen manualmente basado en la señal del canal de sonido de referencia y se utilizan como una señal obtenida después del procesamiento de alineación de retardo desde un punto N a un punto (N abs(cur_itd) - 1) en el canal de sonido diana. abs () indica una operación para obtener un valor absoluto, y una longitud de cuadro del cuadro actual es N. Si una tasa de muestreo es 16 kHz, N = 320, y Ts2 es una longitud preestablecida de un segmento de transición, por ejemplo, Ts2 = 10.
Finalmente, después del procesamiento de alineación de retardo, una señal con un retardo de puntos de muestreo abs(cur_itd) en el canal de sonido diana en el cuadro actual se utiliza como la señal del canal de sonido diana obtenida después de la alineación de retardo en el cuadro actual, y la señal del canal de sonido de referencia en el cuadro actual se usa directamente como la señal de canal de sonido de referencia obtenida después de la alineación de retardo en el cuadro actual.
Caso 2: abs(cur_itd) es menor que abs(prev_itd).
Como se muestra en la FIG. 7, cuando el valor absoluto de la diferencia de tiempo entre canales en el cuadro actual es menor que el valor absoluto de la diferencia de tiempo entre canales en el cuadro anterior del cuadro actual, es necesario estirar una señal de canal de sonido diana almacenada en búfer. Específicamente, una señal de un punto (-ts abs(prev_itd) - abs(cur_itd)) hasta un punto (L - ts - 1) de la señal del canal de sonido diana almacenada en búfer en el cuadro actual se alarga como una señal con una longitud de L puntos, y la señal con una longitud de L puntos se utiliza como una señal obtenida después del procesamiento de alineación de retardo desde un punto -ts hasta el punto (L - ts - 1) en el canal de sonido diana. A continuación, una señal desde un punto (L - ts) a un punto (N - Ts2 -1) de la señal del canal de sonido diana en el cuadro actual se usa directamente como una señal obtenida después del procesamiento de alineación de retardo desde el punto (L - ts ) hasta el punto (N - Ts2 - 1) en el canal de sonido diana. A continuación, se genera una señal con una longitud de Ts2 puntos basada en la señal del canal de sonido de referencia y la señal del canal de sonido diana en el cuadro actual, y se usa como una señal obtenida después del procesamiento de alineación de retardo desde un punto (N - Ts2) a un punto (N - 1) en el canal de sonido diana. Finalmente, una señal con una longitud de abs(cur_itd) puntos se reconstruye manualmente basado en la señal del canal de sonido de referencia y se utiliza como una señal obtenida después del procesamiento de alineación de retardo desde un punto N a un punto (N abs(cur_itd) - 1) en el canal de sonido diana. ts representa una longitud de un segmento de transición suave entre cuadros. Por ejemplo, ts es abs(cur_itd)/2, y L representa una longitud de procesamiento para el procesamiento de alineación de retardo. L puede ser cualquier número entero positivo preestablecido menor o igual que la longitud N del cuadro a la tasa actual, y generalmente se establece en un número entero positivo mayor que una diferencia de tiempo de canal máxima permitida. Por ejemplo, L = 290 o L = 200. Con respecto a diferentes tasas de muestreo, la longitud de procesamiento L para el procesamiento de alineación de retardo puede establecerse en diferentes valores o en un mismo valor. Generalmente, un procedimiento más simple es preestablecer un valor de L por un experto basado en la experiencia, por ejemplo, el valor se establece en 290. Finalmente, después del procesamiento de alineación de retardo, una señal obtenida después del procesamiento de alineación de retardo con una longitud de N puntos a partir de un punto abs(cur_itd) en el canal de sonido diana se utiliza como una señal de canal de sonido diana obtenida después de la alineación de retardo en el cuadro actual. La señal del canal de sonido de referencia en el cuadro actual se usa directamente como la señal del canal de sonido de referencia obtenida después de la alineación de retardo en el cuadro actual.
Caso 3: abs(cur_itd) es menor que abs(prev_itd).
Como se muestra en la FIG. 8, cuando el valor absoluto de la diferencia de tiempo entre canales en el cuadro actual es menor que el valor absoluto de la diferencia de tiempo entre canales en el cuadro anterior del cuadro actual, es necesario comprimir una señal de canal de sonido diana almacenada en búfer. Específicamente, una señal de un punto (-ts abs(prev_itd) - abs(cur_itd)) hasta un punto (L - ts - 1) de la señal del canal de sonido diana almacenada en búfer en el cuadro actual se comprime como una señal con una longitud de L puntos, y la señal con una longitud de L puntos se utiliza como una señal obtenida después del procesamiento de alineación de retardo desde un punto -ts hasta el punto (L - ts - 1) en el canal de sonido diana. A continuación, una señal desde un punto (L - ts) a un punto (N - Ts2 - 1) de la señal del canal de sonido diana en el cuadro actual se usa directamente como una señal obtenida después del procesamiento de alineación de retardo desde el punto (L - ts ) hasta el punto (N - Ts2 - 1) en el canal de sonido diana. A continuación, se genera una señal con una longitud de Ts2 puntos basada en la señal del canal de sonido de referencia y la señal del canal de sonido diana en el cuadro actual, y se usa como una señal obtenida después del procesamiento de alineación de retardo desde un punto (N - Ts2) a un punto (N - 1) en el canal de sonido diana. Entonces, una señal con una longitud de abs(cur_itd) puntos se genera basado en la señal del canal de sonido de referencia y se utiliza como una señal obtenida después del procesamiento de alineación de retardo desde un punto N a un punto (N abs(cur_itd) - 1) en el canal de sonido diana. L todavía representa una longitud de procesamiento para el procesamiento de alineación de retardo.
Finalmente, después del procesamiento de alineación de retardo, una señal obtenida después del procesamiento de alineación de retardo con una longitud de N puntos a partir de un punto abs(cur_itd) en el canal de sonido diana se utiliza aún como una señal de canal de sonido diana obtenida después de la alineación de retardo en el cuadro actual. La señal del canal de sonido de referencia en el cuadro actual se usa directamente como la señal del canal de sonido de referencia obtenida después de la alineación de retardo en el cuadro actual.
540. Cuantificar la diferencia de tiempo entre canales.
Específicamente, cuando la cuantificación se realiza en la diferencia de tiempo entre canales en el cuadro actual, se puede usar cualquier algoritmo de cuantificación de la técnica anterior para realizar el procesamiento de cuantificación en la diferencia de tiempo entre canales en el cuadro actual, para obtener un índice de cuantificación, y el índice de cuantificación se codifica y escribe en el flujo de bits.
550. Calcular un factor de relación de combinación de canales de sonido y cuantificar el factor de relación de combinación de canales de sonido.
Existe una pluralidad de procedimientos para calcular el factor de relación de combinación de canales de sonido. Por ejemplo, el factor de relación de combinación de canales de sonido en el cuadro actual puede calcularse basándose en la energía del cuadro en el canal de sonido izquierdo y el canal de sonido derecho. Un procedimiento específico se describe a continuación.
(1) Calcular la energía de cuadro de la señal del canal de sonido izquierdo y la señal del canal de sonido derecho basándose en una señal del canal de sonido izquierdo y una señal del canal de sonido derecho obtenidas después de la alineación de retardo.
Energía de cuadro rms_L en el canal de sonido izquierdo en el cuadro actual cumple con:
rms_L = — X x l ( 0 * x l (0> donde i = 0 ,1, ...,N - (22)
N i=o
Energía de cuadro rms_R en el canal de sonido derecho en el cuadro actual cumple:con
j NI
rms R = — X x R (0 * x r (0- donde i = 0 , 1 , N - 1 (23)
N f
Figure imgf000023_0001
representa una señal del canal de sonido izquierdo obtenida después de la alineación de retardo en el cuadro actual,
Figure imgf000023_0002
representa una señal del canal de sonido derecho obtenida después de la alineación de retardo en el cuadro actual, e i representa un número de punto de muestreo.
(2) Calcular el factor de relación de combinación de canales de sonido en el cuadro actual basado en la energía del cuadro en el canal de sonido izquierdo y el canal de sonido derecho.
La relación del factor de relación de combinación de canales de sonido en el cuadro actual cumple con:
rms_R
relación = ------------------ (24)
rms L+rms R
Por lo tanto, el factor de relación de combinación de canales de sonido se calcula basándose en la energía de cuadro de la señal del canal de sonido izquierdo y la señal del canal de sonido derecho.
(3) Cuantificar el factor de relación de combinación de canales de sonido y escribir el factor de relación de combinación de canales de sonido en el que se realiza la cuantificación en un flujo de bits.
560. Realizar, basándose en el factor de relación de combinación de canales de sonido, procesamiento de mezcla descendente en el dominio del tiempo en la señal estéreo obtenida después de la alineación de retardo en el cuadro actual, para obtener una señal de canal de sonido primario y una señal de canal de sonido secundario.
Específicamente, cualquier procedimiento de procesamiento de mezcla descendente en el dominio del tiempo de la técnica anterior puede usarse para realizar el procesamiento de mezcla descendente en el dominio del tiempo en la señal estéreo obtenida después de la alineación de retardo. Sin embargo, cuando se realiza el procesamiento de mezcla descendente en el dominio del tiempo, se debe seleccionar una forma de procesamiento de mezcla descendente en el dominio del tiempo correspondiente basado en un procedimiento para calcular el factor de relación de combinación de canales de sonido, para realizar el preprocesamiento en el dominio del tiempo en una señal estéreo obtenida después de la alineación de retardo, para obtener la señal del canal de sonido primario y la señal del canal de sonido secundario.
Por ejemplo, después de calcular la relación del factor de relación de combinación de canales de sonido de la manera siguiente al paso 550, el procesamiento de mezcla descendente en el dominio del tiempo se puede realizar basándose en la relación de factor de relación de combinación de canales de sonido. Por ejemplo, la señal del canal de sonido primario y la señal del canal de sonido secundario obtenidas después del procesamiento de mezcla descendente en el dominio del tiempo se pueden determinar según la Fórmula (25):
' y ( í ) ' relación 1-relación < 0 ) .donde i = 0, 1 . N - 1 (25)
x(i). 1-relación -relación XR (0.
Y (i) representa la señal del canal de sonido primario en el cuadro actual, X (i) representa la señal del canal de sonido secundario en el cuadro actual,
xU ‘)
representa la señal del canal de sonido izquierdo obtenida después de la alineación de retardo en el cuadro actual,
X i (i)
representa la señal del canal de sonido derecho obtenida después de la alineación de retardo en el cuadro actual, i representa un número de punto de muestreo, N representa una longitud de cuadro y la relación representa el factor de relación de combinación de canales de sonido.
570. Codificar la señal del canal de sonido primario y la señal del canal de sonido secundario.
Debe entenderse que, el procesamiento de codificación se puede realizar mediante el uso de un procedimiento de codificación/decodificación de una señal mono en la señal del canal de sonido primario y la señal del canal de sonido secundario obtenidas después del procesamiento de mezcla descendente. Específicamente, los bits que se codificarán en un canal de sonido primario y un canal de sonido secundario pueden asignarse basado en la información de parámetros obtenida en un procedimiento de codificación de una señal de canal de sonido primario y/o una señal de canal de sonido secundario en un cuadro anterior y una cantidad total de bits que se utilizarán para codificar la señal del canal de sonido primario y la señal del canal de sonido secundario. A continuación, la señal del canal de sonido primario y la señal del canal de sonido secundario se codifican por separado basándose en un resultado de asignación de bits, para obtener índices de codificación obtenidos después de codificar la señal del canal de sonido primario y obtener índices de codificación después de codificar la señal del canal de sonido secundario. Además, la predicción lineal excitada por código algebraico (predicción lineal excitada por código algebraico, ACELP) de un esquema de codificación puede usarse para codificar la señal del canal de sonido primario y la señal del canal de sonido secundario. Debe entenderse que, el procedimiento de codificación de señal estéreo en esta realización de esta solicitud puede ser parte de la etapa 570 para codificar la señal del canal de sonido primario y la señal del canal de sonido secundario obtenidas después del procesamiento de mezcla descendente en el procedimiento 500. Específicamente, el procedimiento de codificación de señal estéreo en esta realización de esta solicitud puede ser un procedimiento de realización de predicción lineal en la señal del canal de sonido primario o en la señal del canal de sonido secundario obtenidas después del procesamiento de mezcla descendente en la etapa 570. Hay una pluralidad de formas de realizar análisis de predicción lineal sobre la señal estéreo en el cuadro actual. El análisis de predicción lineal se puede realizar por separado en la señal del canal de sonido primario y la señal del canal de sonido secundario en el cuadro actual dos veces, o el análisis de predicción lineal se puede realizar por separado en la señal del canal de sonido primario y la señal del canal de sonido secundario en el cuadro actual una vez. A continuación se describen por separado las dos formas de análisis de predicción lineal en detalle con referencia a la FIG. 9 y la FIG. 10.
La FIG. 9 es un diagrama de flujo esquemático de un procedimiento de análisis de predicción lineal según una realización de esta solicitud. El procedimiento de predicción lineal mostrado en la FIG. 9 es realizar un análisis de predicción lineal en una señal de canal de sonido primario en un cuadro actual dos veces. El procedimiento de análisis de predicción lineal mostrado en la FIG. 9 incluye específicamente las siguientes etapas.
910. Realizar el preprocesamiento en el dominio del tiempo en una señal de canal de sonido primario en un cuadro actual.
El preprocesamiento en esta invención puede incluir conversión de tasa de muestreo, procesamiento pre-énfasis y similares. Por ejemplo, una señal de canal de sonido primario con una tasa de muestreo de 16 kHz se puede convertir en una señal con una tasa de muestreo de 12,8 kHz, de modo que la predicción lineal excitada por código algebraico (ACELP - Algebraic Code Excited Linear Prediction) de un esquema de codificación es utilizado para el procesamiento de codificación posterior.
920. Obtener una ventana de análisis de predicción lineal inicial en el cuadro actual.
La ventana de análisis de predicción lineal inicial en la etapa 920 es equivalente a la ventana de análisis de predicción lineal inicial en la etapa 320.
930. Realizar el procesamiento de ventanas por primera vez en la señal del canal de sonido primario preprocesado basado en la ventana de análisis de predicción lineal inicial y calcular un primer grupo de coeficientes de predicción lineal en el cuadro actual basado en una señal obtenida después del procesamiento de formación de ventana.
Realizar el procesamiento de formación de ventana por primera vez en la señal del canal de sonido primario preprocesado basado en la ventana de análisis de predicción lineal inicial se puede realizar específicamente según la Fórmula (26):
Figure imgf000025_0001
Spre(n) representa una señal obtenida después del procesamiento de pre-énfasis, swmid(n) representa la señal obtenida después del procesamiento de formación de ventana por primera vez, L representa una longitud de ventana de una ventana de análisis de predicción lineal y w(n) representa la ventana de análisis de predicción lineal inicial.
El primer grupo de coeficientes de predicción lineal en el cuadro actual puede calcularse específicamente según un algoritmo de Levinson-Durbin. Específicamente, el primer grupo de coeficientes de predicción lineal en el cuadro actual puede calcularse según el algoritmo de Levinson-Durbin y basándose en la señal swmid(n) obtenida después del procesamiento de formación de ventana por primera vez.
940. Generar de forma adaptativa una ventana de análisis de predicción lineal modificada basada en una diferencia de tiempo entre canales en el cuadro actual.
La ventana de análisis de predicción lineal modificada puede ser una ventana de análisis de predicción lineal que cumpla la Fórmula (7) y la Fórmula (9) anteriores.
950. Realizar el procesamiento de formación de ventana por segunda vez en la señal del canal de sonido primario preprocesado basado en la ventana de análisis de predicción lineal inicial y calcular un segundo grupo de coeficientes de predicción lineal en el cuadro actual basado en una señal obtenida después del procesamiento de formación de ventana.
Realizar el procesamiento de formación de ventana por segunda vez en la señal del canal de sonido primario preprocesado basado en la ventana de análisis de predicción lineal modificada se puede realizar específicamente según la Fórmula (27).
Figure imgf000025_0002
Spre(n) representa una señal obtenida después del procesamiento de pre-énfasis, swend(n) representa la señal obtenida después del procesamiento de formación de ventana por segunda vez, L representa una longitud de ventana de una ventana de análisis de predicción lineal modificada y wadp(n) representa la ventana de análisis de predicción lineal modificada.
El segundo grupo de coeficientes de predicción lineal en el cuadro actual puede calcularse específicamente según un algoritmo de Levinson-Durbin. Específicamente, el segundo grupo de coeficientes de predicción lineal en el cuadro actual puede calcularse según el algoritmo de Levinson-Durbin y basándose en la señal swend(n) obtenida después del procesamiento de formación de ventana por segunda vez.
De manera similar, un procedimiento de procesamiento para realizar análisis de predicción lineal en una señal de canal de sonido secundario en el cuadro actual es el mismo que el procedimiento de realizar análisis de predicción lineal en la señal del canal de sonido primario en el cuadro actual en la etapa 910 a la etapa 950.
Debe entenderse que el procedimiento de codificación de la señal estéreo en esta solicitud es el mismo que el de la segunda manera de procesamiento de formación de ventana de la Manera 1.
La FIG. 10 es un diagrama de flujo esquemático de un procedimiento de análisis de predicción lineal según una realización de esta solicitud. El procedimiento de predicción lineal que se muestra en la FIG. 10 es realizar un análisis de predicción lineal en una señal de canal de sonido primario en un cuadro actual una vez. El procedimiento de predicción lineal que se muestra en la FIG. 10 incluye específicamente las etapas siguientes.
1010. Realizar el preprocesamiento en el dominio del tiempo en una señal de canal de sonido primario en un cuadro actual.
El preprocesamiento en esta invención puede incluir conversión de tasa de muestreo, procesamiento de pre-énfasis y similares.
1020. Obtener una ventana de análisis de predicción lineal inicial en el cuadro actual.
La ventana de análisis de predicción lineal inicial en la etapa 1020 es equivalente a la ventana de análisis de predicción lineal inicial en la etapa 320.
1030. Generar de forma adaptativa una ventana de análisis de predicción lineal modificada basada en una diferencia de tiempo entre canales en el cuadro actual.
Específicamente, la longitud de una ventana de atenuación en el cuadro actual puede determinarse primero basado en la diferencia de tiempo entre canales en el cuadro actual; y a continuación se determina la ventana de análisis de predicción lineal modificada de la manera en la etapa 320.
1040. Realizar procesamiento de formación de ventana en una señal de canal de sonido primario preprocesado basado en la ventana de análisis de predicción lineal inicial modificada y calcular un coeficiente de predicción lineal en el cuadro actual basado en una señal obtenida después del procesamiento de formación de ventana.
Realizar el procesamiento de formación de ventana en la señal del canal de sonido primario preprocesado basado en la ventana de análisis de predicción lineal modificada se puede realizar específicamente según la Fórmula (28):
s» ( n ) = v ( n ) w «ip(n ) ’ n = 0 , l, ... ,L - l (28)
spre(n) representa una señal obtenida después del procesamiento de pre-énfasis, sw (n) representa la señal obtenida después del procesamiento de formación de ventana, L representa una longitud de ventana de una ventana de análisis de predicción lineal modificada y wadp(n) representa la ventana de análisis de predicción lineal modificada.
Debe entenderse que el coeficiente de predicción lineal en el cuadro actual puede calcularse específicamente según un algoritmo de Levinson-Durbin. Específicamente, el coeficiente de predicción lineal en el cuadro actual puede calcularse según el algoritmo de Levinson-Durbin y basándose en la señal sw (n) obtenida después del procesamiento de formación de ventana.
De manera similar, un procedimiento de procesamiento para realizar análisis de predicción lineal en una señal de canal de sonido secundario en el cuadro actual es el mismo que el procedimiento de realizar análisis de predicción lineal en la señal del canal de sonido primario en el cuadro actual en la etapa 1010 a la etapa 1040.
Lo anterior describe el procedimiento de codificación de señales estéreo en las realizaciones de esta solicitud en detalle con la FIG. 1 a la FIG. 10. A continuación se describen los aparatos de codificación de señales estéreo en las realizaciones de esta solicitud con referencia a la FIG. 11 y FIG. 12. Debe entenderse que los aparatos de la FIG. 11 y FIG. 12 corresponden al procedimiento de codificación de señales estéreo en las realizaciones de esta solicitud. Además, los aparatos de la FIG. 11 y FIG. 12 pueden realizar el procedimiento de codificación de señales estéreo en las realizaciones de esta solicitud. Por brevedad, las descripciones repetidas se omiten apropiadamente a continuación.
La FIG. 11 es un diagrama de bloques esquemático de un aparato de codificación de señales estéreo según una realización de esta solicitud. El aparato 1100 en la FIG. 11 incluye:
un primer módulo de determinación 1110, configurado para determinar una longitud de ventana de una ventana de atenuación en un cuadro actual basado en una diferencia de tiempo entre canales en el cuadro actual;
un segundo módulo de determinación 1120, configurado para determinar una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde los valores de al menos algunos puntos desde un punto (L - sub_ventana_lon) a un punto (L - 1) en la ventana de análisis de predicción lineal modificada son menores que los valores de los puntos correspondientes desde un punto (L - sub_ventana_lon) a un punto (L - 1) en una ventana de análisis de predicción lineal inicial, sub_ventana_lon representa la longitud de ventana de la ventada atenuación en el cuadro actual, L representa una longitud de ventana de la ventana de análisis de predicción lineal modificada, y la longitud de ventana de la ventana de análisis de predicción lineal modificada es igual a una longitud de ventana de la ventana de análisis de predicción lineal; y
un módulo de procesamiento 1130, configurado para realizar análisis de predicción lineal en una señal de canal de sonido a procesar basado en la ventana de análisis de predicción lineal modificada.
En esta solicitud, porque un valor que es de un punto en la ventana de análisis de predicción lineal modificada y que corresponde a una señal directa reconstruida manualmente en un canal de sonido diana en el cuadro actual es menor que un valor que es de un punto en una ventana de análisis de predicción lineal a modificar y que corresponde a la señal directa reconstruida manualmente en el canal de sonido diana en el cuadro actual, el impacto realizado por la señal directa reconstruida manualmente en el canal de sonido diana en el cuadro actual puede ser reducido durante la predicción lineal, de modo que se reduce el impacto de un error entre la señal directa reconstruida manualmente y una señal directa real sobre la precisión de un resultado del análisis de predicción lineal. Por lo tanto, se puede reducir la diferencia entre un coeficiente de predicción lineal obtenido a través del análisis de predicción lineal y un coeficiente de predicción lineal real, y se puede mejorar la precisión del análisis de predicción lineal.
Opcionalmente, en una realización, un valor de cualquier punto desde el punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada es menor que un valor de un punto correspondiente desde el punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal inicial.
Opcionalmente, en una realización, el primer módulo de determinación 1110 está configurado específicamente para determinar la longitud de ventana de la ventana de atenuación en el cuadro actual basado en la diferencia de tiempo entre canales en el cuadro actual y una longitud preestablecida de un segmento de transición.
Opcionalmente, en una realización, el primer módulo de determinación 1110 está configurado específicamente para determinar una suma de un valor absoluto de la diferencia de tiempo entre canales en el cuadro actual y la longitud preestablecida del segmento de transición como la longitud de ventana de la ventana de atenuación en el cuadro actual.
Opcionalmente, en una realización, el primer módulo de determinación 1110 está configurado específicamente para: cuando un valor absoluto de la diferencia de tiempo entre canales en el cuadro actual es mayor o igual que la longitud preestablecida del segmento de transición, determinar una suma del valor absoluto de la diferencia de tiempo entre canales en el cuadro actual y la longitud preestablecida del segmento de transición como la longitud de ventana de la ventana de atenuación en el cuadro actual; o cuando un valor absoluto de la diferencia de tiempo entre canales en el cuadro actual es menor que la longitud preestablecida del segmento de transición, determinar N veces el valor absoluto de la diferencia de tiempo entre canales en el cuadro actual como la longitud de ventana de la ventana de atenuación en el cuadro actual, donde N es un número real preestablecido mayor que 0 y menor que L/MAX_RETARDO, y MAX_RETARDO es un número real preestablecido mayor que 0.
Opcionalmente, MAX_RETARDO es un valor máximo del valor absoluto de la diferencia de tiempo entre canales. Opcionalmente, en una realización, el segundo módulo de determinación 1120 está configurado específicamente para modificar la ventana de análisis de predicción lineal inicial basado en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde los valores de atenuación de los valores del punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada en relación con los valores de los puntos correspondientes desde el punto (L - sub_ventana lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal inicial mostrar una tendencia ascendente.
Opcionalmente, en una realización, la ventana de análisis de predicción lineal modificada cumple una fórmula:
, íw(i), i =0,1, •••,L-sub_ventana_lon-l
Wadp 1 | \v(i) — [i — (L-sub_ventana_lon-1)] * delta, i = L-sub_ventana_lon, - , L - 1
donde
wadp(i) representa la ventana de análisis de predicción lineal modificada, w (i) representa la ventana de análisis de predicción lineal inicial,
, , MAX ATEN
delta ----------- -------------sub ventana lon-1
y MAX_ATEN es un número real preestablecido mayor que 0.
Opcionalmente, en una realización, el segundo módulo de determinación 1120 está configurado específicamente para: determinar la ventana de atenuación en el cuadro actual basado en la longitud de ventana de la ventana de atenuación en el cuadro actual; y modificar la ventana de análisis de predicción lineal inicial basada en la ventana de atenuación en el cuadro actual, donde los valores de atenuación de los valores desde el punto (L - sub_ventana_lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal modificada en relación con los valores de los puntos correspondientes desde el punto (L - sub_ventana_lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal inicial muestran una tendencia ascendente.
Opcionalmente, en una realización, el segundo módulo de determinación 1120 está configurado específicamente para: determinar la ventana de atenuación en el cuadro actual a partir de una pluralidad de ventanas de atenuación candidatas prealmacenadas basado en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde la pluralidad de las ventanas de atenuación candidatas corresponde a diferentes intervalos de valores de longitud de ventana, y no hay un conjunto de intersección entre los diferentes intervalos de valores de longitud de ventana. Opcionalmente, en una realización, la ventana de atenuación en el cuadro actual cumple una fórmula:
, MAX ATEN . , , ,sub_ventana (i J = i* ----------- =-------------, i = 0,1, • ■ •, sub_ventana_lon-1.
sub ventana lon-1
donde
sub_ventana(i) representa la ventana de atenuación en el cuadro actual, y MAX_ATEN es un número real preestablecido mayor que 0.
Opcionalmente, en una realización, la ventana de análisis de predicción lineal modificada cumple una fórmula:
Figure imgf000028_0001
donde
wadp(i) representa una función de ventana de la ventana de análisis de predicción lineal modificada, w(i) representa la ventana de análisis de predicción lineal inicial, y sub_ventana(.) representa la ventana de atenuación en el cuadro actual.
Opcionalmente, en una realización, el segundo módulo de determinación 1120 está configurado específicamente para: determinar la ventana de análisis de predicción lineal modificada a partir de una pluralidad de ventanas de análisis de predicción lineal candidatas almacenadas previamente basado en la longitud de la ventana de atenuación en el cuadro actual, donde la pluralidad de las ventanas de análisis de predicción lineal candidatas corresponde a diferentes intervalos de valores de longitud de ventana, y no hay un conjunto de intersección entre los diferentes intervalos de valores de longitud de ventana.
Opcionalmente, en una realización, antes de que el segundo módulo de determinación 1120 determine la ventana de análisis de predicción lineal modificada basado en la longitud de ventana de la ventana de atenuación en el cuadro actual, el aparato incluye además:
un módulo de modificación 1140, configurado para modificar la ventana longitud de ventana de la ventana de atenuación en el cuadro actual basado en un paso de intervalo preestablecido, para obtener una longitud de ventana modificada de la ventana de atenuación, donde el paso del intervalo es un entero positivo preestablecido.
El segundo módulo de determinación 1120 está configurado específicamente para determinar la ventana de análisis de predicción lineal modificada basado en la ventana de análisis de predicción lineal inicial y la longitud de ventana modificada de la ventana de atenuación.
Opcionalmente, en una realización, la longitud de ventana modificada de la ventana de atenuación cumple una fórmula:
sub ventana Ion mod= [sub_ventana_lon/lon pasoJ*lon paso, donde
sub_ventana_lon_mod representa la longitud de ventana modificada de la ventana de atenuación, y lon_paso representa el paso del intervalo.
La FIG. 12 es un diagrama de bloques esquemático de un dispositivo remoto según una realización de esta solicitud. El aparato 1200 en la FIG. 12 incluye
una memoria 1210 configurada para almacenar un programa; y
un procesador 1220, configurado para ejecutar el programa almacenado en la memoria 1210, y cuando se ejecuta el programa en la memoria 1210, el procesador 1220 está configurado específicamente para: determinar una longitud de ventana de una ventana de atenuación en un cuadro actual basado en una diferencia de tiempo entre canales en el cuadro actual; determinar una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde los valores de al menos algunos puntos desde un punto (L - sub_ventana_lon) a un punto (L - 1) en una ventana de análisis de predicción lineal modificada son menores que los valores de los puntos correspondientes desde un punto (L - sub_ventana_lon) a un punto (L - 1) en una ventana de análisis de predicción lineal inicial, sub_ventana_lon representa la longitud de ventana de la ventana de atenuación en el cuadro actual, y L representa una longitud de ventana de la ventana de análisis de predicción lineal modificada, y la longitud de ventana de la ventana de análisis de predicción lineal modificada es igual a una longitud de ventana de la ventana de análisis de predicción lineal inicial; y realizar análisis de predicción lineal en una señal de canal de sonido a procesar basado en la ventana de análisis de predicción lineal modificada. En esta solicitud, porque un valor que es de un punto en la ventana de análisis de predicción lineal modificada y que corresponde a una señal directa reconstruida manualmente en un canal de sonido diana en el cuadro actual es menor que un valor que es de un punto en una ventana de análisis de predicción lineal a modificar y que corresponde a la señal directa reconstruida manualmente en el canal de sonido diana en el cuadro actual, el impacto realizado por la señal directa reconstruida manualmente en el canal de sonido diana en el cuadro actual puede ser reducido durante la predicción lineal, de modo que se reduce el impacto de un error entre la señal directa reconstruida manualmente y una señal directa real sobre la precisión de un resultado del análisis de predicción lineal. Por lo tanto, se puede reducir la diferencia entre un coeficiente de predicción lineal obtenido a través del análisis de predicción lineal y un coeficiente de predicción lineal real, y se puede mejorar la precisión del análisis de predicción lineal.
Opcionalmente, en una realización, un valor de cualquier punto desde el punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada es menor que un valor de un punto correspondiente desde el punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal inicial.
Opcionalmente, en una realización, el procesador 1220 está configurado específicamente para determinar la longitud de ventana de la ventana de atenuación en el cuadro actual basado en la diferencia de tiempo entre canales en el cuadro actual y una longitud preestablecida de un segmento de transición.
Opcionalmente, en una realización, el procesador 1220 está configurado específicamente para determinar una suma de un valor absoluto de la diferencia de tiempo entre canales en el cuadro actual y la longitud preestablecida del segmento de transición como la longitud de ventana de la ventana de atenuación en el cuadro actual.
Opcionalmente, en una realización, el procesador 1220 está configurado específicamente para: cuando un valor absoluto de la diferencia de tiempo entre canales en el cuadro actual es mayor o igual que la longitud preestablecida del segmento de transición, determinar una suma del valor absoluto de la diferencia de tiempo entre canales en el cuadro actual y la longitud preestablecida del segmento de transición como la longitud de ventana de la ventana de atenuación en el cuadro actual; o cuando un valor absoluto de la diferencia de tiempo entre canales en el cuadro actual es menor que la longitud preestablecida del segmento de transición, determinar N veces el valor absoluto de la diferencia de tiempo entre canales en el cuadro actual como la longitud de ventana de la ventana de atenuación en el cuadro actual, donde N es un número real preestablecido mayor que 0 y menor que L/MAX_RETARDO, y MAX_RETARDO es un número real preestablecido mayor que 0.
Opcionalmente, MAX_RETARDO es un valor máximo del valor absoluto de la diferencia de tiempo entre canales. Opcionalmente, en una realización, el procesador 1220 está configurado específicamente para modificar la ventana de análisis de predicción lineal inicial basado en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde los valores de atenuación de los valores del punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada en relación con los valores de los puntos correspondientes desde el punto (L - sub_ventana lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal inicial mostrar una tendencia ascendente.
Opcionalmente, en una realización, la ventana de análisis de predicción lineal modificada cumple una fórmula:
, , |\v(iX i =0,1, •••,L-sub_ventana_lon-l
vvadP 1 | \v(i) — [i— (L-sub_ventana_lon-l)] * delta, i = L-sub_ventana_lon, ■ • ■. L— 1
donde
Wadp(i) representa la ventana de análisis de predicción lineal modificada, w(i) representa la ventana de análisis de predicción lineal inicial,
, , MAX ATEN
delta = ----------- =------------su b v e n ta n a lo n -1
y MAX_ATEN es un número real preestablecido mayor que 0.
Opcionalmente, en una realización, el procesador 1220 está configurado específicamente para: determinar la ventana de atenuación en el cuadro actual basado en la longitud de ventana de la ventana de atenuación en el cuadro actual; y modificar la ventana de análisis de predicción lineal inicial basada en la ventana de atenuación en el cuadro actual, donde los valores de atenuación de los valores desde el punto (L - sub_ventana_lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal modificada en relación con los valores de los puntos correspondientes desde el punto (L - sub_ventana_lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal inicial muestran una tendencia ascendente.
Opcionalmente, en una realización, el procesador 1220 está configurado específicamente para determinar la ventana de atenuación en el cuadro actual a partir de una pluralidad de ventanas de atenuación candidatas prealmacenadas basado en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde la pluralidad de las ventanas de atenuación candidatas corresponde a diferentes intervalos de valores de longitud de ventana, y no hay un conjunto de intersección entre los diferentes intervalos de valores de longitud de ventana.
Opcionalmente, en una realización, la ventana de atenuación en el cuadro actual cumple una fórmula:
su .b_vcntana(i) = i*---- M--A--X- = A--T--E--N-----, i . = 0,1, • ■ sub ,_ventana_ ,Ion- ,l,subvenlanalon-1
donde
sub_ventana(i) representa la ventana de atenuación en el cuadro actual, y MAX_ATEN es un número real preestablecido mayor que 0.
Opcionalmente, en una realización, la ventana de análisis de predicción lineal modificada cumple una fórmula:
jw(i), i = 0,1, •••,L-sub_ventana_lon-l
adp |vv(i)-sub ventana (i-(L-sub_vcntana_lon) ), i = I.-sub ventana Ion. -, L— 1 ’ donde
wadp(i) representa una función de ventana de la ventana de análisis de predicción lineal modificada, w(i) representa la ventana de análisis de predicción lineal inicial, y sub_ventana(.) representa la ventana de atenuación en el cuadro actual.
Opcionalmente, en una realización, el procesador 1220 está configurado específicamente para determinar la ventana de análisis de predicción lineal modificada a partir de una pluralidad de ventanas de análisis de predicción lineal candidatas almacenadas previamente basado en la longitud de la ventana de atenuación en el cuadro actual, donde la pluralidad de las ventanas de análisis de predicción lineal candidatas corresponde a diferentes intervalos de valores de longitud de ventana, y no hay un conjunto de intersección entre los diferentes intervalos de valores de longitud de ventana.
Opcionalmente, en una realización, antes de que el procesador 1220 determine la ventana de análisis de predicción lineal modificada basado en la longitud de ventana de la ventana de atenuación en el cuadro actual, el procesador 1220 se configura además para: modificar la longitud de ventana de la ventana de atenuación en el cuadro actual basado en un paso de intervalo preestablecido, para obtener una longitud de ventana modificada de la ventana de atenuación, donde el paso del intervalo es un entero positivo preestablecido; y determinar la ventana de análisis de predicción lineal modificada basándose en la ventana de análisis de predicción lineal inicial y la longitud de ventana modificada de la ventana de atenuación.
Opcionalmente, en una realización, la longitud de ventana modificada de la ventana de atenuación cumple con la fórmula:
sub_ventana_lon_mod= [sub_ventana_lon/lon_paso]*lon_paso
donde
sub_ventana_lon_mod representa la longitud de ventana modificada de la ventana de atenuación, y lon_paso representa el paso del intervalo.
Lo anterior describe el aparato de codificación de señales estéreo en las realizaciones de esta solicitud con referencia a la FIG. 11 y la FIG. 12. Lo siguiente describe un dispositivo terminal y un dispositivo de red en las realizaciones de esta solicitud con referencia a la FIG. 13 a la FIG. 18. Debe entenderse que el procedimiento de codificación de señales estéreo en las realizaciones de esta solicitud puede ser realizado por el dispositivo terminal o el dispositivo de red de la FIG. 13 a la FIG. 18. Además, el aparato de codificación en las realizaciones de esta solicitud puede estar dispuesto en el dispositivo terminal o en el dispositivo de red de la FIG. 13 a la FIG. 18. Específicamente, el aparato de codificación en las realizaciones de esta solicitud puede ser un codificador estéreo en el dispositivo terminal o en el dispositivo de red de la FIG. 13 a la FIG. 18.
Como se muestra en la FIG. 13, en la 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 del canal en un flujo de bits obtenido por el codificador estéreo. A continuación, el primer dispositivo terminal transmite, utilizando un primer dispositivo de red y un segundo dispositivo de red, los datos obtenidos después de la codificación del canal al segundo dispositivo terminal. 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 estéreo. Un decodificador estéreo del segundo dispositivo terminal restaura la señal estéreo a través de la decodificación, y el segundo 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 FIG. 13, el segundo dispositivo terminal también puede codificar la señal estéreo recopilada y finalmente transmitir, utilizando el segundo dispositivo de red y el primer dispositivo de red, los datos obtenidos después de la codificación al primer dispositivo terminal. El primer dispositivo terminal realiza la decodificación de canales y la decodificación estéreo de los datos para obtener la señal estéreo.
En la FIG. 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 cableada. El primer dispositivo de red y el segundo dispositivo de red pueden comunicarse entre sí en un canal digital.
El primer dispositivo terminal o el segundo dispositivo terminal de la FIG. 13 pueden realizar el procedimiento de codificación/decodificación de la señal estéreo en las realizaciones de esta solicitud. El aparato de codificación y el aparato de decodificación en las realizaciones de esta solicitud pueden ser respectivamente un codificador estéreo y un decodificador estéreo en el primer dispositivo terminal, o pueden ser respectivamente un codificador estéreo y un decodificador estéreo en el segundo dispositivo terminal.
En la comunicación de audio, un dispositivo de red puede implementar la transcodificación de un formato de códec de una señal de audio. Como se muestra en la FIG. 14, si un formato de códec de una señal recibida por un dispositivo de red es un formato de códec 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 (donde la señal puede transmitirse a un dispositivo terminal u otro dispositivo de red). Debe entenderse que un formato de códec correspondiente al codificador estéreo de la FIG. 14 es diferente del formato de códec correspondiente al otro decodificador estéreo. Suponiendo que el formato de códec correspondiente al otro decodificador estéreo es un primer formato de códec, y que el formato de códec correspondiente al codificador estéreo es un segundo formato de códec, en la FIG. 14, el dispositivo de red implementa la conversión de una señal de audio del primer formato de códec al segundo formato de códec.
De manera similar, como se muestra en la FIG. 15, si un formato de códec de una señal recibida por un dispositivo de red es el mismo que un formato de códec correspondiente a un decodificador estéreo, después de que un decodificador de canal del dispositivo de red realiza 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 la señal estéreo. A continuación, otro codificador estéreo codifica la señal estéreo basándose en otro formato de códec, 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 al otro codificador estéreo para obtener una señal final (donde la señal puede transmitirse a un dispositivo terminal u otro dispositivo de red). Similar al caso de la FIG. 14, el formato de códec correspondiente al decodificador estéreo de la FIG. 15 también es diferente de un formato de códec correspondiente al otro codificador estéreo. Si el formato de códec correspondiente al otro codificador estéreo es un primer formato de códec, y el formato de códec correspondiente al descodificador estéreo es un segundo formato de códec, en la FIG. 15, el dispositivo de red implementa la conversión de una señal de audio del segundo formato de códec al primer formato de códec.
El otro decodificador estéreo y el codificador estéreo de la FIG. 14 corresponden a diferentes formatos de códec, y el decodificador estéreo y el otro codificador estéreo de la FIG. 15 corresponden a diferentes formatos de códec. Por lo tanto, la transcodificación de un formato de códec de una señal estéreo se implementa mediante el procesamiento realizado por el otro decodificador estéreo y el codificador estéreo o realizado por el decodificador estéreo y el otro codificador estéreo.
Debe entenderse además que el codificador estéreo de la FIG. 14 puede implementar el procedimiento de codificación de señales estéreo en las realizaciones de esta solicitud, y el decodificador estéreo en la FIG. 15 puede implementar el procedimiento de decodificación de señales 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 FIG. 14. El aparato de decodificación en las realizaciones de esta solicitud puede ser el decodificador estéreo en el dispositivo de red de la FIG. 15. Además, los dispositivos de red de la FIG. 14 y FIG. 15 pueden ser específicamente dispositivos de comunicaciones de red inalámbrica o dispositivos de comunicaciones de red cableada.
Como se muestra en la FIG. 16, en la 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, donde 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 realizar la codificación de canal en el flujo de bits obtenido por el codificador multicanal. A continuación, el primer dispositivo terminal transmite, utilizando un primer dispositivo de red y un segundo dispositivo de red, los datos obtenidos después de la codificación del canal al segundo dispositivo terminal. 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 una señal estéreo. Un decodificador estéreo en un decodificador multicanal del segundo dispositivo terminal restaura la señal estéreo a través de la decodificación. El decodificador multicanal obtiene la señal multicanal a través de la decodificación basada en la señal estéreo restaurada, y 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 FIG. 16, el segundo dispositivo terminal también puede codificar la señal multicanal recopilada (específicamente, un codificador estéreo en un codificador multicanal en el segundo dispositivo terminal realiza la codificación estéreo en una señal estéreo generada a partir de la señal multicanal recopilada. El dispositivo terminal realiza la codificación de canales en un flujo de bits obtenido por el codificador multicanal) y finalmente transmite el flujo de bits codificado al primer dispositivo terminal utilizando el segundo dispositivo de red y el primer dispositivo de red. El primer dispositivo terminal obtiene la señal multicanal mediante decodificación de canal y decodificación multicanal.
En la FIG. 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 cableada. El primer dispositivo de red y el segundo dispositivo de red pueden comunicarse entre sí en un canal digital.
El primer dispositivo terminal o el segundo dispositivo terminal de la FIG. 16 puede realizar el procedimiento de codificación/decodificación de señales 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 en 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 en el segundo dispositivo terminal.
En la comunicación de audio, un dispositivo de red puede implementar la transcodificación de un formato de códec de una señal de audio. Como se muestra en la FIG. 17, si un formato de códec de una señal recibida por un dispositivo de red es un formato de códec correspondiente a otro descodificador multicanal, un descodificador 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, donde 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 (donde la señal puede transmitirse a un dispositivo terminal u otro dispositivo de red).
De manera similar, como se muestra en la FIG. 18, si un formato de códec de una señal recibida por un dispositivo de red es el mismo que un formato de códec correspondiente a un decodificador multicanal, después de que un decodificador de canal del dispositivo de red realiza 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 la señal multicanal. 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 basándose en otro formato de códec, para obtener un flujo de bits codificado de una señal multicanal correspondiente a otro codificador multicanal. Finalmente, un codificador de canal realiza la codificación de canal en el flujo de bits codificado correspondiente al otro codificador multicanal para obtener una señal final (donde la señal puede transmitirse a un dispositivo terminal u otro dispositivo de red).
Debe entenderse que, el otro decodificador estéreo y el codificador multicanal de la FIG. 17 corresponden a diferentes formatos de códec, y el decodificador multicanal y el otro codificador estéreo de la FIG. 18 corresponden a diferentes formatos de códec. Por ejemplo, en la FIG. 17, si el formato de códec correspondiente a otro decodificador estéreo es un primer formato de códec, y el formato de códec correspondiente al codificador multicanal es un segundo formato de códec, el dispositivo de red implementa la conversión de una señal de audio del primer formato de códec al segundo formato de códec . Similarmente, en la FIG. 18, suponiendo que el formato de códec correspondiente al decodificador multicanal es un segundo formato de códec, y el formato de códec correspondiente al otro codificador estéreo es un primer formato de códec, la conversión de una señal de audio del segundo formato de códec al primer formato de códec es implementada por el dispositivo de red. Por lo tanto, la transcodificación de un formato de códec de una señal de audio se implementa mediante el procesamiento realizado por el otro decodificador estéreo y el codificador multicanal o realizado por el decodificador multicanal y el otro codificador estéreo.
Debe entenderse además que el codificador estéreo de la FIG. 17 puede implementar el procedimiento de codificación de señales estéreo en las realizaciones de esta aplicación, y el decodificador estéreo de la FIG. 18 puede implementar el procedimiento de decodificación de señales 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 FIG. 17. El aparato de decodificación en las realizaciones de esta solicitud puede ser el decodificador estéreo en el dispositivo de red de la FIG. 18. Además, los dispositivos de red de la FIG. 17 y la FIG. 18 pueden ser específicamente dispositivos de comunicaciones de red inalámbrica o dispositivos de comunicaciones de red cableada.
Esta solicitud además proporciona un chip. El chip incluye un procesador y una interfaz de comunicaciones. La interfaz de comunicaciones está configurada para comunicarse con un componente externo y el procesador está configurado para realizar el procedimiento de codificación de señales estéreo en las realizaciones de esta solicitud.
Opcionalmente, en una implementación, el chip puede incluir además una memoria. La memoria almacena una instrucción y el procesador está configurado para ejecutar la instrucción almacenada en la memoria. Cuando se ejecuta la instrucción, el procesador está configurado para realizar el procedimiento de codificación de señal estéreo en las realizaciones de esta solicitud.
Opcionalmente, en una implementación, el chip se integra en un dispositivo terminal o en un dispositivo de red. Esta solicitud proporciona un medio de almacenamiento legible por ordenador. El medio de almacenamiento legible por ordenador está configurado para almacenar código de programa ejecutado por un dispositivo, y el código de programa incluye una instrucción utilizada para realizar el procedimiento de codificación de señal estéreo en las realizaciones de esta solicitud.
Un experto en la materia puede ser consciente de que, en combinación con los ejemplos descritos en las realizaciones descritas en esta especificación, las unidades y las etapas logarítmicas pueden implementarse mediante hardware electrónico o una combinación de programas informáticos y hardware electrónico. Si las funciones se efectúan 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 materia puede usar diferentes procedimientos para implementar las funciones descritas para cada solicitud particular, pero no debe considerarse que la implementación va más allá del alcance de esta solicitud.
Los expertos en la materia pueden entender claramente que, con el propósito de una descripción conveniente y breve, para un procedimiento de trabajo detallado del sistema, aparato y unidad anteriores, se refiere a un procedimiento correspondiente en las realizaciones del procedimiento anterior, y los detalles no se describen en esta invención nuevamente.
En las varias realizaciones proporcionadas en esta solicitud, se debe entender que el sistema, aparato y procedimientos descritos se pueden implementar de otras maneras. Por ejemplo, las realizaciones del aparato descritas son solo ejemplos. Por ejemplo, la división en conjuntos es solo la división de la función lógica y puede ser otra división en la implementación real. Por ejemplo, se pueden combinar o integrar una pluralidad de unidades o componentes en otro sistema, o algunas características se pueden ignorar o no realizar. Además, los acoplamientos mutuos o acoplamientos directos o conexiones de comunicación que se muestran o se analizan, se pueden implementar usando otras interfaces. Los acoplamientos indirectos o conexiones de comunicación entre los aparatos o conjuntos se pueden implementar en formas electrónicas, mecánicas u otras formas.
Las unidades descritas como partes separadas pueden estar o no físicamente separadas, y las partes mostradas como unidades pueden ser o no unidades físicas, pueden estar situadas en una posición, o pueden estar distribuidas en una pluralidad de unidades de red. Algunos o todos los conjuntos pueden seleccionarse según los requisitos reales para lograr los objetivos de las soluciones de las realizaciones.
Además, los conjuntos funcionales en las realizaciones de esta solicitud se pueden integrar en un conjunto de procesamiento, o cada uno de los conjuntos puede existir solo físicamente, o dos o más conjuntos se integran en un conjunto.
Cuando las funciones se implementan en forma de un conjunto funcional de software y se vende o se usa como un producto independiente, las funciones se pueden almacenar en un medio de almacenamiento legible por ordenador. Basándose en dicho entendimiento, las soluciones técnicas de esta solicitud esencialmente, o la parte que contribuye a la técnica anterior, o algo de las soluciones técnicas, se pueden implementar en forma de un producto de software. El producto de software informático se almacena en un medio de almacenamiento e incluye varias instrucciones para dar instrucciones a un dispositivo informático (que puede ser un ordenador personal, un servidor o un dispositivo de red) para realizar todas o una parte de las etapas de los procedimientos descritos en las realizaciones de esta solicitud. El medio de almacenamiento anterior incluye cualquier medio que pueda almacenar código de programa, 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 solamente 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 materia dentro del alcance técnico divulgado en esta solicitud, estará dentro del alcance de protección de esta solicitud de acuerdo a lo definido por las reivindicaciones adjuntas. Por lo tanto, el alcance de protección de esta solicitud se someterá al alcance de protección de las reivindicaciones.

Claims (15)

REIVINDICACIONES
1. Un procedimiento de codificación de señales estéreo, que comprende:
determinar (310) una longitud de ventana de una ventana de atenuación en un cuadro actual basado en una diferencia de tiempo entre canales en el cuadro actual;
determinar (320) una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde los valores de al menos algunos puntos desde un punto (L -sub_ventana_lon) a un punto (L - 1) en la ventana de análisis de predicción lineal modificada son menores que los valores de los puntos correspondientes desde un punto (L - sub_ventana_lon) a un punto (L - 1) en una ventana de análisis de predicción lineal inicial, sub_ventana_lon representa la longitud de ventana de la ventada atenuación en el cuadro actual, L representa una longitud de ventana de la ventana de análisis de predicción lineal modificada, y la longitud de ventana de la ventana de análisis de predicción lineal modificada es igual a una longitud de ventana de la ventana de análisis de predicción lineal; y
realizar (330) análisis de predicción lineal en una señal de canal de sonido a procesar basado en la ventana de análisis de predicción lineal modificada.
2. El procedimiento según la reivindicación 1, donde un valor de cualquier punto desde el punto (L -sub_ventana_lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal modificada es menor que el valor de un punto correspondiente desde el punto (L - sub_vemtana_lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal inicial.
3. El procedimiento según la reivindicación 1 o 2, donde la determinación de una longitud de ventana de una ventana de atenuación en un cuadro actual basado en una diferencia de tiempo entre canales en el cuadro actual comprende:
determinar la longitud de ventana de la ventana de atenuación en el cuadro actual basada en la diferencia de tiempo entre canales en el cuadro actual y una longitud preestablecida de un segmento de transición.
4. El procedimiento según la reivindicación 3, donde la determinación de la longitud de ventana de la ventana de atenuación en el cuadro actual basado en la diferencia de tiempo entre canales en el cuadro actual y una longitud preestablecida de un segmento de transición comprende:
determinar una suma de un valor absoluto de la diferencia de tiempo entre canales en el cuadro actual y la longitud preestablecida del segmento de transición como la longitud de ventana de la ventana de atenuación en el cuadro actual.
5. El procedimiento según la reivindicación 3, donde la determinación de la longitud de ventana de la ventana de atenuación en el cuadro actual basado en la diferencia de tiempo entre canales en el cuadro actual y una longitud preestablecida de un segmento de transición comprende:
cuando un valor absoluto de la diferencia de tiempo entre canales en el cuadro actual es mayor o igual que la longitud preestablecida del segmento de transición, determinando una suma del valor absoluto de la diferencia de tiempo entre canales en el cuadro actual y la longitud preestablecida del segmento de transición como la longitud de ventana de la ventana de atenuación en el cuadro actual; o
cuando un valor absoluto de la diferencia de tiempo entre canales en el cuadro actual es menor que la longitud preestablecida del segmento de transición, determinando N veces el valor absoluto de la diferencia de tiempo entre canales en el cuadro actual como la longitud de ventana de la ventana de atenuación en el cuadro actual, donde N es un número real preestablecido mayor que 0 y menor que L/MAX RETARDO, y MAX_RETARDO es un número real preestablecido mayor que 0.
6. El procedimiento según una cualquiera de las reivindicaciones 2 a 5, donde la determinación de una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventada de atenuación en el cuadro actual comprende:
modificar la ventana de análisis de predicción lineal inicial basada en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde los valores de atenuación de los valores del punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada en relación con los valores de los puntos correspondientes desde el punto (L - sub_ventana_lon ) hasta el punto (L - 1) en la ventana de análisis de predicción lineal inicial muestran una tendencia ascendente.
7. El procedimiento según la reivindicación 6, donde la ventana de análisis de predicción lineal modificada cumple una fórmula:
, fw (ii i = 0,1, —, L-sub_ventana_lon-1
adp }w(i)—[i— (L-sub_ventana_lon) ]*delta, i= L-sub vcntana lon, —,L - 1 ’ donde
Wadp(i) representa la ventana de análisis de predicción lineal modificada, w (i) representa la ventana de análisis de predicción lineal inicial,
, , MAX ATEN
delta = ----------- -------------sub ventana lon-1
y MAX_ATEN es un número real preestablecido mayor que 0.
8. El procedimiento según una cualquiera de las reivindicaciones 2 a 5, donde la determinación de una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual comprende:
determinar la ventana de atenuación en el cuadro actual basándose en la longitud de ventana de la ventana de atenuación en el cuadro actual; y
modificar la ventana de análisis de predicción lineal inicial basada en la ventana de atenuación en el cuadro actual, donde los valores de atenuación de los valores del punto (L - sub_ventana_lon) al punto (L - 1) en la ventana de análisis de predicción lineal modificada en relación con los valores de los puntos correspondientes desde el punto (L - sub_ventana_lon) hasta el punto (L - 1) en la ventana de análisis de predicción lineal inicial muestran una tendencia ascendente.
9. El procedimiento según la reivindicación 8, donde la determinación de la ventana de atenuación en el cuadro actual basado en la longitud de ventana de la ventana de atenuación en el cuadro actual comprende: determinar la ventana de atenuación en el cuadro actual a partir de una pluralidad de ventanas de atenuación candidatas pre-almacenadas con base en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde la pluralidad de ventanas de atenuación candidatas corresponde a diferentes intervalos de valores de longitud de ventana, y no hay intersección establecida entre los diferentes intervalos de valores de longitud de ventana.
10. El procedimiento según la reivindicación 8, donde la ventana de atenuación en el cuadro actual cumple una fórmula:
su ,b_ven .tana ^ (íj = i .* r ----- M---A--X--= A---l-'E--N-------, i . = 0 .1 ,. ■••,su ,b_ven .tana_ ,lon-l ,,
sub ventana lon-1
donde
la sub-ventana (i) representa la ventana de atenuación en el cuadro actual, y MAX_ATEN es un número real preestablecido mayor que 0.
11. El procedimiento según la reivindicación 10, donde la ventana de análisis de predicción lineal modificada cumple una fórmula:
„ (vv(i), i = 0.1, •••,L-sub_ventana_lon-l
Figure imgf000036_0001
donde
Wadp(i) representa una función de ventana de la ventana de análisis de predicción lineal modificada, w(i) representa la ventana de análisis de predicción lineal inicial, y sub_ventana(.) representa la ventana de atenuación en el cuadro actual.
12. El procedimiento según una cualquiera de las reivindicaciones 2 a 5, donde la determinación de una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual comprende:
determinar la ventana de análisis de predicción lineal modificada a partir de una pluralidad de ventanas de análisis de predicción lineal candidatas basado en la longitud de ventana de la ventana de atenuación en el cuadro actual, donde la pluralidad de ventanas de análisis de predicción lineal candidatas corresponde a diferentes intervalos de valores de longitud de ventana, y no hay intersección establecida entre los diferentes intervalos de valores de longitud de ventana.
13. El procedimiento según una cualquiera de las reivindicaciones 1 a 12, donde antes de determinar una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual, el procedimiento comprende además:
modificar la longitud de ventana de la ventana de atenuación en el cuadro actual basado en un paso de intervalo preestablecido, para obtener una longitud de ventana modificada de la ventana de atenuación, donde el paso del intervalo es un entero positivo preestablecido; y
la determinación de una ventana de análisis de predicción lineal modificada basada en la longitud de ventana de la ventana de atenuación en el cuadro actual comprende:
determinar la ventana de análisis de predicción lineal modificada basado en la ventana de análisis de predicción lineal inicial y la longitud de ventana de la ventana de atenuación.
14. El procedimiento según la reivindicación 13, donde la longitud de ventana modificada de la ventana de atenuación cumple con la fórmula:
sub_ventana_l on_m od= [sub_ventana_l on/1 on_paso] * 1 on_paso,
donde
sub_ventana_lon_mod representa la longitud de ventana modificada de la ventana de atenuación, y lon_paso representa el paso del intervalo.
15. Un aparato de codificación (1200), que comprende:
una memoria (1210) configurada para almacenar un programa; y
un procesador (1220), configurado para ejecutar el programa almacenado en la memoria (1210), y cuando se ejecuta el programa en la memoria (1210), el procesador (1220) está configurado para realizar el procedimiento según cualquiera de las reivindicaciones 1 a 14.
ES18848208T 2017-08-23 2018-08-21 Procedimiento de codificación y aparato de codificación para señal estéreo Active ES2873880T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710731482.1A CN109427338B (zh) 2017-08-23 2017-08-23 立体声信号的编码方法和编码装置
PCT/CN2018/101524 WO2019037714A1 (zh) 2017-08-23 2018-08-21 立体声信号的编码方法和编码装置

Publications (1)

Publication Number Publication Date
ES2873880T3 true ES2873880T3 (es) 2021-11-04

Family

ID=65438398

Family Applications (1)

Application Number Title Priority Date Filing Date
ES18848208T Active ES2873880T3 (es) 2017-08-23 2018-08-21 Procedimiento de codificación y aparato de codificación para señal estéreo

Country Status (6)

Country Link
US (2) US11244691B2 (es)
EP (2) EP3664089B1 (es)
KR (2) KR102380642B1 (es)
CN (1) CN109427338B (es)
ES (1) ES2873880T3 (es)
WO (1) WO2019037714A1 (es)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109427338B (zh) 2017-08-23 2021-03-30 华为技术有限公司 立体声信号的编码方法和编码装置
CN113129910A (zh) * 2019-12-31 2021-07-16 华为技术有限公司 音频信号的编解码方法和编解码装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5956674A (en) * 1995-12-01 1999-09-21 Digital Theater Systems, Inc. Multi-channel predictive subband audio coder using psychoacoustic adaptive bit allocation in frequency, time and over the multiple channels
SE519552C2 (sv) * 1998-09-30 2003-03-11 Ericsson Telefon Ab L M Flerkanalig signalkodning och -avkodning
GB2453117B (en) 2007-09-25 2012-05-23 Motorola Mobility Inc Apparatus and method for encoding a multi channel audio signal
KR101441896B1 (ko) * 2008-01-29 2014-09-23 삼성전자주식회사 적응적 lpc 계수 보간을 이용한 오디오 신호의 부호화,복호화 방법 및 장치
TW200945098A (en) * 2008-02-26 2009-11-01 Koninkl Philips Electronics Nv Method of embedding data in stereo image
US8355921B2 (en) * 2008-06-13 2013-01-15 Nokia Corporation Method, apparatus and computer program product for providing improved audio processing
CN102307323B (zh) * 2009-04-20 2013-12-18 华为技术有限公司 对多声道信号的声道延迟参数进行修正的方法
US9424852B2 (en) * 2011-02-02 2016-08-23 Telefonaktiebolaget Lm Ericsson (Publ) Determining the inter-channel time difference of a multi-channel audio signal
JP5705086B2 (ja) * 2011-10-14 2015-04-22 日本電信電話株式会社 声道スペクトル抽出装置、声道スペクトル抽出方法及びプログラム
KR101662681B1 (ko) * 2012-04-05 2016-10-05 후아웨이 테크놀러지 컴퍼니 리미티드 멀티채널 오디오 인코더 및 멀티채널 오디오 신호 인코딩 방법
EP2838086A1 (en) * 2013-07-22 2015-02-18 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. In an reduction of comb filter artifacts in multi-channel downmix with adaptive phase alignment
WO2017049397A1 (en) * 2015-09-25 2017-03-30 Voiceage Corporation Method and system using a long-term correlation difference between left and right channels for time domain down mixing a stereo sound signal into primary and secondary channels
US9978381B2 (en) * 2016-02-12 2018-05-22 Qualcomm Incorporated Encoding of multiple audio signals
CN109427338B (zh) 2017-08-23 2021-03-30 华为技术有限公司 立体声信号的编码方法和编码装置

Also Published As

Publication number Publication date
EP3664089B1 (en) 2021-03-31
US11636863B2 (en) 2023-04-25
KR20220044857A (ko) 2022-04-11
EP3664089A4 (en) 2020-08-19
US20220108709A1 (en) 2022-04-07
KR102380642B1 (ko) 2022-03-29
EP3901949B1 (en) 2022-12-28
KR20200039789A (ko) 2020-04-16
US11244691B2 (en) 2022-02-08
WO2019037714A1 (zh) 2019-02-28
EP3901949A1 (en) 2021-10-27
EP3664089A1 (en) 2020-06-10
CN109427338B (zh) 2021-03-30
US20200194015A1 (en) 2020-06-18
KR102486258B1 (ko) 2023-01-09
CN109427338A (zh) 2019-03-05

Similar Documents

Publication Publication Date Title
ES2902587T3 (es) Decodificador de audio y método para proporcionar una información de audio decodificada usando una ocultación de error que modifica una señal de excitación de dominio de tiempo
ES2805744T3 (es) Decodificador de audio y método para proporcionar una información de audio decodificada usando un ocultamiento de errores en base a una señal de excitación de dominio de tiempo
ES2928335T3 (es) Método para codificar señales multicanal y codificador
TWI606441B (zh) 解碼裝置
ES2966665T3 (es) Dispositivo y método de codificación de audio
US11705142B2 (en) Signal encoding method and device and signal decoding method and device
CN105164749B (zh) 多声道音频的混合编码
EP3605847A1 (en) Multichannel signal encoding and decoding methods, and codec
KR20160072145A (ko) 리던던트 프레임 정보를 통신하는 시스템들 및 방법들
ES2873880T3 (es) Procedimiento de codificación y aparato de codificación para señal estéreo
KR102288111B1 (ko) 스테레오 신호의 인코딩 및 디코딩 방법과, 인코딩 및 디코딩 장치
JP2024059683A (ja) マルチチャネル信号符号化方法、マルチチャネル信号復号化方法、符号器、及び復号器
US10388293B2 (en) Signal encoding method and device and signal decoding method and device
US11922958B2 (en) Method and apparatus for determining weighting factor during stereo signal encoding
ES2886505T3 (es) Método y aparato de procesamiento de señales estéreo
WO2019037710A1 (zh) 立体声信号编码时重建信号的方法和装置
RU2022105356A (ru) Кодирование и декодирование битовых потоков ivas