ES2283613T3 - Metodo de modificacion de señales para la codificacion eficaz de señales de voz. - Google Patents
Metodo de modificacion de señales para la codificacion eficaz de señales de voz. Download PDFInfo
- Publication number
- ES2283613T3 ES2283613T3 ES02784985T ES02784985T ES2283613T3 ES 2283613 T3 ES2283613 T3 ES 2283613T3 ES 02784985 T ES02784985 T ES 02784985T ES 02784985 T ES02784985 T ES 02784985T ES 2283613 T3 ES2283613 T3 ES 2283613T3
- Authority
- ES
- Spain
- Prior art keywords
- signal
- long
- delay
- frame
- voice
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000002715 modification method Methods 0.000 title abstract description 13
- 238000000034 method Methods 0.000 claims abstract description 95
- 230000004048 modification Effects 0.000 claims abstract description 92
- 238000012986 modification Methods 0.000 claims abstract description 92
- 230000007774 longterm Effects 0.000 claims abstract description 53
- 238000006073 displacement reaction Methods 0.000 claims description 27
- 230000015572 biosynthetic process Effects 0.000 claims description 8
- 239000003607 modifier Substances 0.000 claims 1
- 230000005236 sound signal Effects 0.000 abstract description 22
- 238000001914 filtration Methods 0.000 abstract description 8
- 238000004458 analytical method Methods 0.000 abstract description 5
- 238000012545 processing Methods 0.000 abstract description 3
- 238000013507 mapping Methods 0.000 abstract 1
- 230000005284 excitation Effects 0.000 description 42
- 230000003044 adaptive effect Effects 0.000 description 17
- 238000004891 communication Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 238000007781 pre-processing Methods 0.000 description 9
- 230000007246 mechanism Effects 0.000 description 8
- 238000003786 synthesis reaction Methods 0.000 description 8
- 230000002123 temporal effect Effects 0.000 description 8
- 230000010355 oscillation Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 6
- 230000011218 segmentation Effects 0.000 description 6
- 238000007796 conventional method Methods 0.000 description 5
- 238000005070 sampling Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000002542 deteriorative effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000002650 habitual effect Effects 0.000 description 3
- 238000011002 quantification Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000012952 Resampling Methods 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 108700041286 delta Proteins 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000009182 swimming Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/09—Long term prediction, i.e. removing periodical redundancies, e.g. by using adaptive codebook or pitch predictor
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/12—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
Abstract
Método para formar un contorno de retardo que caracteriza una predicción de largo plazo en una técnica que usa una modificación de la señal para codificar digitalmente una señal de voz, comprendiendo el método: dividir la señal de voz en una serie de tramas sucesivas; localizar un impulso de altura tonal de la señal de voz en una trama anterior; y localizar un impulso de altura tonal de la señal de voz en una trama en curso; caracterizado porque se forma un contorno de retardo seleccionando un parámetro de retardo de predicción de largo plazo para la trama en curso mediante una iteración hacia atrás de una función de una variable de tiempo temporal, la ubicación del impulso de la altura tonal de la señal de voz en la trama anterior y la ubicación del impulso de la altura tonal de la señal de voz en la trama en curso.
Description
Método de modificación de señales para la
codificación eficaz de señales de voz.
La presente invención se refiere en general a la
codificación y decodificación de señales de sonido en sistemas de
comunicaciones. Más específicamente, la presente invención se
refiere a una técnica de modificación de la señales aplicable, en
particular aunque no de forma exclusiva, a la codificación de
predicción lineal con excitación por código (CELP).
La necesidad de técnicas eficaces de
codificación digital de voz de banda estrecha y de banda ancha con
una buena solución de compromiso entre la calidad subjetiva y la
velocidad binaria está creciendo en varias áreas de aplicación
tales como la teleconferencia, multimedia y las comunicaciones
inalámbricas. Hasta hace poco, en aplicaciones de codificación de
voz se ha utilizado principalmente el ancho de banda telefónico
acotado a un intervalo de entre 200 y 3.400 Hz. Sin embargo, las
aplicaciones de voz de banda ancha proporcionan una mayor
inteligibilidad y naturalidad en la comunicación en comparación con
el ancho de banda telefónico convencional. Se ha observado que un
ancho de banda en el intervalo de entre 50 y 7.000 Hz es suficiente
para proporcionar una buena calidad que ofrece una impresión de una
comunicación presencial. Para señales de audio en general, este
ancho de banda proporciona una calidad subjetiva aceptable, aunque
la misma es todavía menor que la calidad de la radio FM o del CD
que funcionan en intervalos de entre 20 y 16.000 Hz y de entre 20 y
20.000 Hz, respectivamente.
Un codificador de voz convierte una señal de voz
en un flujo de bits digital que se transmite sobre un canal de
comunicaciones o se almacena en un medio de almacenamiento. La señal
de voz se digitaliza, es decir se muestrea y cuantifica,
normalmente con 16 bits por muestra. El codificador de voz tiene la
función de representar estas muestras digitales con un número menor
de bits al mismo tiempo que manteniendo una buena calidad de voz
subjetiva. El decodificador o sintetizador de voz actúa sobre el
flujo de bits transmitido o almacenado y lo convierte de nuevo a
una señal de sonido.
La Codificación de Predicción Lineal con
Excitación por Código (CELP) es una de las mejores técnicas para
lograr un buen compromiso entre la calidad subjetiva y la velocidad
binaria. Esta técnica de codificación es el fundamento de varias
normas de codificación de voz tanto en aplicaciones inalámbricas
como alámbricas. En la codificación CELP, la señal de voz
muestreada se procesa en bloques sucesivos de N muestras
denominados habitualmente tramas, en las que N es un
número predeterminado que se corresponde típicamente con entre 10 y
30 ms. Se calcula y transmite un filtro de predicción lineal (LP)
cada trama. El cálculo del filtro LP típicamente requiere una
anticipación, es decir, un segmento de voz de entre 5 y 10 ms
de la trama subsiguiente. La trama de N muestras se divide
en bloques menores denominados subtramas. Normalmente el
número de subtramas es de tres o cuatro dando como resultado
subtramas de entre 4 y 10 ms. En cada subtrama, normalmente se
obtiene una señal de excitación a partir de dos componentes: una
excitación antigua y una excitación innovadora de libro de códigos
fijo. Al componente formado a partir de la excitación antigua se le
denomina frecuentemente excitación por altura tonal o de libro de
códigos adaptativo. Los parámetros que caracterizan la señal de
excitación se codifican y transmiten al decodificador, en el que la
señal de excitación reconstruida se utiliza como la entrada del
filtro
LP.
LP.
En la codificación CELP convencional, la
predicción de largo plazo para establecer una correspondencia de la
excitación antigua con la actual se realiza normalmente basándose en
cada subtrama. La predicción de largo plazo se caracteriza por un
parámetro de retardo y una ganancia de altura tonal que son
normalmente calculados, codificados y transmitidos al decodificador
para cada subtrama. A velocidades binarias bajas, estos parámetros
consumen una proporción sustancial del total de bits disponible. Las
técnicas de modificación de la señal [1-7]:
[1] W. B. Kleijn, P. Kroon, y D.
Nahumi, "The RCELP speech-coding
algorithm", European Transactions on Telecommunications, Vol. 4,
nº 5, págs. 573 a 582, 1994.
[2] W. B. Kleijn, R. P.
Ramachandran y P. Kroon, "Interpolation of the
pitch-predictor parameters in
analysis-by-synthesis speech
coders", IEEE Transactions on Speech and Audio Processing, Vol.
2, nº 1, págs. 42 a 54, 1994.
[3] Y. Gao, A. Benyassine, J.
Thyssen, H. Su, y E. Shlomot,
"EX-CELP: A speech coding paradigm", IEEE
International Conference on Acoustics, Speech and Signal Processing
(ICASSP), Salt Lake City, Utah, U.S.A., págs. 689 a 692, 7 a 11 mayo
de 2001.
[4] Patente US nº 5.704.003, "RCELP coder",
Lucent Technologies Inc., (W. B. Kleijn y D. Nahumi), fecha de
presentación: 19 de septiembre de 1995.
[5] Solicitud de patente europea 0 602 826 A2,
"Time shifting for
analysis-by-synthesis coding",
AT&T Corp., (B. Kleijn), fecha de presentación: 1 de diciembre
de 1993.
[6] Solicitud de patente WO 00/11653, "Speech
encoder with continuous warping combined with long term
prediction", Conexant Systems Inc., (Y. Gao), fecha de
presentación: 24 de agosto de 1999.
[7] Solicitud de patente WO 00/11654, "Speech
encoder adaptively applying pitch preprocessing with continuous
warping", Conexant Systems Inc., (H. Su y Y. Gao), fecha de
presentación: 24 agosto de 1999.
mejoran el rendimiento de la
predicción de largo plazo a velocidades binarias bajas ajustando la
señal a codificar. Esta opción se realiza adaptando la evolución de
los ciclos de la altura tonal en la señal de voz de manera que se
correspondan con el retardo de predicción de largo plazo,
permitiendo transmitir solo un parámetro de retardo por trama. La
modificación de la señal se basa en la premisa de que es posible
convertir en inaudible la diferencia entre la señal de voz
modificada y la señal de voz original. A los codificadores CELP que
utilizan la modificación de la señal se les denomina frecuentemente
codificadores de análisis por síntesis generalizada o CELP
relajados
(RCELP).
Las técnicas de modificación de la señal ajustan
la altura tonal de la señal a un contorno de retardo predeterminado.
La predicción de largo plazo a continuación establece una
correspondencia de la señal de excitación antigua con la subtrama
actual utilizando este contorno de retardo y aplicando un escalado
según un parámetro de ganancia. El contorno de retardo se obtiene
directamente realizando una interpolación entre dos estimaciones de
altura tonal de bucle abierto, obteniéndose la primera en la trama
previa y la segunda en la trama en curso. La interpolación
proporciona un valor de retardo para cada instante de tiempo de la
trama. Después de que el contorno de retardo esté disponible, la
altura tonal en la subtrama a codificar en ese momento se ajusta
para seguir este contorno artificial mediante alineamiento por
deformación temporal, es decir, cambiando la escala de tiempo de la
señal.
En el alineamiento por deformación temporal
discontinua [1, 4 y 5]
[1] W. B. Kleijn, P. Kroon, y D.
Nahumi, "The RCELP speech-coding
algorithm", European Transactions on Telecommunications, Vol. 4,
nº 5, págs. 573 a 582, 1994.
[4] Patente US nº 5.704.003, "RCELP coder",
Lucent Technologies Inc., (W. B.Kleijn y D. Nahumi), fecha de
presentación: 19 de septiembre de 1995.
[5] Solicitud de patente europea 0 602 826 A2,
"Time shifting for
analysis-by-synthesis coding",
A&T Corp., (B. Kleijn), fecha de presentación: 1 de diciembre
de 1993.
se desplaza en el tiempo un segmento de señal
sin alterar la longitud del segmento. El alineamiento por
deformación temporal discontinua requiere un procedimiento para
gestionar las partes de señal resultantes superpuestas o pérdidas.
El alineamiento por deformación temporal continua [2, 3, 6,
7]
[2] W. B. Kleijn, R. P.
Ramachandran, y P. Kroon, "Interpolation of the
pitch-predictor parameters in
analysis-by-synthesis speech
coders", IEEE Transactions on Speech and Audio Processing, Vol.
2, nº 1, págs. 42 a 54, 1994.
[3] Y. Gao, A. Benyassine, J.
Thyssen, H. Su, y E. Shlomot,
"EX-CELP: A speech coding paradigm", IEEE
International Conference on Acoustics, Speech and Signal Processing
(ICASSP), Salt Lake City, Utah, U.S.A., págs. 689 a 692, 7 a 11
mayo 2001.
[6] Solicitud de patente WO 00/11653, "Speech
encoder with continuous warping combined with long term
prediction", Conexant Systems Inc., (Y. Gao), fecha de
presentación: 24 de agosto de 1999.
[7] Solicitud de patente WO 00/11654, "Speech
encoder adaptively applying pitch preprocessing with continuous
warping", Conexant Systems Inc., (H. Su y Y. Gao), fecha de
presentación: 24 agosto de 1999.
bien contrae o bien extiende un
segmento de señal. Esta opción se realiza utilizando una
aproximación continua en el tiempo para el segmento de señal y
volviendo a muestrearla hasta una longitud deseada con intervalos
de muestreo diferentes determinados sobre la base del contorno de
retardo. Para reducir los artefactos en estas operaciones, el
cambio tolerado en la escala de tiempo se mantiene a un valor
reducido. Por otra parte, el alineamiento por deformación temporal
se realiza típicamente utilizando la señal residual LP o la señal
de voz ponderada para reducir las distorsiones resultantes. El uso
de estas señales en lugar de la señal de voz también facilita la
detección de impulsos de altura tonal y zonas de baja energía entre
ellos, y por lo tanto la determinación de los segmentos de señal
para el alineamiento por deformación temporal. La señal de voz
modificada concreta se genera por filtrado
inverso.
Después de que se haya realizado la modificación
de la señal para la subtrama en curso, la codificación puede
proseguir según cualquiera de las maneras convencionales excepto que
la excitación de libro de códigos adaptativo se genera usando el
contorno de retardo predeterminado. Esencialmente, se pueden usar
las mismas técnicas de modificación de la señal en la codificación
CELP tanto de banda estrecha como de banda ancha.
Las técnicas de modificación de la señal también
se pueden aplicar en otros tipos de métodos codificación de voz
tales como la codificación por interpolación de formas de ondas y la
codificación sinusoidal, por ejemplo, según la referencia [8].
[8] Patente US nº 6.223.151, "Method and
apparatus for pre-processing speech signals prior to
coding by transform-based speech coders",
Telefon Aktie Bolaget LM Ericsson, (W. B. Kleijn y T. Eriksson),
fecha de presentación 10 de febrero de 1999.
La invención queda definida por las
reivindicaciones.
A continuación se ofrece una descripción no
limitativa de formas de realización ilustrativas de la invención
proporcionadas únicamente a título de ejemplo haciendo referencia a
los dibujos adjuntos.
La Figura 1 es un ejemplo ilustrativo de señales
residuales originales y modificadas para una trama;
la Figura 2 es un diagrama de bloques funcional
de una forma de realización ilustrativa de un método de modificación
de la señal según la invención;
la Figura 3 es un diagrama de bloques
esquemático de un ejemplo ilustrativo de un sistema de comunicación
de voz que muestra el uso de un codificador y un decodificador de
voz;
la Figura 4 es un diagrama de bloques
esquemático de una forma de realización ilustrativa de un
codificador de voz que utiliza un método de modificación de la
señal;
la Figura 5 es un diagrama de bloques funcional
de una forma de realización ilustrativa de la búsqueda de impulsos
de altura tonal;
la Figura 6 es un ejemplo ilustrativo de
posiciones localizadas de impulsos de altura tonal y de una
segmentación correspondiente de ciclos de altura tonal para una
trama;
la Figura 7 es un ejemplo ilustrativo sobre la
determinación de un parámetro de retardo cuando el número de
impulsos de altura tonal es tres (c = 3);
la Figura 8 es un ejemplo ilustrativo de la
interpolación del retardo (línea gruesa) sobre una trama de voz en
comparación con la interpolación lineal (línea delgada);
la Figura 9 es un ejemplo ilustrativo de un
contorno de retardo sobre diez tramas seleccionadas de acuerdo con
la interpolación del retardo (línea gruesa) de la Figura 8 y la
interpolación lineal (línea delgada) cuando el valor de altura
tonal correcto es 52 muestras;
la Figura 10 es un diagrama de bloques funcional
del método de modificación de la señal que ajusta la trama de voz
al contorno de retardo seleccionado de acuerdo con una forma de
realización ilustrativa de la presente invención;
la Figura 11 es un ejemplo ilustrativo sobre la
actualización de la señal objetivo \tilde{w}(t)
utilizando un desplazamiento óptimo determinado \delta, y sobre
la sustitución del segmento w_{s}(k) de señal con
valores interpolados mostrados como puntos grises;
la Figura 12 es un diagrama de bloques funcional
de un módulo lógico de determinación de velocidad de acuerdo con
una forma de realización ilustrativa de la presente invención; y
la Figura 13 es un diagrama de bloques
esquemático de una forma de realización ilustrativa de un
decodificador de voz que utiliza el contorno de retardo formado de
acuerdo con una forma de realización ilustrativa de la presente
invención.
Aunque las formas de realización ilustrativas de
la presente invención se describirán con respecto a señales de voz
y a la norma del Códec de Voz AMR-WB, de Banda Ancha
AMR 3GPP (ITU-T G.722.2), debería tenerse presente
que los conceptos de la presente invención pueden aplicarse a otros
tipos de señales de sonido así como a otros codificadores de audio
y voz.
La Figura 1 ilustra un ejemplo de señal residual
modificada 12 dentro de una trama. Tal como se muestra en la Figura
1, el desplazamiento de tiempo en la señal residual modificada 12 se
acota de tal manera que esta señal residual modificada está
sincronizada en el tiempo con la señal residual original sin
modificar 11 en los límites de la trama que se producen en los
instantes t_{n-1} y t_{n}. En este
caso n hace referencia al índice de la trama actual.
Más específicamente, el desplazamiento de tiempo
se controla implícitamente con un contorno de retardo empleado para
interpolar el parámetro de retardo sobre la trama en curso. El
parámetro y el contorno de retardo se determinan considerando las
limitaciones del alineamiento temporal en los límites de trama antes
mencionados. Cuando se utiliza la interpolación lineal para forzar
el alineamiento temporal, los parámetros de retardo resultantes
tienden a oscilar sobre varias tramas. Con frecuencia esta situación
provoca artefactos molestos sobre la señal modificada cuya altura
tonal sigue el contorno de retardo oscilante artificial. El uso de
una técnica de interpolación no lineal seleccionada adecuadamente
para el parámetro de retardo reducirá sustancialmente estas
oscilaciones.
En la Figura 2 se presenta un diagrama de
bloques funcional de la forma de realización ilustrativa del método
de modificación de la señal según la invención.
El método comienza, en el bloque 101 "búsqueda
de ciclos de altura tonal", localizando impulsos de altura tonal
y ciclos de altura tonal individuales. La búsqueda del bloque 101
utiliza una estimación de altura tonal de bucle abierto interpolada
sobre la trama. Sobre la base de los impulsos de altura tonal
localizados, la trama se divide en segmentos de ciclo de altura
tonal, conteniendo cada uno de ellos un impulso de altura tonal y
limitados dentro de los límites de trama t_{n-1} y
t_{n}.
La función del bloque 103 "selección de curva
de retardo" es determinar un parámetro de retardo para el
predictor de largo plazo y formar un contorno de retardo para
interpolar este parámetro de retardo sobre la trama. El parámetro y
el contorno de retardo se determinan considerando las acotaciones de
sincronización temporal en los límites de trama
t_{n-1} y t_{n}. El parámetro de
retardo determinado en el bloque 103 se codifica y transmite al
decodificador cuando la modificación de la señal está habilitada
para la trama en curso.
El procedimiento concreto de modificación de la
señal se realiza en el bloque 105 "modificación de la señal en
sincronía con la altura tonal". El bloque 105 en primer lugar
forma una señal objetivo basándose en el contorno de retardo
determinado en el bloque 103 para posteriormente ajustar los
segmentos de ciclos de altura tonal individuales a esta señal
objetivo. Los segmentos de ciclo de altura tonal se desplazan a
continuación de uno en uno para aumentar al máximo su correlación
con esta señal objetivo. Para mantener la complejidad en un nivel
bajo, mientras se busca el desplazamiento óptimo y se desplazan los
segmentos no se aplica ningún alineamiento por deformación temporal
continua.
La forma de realización ilustrativa del método
de modificación de la señal según se da a conocer en la presente
memoria descriptiva se habilita típicamente solo sobre tramas de voz
puramente sonoras. Por ejemplo, las tramas de transición tales como
los comienzos sonoros no se modifican debido a un riesgo alto de
provocar artefactos. Normalmente, en tramas puramente sonoras, los
ciclos de altura tonal cambian de forma relativamente lenta y por
consiguiente bastan desplazamientos pequeños para adaptar la señal
al modelo de predicción de largo plazo. Debido a que solamente se
realizan ajustes de señal conservadores, pequeños, se minimiza la
probabilidad de provocar artefactos.
El método de modificación de la señal constituye
un clasificador eficaz para segmentos puramente sonoros, y por lo
tanto un mecanismo de determinación de la velocidad a usar en una
codificación de señales de voz, controlada por la fuente. Cada
bloque 101, 103 y 105 de la Figura 2 proporciona varios indicadores
sobre la periodicidad de la señal y la idoneidad de la modificación
de la señal en la trama en curso. Estos indicadores se analizan en
los bloques lógicos 102, 104 y 106 para determinar un modo de
codificación y una velocidad binaria adecuados para la trama en
curso. Más específicamente, estos bloques lógicos 102, 104 y 106
monitorizan el éxito de las operaciones realizadas en los bloques
101, 103 y 105.
Si el bloque 102 detecta que la operación
realizada en el bloque 101 tiene éxito, el método de modificación
de la señal continúa en el bloque 103. Cuando este bloque 102
detecta un fallo en la operación realizada en el bloque 101, el
procedimiento de modificación de la señal se termina y la trama de
voz original se conserva intacta para la codificación (ver bloque
108 que se corresponde con el modo normal (sin modificación de la
señal)).
Si el bloque 104 detecta que la operación
realizada en el bloque 103 tiene éxito, el método de modificación
de la señal continúa en el bloque 105. Cuando, por el contrario,
este bloque 104 detecta un fallo en la operación realizada en el
bloque 103, el procedimiento de modificación de la señal se termina
y la trama de voz original se conserva intacta para la codificación
(ver bloque 108 que se corresponde con el modo normal (sin
modificación de la señal)).
Si el bloque 106 detecta que la operación
realizada en el bloque 105 tiene éxito, se utiliza un modo de
velocidad binaria baja con modificación de la señal (ver bloque
107). Por el contrario, cuando este bloque 106 detecta un fallo en
la operación realizada en el bloque 105 el procedimiento de
modificación de la señal se termina y la trama de voz original se
conserva intacta para la codificación (ver bloque 108 que se
corresponde con el modo normal (sin modificación de la señal)). El
funcionamiento de los bloques 101 a 108 se describirá de forma
detallada posteriormente en la presente descripción.
La Figura 3 es un diagrama de bloques
esquemático de un ejemplo ilustrativo de un sistema de comunicación
de voz que representa el uso de un codificador y un decodificador de
voz. El sistema de comunicación de voz de la Figura 3 soporta la
transmisión y reproducción de una señal de voz por un canal de
comunicaciones 205. Aunque puede comprender por ejemplo un cable,
un enlace óptico o un enlace de fibra, el canal de comunicaciones
205 comprende típicamente por lo menos en parte un enlace de
radiofrecuencia. El enlace de radiofrecuencia soporta
frecuentemente múltiples comunicaciones de voz simultáneas que
requieren recursos de ancho de banda compartidos tal como puede
observarse con la telefonía celular. Aunque no se muestra, el canal
de comunicaciones 205 puede reemplazarse por un dispositivo de
almacenamiento que registra y almacena la señal de voz codificada
para su reproducción
posterior.
posterior.
En el lado transmisor, un micrófono 201 produce
una señal de voz analógica 210 que se suministra a un convertidor
analógico a digital (A/D) 202. La función del convertidor A/D 202 es
convertir la señal de voz analógica 210 en una señal de voz digital
211. Un codificador de voz 203 codifica la señal de voz digital 211
para producir un conjunto de parámetros de codificación 212 que se
codifican en forma binaria y se entregan a un codificador de canal
204. El codificador de canal 204 agrega redundancia a la
representación binaria de los parámetros de codificación antes de
transmitirlos en un flujo de bits 213 sobre el canal de
comunicaciones 205.
En el lado receptor, a un decodificador de canal
206 se le suministra la representación binaria redundante antes
mencionada de los parámetros de codificación provenientes del flujo
de bits 214 recibido para detectar y corregir errores de canal que
ocurrieron en la transmisión. Un decodificador de voz 207 convierte
el flujo de bits con errores de canal corregidos 215 proveniente
del decodificador de canal 206 de vuelta a un conjunto de
parámetros de codificación para crear una señal de voz digital
sintetizada 216. La señal de voz sintetizada 216 reconstruida por
el decodificador de voz 207 se convierte a una señal de voz
analógica 217 mediante un convertidor digital a analógico (D/A) 208
y se reproduce mediante una unidad de altavoz 209.
La Figura 4 es un diagrama de bloques
esquemático que muestra las operaciones realizadas por la forma de
realización ilustrativa del codificador de voz 203 (Figura 3) que
incorpora la funcionalidad de modificación de la señal. La presente
memoria descriptiva presenta una implementación novedosa de esta
funcionalidad de modificación de la señal del bloque 603 de la
Figura 4. Las otras operaciones realizadas por el codificador de voz
203 son bien conocidas para aquellos con conocimientos habituales
en la materia y las mismas se han descrito, por ejemplo, en la
publicación [10]
[10] 3GPP TS 26.190, "AMR Wideband Speech
Codec: Transcoding Functions", 3GPP Technical
Specification.
la cual se incorpora al presente
documento a título de referencia. Cuando no se especifique lo
contrario, la implementación de las operaciones de codificación y
decodificación de voz en las formas de realización ilustrativas y
los ejemplos de la presente invención cumplirán la Norma del Códec
de Voz de Banda Ancha AMR
(AMR-WB).
El codificador de voz 203 tal como se muestra en
la Figura 4 codifica la señal de voz digitalizada utilizando uno o
una pluralidad de modos de codificación. Cuando se utiliza una
pluralidad de modos de codificación y la funcionalidad de
modificación de la señal se deshabilita en uno de estos modos, este
modo específico funcionará de acuerdo con normas bien establecidas
conocidas para aquellos con conocimientos habituales en la
materia.
Aunque no se muestra en la Figura 4, la señal de
voz se muestrea a una velocidad de 16 kHz y cada muestra de la
señal de voz se digitaliza. La señal de voz digital se divide a
continuación en tramas sucesivas de una longitud determinada y cada
una de estas tramas se divide en un número determinado de subtramas
sucesivas. La señal de voz digital se somete además a un
preprocesado tal como da a conocer la norma AMR-WB.
Este preprocesado incluye un filtrado pasa-altas,
un filtrado de preénfasis utilizando un filtro P(z) =
1 - 0,68 z^{-1} y un diezmado de la velocidad de muestreo de 16
kHz a 12,8 kHz. Las operaciones subsiguientes de la Figura 4
consideran que la señal de voz de entrada s(t) ha
sido preprocesada y diezmada a la velocidad de muestreo de 12,8
kHz.
El codificador de voz 203 comprende un módulo de
análisis y cuantificación LP (Predicción Lineal) 601 sensible a la
señal de voz digital preprocesada, de entrada, s(t)
617, para calcular y cuantificar los parámetros a_{0}, a_{1},
a_{2} ..., a_{nA} del filtro LP 1/A(z), en el que
n_{A} es el orden del filtro A(z)= a_{0} +
a_{1}z^{-1} + a_{2}z^{-2} + ... + a_{nA}z^{-nA}. La
representación binaria 616 de estos parámetros del filtro LP
cuantificados se suministra al multiplexor 614 y posteriormente se
multiplexa en el flujo de bits 615. Los parámetros del filtro LP no
cuantificados y cuantificados pueden interpolarse para obtener los
parámetros del filtro LP correspondientes para cada subtrama.
El codificador de voz 203 comprende además un
estimador de altura tonal 602 para calcular estimaciones de altura
tonal de bucle abierto 619 para la trama en curso en respuesta a los
parámetros 618 del filtro LP provenientes del módulo de análisis y
cuantificación LP 601. Estas estimaciones de altura tonal de bucle
abierto 619 se interpolan sobre la trama a usar en un módulo de
modificación de la señal 603.
Las operaciones realizadas en el módulo de
análisis y cuantificación LP 601 y el estimador de altura tonal 602
pueden implementarse conforme a la Norma AMR-WB
mencionada anteriormente.
El módulo de modificación de la señal 603 de la
Figura 4 realiza una operación de modificación de la señal antes
que la búsqueda de altura tonal de bucle cerrado de la señal de
excitación de libro de códigos adaptativo para ajustar la señal de
voz al contorno de retardo determinado d(t). En la
forma de realización ilustrativa, el contorno de retardo
d(t) define un retardo de predicción de largo plazo
para cada muestra de la trama. Por construcción el contorno de
retardo queda caracterizado totalmente sobre la trama t
\epsilon (t_{n-1}, t_{n}) por un
parámetro de retardo 620 d_{n} = d(t_{n}) y su
valor anterior d_{n-1} =
d(t_{n-1}) que son iguales al valor
del contorno de retardo en los límites de trama. El parámetro de
retardo 620 se determina como parte de la operación de modificación
de la señal, y se codifica y a continuación se suministra al
multiplexor 614 en el que se multiplexa en el flujo de bits
615.
El contorno de retardo d(t) que
define un parámetro de retardo de predicción de largo plazo para
cada muestra de la trama se suministra a un libro de códigos
adaptativo 607. El libro de códigos adaptativo 607 es sensible al
contorno de retardo d(t) para formar la excitación de
libro de códigos adaptativo u_{b}(t) de la subtrama
en curso a partir de la excitación u(t) utilizando el
contorno de retardo d(t) como u_{b}(t) =
u(t - d(t)). De este modo el contorno de retardo
establece una correspondencia de la muestra antigua de la señal de
excitación u(t - d(t)) con la muestra actual
en la excitación de libro de códigos adaptativo
u_{b}(t).
El procedimiento de modificación de la señal
también produce una señal residual modificada
\check{r}(t) que se utilizará para componer una
señal objetivo modificada 621 para la búsqueda de bucle cerrado de
la excitación de libro de códigos fijo u_{c}(t). La
señal residual modificada \check{r}(t) se obtiene en
el módulo de modificación de la señal 603 alineando por deformación
temporal los segmentos de ciclos de altura tonal de la señal
residual LP, y la misma se suministra al bloque de cálculo de la
señal objetivo modificada en el módulo 604. El filtrado de síntesis
LP de la señal residual modificada con el filtro
1/A(z) proporciona a continuación en el módulo 604 la
señal de voz modificada. La señal objetivo modificada 621 de la
búsqueda de excitación de libro de códigos fijo se forma en el
módulo 604 de acuerdo con el funcionamiento de la Norma
AMR-WB, aunque con la señal de voz original
reemplazada por su versión modificada.
Después de que se hayan obtenido la excitación
de libro de códigos adaptativo u_{b}(t) y la señal
objetivo modificada 621 para la subtrama en curso, la codificación
puede proseguir adicionalmente utilizando medios
convencionales.
La función de la búsqueda de la excitación de
libro de códigos fijo de bucle cerrado es determinar la señal de
libro de códigos fijo u_{c}(t) para la subtrama en
curso. Para ilustrar esquemáticamente el funcionamiento de la
búsqueda de libro de códigos fijo de bucle cerrado, la excitación de
libro de códigos fijo u_{c}(t) se escala en
ganancia mediante un amplificador 610. De la misma manera, la
excitación de libro de códigos adaptativo u_{b}(t)
se escala en ganancia mediante un amplificador 609. Las excitaciones
de libro de códigos adaptativo y fijo u_{b}(t) y
u_{c}(t) escaladas en ganancia se suman entre sí
mediante un sumador 611 para formar una señal de excitación total
u(t). Esta señal de excitación total
u(t) se procesa mediante un filtro de síntesis LP
1/A(z) 612 para producir una señal de voz de síntesis
625 que se resta de la señal objetivo modificada 621 mediante un
sumador 605 para producir una señal de error 626. Un módulo de
ponderación y minimización de errores 606 es sensible a la señal de
error 626 para calcular, según métodos convencionales, los
parámetros de ganancia para los amplificadores 609 y 610 cada
subtrama. El módulo de ponderación y minimización de errores 606
calcula además, de acuerdo con métodos convencionales y en respuesta
a la señal de error 626, la entrada 627 al libro de códigos fijo
608. Los parámetros de ganancia cuantificados 622 y 623 y los
parámetros 624 que caracterizan la señal de excitación de libro de
códigos fijo u_{c}(t) se suministran al multiplexor
614 y se multiplexan en el flujo de bits 615. El procedimiento
anterior se realiza de la misma manera cuando la modificación de la
señal se encuentra tanto habilitada como deshabilitada.
Debería observarse que, cuando la funcionalidad
de modificación de la señal esta deshabilitada, el libro de códigos
adaptativo de excitación 607 funciona según métodos convencionales.
En este caso, se busca un parámetro de retardo independiente para
cada subtrama en el libro de códigos adaptativo 607 para mejorar la
precisión de las estimaciones de altura tonal de bucle abierto 619.
Estos parámetros de retardo son codificados, suministrados al
multiplexor 614 y multiplexados en el flujo de bits 615. Además, la
señal objetivo 621 para la búsqueda de libro de códigos fijo se
forma de acuerdo con métodos convencionales.
El decodificador de voz tal como se muestra en
la Figura 13 funciona según métodos convencionales excepto cuando
la modificación de la señal está habilitada. El funcionamiento de la
modificación de la señal habilitada y deshabilitada difiere de
forma esencial solamente en la manera en la que se forma la señal de
excitación de libro de códigos adaptativo u_{b}(t).
En ambos modos de funcionamiento, el decodificador decodifica los
parámetros recibidos a partir de su representación binaria.
Típicamente los parámetros recibidos incluyen parámetros de
excitación, ganancia, retardo y LP. Los parámetros de excitación
decodificados se utilizan en el módulo 701 para formar la señal de
excitación de libro de códigos fijo u_{c}(t) para
cada subtrama. Esta señal se proporciona mediante un amplificador
702 a un sumador 703. De forma similar, la señal de excitación de
libro de códigos adaptativo u_{b}(t) de la subtrama
en curso se suministra al sumador 703 mediante un amplificador 704.
En el sumador 703, las señales de excitación de libro de códigos
adaptativo y fijo u_{b}(t) y
u_{c}(t) escaladas en ganancia se suman entre sí
para formar una señal de excitación total u(t) para la
subtrama en curso. Esta señal de excitación u(t) se
procesa mediante el filtro de síntesis LP 1/A(z) 708,
que utiliza parámetros LP interpolados en el módulo 707 para la
subtrama en curso, con vistas a producir la señal de voz
sintetizada \hat{s}(t).
Cuando se habilita la modificación de la señal,
el decodificador de voz recupera el contorno de retardo
d(t) en el módulo 705 utilizando el parámetro de
retardo d_{n} recibido y su valor recibido previo
d_{n-1} tal como en el codificador. Este
contorno de retardo d(t) define un parámetro de
retardo de predicción de largo plazo para cada instante de tiempo
de la trama en curso. Se forma la excitación de libro de códigos
adaptativo u_{b}(t)=
u(t-d(t)) a partir de la
excitación antigua para la subtrama en curso tal como en el
codificador utilizando el contorno de retardo
d(t).
La descripción restante da a conocer el
funcionamiento detallado del procedimiento de modificación de la
señal 603 así como su uso como parte del mecanismo de determinación
del modo.
El método de modificación de la señal funciona
de forma síncrona con la altura tonal y las tramas, desplazando
individualmente cada segmento de ciclo de altura tonal detectado
aunque acotando el desplazamiento en los límites de trama. Esto
requiere medios para localizar impulsos de altura tonal y segmentos
de ciclo de altura tonal correspondientes para la trama en curso.
En la forma de realización ilustrativa del método de modificación
de la señal, los segmentos de ciclos de altura tonal se determinan
basándose en impulsos de altura tonal detectados que se buscan
según la
Figura 5.
Figura 5.
La búsqueda de impulsos de altura tonal puede
actuar sobre la señal residual r(t), la señal de voz
ponderada
w(t) y/o la señal de voz sintetizada ponderada \hat{w}(t). La señal residual r(t) se obtiene filtrando la señal de voz s(t) con el filtro LP A(z), que se ha interpolado para las subtramas. En la forma de realización ilustrativa, el orden del filtro LP A(z) es 16. La señal de voz ponderada w(t) se obtiene procesando la señal de voz s(t) mediante el filtro de
ponderación
w(t) y/o la señal de voz sintetizada ponderada \hat{w}(t). La señal residual r(t) se obtiene filtrando la señal de voz s(t) con el filtro LP A(z), que se ha interpolado para las subtramas. En la forma de realización ilustrativa, el orden del filtro LP A(z) es 16. La señal de voz ponderada w(t) se obtiene procesando la señal de voz s(t) mediante el filtro de
ponderación
en el que los coeficientes
\gamma_{1} = 0,92 y \gamma_{2} = 0,68. La señal de voz
ponderada w(t) se utiliza con frecuencia en la
estimación de la altura tonal de bucle abierto (módulo 602) puesto
que el filtro de ponderación definido por la Ecuación (1) atenúa la
estructura de los formantes en la señal de voz s(t) y
preserva la periodicidad también en segmentos de señal sinusoidal.
Eso facilita la búsqueda de impulsos de altura tonal ya que la
posible periodicidad de la señal se vuelve claramente evidente en
señales ponderadas. Debería observarse que la señal de voz
ponderada w(t) también es necesaria para la
anticipación con vistas a buscar el último impulso de altura tonal
en la trama en curso. Esta opción puede realizarse utilizando el
filtro de ponderación de la Ecuación (1) formado en la última
subtrama de la trama en curso sobre la parte
anticipada.
El procedimiento de búsqueda de impulsos de
altura tonal de la Figura 5 comienza en el bloque 301 localizando
el último impulso de altura tonal de la trama previa de la señal
residual r(t). Un impulso de altura tonal típicamente
destaca claramente como el valor absoluto máximo de la señal
residual filtrada por pasa-bajas en un ciclo de
altura tonal que tiene una longitud de aproximadamente
p(t_{n-1}). Para el filtrado
pasa-bajas se utiliza una ventana Hamming
normalizada H_{5}(z) = (0,08 z^{-2} + 0,54 z^{-1} + 1 +
0,54 z + 0,08 z^{2})/2,24 que tiene una longitud de cinco (5)
muestras para facilitar la localización del último impulso de altura
tonal de la trama previa. Esta posición del impulso de altura tonal
se indica con T_{0}. La forma de realización ilustrativa
del método de modificación de la señal según la invención no
requiere una posición exacta para este impulso de altura tonal,
sino, por el contrario, una estimación de ubicación aproximada del
segmento de alta energía en el ciclo de altura tonal.
Después de localizar el último impulso de altura
tonal en T_{0} en la trama previa, se extrae un prototipo
de impulso de altura tonal de longitud 2l + 1 muestras en el
bloque 302 de la Figura 5 en torno a esta estimación de posición
aproximada como, por ejemplo:
Este prototipo de impulso de altura tonal se
utiliza posteriormente para localizar impulsos de altura tonal en
la trama en curso.
La señal de voz ponderada sintetizada
\hat{w}(t) (o la señal de voz ponderada
w(t)) puede utilizarse para el prototipo de impulso
en lugar de la señal residual r(t). Esto facilita la
búsqueda de impulsos de altura tonal, ya que la estructura
periódica de la señal se conserva mejor en la señal de voz
ponderada. La señal de voz ponderada sintetizada
\hat{w}(t) se obtiene filtrando la señal de voz
sintetizada \hat{s}(t) de la última subtrama de la
trama previa mediante el filtro de ponderación W(z) de
la Ecuación (1). Si el prototipo de impulso de altura tonal se
extiende sobre el extremo de la trama previamente sintetizada, para
esta parte sobrante se utiliza la señal de voz ponderada
w(t) de la trama en curso. El prototipo de impulso de
altura tonal tiene una correlación alta con los impulsos de altura
tonal de la señal de voz ponderada w(t) si la trama de
voz sintetizada anterior ya contiene un ciclo de altura tonal bien
desarrollado. Por lo tanto, el uso de la voz sintetizada al extraer
el prototipo proporciona información adicional para monitorizar el
rendimiento de la codificación y seleccionar un modo de
codificación apropiado en la trama en curso tal como se explicará
con más detalle en la siguiente descripción.
La selección de l = 10 muestras
proporciona un buen compromiso entre la complejidad y el rendimiento
en la búsqueda de impulsos de altura tonal. El valor de l
también se puede determinar proporcionalmente a la estimación de
altura tonal de bucle abierto.
Dada la posición T_{0} del último
impulso en la trama previa, se puede predecir que el primer impulso
de altura tonal de la trama en curso se producirá aproximadamente
en el instante T_{0} + p(T_{0}). En este caso
p(t) indica la estimación de la altura tonal de bucle
abierto interpolada en el instante (posición) t. Esta
predicción se realiza en el bloque 303.
En el bloque 305, se mejora la precisión de la
posición predicha T_{0} + p(T_{0}) del impulso de
altura tonal como
en la que la señal de voz ponderada
w(t) en la proximidad de la posición predicha se
correlaciona con el prototipo de
impulso:
Así la mejora de la precisión es el argumento
j, limitado a [-j_{max}, j_{max}], que maximiza la
correlación ponderada C(j) entre el prototipo de
impulso y una de entre las antes mencionadas señal residual, señal
de voz ponderada o señal de voz sintetizada ponderada. Según un
ejemplo ilustrativo, el límite j_{max} es proporcional a
la estimación de altura tonal de bucle abierto como min{20,
<p(0)/4>}, en la que el operador <·> indica
redondeo al entero más cercano. La función de ponderación
en la Ecuación (4) favorece la
posición del impulso predicha utilizando la estimación de altura
tonal de bucle abierto, puesto que \gamma(j) alcanza su
valor máximo 1 en j = 0. El denominador p(T_{0} +
p(T_{0})) en la Ecuación (5) es la estimación de la
altura tonal de bucle abierto para la posición predicha del impulso
de altura
tonal.
Después de que se haya hallado la primera
posición T_{1} del impulso de altura tonal utilizando la
Ecuación (3), se puede predecir que el siguiente impulso de altura
tonal aparecerá en el instante T_{2} = T_{1} +
p(T_{1}) y su precisión se mejora tal como se ha
descrito anteriormente. Esta búsqueda de impulsos de altura tonal
que comprende la predicción 303 y la mejora de precisión 305 se
repite hasta que el procedimiento bien de predicción o bien de
mejora de precisión proporcione una posición del impulso de altura
tonal fuera de la trama en curso. Estas condiciones se verifican en
el bloque lógico 304 para la predicción de la posición del
siguiente impulso de altura tonal (bloque 303) y en el bloque lógico
306 para mejora de la precisión de esta posición del impulso de
altura tonal (bloque 305). Debería observarse que el bloque lógico
304 termina la búsqueda solamente si una posición predicha del
impulso se encuentra en una ubicación tan lejana en la trama
subsiguiente que la etapa de mejora de la precisión no puede
devolverlo a la trama en curso. Este procedimiento proporciona c
posiciones de impulsos de altura tonal dentro de la trama en curso,
indicadas con T_{1}, T_{2}, ..., T_{c}.
Según un ejemplo ilustrativo, los impulsos de
altura tonal se localizan con una resolución a nivel de enteros
excepto el último impulso de altura tonal de la trama indicado con
T_{c}. Puesto que para determinar el parámetro de retardo
a transmitir se necesita la distancia exacta entre los últimos
impulsos de dos tramas sucesivas, el último impulso se localiza
utilizando una resolución fraccionaria de 1/4 de muestra en la
Ecuación (4) para j. La resolución fraccionaria se obtiene
muestreando w(t) en las proximidades del último
impulso de altura tonal predicho antes de evaluar la correlación de
la Ecuación (4). Según un ejemplo ilustrativo, para el muestreo se
usa la interpolación de función sinc con ventana Hamming de longitud
33. La resolución fraccionaria de la última posición del impulso de
altura tonal ayuda a mantener el buen rendimiento de la predicción
de largo plazo a pesar de la acotación de la sincronía temporal
establecida para el extremo de la trama. Esta opción se obtiene con
un coste de la velocidad binaria adicional necesaria para transmitir
el parámetro de retardo con una mayor exactitud.
Después de completar la segmentación de los
ciclos de altura tonal en la trama en curso, se determina un
desplazamiento óptimo para cada segmento. Esta operación se realiza
utilizando la señal de voz ponderada w(t) tal como se
explicará en la siguiente descripción. Para reducir la distorsión
causada por el alineamiento por deformación temporal, los
desplazamientos de segmentos de ciclos de altura tonal individuales
se implementan utilizando la señal residual LP r(t).
Puesto que el desplazamiento distorsiona la señal particularmente
alrededor de los límites del segmento, es esencial colocar los
límites en secciones de baja potencia de la señal residual
r(t). En un ejemplo ilustrativo, los límites del
segmento se sitúan aproximadamente en medio de dos impulsos de
altura tonal consecutivos, aunque acotados dentro de la trama en
curso. Los límites del segmento se seleccionan siempre dentro de la
trama en curso de tal manera que cada segmento contenga exactamente
un impulso de altura tonal. Los segmentos con más de un impulso de
altura tonal o segmentos "vacíos" sin ningún impulso de altura
tonal dificultan la comparación subsiguiente, basada en una
correlación, con la señal objetivo y deberían evitarse en la
segmentación de ciclos de altura tonal. El s^{ésimo} segmento
extraído de l_{s} muestras se indica como
w_{s}(k) para k = 0, 1,..., l_{s} -
1. El instante de inicio de este segmento es t_{s},
seleccio-
nado de tal manera que w_{s}(0) = w(t_{s}). El número de segmentos en la trama actual se indica con la referencia c.
nado de tal manera que w_{s}(0) = w(t_{s}). El número de segmentos en la trama actual se indica con la referencia c.
Cuando se selecciona el límite del segmento
entre dos impulsos de altura tonal sucesivos T_{s} y
T_{s}_{+1} dentro de la trama en curso, se utiliza el
siguiente procedimiento. En primer lugar el instante central entre
dos impulsos se calcula como \Lambda = <(T_{s} +
T_{s}_{+1})/2>. Las posiciones candidatas para el límite
del segmento se ubican en la zona
[\Lambda-\varepsilon_{max},
\Lambda+\varepsilon_{max}], en la que \varepsilon_{max}
se corresponde con cinco muestras. La energía de cada posición de
límite candidata se calcula como
Se selecciona la posición que proporciona la
menor energía ya que esta elección típicamente da como resultado la
menor distorsión en la señal de voz modificada. El instante que
lleva al mínimo la Ecuación (6) se indica como \varepsilon. El
instante de inicio del nuevo segmento se selecciona como t_{s}
= \Lambda + \varepsilon. Este también define la longitud
del segmento anterior, ya que el segmento previo finaliza en el
instante \Lambda + \varepsilon - 1.
La Figura 6 muestra un ejemplo ilustrativo de la
segmentación de ciclos de altura tonal. Obsérvese particularmente
el primer y el último segmento w_{1}(k) y
w_{4}(k), respectivamente, extraídos de tal manera
que no se obtiene ningún segmento vacío y no se superan los límites
de la trama.
En general la ventaja principal de la
modificación de la señal es que solamente debe codificarse y
transmitirse hacia el decodificador (no mostrado) un parámetro de
retardo por trama. Sin embargo, debe prestarse especial atención a
la determinación de este parámetro individual. El parámetro de
retardo no solamente define junto con su valor anterior la
evolución de la longitud del ciclo de altura tonal con respecto a la
trama, sino que también influye en la asincronía temporal en la
señal modificada resultante.
En los métodos descritos en [1, 4 a 7]
[1] W. B. Kleijn, P. Kroon, y D.
Nahumi, "The RCELP speech-coding
algorithm", European Transactions on Telecommunications, Vol. 4,
nº 5, págs. 573 a 582, 1994.
[4] Patente US nº 5.704.003, "RCELP coder",
Lucent Technologies Inc., (W. B.Kleijn y D. Nahumi), fecha de
presentación 19 de septiembre de 1995.
[5] Solicitud de patente europea 0 602 826 A2,
"Time shifting for
analysis-by-synthesis coding",
AT&T Corp., (B. Kleijn), fecha de presentación 1 de diciembre
de 1993.
[6] Solicitud de patente WO 00/11653, "Speech
encoder with continuous warping combined with long term
prediction", Conexant Systems Inc., (Y. Gao), fecha de
presentación 24 de agosto de 1999.
[7] Solicitud de patente WO 00/11654, "Speech
encoder adaptively applying pitch preprocessing with continuous
warping", Conexant Systems Inc., (H. Su y Y. Gao), fecha de
presentación 24 de agosto de 1999.
no se requiere ninguna sincronía
temporal en los límites de la trama, y de este modo el parámetro de
retardo a transmitir puede determinarse directamente utilizando una
estimación de la altura tonal de bucle abierto. Esta selección
normalmente produce una asincronía temporal en el límite de la
trama, y se traduce en un desplazamiento de tiempo acumulado en la
trama subsiguiente ya que debe conservarse la continuidad de la
señal. Aunque el oído humano es insensible a cambios en la escala
de tiempo de la señal de voz sintetizada, el aumento de la
asincronía temporal complica la implementación del codificador. De
hecho, se requieren grandes memorias intermedias de señal para
alojar las señales cuya escala de tiempo puede haber sido extendida,
y debe implementarse un módulo lógico de control para limitar el
desplazamiento acumulado durante la codificación. Además, la
asincronía de tiempo de varias muestras típicas en la codificación
RCELP puede provocar una desadaptación entre los parámetros LP y la
señal residual modificada. Esta desadaptación puede producir
artefactos perceptibles sobre la señal de voz modificada que se
sintetiza por filtrado LP de la señal residual
modificada.
Por el contrario, la forma de realización
ilustrativa del método de modificación de la señal según la presente
invención conserva la sincronía de tiempo en los límites de la
trama. Así, en los extremos de la trama se produce un
desplazamiento estrictamente acotado y cada trama nueva comienza en
coincidencia de tiempo perfecta con la trama de voz original.
Para garantizar la sincronía de tiempo en el
extremo de la trama, el contorno de retardo d(t)
establece, con la predicción de largo plazo, una correspondencia
del último impulso de altura tonal en el extremo de la trama de voz
sintetizada anterior con los impulsos de altura tonal de la trama en
curso. El contorno de retardo define un parámetro de retardo de
predicción de largo plazo interpolado, sobre la n^{ésima}
trama en curso para cada muestra desde el instante
t_{n-1} + 1 al t_{n}. Al
decodificador solamente se transmite el parámetro de retardo
d_{n}= d(t_{n}) en el extremo de la trama lo cual
supone que d(t) debe tener una forma totalmente
especificada por los valores transmitidos. El parámetro de retardo
de predicción de largo plazo tiene que ser seleccionado de tal
manera que el contorno de retardo resultante cumpla el
establecimiento de la correspondencia de los impulsos. En forma
matemática este establecimiento de correspondencia puede presentarse
de la manera siguiente: Sea \kappa_{c} una variable de tiempo
temporal y T_{0} y T_{c} las últimas posiciones
de impulsos de altura tonal en las tramas previa y en curso,
respectivamente. A continuación, el parámetro de retardo
d_{n} tiene que seleccionarse de tal manera que, después de
ejecutar el seudocódigo presentado en la Tabla 1, la variable
\kappa_{c} tenga un valor muy cercano a T_{0}
minimizando el error |\kappa_{c} - T_{0}|. El seudocódigo
comienza a partir del valor \kappa_{0} = T_{c} y se
itera hacia atrás c veces actualizando \kappa_{i} :=
\kappa_{i-1} -
d(\kappa_{i-1}). Si a continuación
\kappa_{c} es igual a T_{0}, la predicción de largo
plazo puede utilizarse con eficacia máxima sin asincronía de tiempo
en el extremo de la trama.
En la Figura 7 se ilustra un ejemplo del
funcionamiento del bucle de selección de retardo en el caso de
c = 3. El bucle comienza en el valor \kappa_{0} =
T_{c} y calcula la primera iteración hacia atrás como
\kappa_{1} = \kappa_{0} - d(\kappa_{0}).
Las iteraciones se realizan dos veces más dando como resultado
\kappa_{2} = \kappa_{1} - d(\kappa_{1}) y
\kappa_{3} = \kappa_{2} - d(\kappa_{2}). El
valor final \kappa_{3} se compara a continuación con
T_{0} en términos del error e_{n} =
|\kappa_{3} - T_{0}|. El error resultante es una
función del contorno de retardo que se ajusta en el algoritmo de
selección del retardo tal como se dará a conocer posteriormente en
la presente memoria descriptiva.
Los métodos de modificación de la señal [1, 4,
6, 7] según se describen en los siguientes documentos:
[1] W. B. Kleijn, P. Kroon, y D.
Nahumi, "The RCELP speech-coding
algorithm", European Transactions on Telecommunications, Vol. 4,
nº 5, págs. 573 a 582, 1994.
[4] Patente US nº 5.704.003, "RCELP coder",
Lucent Technologies Inc., (W. B. Kleijn y D. Nahumi), fecha de
presentación 19 de septiembre de 1995.
[6] Solicitud de patente WO 00/11653, "Speech
encoder with continuous warping combined with long term
prediction", Conexant Systems Inc., (Y. Gao), fecha de
presentación 24 de agosto de 1999.
[7] Solicitud de patente WO 00/11654, "Speech
encoder adaptively applying pitch preprocessing with continuous
warping", Conexant Systems Inc., (H. Su y Y. Gao), fecha de
presentación 24 agosto de 1999.
interpolan los parámetros de
retardo linealmente sobre la trama entre d_{n-1} y
d_{n}. Sin embargo, cuando se requiere sincronía de tiempo en el
extremo de la trama, la interpolación lineal tiende a producir un
contorno de retardo oscilante. De este modo, los ciclos de altura
tonal en la señal de voz modificada se contraen y extienden
provocando periódicamente artefactos que resultan molestos con mucha
facilidad. La evolución y amplitud de las oscilaciones están
relacionadas con la última posición de la altura tonal. Cuanto más
lejos esté el último impulso de altura tonal con respecto al
extremo de la trama con relación al periodo de la altura tonal, más
probable será la amplificación de las oscilaciones. Puesto que la
sincronía de tiempo en el extremo de la trama es un requisito
esencial de la forma de realización ilustrativa del método de
modificación de la señal según la presente invención, la popular
interpolación lineal de los métodos anteriores no puede utilizarse
sin deteriorar la calidad de la voz. En cambio, la forma de
realización ilustrativa del método de modificación de la señal
según la presente invención da a conocer un contorno de retardo
lineal por
tramos
en la
que
Las oscilaciones se reducen significativamente
utilizando este contorno de retardo. En este caso t_{n} y
t_{n-1} son los instantes finales de las
tramas en curso y previa, respectivamente, y d_{n} y
d_{n-1} son los valores correspondientes
de los parámetros de retardo. Obsérvese que
t_{n-1} + \sigma_{n} es el instante
después del cual el contorno de retardo permanece constante.
En un ejemplo ilustrativo, el parámetro
\sigma_{n} varía en función de d_{n-1}
como
y la longitud de trama N es
256 muestras. Para evitar oscilaciones, es aconsejable disminuir el
valor de \sigma_{n} a medida que aumenta la longitud del ciclo
de altura tonal. Por otro lado, para evitar cambios rápidos en el
contorno de retardo d(t) al principio de la trama ya
que t_{n-1} < t <
t_{n-1} + \sigma_{n}, el parámetro
\sigma_{n} tiene que ser siempre por lo menos la mitad de la
longitud de la trama. Los cambios rápidos en d(t)
deterioran fácilmente la calidad de la señal de voz
modificada.
Obsérvese que dependiendo del modo de
codificación de la trama previa, d_{n-1}
puede ser bien el valor de retardo en el extremo de la trama
(modificación de la señal habilitada) o bien el valor de retardo de
la última subtrama (modificación de la señal deshabilitada). Puesto
que el valor antiguo d_{n-1} del parámetro
de retardo es conocido en el decodificador, el contorno de retardo
queda inequívocamente definido por d_{n}, y el
decodificador puede formar el contorno de retardo utilizando la
Ecuación (7).
El único parámetro que puede variarse mientras
se busca el contorno de retardo óptimo es d_{n}, quedando
acotado a [34, 231] el valor del parámetro de retardo en el extremo
de la trama. No existe ningún método explícito sencillo para hallar
el d_{n} óptimo en un caso general. En cambio, deben
probarse varios valores para hallar la mejor solución. Sin embargo,
la búsqueda es directa. El valor de d_{n} puede predecirse
en primer lugar como
En la forma de realización ilustrativa, la
búsqueda se realiza en tres fases aumentando la resolución y
concentrando el intervalo de búsqueda a revisar dentro de [34, 231]
en cada fase. Los parámetros de retardo que proporcionan el error
más pequeño e_{n} = |\kappa_{c}-T_{0}| en el
procedimiento de la Tabla 1 en estas tres fases se indican con
d_{n}^{(1)}, d_{n}^{(2)}, y d_{n} =
d_{n}^{(3)}, respectivamente. En la primera fase, la
búsqueda se realiza en torno al valor d_{n}^{(0)},
predicho utilizando la Ecuación (10) con una resolución de cuatro
muestras en el intervalo [d_{n}^{(0)} - 11,
d_{n}^{(0)} + 12] cuando d_{n}^{(0)} < 60,
y en el intervalo [d_{n}^{(0)} - 15,
d_{n}^{(0)} + 16] en cualquier otro caso. La segunda fase
acota el intervalo a [d_{n}^{(1)} - 3,
d_{n}^{(1)} + 3] y utiliza la resolución a nivel de
enteros. La tercera y última fase examina el intervalo
[d_{n}^{(2)} - 3/4, d_{n}^{(2)} + 3/4] con una
resolución de 1/4 de muestra para d_{n}^{(2)} < 92½.
Fuera de este último se usan el intervalo [d_{n}^{(2)} -
1/2, d_{n}^{(2)} + 1/2] y una resolución de 1/2 de
muestra. Esta tercera fase proporciona el parámetro de retardo
óptimo d_{n} a transmitir al decodificador. Este
procedimiento es un compromiso entre la exactitud y la complejidad
de la búsqueda. Evidentemente, aquellos con conocimientos habituales
en la materia pueden implementar fácilmente la búsqueda del
parámetro de retardo bajo las acotaciones de la sincronía de tiempo
utilizando medios alternos sin desviarse con respecto a la
naturaleza de la presente invención.
El parámetro de retardo d_{n}
\epsilon [34, 231] puede codificarse utilizando nueve bits por
trama usando una resolución de 1/4 de muestra para d_{n}
< 92½ y 1/2 de muestra para d_{n} > 92½.
La Figura 8 ilustra la interpolación del retardo
cuando d_{n-1} = 50, d_{n} = 53,
\sigma_{n} = 172, y la longitud de la trama N = 256. El
método de interpolación utilizado en la forma de realización
ilustrativa del método de modificación de la señal se muestra con
una línea gruesa mientras que la interpolación lineal que se
corresponde con los métodos anteriores se muestra con una línea
delgada. Ambos contornos interpolados se comportan aproximadamente
de la misma manera en el bucle de selección de retardo de la Tabla
1, aunque la interpolación lineal por tramos descrita produce un
cambio absoluto más pequeño |d_{n-1} -
d_{n}|. Esta característica reduce las oscilaciones
potenciales en el contorno de retardo d(t) y los artefactos
molestos en la señal de voz modificada cuya altura tonal seguirá
este contorno de retardo.
Para clarificar adicionalmente la ejecución del
método de interpolación lineal por tramos, la Figura 9 muestra un
ejemplo sobre el contorno de retardo resultante d(t)
sobre diez tramas con línea gruesa. El contorno de retardo
correspondiente d(t) obtenido con interpolación lineal
convencional se indica con una línea delgada. El ejemplo se ha
constituido utilizando una señal de voz artificial que tiene un
parámetro de retardo constante de 52 muestras como entrada del
procedimiento de modificación de la voz. Como valor inicial para la
primera trama se utilizó intencionadamente un parámetro de retardo
d_{0} = 54 muestras para ilustrar el efecto de los errores
de estimación de la altura tonal típicos en la codificación de voz.
A continuación, se buscaron los parámetros de retardo
d_{n} tanto para la interpolación lineal como para el
método de interpolación lineal por tramos dado a conocer en el
presente documento utilizando el procedimiento de la Tabla 1. Todos
los parámetros requeridos se seleccionaron de acuerdo con la forma
de realización ilustrativa del método de modificación de la señal
según la presente invención. Los contornos de retardo
d(t) resultantes muestran que la interpolación lineal
por tramos proporciona un contorno de retardo d(t) que
converge rápidamente mientras que la interpolación lineal
convencional no puede alcanzar el valor correcto dentro del período
de diez tramas. Estas oscilaciones prolongadas en el contorno de
retardo d(t) con frecuencia provocan artefactos
molestos sobre la señal de voz modificada deteriorando la calidad
global de percepción.
Después de que se hayan determinado el parámetro
de retardo d_{n} y la segmentación de los ciclos de altura
tonal, puede iniciarse el propio procedimiento de modificación de la
señal. En la forma de realización ilustrativa del método de
modificación de la señal, la señal de voz se modifica desplazando
segmentos de ciclos de altura tonal individuales uno a uno
ajustándolos al contorno de retardo d(t). Un
desplazamiento de segmento se determina correlacionando el segmento
en el dominio de voz ponderada con la señal objetivo. La señal
objetivo se forma utilizando la señal de voz ponderada sintetizada
\hat{w}(t) de la trama previa y los segmentos
anteriores ya desplazados de la trama en curso. El desplazamiento
concreto se realiza sobre la señal residual r(t).
La modificación de la señal debe realizarse
cuidadosamente tanto para maximizar el rendimiento de la predicción
de largo plazo como para simultáneamente conservar la calidad de
percepción de la señal de voz modificada. La sincronía de tiempo
requerida en los límites de la trama también debe ser tenida en
cuenta durante la modificación.
En la Figura 10 se muestra un diagrama de
bloques de la forma de realización ilustrativa del método de
modificación de la señal. La modificación comienza extrayendo un
nuevo segmento w_{s}(k) de l_{s} muestras
de la señal de voz ponderada w(t) en el bloque 401.
Este segmento queda definido por la longitud del segmento
l_{s} y el instante de inicio t_{s} dando como
resultado w_{s}(k) = w(t_{s} + k) para
k = 0, 1, ..., l_{s} - 1. El procedimiento de
segmentación se lleva a cabo de acuerdo con los aspectos dados a
conocer de la descripción anterior.
Si no pueden seleccionarse o extraerse más
segmentos (bloque 402), se completa la operación de modificación de
la señal (bloque 403). En cualquier otro caso, la operación de
modificación de la señal continúa con el bloque 404.
Para hallar el desplazamiento óptimo del
segmento en curso w_{s}(k), en el bloque 405 se crea
una señal objetivo
\tilde{w}(t). Para el primer segmento w_{1}(k) en la trama en curso, esta señal objetivo se obtiene por recursión
\tilde{w}(t). Para el primer segmento w_{1}(k) en la trama en curso, esta señal objetivo se obtiene por recursión
En este caso \hat{w}(t) es la
señal de voz sintetizada ponderada disponible en la trama previa
para t \leq t_{n-1}. El parámetro
\delta_{1} es el desplazamiento máximo permitido para el primer
segmento de longitud l_{1}. La Ecuación (11) puede
interpretarse como la simulación de una predicción de largo plazo
utilizando el contorno de retardo sobre la parte de la señal en la
que puede situarse potencialmente el segmento desplazado en curso.
El cálculo de la señal objetivo para los segmentos subsiguientes
sigue el mismo principio y se presentará posteriormente en la
presente sección.
El procedimiento de búsqueda para hallar el
desplazamiento óptimo del segmento en curso puede iniciarse después
de formar la señal objetivo. Este procedimiento se basa en la
correlación c_{s}(\delta') calculada en el bloque 404
entre el segmento w_{s}(k) que comienza en el
instante t_{s} y la señal objetivo
\tilde{w}(t) como
en la que \delta_{s} determina
el desplazamiento máximo permitido para el segmento en curso
w_{s}(k) y \lceil·\rceil indica un redondeo
hacia más infinito. La correlación normalizada puede utilizarse
satisfactoriamente en lugar de la Ecuación (12), aunque con una
mayor complejidad. En la siguiente forma de realización
ilustrativa, se utilizan los siguientes valores para
\delta_{s}:
Tal como se describirá posteriormente en esta
sección, el valor de \delta_{s} está más limitado para el
primero y el último segmento de la trama.
La Correlación (12) se evalúa con una resolución
a nivel de enteros, aunque una precisión superior mejora el
rendimiento de la predicción de largo plazo. Para mantener la
complejidad a un nivel bajo no resulta razonable muestrear
directamente la señal w_{s}(k) o
\tilde{w}(t) en la Ecuación (12). En cambio, se obtiene una
resolución fraccionaria de una manera eficaz con relación al
cálculo mediante la determinación del desplazamiento óptimo
utilizando la correlación muestreada c_{s}
(\delta').
El desplazamiento \delta que maximiza la
correlación c_{s} (\delta') se busca en primer lugar con
una resolución a nivel de enteros en el bloque 404. A continuación,
con una resolución fraccionaria el valor máximo debe localizarse en
el intervalo abierto (\delta - 1, \delta + 1), y acotado a
[-\delta_{s}, \delta_{s}]. En el bloque 406, se muestrea la
correlación c_{s} (\delta') en este intervalo a una
resolución de 1/8 de muestra utilizando una interpolación de
función sinc con ventana Hamming de una longitud igual a 65
muestras. El desplazamiento \delta que se corresponde con el
valor máximo de la correlación muestreada es en este caso el
desplazamiento óptimo con una resolución fraccionaria. Después de
hallar este desplazamiento óptimo, el segmento de voz ponderada
w_{s}(k) se vuelve a calcular con la resolución
fraccionaria resuelta en el bloque 407. Es decir, el nuevo instante
de inicio preciso del segmento se actualiza como t_{s} :=
t_{s} - \delta + \delta_{l}, en el que \delta_{l} =
\lceil\delta\rceil. Además, el segmento residual
r_{s}(k) que se corresponde con el segmento de voz
ponderada w_{s}(k) con la resolución fraccionaria
se calcula en este momento a partir de la señal residual
r(t) utilizando de nuevo la interpolación de función
sinc tal como se ha descrito anteriormente (bloque 407). Puesto que
la parte fraccionaria del desplazamiento óptimo se incorpora a los
segmentos de voz residual y ponderada, todos los cálculos
subsiguientes pueden llevarse a cabo con el desplazamiento
redondeado hacia arriba \delta_{l} =
\lceil\delta\rceil.
La Figura 11 ilustra el nuevo cálculo del
segmento w_{s}(k) de acuerdo con el bloque 407 de la
Figura 10. En este ejemplo ilustrativo, el desplazamiento óptimo se
busca con una resolución de 1/8 de muestra aumentando al máximo la
correlación que proporciona el valor \delta = -1^{3}/_{8}. De
este modo la parte entera \delta_{l} se convierte en
\lceil-1^{3}/_{8}\rceil = -1 y la parte
fraccionaria ^{3}/_{8}. Por consiguiente, el instante de inicio
del segmento se actualiza como t_{s} = t_{s} + 3/8. En la
Figura 11, las muestras nuevas de w_{s}(k) se
indican con puntos grises.
Si el bloque lógico 106, el cual se describirá
posteriormente, permite continuar con la modificación de la señal,
la tarea final consiste en actualizar la señal residual modificada
\check{r}(t) copiando el segmento de la señal
residual en curso
r_{s}(k) en la primera (bloque 411):
r_{s}(k) en la primera (bloque 411):
\vskip1.000000\baselineskip
\vskip1.000000\baselineskip
Puesto que los desplazamientos en segmentos
sucesivos son independientes entre sí, los segmentos posicionados
en \check{r}(t) bien se superponen o bien tienen un
espacio entre ellos. Para los segmentos superpuestos puede
utilizarse un promediado compensado directo. Los espacios se llenan
copiando muestras vecinas de los segmentos contiguos. Puesto que el
número de muestras superpuestas o perdidas es normalmente pequeño y
los límites de los segmentos se producen en zonas de baja energía
de la señal residual, normalmente no se provoca ningún artefacto
perceptible. Debería observarse que no se utiliza ningún
alineamiento por deformación temporal continua de la señal tal como
se describe en [2], [6], [7],
[2] W. B. Kleijn, R. P.
Ramachandran y P. Kroon, "Interpolation of the
pitch-predictor parameters in
analysis-by-synthesis speech
coders", IEEE Transactions on Speech and Audio Processing, Vol.
2, nº 1, págs. 42 a 54,
1994.
1994.
[6] Solicitud de patente WO 00/11653, "Speech
encoder with continuous warping combined with long term
prediction", Conexant Systems Inc., (Y. Gao), fecha de
presentación 24 de agosto de 1999.
[7] Solicitud de patente WO 00/11654, "Speech
encoder adaptively applying pitch preprocessing with continuous
warping", Conexant Systems Inc., (H. Su y Y. Gao), fecha de
presentación 24 agosto de 1999.
sino que la modificación se realiza
de forma discontinua desplazando segmentos de ciclos de altura tonal
para reducir la
complejidad.
El procesado de los segmentos de ciclos de
altura tonal subsiguientes sigue el procedimiento antes descrito,
excepto que la señal objetivo \tilde{w}(t) en el
bloque 405 se forma de manera diferente a la del primer segmento.
Las muestras de
\tilde{w}(t) se sustituyen en primer lugar con las muestras de voz ponderada modificada de la manera siguiente
\tilde{w}(t) se sustituyen en primer lugar con las muestras de voz ponderada modificada de la manera siguiente
\vskip1.000000\baselineskip
\newpage
Este procedimiento se ilustra en la Figura 11. A
continuación también se actualizan las muestras que siguen el
segmento actualizado,
La actualización de la señal objetivo
\tilde{w}(t) garantiza una correlación mayor entre
segmentos de ciclos de altura tonal sucesivos en la señal de voz
modificada considerado el contorno de retardo d(t) y
por lo tanto una predicción de largo plazo más precisa. Mientras se
procesa el último segmento de la trama, la señal objetivo
\tilde{w}(t) no necesita actualizarse.
Los desplazamientos del primer y el último
segmentos en la trama son casos especiales que deben realizarse de
forma particularmente cuidadosa. Antes de desplazar el primer
segmento, debería garantizarse que no existe ninguna zona de alta
potencia en la señal residual r(t) cerca del límite de
la trama t_{n-1}, ya que el desplazamiento
de dicho segmento puede provocar artefactos. La zona de alta
potencia se busca elevando al cuadrado la señal residual
r(t) de la siguiente manera
en la que \varsigma_{0} =
<p(t_{n - 1})/2>. Si el máximo de
E_{0}(k) se detecta cerca del límite de la trama en
el intervalo [t_{n - 1} - 2, t_{n - 1} + 2], el desplazamiento
permitido se limita a 1/4 de muestras. Si el desplazamiento
propuesto |\delta| para el primer segmento es menor que este
límite, el procedimiento de modificación de la señal se habilita en
la trama en curso, aunque el primer segmento se mantiene
intacto.
El último segmento de la trama se procesa de una
manera similar. Tal como se ha descrito en la exposición anterior,
el contorno de retardo d(t) se selecciona de tal
manera que en principio no se requiera ningún desplazamiento para
el último segmento. Sin embargo, debido a que la señal objetivo se
actualiza de forma repetida durante la modificación de la señal
considerando las correlaciones entre segmentos sucesivos en las
Ecuaciones (16) y (17), es posible que el último segmento deba
desplazarse ligeramente. En la forma de realización ilustrativa,
este desplazamiento se acota siempre de manera que es menor que 3/2
muestras. Si hay una zona de alta potencia en el extremo de la
trama, no se permite ningún desplazamiento. Esta condición se
verifica utilizando la señal residual al cuadrado
en la que \varsigma_{1} =
p(t_{n}). Si el máximo de E_{1}(k)
se alcanza para k mayor que o igual a t_{n} - 4, no
se permite ningún desplazamiento para el último segmento. De forma
similar que para el primer segmento, cuando el desplazamiento
propuesto |\delta|<1/4, la trama actual sigue aceptándose
para la modificación, aunque el último segmento se mantiene
intacto.
Debería observarse que, contrariamente a los
métodos de modificación de la señal conocidos, el desplazamiento no
se traduce a la siguiente trama y cada trama nueva empieza
sincronizada perfectamente con la señal de entrada original. Como
otra diferencia fundamental particularmente para la codificación
RCELP, la forma de realización ilustrativa del método de
modificación de la señal procesa una trama de voz completa antes de
que se codifiquen las subtramas. Lo cierto es que la modificación a
nivel de subtramas permite componer la señal objetivo para cada
subtrama utilizando la subtrama previamente codificada lo cual
mejora potencialmente el rendimiento. Este planteamiento no puede
utilizarse en el contexto de la forma de realización ilustrativa del
método de modificación de la señal puesto que la asincronía de
tiempo permitida en el extremo de la trama se acota de forma
estricta. No obstante, la actualización de la señal objetivo con las
Ecuaciones (15) y (16) ofrece, hablando en términos prácticos, el
mismo rendimiento con el proceso a nivel de subtramas, ya que la
modificación solamente se habilita en tramas sonoras que se
desarrollan
uniformemente.
uniformemente.
La forma de realización ilustrativa del método
de modificación de la señal según la presente invención incorpora
un mecanismo eficaz de determinación de modo y de clasificación tal
como se representa en la Figura 2. Cada operación realizada en los
bloques 101, 103 y 105 proporciona varios indicadores que
cuantifican el rendimiento obtenible de la predicción de largo
plazo en la trama en curso. Si cualquiera de estos indicadores queda
fuera de sus límites permitidos, el procedimiento de modificación
de la señal se hace finalizar por uno de los bloques lógicos 102,
104 ó 106. En este caso, la señal original se conserva intacta.
El procedimiento de búsqueda de impulsos de
altura tonal 101 produce varios indicadores sobre la periodicidad
de la trama actual. Por tanto, el bloque lógico 102 que analiza
estos indicadores es el componente más importante del módulo lógico
de clasificación. El bloque lógico 102 compara la diferencia entre
las posiciones detectadas de los impulsos de altura tonal y la
estimación de altura tonal de bucle abierto interpolada utilizando
la condición
y hace que finalice el
procedimiento de modificación de la señal si no se cumple con esta
condición.
La selección del contorno de retardo
d(t) en el bloque 103 proporciona también información
adicional sobre la evolución de los ciclos de altura tonal y la
periodicidad de la trama de voz en curso. Esta información se
revisa en el bloque lógico 104. El procedimiento de modificación de
la señal continua desde este bloque 104 solamente si se cumple la
condición |d_{n} - d_{n - 1}| < 0,2
d_{n}. Esta condición significa que se tolera solamente un
cambio de retardo pequeño para clasificar la trama en curso como
trama puramente sonora. El bloque lógico 104 también evalúa el
éxito del bucle de selección de retardo de la Tabla 1 revisando la
diferencia |\kappa_{c} - T_{o}| para el valor del
parámetro de retardo d_{n} seleccionado. Si esta
diferencia es mayor que una muestra, se termina el procedimiento de
modificación de la
señal.
señal.
Para garantizar una buena calidad para la señal
de voz modificada, es ventajoso acotar los desplazamientos
realizados para segmentos de ciclos de altura tonal sucesivos en el
bloque 105. Esta opción se logra en el bloque lógico 106 imponiendo
los criterios
para todos los segmentos de la
trama. En este caso \delta^{(s)} y
\delta^{(s-1)} son los desplazamientos
realizados para los segmentos de ciclo de altura tonal
s^{ésimo} y el (s - 1)^{ésimo},
respectivamente. Si se superan los umbrales, el procedimiento de
modificación de la señal se interrumpe y la señal original se
mantiene.
Cuando las tramas sometidas a la modificación de
la señal se codifican a una velocidad binaria baja, es esencial que
la forma de los segmentos de los ciclos de altura tonal se mantenga
similar sobre la trama. Esta opción permite un modelado fiel de la
señal por predicción de largo plazo y así una codificación a una
velocidad binaria baja sin deteriorar la calidad subjetiva. La
similitud de segmentos sucesivos puede cuantificarse sencillamente
mediante la correlación normalizada
entre el segmento en curso y la
señal objetivo con el desplazamiento óptimo después de la
actualización de w_{s}(k) en el bloque 407 de la
Figura 10. La correlación normalizada g_{s} también se
denomina ganancia de altura
tonal.
El desplazamiento de los segmentos de ciclos de
altura tonal en el bloque 105 que maximiza su correlación con la
señal objetivo potencia la periodicidad y proporciona una ganancia
de predicción de altura tonal alta si la modificación de la señal
es útil en la trama en curso. El éxito del procedimiento se revisa
en el bloque lógico 106 utilizando los criterios
Si esta condición no se cumple para todos los
segmentos, el procedimiento de modificación de la señal finaliza
(bloque 409) y la señal original se mantiene intacta. Cuando se
cumple esta condición (bloque 106), la modificación de la señal
continúa en el bloque 411. La ganancia de altura tonal
g_{s} se calcula en el bloque 408 entre el segmento
w_{s}(k) del bloque 407 que se ha vuelto a calcular
y la señal objetivo \tilde{w}(t) del bloque 405. En
general, puede permitirse un umbral de ganancia ligeramente más
bajo en voces masculinas con el mismo rendimiento en la
codificación. Los umbrales de ganancia pueden cambiarse en modos de
funcionamiento diferentes del codificador para ajustar el
porcentaje de uso del modo de modificación de la señal y por lo
tanto la velocidad binaria media
resultante.
resultante.
Esta sección describe el uso del procedimiento
de modificación de la señal como parte del mecanismo de
determinación de velocidad general en un códec de voz de velocidad
binaria variable controlado por la fuente. Esta funcionalidad se ve
inmersa en la forma de realización ilustrativa del método de
modificación de la señal, puesto que proporciona varios indicadores
sobre la periodicidad de señal y el rendimiento de codificación
esperado de la predicción de largo plazo en la trama actual. Estos
indicadores incluyen la evolución del periodo de altura tonal, la
idoneidad del contorno de retardo seleccionado para describir esta
evolución, y la ganancia de predicción de altura tonal obtenible
con la modificación de la señal. Si los bloques lógicos 102, 104 y
106 mostrados en la Figura 2 habilitan la modificación de la señal,
la predicción de largo plazo puede modelar eficazmente la trama de
voz modificada facilitando su codificación a una velocidad binaria
baja sin deteriorar la calidad subjetiva. En este caso, la
excitación de libro de códigos adaptativo tiene una contribución
dominante en la descripción de la señal de excitación, y así puede
reducirse la velocidad binaria asignada para la excitación de libro
de códigos fijo. Cuando un bloque lógico 102, 104 ó 106 deshabilita
la modificación de la señal, es probable que la trama contenga un
segmento de voz no estacionario tal como un comienzo sonoro o una
señal de voz sonora que evoluciona rápidamente. Estas tramas
requieren típicamente una velocidad binaria alta para mantener una
buena calidad subjetiva.
La Figura 12 representa el procedimiento de
modificación de la señal 603 como parte del módulo lógico de
determinación de velocidad que controla cuatro modos de
codificación. En esta forma de realización ilustrativa, el conjunto
de modos comprende un modo dedicado para tramas de voz no activas
(bloque 508), para tramas de voz sordas (bloque 507), para tramas
de voz estables (bloque 506), y para otros tipos de tramas (bloque
505). Debería observarse que todos estos modos, excepto el modo
para tramas de voz estables 506, se implementan de acuerdo con
técnicas bien conocidas para aquellos con conocimientos habituales
en la materia.
El módulo lógico de determinación de velocidad
se basa en una clasificación de señales realizada en tres etapas en
los bloques lógicos 501, 502 y 504, a partir de los cuales el
funcionamiento de los bloques 501 y 502 es bien conocido para
aquellos con conocimientos habituales en la materia.
En primer lugar, un detector de actividad vocal
(VAD) 501 discrimina entre tramas de voz activas e voz inactivas.
Si se detecta una trama de voz inactiva, la señal de voz se procesa
según el modo 508.
Si en el bloque 501 se detecta una trama de voz
activa, la trama se somete a un segundo clasificador 502 dedicado a
tomar una decisión sobre la sonoridad. Si el clasificador 502
clasifica la trama en curso como señal de voz sorda, la cadena de
clasificación termina y la señal de voz se procesa de acuerdo con el
modo 507. En cualquier otro caso, la trama de voz se hace pasar a
través del módulo de modificación de la señal 603.
A continuación el módulo de modificación de la
señal se proporciona a sí mismo una decisión sobre la habilitación
o deshabilitación de la modificación de la señal de la trama en
curso en un bloque lógico 504. Esta decisión se toma en la práctica
como parte integral del procedimiento de modificación de la señal en
los bloques lógicos 102, 104 y 106 tal como se ha explicado
anteriormente con referencia a la Figura 2. Cuando se habilita la
modificación de la señal, la trama se considera como un segmento de
voz sonora estable, o puramente sonora.
Cuando el mecanismo de determinación de
velocidad selecciona el modo 506, el modo de modificación de la
señal queda habilitado y la trama de voz se codifica de acuerdo con
lo descrito en las secciones anteriores. La Tabla 2 da a conocer la
asignación de bits utilizada en la forma de realización ilustrativa
para el modo 506. Puesto que las tramas a codificar en este modo
son característicamente muy periódicas, basta con una velocidad
binaria sustancialmente inferior para mantener una buena calidad
subjetiva en comparación por ejemplo con las tramas de transición.
La modificación de la señal también permite una codificación eficaz
de la información de retardo utilizando solamente nueve bits por
trama de 20 ms lo cual economiza una proporción considerable del
total de bits destinado a otros parámetros. El buen rendimiento de
la predicción de largo plazo permite utilizar solamente 13 bits por
subtrama de 5 ms para la excitación de libro de códigos fijo sin
sacrificar la calidad de voz subjetiva. El libro de códigos fijo
comprende una pista con dos impulsos, ambos con 64 posiciones
posibles.
Los otros modos de codificación 505, 507 y 508
se implementan siguiendo técnicas conocidas. La modificación de la
señal esta deshabilitada en todos estos modos. La Tabla 3 muestra la
asignación de bits del modo 505 adoptada a partir de la norma
AMR-WB.
Las especificaciones técnicas [11] y [12]
referentes a la norma AMR-WB se adjuntan en el
presente documento como referencias sobre las funcionalidades de
ruido de confort y VAD en 501 y 508, respectivamente.
[11] 3GPP TS 26.192, "AMR Wideband Speech
Codec: Comfort Noise Aspects", 3GPP Technical Specification.
[12] 3GPP TS 26.193, "AMR Wideband Speech
Codec: Voice Activity Detector (VAD)", 3GPP Technical
Specification.
En resumen, la presente memoria descriptiva ha
expuesto un método de modificación de la señal en sincronía con las
tramas para tramas de voz puramente sonoras, un mecanismo de
clasificación para detectar tramas a modificar, y la utilización de
estos métodos en un códec de voz CELP controlado por la fuente con
vistas a habilitar una codificación de alta calidad con una baja
velocidad binaria.
El método de modificación de la señal incorpora
un mecanismo de clasificación para determinar las tramas a
modificar. Esta opción difiere con respecto a los medios anteriores
de modificación y preprocesado de la señal en el funcionamiento y
en las propiedades de la señal modificada. La funcionalidad de
clasificación incorporada en el procedimiento de modificación de la
señal se utiliza como parte del mecanismo de determinación de
velocidad en un códec de voz CELP controlado por la fuente.
La modificación de la señal se realiza de forma
síncrona con la altura tonal y las tramas, es decir, adaptando cada
vez un segmento de ciclo de altura tonal en la trama en curso de tal
manera que una trama de voz subsiguiente comience en alineamiento
temporal perfecto con la señal original. Los segmentos de los ciclos
de altura tonal están acotados por los límites de las tramas. Esta
característica evita una traslación del desplazamiento de tiempo
sobre los límites de las tramas simplificando la implementación de
los codificadores y reduciendo el riesgo de artefactos en la señal
de voz modificada. Puesto que el desplazamiento de tiempo no se
acumula sobre tramas sucesivas, el método de modificación de la
señal descrito no necesita memorias intermedias largas para alojar
señales extendidas ni un módulo lógico complicado para controlar el
desplazamiento de tiempo acumulado. En la codificación de voz
controlada por la fuente, esta opción simplifica el funcionamiento
multimodo entre modos con modificación de la señal habilitada y
deshabilitada, puesto que cada nueva trama comienza en alineamiento
temporal con la señal original.
Evidentemente, son posibles muchas otras
modificaciones y variaciones. Considerando la anterior descripción
ilustrativa detallada de la presente invención y los dibujos
asociados, en este momento dichas otras modificaciones y
variaciones se pondrán de manifiesto para los expertos en la materia
con un conocimiento medio. También debería ponerse de manifiesto
que dichas otras variaciones pueden efectuarse sin apartarse con
respecto al alcance de la presente invención.
Claims (23)
1. Método para formar un contorno de retardo
que caracteriza una predicción de largo plazo en una técnica
que usa una modificación de la señal para codificar digitalmente una
señal de voz, comprendiendo el método:
dividir la señal de voz en una serie de tramas
sucesivas;
localizar un impulso de altura tonal de la señal
de voz en una trama anterior; y
localizar un impulso de altura tonal de la señal
de voz en una trama en curso;
caracterizado porque se forma un contorno
de retardo seleccionando un parámetro de retardo de predicción de
largo plazo para la trama en curso mediante una iteración hacia
atrás de una función de una variable de tiempo temporal, la
ubicación del impulso de la altura tonal de la señal de voz en la
trama anterior y la ubicación del impulso de la altura tonal de la
señal de voz en la trama en curso.
2. Método según la reivindicación 1, que
comprende:
formar el contorno de retardo como una función
de distancias de impulsos de altura tonal sucesivos entre un último
impulso de altura tonal de la trama anterior y un último impulso de
altura tonal de la trama en curso.
3. Método según la reivindicación 1 ó 2, que
comprende asimismo:
caracterizar completamente el contorno de
retardo con un parámetro de retardo de predicción de largo plazo de
la trama anterior y el parámetro de retardo de predicción de largo
plazo de la trama en curso.
4. Método según la reivindicación 3, en el
que la formación del contorno de retardo comprende:
interpolar de forma no lineal el contorno de
retardo entre el parámetro de retardo de predicción de largo plazo
de la trama anterior y el parámetro de retardo de predicción de
largo plazo de la trama en curso.
5. Método según la reivindicación 3, en el
que la formación del contorno de retardo comprende:
determinar un contorno de retardo lineal por
tramos entre el parámetro de retardo de predicción de largo plazo
de la trama anterior y el parámetro de retardo de predicción de
largo plazo de la trama en curso.
6. Método según cualquiera de las
reivindicaciones anteriores, en el que la localización de un impulso
de altura tonal comprende la obtención de una señal residual de
predicción lineal a partir de la señal de voz.
7. Método según cualquiera de las
reivindicaciones 1 a 5, en el que la localización de un impulso de
altura tonal comprende la obtención de una señal de voz ponderada a
partir de la señal de voz.
8. Método según cualquiera de las
reivindicaciones 1 a 5, en el que la localización de un impulso de
altura tonal comprende la obtención de una señal de voz ponderada
sintetizada a partir de la señal de voz.
9. Método según cualquiera de las
reivindicaciones anteriores, en el que la iteración hacia atrás
comprende la búsqueda de un valor del parámetro de retardo de
predicción de largo plazo en múltiples fases y el comienzo con un
valor del parámetro de retardo de predicción de largo plazo predicho
para el final de la trama en curso, presentando cada fase sucesiva
un aumento de la resolución y un intervalo de búsqueda más
concentrado.
10. Método según la reivindicación 9, que
comprende la predicción del valor del parámetro de retardo de
predicción de largo plazo de manera que sea igual a la diferencia
entre el valor del parámetro de retardo de predicción de largo
plazo al final de la trama anterior y dos veces la diferencia entre
las ubicaciones de los impulsos de altura tonal de la señal de voz
en las tramas anterior y en curso dividida por el número de
iteraciones de la función.
11. Método según cualquiera de las
reivindicaciones anteriores, que comprende la modificación de la
señal de voz desplazando segmentos de ciclos de altura tonal uno a
uno para ajustarlos al contorno de retardo.
12. Método según la reivindicación 11, que
comprende la determinación de un desplazamiento de segmento mediante
la correlación de un segmento en el dominio de la voz ponderada con
una señal objetivo.
13. Método según la reivindicación 12, que
comprende la composición de la señal objetivo usando la señal de
voz ponderada sintetizada de la trama anterior y cualquiera de los
segmentos desplazados anteriores de la trama en curso.
14. Dispositivo (603) para formar un contorno
de retardo que caracteriza una predicción de largo plazo en
una técnica que usa una modificación de la señal para codificar
digitalmente una señal de voz, comprendiendo el dispositivo:
un divisor de la señal de voz en una serie de
tramas sucesivas;
un detector de una ubicación de un impulso de
altura tonal de la señal de voz en una trama anterior; y
un detector de una ubicación de un impulso de
altura tonal de la señal de voz en una trama en curso,
caracterizado porque presenta un módulo
de formación de un contorno de retardo para seleccionar un parámetro
de retardo de predicción de largo plazo para la trama en curso
mediante una iteración hacia atrás de una función de una variable
de tiempo temporal, la ubicación del impulso de la altura tonal de
la señal de voz en la trama anterior y la ubicación del impulso de
la altura tonal de la señal de voz en la trama en curso.
15. Dispositivo según la reivindicación 14, en
el que el módulo de formación es:
un módulo de cálculo del parámetro de retardo de
predicción de largo plazo como una función de distancias de
impulsos de altura tonal sucesivos entre el último impulso de altura
tonal de la trama anterior y el último impulso de altura tonal de
la trama en curso.
16. Dispositivo según la reivindicación 14 ó
15, que incorpora asimismo:
una función que caracteriza completamente
el contorno de retardo con un parámetro de retardo de predicción de
largo plazo de la trama anterior y el parámetro de retardo de
predicción de largo plazo de la trama en curso.
17. Dispositivo según la reivindicación 16, en
el que el módulo de formación es:
un selector de un contorno de retardo
interpolado de forma no lineal entre el parámetro de retardo de
predicción de largo plazo de la trama anterior y el parámetro de
retardo de predicción de largo plazo de la trama en curso.
18. Dispositivo según la reivindicación 16, en
el que el módulo de formación es:
un selector de un contorno de retardo lineal por
tramos determinado a partir del parámetro de retardo de predicción
de largo plazo de la trama anterior y el parámetro de retardo de
predicción de largo plazo de la trama en curso.
19. Dispositivo según cualquiera de las
reivindicaciones 14 a 18, en el que el módulo de formación es un
módulo de búsqueda de un valor del parámetro de retardo de
predicción de largo plazo mediante iteración hacia atrás en
múltiples fases y comenzando con un valor del parámetro de retardo
de predicción de largo plazo predicho para el final de la trama en
curso, presentando cada fase sucesiva un aumento de la resolución y
un intervalo de búsqueda más concentrado.
20. Dispositivo según la reivindicación 19, que
comprende un predictor del valor del parámetro de retardo de
predicción de largo plazo de manera que sea igual a la diferencia
entre el valor del parámetro de retardo de predicción de largo
plazo al final de la trama anterior y dos veces la diferencia entre
las ubicaciones de los impulsos de altura tonal de la señal de voz
en las tramas anterior y en curso dividida por el número de
iteraciones de la función.
21. Dispositivo según cualquiera de las
reivindicaciones 14 a 20, que comprende un modificador de la señal
de voz mediante el desplazamiento de segmentos de ciclos de altura
tonal uno a uno para ajustarlos al contorno de retardo.
22. Dispositivo según la reivindicación 21, que
comprende un módulo de determinación de un desplazamiento de los
segmentos mediante la correlación de un segmento en el dominio de la
voz ponderada con una señal objetivo.
23. Dispositivo según la reivindicación 22, que
comprende un módulo de composición de la señal objetivo usando una
señal de voz ponderada sintetizada de la trama anterior y cualquiera
de los segmentos desplazados anteriores de la trama en curso.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA002365203A CA2365203A1 (en) | 2001-12-14 | 2001-12-14 | A signal modification method for efficient coding of speech signals |
CA2365203 | 2001-12-14 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2283613T3 true ES2283613T3 (es) | 2007-11-01 |
Family
ID=4170862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES02784985T Expired - Lifetime ES2283613T3 (es) | 2001-12-14 | 2002-12-13 | Metodo de modificacion de señales para la codificacion eficaz de señales de voz. |
Country Status (19)
Country | Link |
---|---|
US (2) | US7680651B2 (es) |
EP (2) | EP1758101A1 (es) |
JP (1) | JP2005513539A (es) |
KR (1) | KR20040072658A (es) |
CN (2) | CN101488345B (es) |
AT (1) | ATE358870T1 (es) |
AU (1) | AU2002350340B2 (es) |
BR (1) | BR0214920A (es) |
CA (1) | CA2365203A1 (es) |
DE (1) | DE60219351T2 (es) |
ES (1) | ES2283613T3 (es) |
HK (2) | HK1069472A1 (es) |
MX (1) | MXPA04005764A (es) |
MY (1) | MY131886A (es) |
NO (1) | NO20042974L (es) |
NZ (1) | NZ533416A (es) |
RU (1) | RU2302665C2 (es) |
WO (1) | WO2003052744A2 (es) |
ZA (1) | ZA200404625B (es) |
Families Citing this family (63)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050091044A1 (en) * | 2003-10-23 | 2005-04-28 | Nokia Corporation | Method and system for pitch contour quantization in audio coding |
EP1864281A1 (en) * | 2005-04-01 | 2007-12-12 | QUALCOMM Incorporated | Systems, methods, and apparatus for highband burst suppression |
US20060221059A1 (en) * | 2005-04-01 | 2006-10-05 | Samsung Electronics Co., Ltd. | Portable terminal having display buttons and method of inputting functions using display buttons |
PL1875463T3 (pl) * | 2005-04-22 | 2019-03-29 | Qualcomm Incorporated | Układy, sposoby i urządzenie do wygładzania współczynnika wzmocnienia |
US7974837B2 (en) * | 2005-06-23 | 2011-07-05 | Panasonic Corporation | Audio encoding apparatus, audio decoding apparatus, and audio encoded information transmitting apparatus |
RU2008105555A (ru) * | 2005-07-14 | 2009-08-20 | Конинклейке Филипс Электроникс Н.В. (Nl) | Синтез аудиосигнала |
JP2007114417A (ja) * | 2005-10-19 | 2007-05-10 | Fujitsu Ltd | 音声データ処理方法及び装置 |
WO2007124582A1 (en) * | 2006-04-27 | 2007-11-08 | Technologies Humanware Canada Inc. | Method for the time scaling of an audio signal |
US8260609B2 (en) * | 2006-07-31 | 2012-09-04 | Qualcomm Incorporated | Systems, methods, and apparatus for wideband encoding and decoding of inactive frames |
US8239190B2 (en) | 2006-08-22 | 2012-08-07 | Qualcomm Incorporated | Time-warping frames of wideband vocoder |
US8688437B2 (en) * | 2006-12-26 | 2014-04-01 | Huawei Technologies Co., Ltd. | Packet loss concealment for speech coding |
KR100883656B1 (ko) * | 2006-12-28 | 2009-02-18 | 삼성전자주식회사 | 오디오 신호의 분류 방법 및 장치와 이를 이용한 오디오신호의 부호화/복호화 방법 및 장치 |
EP2128855A1 (en) | 2007-03-02 | 2009-12-02 | Panasonic Corporation | Voice encoding device and voice encoding method |
US8312492B2 (en) * | 2007-03-19 | 2012-11-13 | At&T Intellectual Property I, L.P. | Systems and methods of providing modified media content |
US8160872B2 (en) * | 2007-04-05 | 2012-04-17 | Texas Instruments Incorporated | Method and apparatus for layered code-excited linear prediction speech utilizing linear prediction excitation corresponding to optimal gains |
US9653088B2 (en) * | 2007-06-13 | 2017-05-16 | Qualcomm Incorporated | Systems, methods, and apparatus for signal encoding using pitch-regularizing and non-pitch-regularizing coding |
US8515767B2 (en) | 2007-11-04 | 2013-08-20 | Qualcomm Incorporated | Technique for encoding/decoding of codebook indices for quantized MDCT spectrum in scalable speech and audio codecs |
JP5229234B2 (ja) * | 2007-12-18 | 2013-07-03 | 富士通株式会社 | 非音声区間検出方法及び非音声区間検出装置 |
EP2107556A1 (en) | 2008-04-04 | 2009-10-07 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio transform coding using pitch correction |
KR20090122143A (ko) * | 2008-05-23 | 2009-11-26 | 엘지전자 주식회사 | 오디오 신호 처리 방법 및 장치 |
US8355921B2 (en) * | 2008-06-13 | 2013-01-15 | Nokia Corporation | Method, apparatus and computer program product for providing improved audio processing |
US20090319263A1 (en) * | 2008-06-20 | 2009-12-24 | Qualcomm Incorporated | Coding of transitional speech frames for low-bit-rate applications |
US20090319261A1 (en) * | 2008-06-20 | 2009-12-24 | Qualcomm Incorporated | Coding of transitional speech frames for low-bit-rate applications |
US8768690B2 (en) * | 2008-06-20 | 2014-07-01 | Qualcomm Incorporated | Coding scheme selection for low-bit-rate applications |
MY154452A (en) * | 2008-07-11 | 2015-06-15 | Fraunhofer Ges Forschung | An apparatus and a method for decoding an encoded audio signal |
ES2379761T3 (es) * | 2008-07-11 | 2012-05-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Proporcinar una señal de activación de distorsión de tiempo y codificar una señal de audio con la misma |
GB2466669B (en) | 2009-01-06 | 2013-03-06 | Skype | Speech coding |
GB2466670B (en) | 2009-01-06 | 2012-11-14 | Skype | Speech encoding |
GB2466673B (en) | 2009-01-06 | 2012-11-07 | Skype | Quantization |
GB2466671B (en) | 2009-01-06 | 2013-03-27 | Skype | Speech encoding |
GB2466675B (en) | 2009-01-06 | 2013-03-06 | Skype | Speech coding |
GB2466674B (en) | 2009-01-06 | 2013-11-13 | Skype | Speech coding |
GB2466672B (en) | 2009-01-06 | 2013-03-13 | Skype | Speech coding |
EP2211335A1 (en) * | 2009-01-21 | 2010-07-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus, method and computer program for obtaining a parameter describing a variation of a signal characteristic of a signal |
KR101622950B1 (ko) * | 2009-01-28 | 2016-05-23 | 삼성전자주식회사 | 오디오 신호의 부호화 및 복호화 방법 및 그 장치 |
CN102292769B (zh) * | 2009-02-13 | 2012-12-19 | 华为技术有限公司 | 一种立体声编码方法和装置 |
US20100225473A1 (en) * | 2009-03-05 | 2010-09-09 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Postural information system and method |
WO2010134759A2 (ko) | 2009-05-19 | 2010-11-25 | 한국전자통신연구원 | Mdct-tcx 프레임과 celp 프레임 간 연동을 위한 윈도우 처리 장치 및 윈도우 처리 방법 |
KR20110001130A (ko) * | 2009-06-29 | 2011-01-06 | 삼성전자주식회사 | 가중 선형 예측 변환을 이용한 오디오 신호 부호화 및 복호화 장치 및 그 방법 |
US8452606B2 (en) | 2009-09-29 | 2013-05-28 | Skype | Speech encoding using multiple bit rates |
ES2508590T3 (es) * | 2010-01-08 | 2014-10-16 | Nippon Telegraph And Telephone Corporation | Método de codificación, método de decodificación, aparato codificador, aparato decodificador, programa y medio de grabación |
JP5625076B2 (ja) * | 2010-03-10 | 2014-11-12 | フラウンホーファーゲゼルシャフトツール フォルデルング デル アンゲヴァンテン フォルシユング エー.フアー. | コーディングコンテキストのピッチ依存適合を用いた、オーディオ信号復号器、オーディオ信号符号化器、オーディオ信号を復号するための方法、オーディオ信号を符号化するための方法、およびコンピュータプログラム |
US9082416B2 (en) * | 2010-09-16 | 2015-07-14 | Qualcomm Incorporated | Estimating a pitch lag |
ES2938725T3 (es) | 2010-09-16 | 2023-04-14 | Dolby Int Ab | Transposición armónica basada en bloque de subbanda mejorado de producto cruzado |
WO2012103686A1 (en) * | 2011-02-01 | 2012-08-09 | Huawei Technologies Co., Ltd. | Method and apparatus for providing signal processing coefficients |
MY165853A (en) | 2011-02-14 | 2018-05-18 | Fraunhofer Ges Forschung | Linear prediction based coding scheme using spectral domain noise shaping |
EP2676270B1 (en) | 2011-02-14 | 2017-02-01 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Coding a portion of an audio signal using a transient detection and a quality result |
AU2012217215B2 (en) | 2011-02-14 | 2015-05-14 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Apparatus and method for error concealment in low-delay unified speech and audio coding (USAC) |
RU2586838C2 (ru) * | 2011-02-14 | 2016-06-10 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Аудиокодек, использующий синтез шума в течение неактивной фазы |
TR201903388T4 (tr) | 2011-02-14 | 2019-04-22 | Fraunhofer Ges Forschung | Bir ses sinyalinin parçalarının darbe konumlarının şifrelenmesi ve çözülmesi. |
TWI483245B (zh) | 2011-02-14 | 2015-05-01 | Fraunhofer Ges Forschung | 利用重疊變換之資訊信號表示技術 |
EP2676268B1 (en) | 2011-02-14 | 2014-12-03 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for processing a decoded audio signal in a spectral domain |
US9015044B2 (en) * | 2012-03-05 | 2015-04-21 | Malaspina Labs (Barbados) Inc. | Formant based speech reconstruction from noisy signals |
US9406307B2 (en) * | 2012-08-19 | 2016-08-02 | The Regents Of The University Of California | Method and apparatus for polyphonic audio signal prediction in coding and networking systems |
US9830920B2 (en) | 2012-08-19 | 2017-11-28 | The Regents Of The University Of California | Method and apparatus for polyphonic audio signal prediction in coding and networking systems |
US9208775B2 (en) | 2013-02-21 | 2015-12-08 | Qualcomm Incorporated | Systems and methods for determining pitch pulse period signal boundaries |
MY181026A (en) | 2013-06-21 | 2020-12-16 | Fraunhofer Ges Forschung | Apparatus and method realizing improved concepts for tcx ltp |
BR112016016310B1 (pt) * | 2014-01-14 | 2022-06-07 | Interactive Intelligence Group, Inc | Sistema para sintetizar discurso para um texto provido e método para gerar parâmetros |
FR3024581A1 (fr) * | 2014-07-29 | 2016-02-05 | Orange | Determination d'un budget de codage d'une trame de transition lpd/fd |
KR102422794B1 (ko) * | 2015-09-04 | 2022-07-20 | 삼성전자주식회사 | 재생지연 조절 방법 및 장치와 시간축 변형방법 및 장치 |
EP3306609A1 (en) * | 2016-10-04 | 2018-04-11 | Fraunhofer Gesellschaft zur Förderung der Angewand | Apparatus and method for determining a pitch information |
US10847172B2 (en) * | 2018-12-17 | 2020-11-24 | Microsoft Technology Licensing, Llc | Phase quantization in a speech encoder |
US10957331B2 (en) | 2018-12-17 | 2021-03-23 | Microsoft Technology Licensing, Llc | Phase reconstruction in a speech decoder |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2258751B1 (es) * | 1974-01-18 | 1978-12-08 | Thomson Csf | |
CA2102080C (en) | 1992-12-14 | 1998-07-28 | Willem Bastiaan Kleijn | Time shifting for generalized analysis-by-synthesis coding |
FR2729246A1 (fr) * | 1995-01-06 | 1996-07-12 | Matra Communication | Procede de codage de parole a analyse par synthese |
US5704003A (en) * | 1995-09-19 | 1997-12-30 | Lucent Technologies Inc. | RCELP coder |
US6449590B1 (en) * | 1998-08-24 | 2002-09-10 | Conexant Systems, Inc. | Speech encoder using warping in long term preprocessing |
US7072832B1 (en) * | 1998-08-24 | 2006-07-04 | Mindspeed Technologies, Inc. | System for speech encoding having an adaptive encoding arrangement |
US6330533B2 (en) * | 1998-08-24 | 2001-12-11 | Conexant Systems, Inc. | Speech encoder adaptively applying pitch preprocessing with warping of target signal |
US6223151B1 (en) * | 1999-02-10 | 2001-04-24 | Telefon Aktie Bolaget Lm Ericsson | Method and apparatus for pre-processing speech signals prior to coding by transform-based speech coders |
-
2001
- 2001-12-14 CA CA002365203A patent/CA2365203A1/en not_active Abandoned
-
2002
- 2002-12-13 MX MXPA04005764A patent/MXPA04005764A/es active IP Right Grant
- 2002-12-13 EP EP06125444A patent/EP1758101A1/en not_active Withdrawn
- 2002-12-13 KR KR10-2004-7009260A patent/KR20040072658A/ko not_active Application Discontinuation
- 2002-12-13 CN CN200910005427XA patent/CN101488345B/zh not_active Expired - Lifetime
- 2002-12-13 RU RU2004121463/09A patent/RU2302665C2/ru active
- 2002-12-13 WO PCT/CA2002/001948 patent/WO2003052744A2/en active IP Right Grant
- 2002-12-13 US US10/498,254 patent/US7680651B2/en active Active
- 2002-12-13 CN CNA028276078A patent/CN1618093A/zh active Pending
- 2002-12-13 AU AU2002350340A patent/AU2002350340B2/en not_active Ceased
- 2002-12-13 ES ES02784985T patent/ES2283613T3/es not_active Expired - Lifetime
- 2002-12-13 AT AT02784985T patent/ATE358870T1/de not_active IP Right Cessation
- 2002-12-13 EP EP02784985A patent/EP1454315B1/en not_active Expired - Lifetime
- 2002-12-13 NZ NZ533416A patent/NZ533416A/en unknown
- 2002-12-13 DE DE60219351T patent/DE60219351T2/de not_active Expired - Lifetime
- 2002-12-13 JP JP2003553555A patent/JP2005513539A/ja not_active Withdrawn
- 2002-12-13 BR BR0214920-6A patent/BR0214920A/pt not_active IP Right Cessation
- 2002-12-16 MY MYPI20024699A patent/MY131886A/en unknown
-
2004
- 2004-06-10 ZA ZA200404625A patent/ZA200404625B/en unknown
- 2004-07-14 NO NO20042974A patent/NO20042974L/no not_active Application Discontinuation
-
2005
- 2005-03-02 HK HK05101816A patent/HK1069472A1/xx not_active IP Right Cessation
-
2008
- 2008-10-21 US US12/288,592 patent/US8121833B2/en not_active Expired - Lifetime
-
2010
- 2010-01-22 HK HK10100712.5A patent/HK1133730A1/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
CN101488345A (zh) | 2009-07-22 |
DE60219351T2 (de) | 2007-08-02 |
EP1454315B1 (en) | 2007-04-04 |
US8121833B2 (en) | 2012-02-21 |
US20050071153A1 (en) | 2005-03-31 |
BR0214920A (pt) | 2004-12-21 |
CA2365203A1 (en) | 2003-06-14 |
EP1758101A1 (en) | 2007-02-28 |
DE60219351D1 (de) | 2007-05-16 |
NZ533416A (en) | 2006-09-29 |
JP2005513539A (ja) | 2005-05-12 |
US20090063139A1 (en) | 2009-03-05 |
WO2003052744A3 (en) | 2004-02-05 |
CN101488345B (zh) | 2013-07-24 |
CN1618093A (zh) | 2005-05-18 |
ATE358870T1 (de) | 2007-04-15 |
EP1454315A2 (en) | 2004-09-08 |
HK1069472A1 (en) | 2005-05-20 |
ZA200404625B (en) | 2006-05-31 |
NO20042974L (no) | 2004-09-14 |
AU2002350340A1 (en) | 2003-06-30 |
KR20040072658A (ko) | 2004-08-18 |
RU2004121463A (ru) | 2006-01-10 |
WO2003052744A2 (en) | 2003-06-26 |
AU2002350340B2 (en) | 2008-07-24 |
MY131886A (en) | 2007-09-28 |
MXPA04005764A (es) | 2005-06-08 |
US7680651B2 (en) | 2010-03-16 |
RU2302665C2 (ru) | 2007-07-10 |
HK1133730A1 (en) | 2010-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2283613T3 (es) | Metodo de modificacion de señales para la codificacion eficaz de señales de voz. | |
ES2434947T3 (es) | Procedimiento y dispositivo para la ocultación eficiente de un borrado de trama en códecs de voz | |
JP5519334B2 (ja) | 音声符号化用開ループピッチ処理 | |
ES2360176T3 (es) | Alisamiento de discontinuidades entre tramas de habla. | |
JP4658596B2 (ja) | 線形予測に基づく音声コーデックにおける効率的なフレーム消失の隠蔽のための方法、及び装置 | |
JP5373217B2 (ja) | 可変レートスピーチ符号化 | |
ES2266003T3 (es) | Suavizador de la ganancia en un descodificador de señal de habla y audio de banda ancha. | |
ES2380962T3 (es) | Procedimiento y aparato para codificación de baja tasa de transmisión de bits de habla sorda de alto rendimiento | |
TW200912897A (en) | Systems, methods, and apparatus for signal encoding using pitch-regularizing and non-pitch-regularizing coding | |
ES2383365T3 (es) | Post-filtro no causal | |
ES2277050T3 (es) | Metodo de codificacion generalizada de voz de analisis por sintesis, y codificador que implanta tal metodo. | |
ES2253226T3 (es) | Codigo interpolativo multipulso de tramas de voz. | |
ES2297578T3 (es) | Procedimiento y aparato para submuestrear informacion del espectro de fase. | |
Jelinek et al. | On the architecture of the cdma2000/spl reg/variable-rate multimode wideband (VMR-WB) speech coding standard | |
CA2469774A1 (en) | Signal modification method for efficient coding of speech signals |