ES2688037T3 - Aparato y procedimientos de conmutación de tecnologías de codificación en un dispositivo - Google Patents
Aparato y procedimientos de conmutación de tecnologías de codificación en un dispositivo Download PDFInfo
- Publication number
- ES2688037T3 ES2688037T3 ES15717334.5T ES15717334T ES2688037T3 ES 2688037 T3 ES2688037 T3 ES 2688037T3 ES 15717334 T ES15717334 T ES 15717334T ES 2688037 T3 ES2688037 T3 ES 2688037T3
- Authority
- ES
- Spain
- Prior art keywords
- encoder
- frame
- signal
- high band
- mdct
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000005516 engineering process Methods 0.000 title claims description 13
- 230000005236 sound signal Effects 0.000 claims abstract description 99
- 238000012545 processing Methods 0.000 claims abstract description 17
- 238000004458 analytical method Methods 0.000 claims description 60
- 239000000872 buffer Substances 0.000 claims description 52
- 230000015654 memory Effects 0.000 claims description 22
- 230000015572 biosynthetic process Effects 0.000 claims description 20
- 238000003786 synthesis reaction Methods 0.000 claims description 20
- 238000004891 communication Methods 0.000 claims description 19
- 230000005284 excitation Effects 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 13
- 230000009467 reduction Effects 0.000 claims description 11
- 230000003595 spectral effect Effects 0.000 claims description 11
- 230000005540 biological transmission Effects 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 8
- 238000009499 grossing Methods 0.000 claims description 7
- 238000005070 sampling Methods 0.000 claims description 5
- 238000013213 extrapolation Methods 0.000 claims description 3
- 238000011002 quantification Methods 0.000 claims description 3
- 238000001228 spectrum Methods 0.000 claims description 3
- 230000007704 transition Effects 0.000 claims description 3
- 239000013598 vector Substances 0.000 claims description 3
- 238000010295 mobile communication Methods 0.000 claims description 2
- 230000009466 transformation Effects 0.000 claims 7
- 238000001914 filtration Methods 0.000 claims 6
- 238000010586 diagram Methods 0.000 claims 5
- 238000002156 mixing Methods 0.000 claims 5
- 230000004044 response Effects 0.000 claims 3
- 238000004422 calculation algorithm Methods 0.000 claims 2
- 239000002775 capsule Substances 0.000 claims 2
- 238000013461 design Methods 0.000 claims 2
- 230000003287 optical effect Effects 0.000 claims 2
- 230000002441 reversible effect Effects 0.000 claims 2
- 230000001052 transient effect Effects 0.000 claims 2
- 238000004364 calculation method Methods 0.000 claims 1
- 235000019800 disodium phosphate Nutrition 0.000 claims 1
- 238000007620 mathematical function Methods 0.000 claims 1
- 239000000203 mixture Substances 0.000 claims 1
- 238000012986 modification Methods 0.000 claims 1
- 230000004048 modification Effects 0.000 claims 1
- 238000011017 operating method Methods 0.000 claims 1
- 238000010183 spectrum analysis Methods 0.000 claims 1
- 238000012546 transfer Methods 0.000 claims 1
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 230000002123 temporal effect Effects 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/02—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 spectral analysis, e.g. transform vocoders or subband vocoders
-
- 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
-
- 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/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
- G10L19/20—Vocoders using multiple modes using sound class specific coding, hybrid encoders or object based coding
-
- 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
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/038—Speech enhancement, e.g. noise reduction or echo cancellation using band spreading techniques
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Un procedimiento que comprende: codificación (402) de una primera trama de una señal de audio (102) usando un codificador basado en transformada (120); generación (404), durante la codificación de la primera trama, de una señal de banda base (130) que incluye contenido correspondiente a una parte de banda alta de la señal de audio (102), en el que la generación de la señal de banda base incluye realizar una operación de alternación y una operación de diezmado; y codificación (406) de una segunda trama de la señal de audio usando un codificador basado en predicción lineal (150), en el que la codificación de la segunda trama incluye procesar la señal de banda base para generar parámetros de banda alta asociados con la segunda trama.
Description
5
10
15
20
25
30
35
40
45
50
55
60
65
DESCRIPCION
Aparato y procedimientos de conmutación de tecnologías de codificación en un dispositivo
I. Reivindicación de prioridad
[0001] Se reivindica prioridad de la solicitud de EE. UU. n.° 14/671,757 presentada el 27 de marzo de 2015 y la solicitud provisional de EE. UU. n.° 61/973,028 presentada el 31 de marzo de 2014.
II. Campo
[0002] La presente divulgación se refiere en general a conmutación de tecnologías de codificación en un dispositivo.
III. Descripción de la técnica relacionada
[0003] Los avances en la tecnología han dado como resultado dispositivos informáticos más pequeños y más potentes. Por ejemplo, existe actualmente una variedad de dispositivos informáticos personales portátiles, incluyendo dispositivos informáticos inalámbricos, tales como teléfonos inalámbricos portátiles, asistentes digitales personales (PDA) y dispositivos de búsqueda que son pequeños, ligeros y que se transportan fácilmente por los usuarios. Más específicamente, los teléfonos inalámbricos portátiles, tales como los teléfonos celulares y los teléfonos del protocolo de Internet (IP), pueden comunicar paquetes de voz y datos por redes inalámbricas. Además, muchos de dichos teléfonos inalámbricos incluyen otros tipos de dispositivos que están incorporados en los mismos. Por ejemplo, un teléfono inalámbrico también puede incluir una cámara fotográfica digital, una cámara de vídeo digital, un grabador digital y un reproductor de archivos de audio.
[0004] Los teléfonos inalámbricos envían y reciben señales representativas de la voz humana (por ejemplo, el habla). La transmisión de la voz por técnicas digitales está extendida, en particular en aplicaciones radiotelefónicas de larga distancia y digitales. Puede haber interés en determinar la menor cantidad de información que se puede enviar a través de un canal manteniendo a la vez una calidad percibida de habla reconstruido. Si el habla se transmite por muestreo y digitalización, se puede usar una velocidad de datos en el orden de sesenta y cuatro kilobits por segundo (kbps) para lograr una calidad de habla de un teléfono analógico. Mediante el uso de análisis de habla, seguido de codificación, transmisión y resíntesis en un receptor, se puede lograr una reducción significativa en la velocidad de datos.
[0005] Los dispositivos para comprimir el habla pueden tener uso en muchos campos de las telecomunicaciones. Un campo ejemplar son las comunicaciones inalámbricas. El campo de las comunicaciones inalámbricas tiene muchas aplicaciones, incluyendo, por ejemplo, teléfonos sin cables, radiobúsqueda, bucles locales inalámbricos, telefonía inalámbrica, tal como sistemas telefónicos de servicio de comunicación personal (PCS) y celulares, telefonía IP móvil y sistemas de comunicación satelital. Una aplicación particular es la telefonía inalámbrica para abonados móviles.
[0006] Se han desarrollado diversas interfaces aéreas para sistemas de comunicación inalámbrica, incluyendo, por ejemplo, acceso múltiple por división de frecuencia (FDMA), acceso múltiple por división de tiempo (TDMA), acceso múltiple por división de código (CDMA) y CDMA simultáneo con división de tiempo (TD-SCDMA). En relación con eso, se han establecido diversas normas nacionales e internacionales, incluyendo, por ejemplo, el servicio telefónico móvil avanzado (AMPS), el sistema global para las comunicaciones móviles (GSM) y la norma transitoria 95 (IS-95). Un sistema de comunicación de telefonía inalámbrica ejemplar es un sistema CDMA. La norma IS-95 y sus derivadas, IS-95A, J-STD-008 del Instituto Nacional Estadounidense de Estándares (ANSI), e IS-95B (a las que se refiere colectivamente en el presente documento como IS-95), se promulgaron por la Asociación de la Industria de Telecomunicaciones (TIA) y otros organismos normativos para especificar el uso de una interfaz aérea de CDMA para sistemas de comunicación de telefonía celular o PCS.
[0007] La norma IS-95 posteriormente dio lugar a los sistemas "3G", tales como cdma2000 y CDMA de banda ancha (WCDMA), lo que proporciona servicios de datos de paquete de más capacidad y alta velocidad. Se presentan dos variaciones de cdma2000 por los documentos IS-2000 (cdma2000 1xRTT) e IS-856 (cdma2000 1xEV-DO), que se emiten por TIA. El sistema de comunicación cdma2000 1xRTT ofrece una velocidad de datos máxima de 153 kbps, mientras que el sistema de comunicación cdma2000 1xEV-DO define un conjunto de velocidades de datos, que varían de 38,4 kbps a 2,4 Mbps. La norma WCDMA se realiza en el 3rd Generation Partnership Project [Proyecto de Colaboración de Tercera Generación] "3GPP", documentos n.os 3G TS 25.211, 3G TS 25.212, 3G TS 25.213 y 3G TS 25.214. La especificación de telecomunicaciones móviles internacionales avanzadas (IMT-Advanced) expone las normas "4G". La especificación IMT-Advanced establece una velocidad de datos máxima para el servicio 4G en 100 megabits por segundo (Mbit/s) para comunicación de alta movilidad (por ejemplo, de trenes y automóviles) y de 1 gigabit por segundo (Gbit/s) para comunicación de baja movilidad (por ejemplo, de peatones y usuarios estacionarios).
5
10
15
20
25
30
35
40
45
50
55
60
65
[0008] Los dispositivos que emplean técnicas para comprimir el habla extrayendo parámetros que se relacionan con un modelo de generación de habla humana se denominan codificadores del habla. Los codificadores del habla pueden incluir un codificador y un decodificador. El codificador divide la señal de habla entrante en bloques de tiempo o tramas de análisis. Se puede seleccionar la duración de cada segmento en tiempo (o "trama") para que sea suficientemente corta como para que se pueda esperar que la envolvente espectral de la señal permanezca relativamente estacionaria. Por ejemplo, una longitud de trama tiene veinte milisegundos, que corresponde a 160 muestras a una tasa de muestreo de ocho kilohercios (kHz), aunque se puede usar cualquier longitud de trama o tasa de muestreo que se considere adecuada para la aplicación particular.
[0009] El codificador analiza la trama de habla entrante para extraer determinados parámetros relevantes y luego cuantifica los parámetros en representación binaria, por ejemplo, en un conjunto de bits o un paquete de datos binarios. Los paquetes de datos se transmiten por un canal de comunicación (por ejemplo, una conexión de red alámbrica y/o inalámbrica) a un receptor y un decodificador. El decodificador procesa los paquetes de datos, descuantifica los paquetes de datos procesados para producir los parámetros, y resintetiza las tramas de habla usando los parámetros descuantificados.
[0010] La función del codificador de habla es comprimir la señal de habla digitalizada en una señal de baja tasa de bits eliminando las redundancias naturales inherentes en el habla. Se puede lograr la compresión digital representando una trama de habla de entrada con un conjunto de parámetros y empleando la cuantificación para representar los parámetros con un conjunto de bits. Si la trama de habla de entrada tiene un número de bits Ni y un paquete de datos producido por el codificador de habla tiene un número de bits No, el factor de compresión logrado por el codificador de habla es Cr = Ni/No. El desafío es conservar la alta calidad de voz del habla decodificada a la vez que se logra el factor de compresión objetivo. El rendimiento de un codificador de habla depende de (1) qué tan bien lleve a cabo el modelo de habla, o la combinación del procedimiento de análisis y síntesis descrito anteriormente, y (2) qué tan bien se lleve a cabo el procedimiento de cuantificación de parámetro en la tasa de bits objetivo de No bits por trama. El objetivo del modelo de habla es por tanto capturar la esencia de la señal de habla, o la calidad de voz objetivo, con un pequeño conjunto de parámetros para cada trama.
[0011] Los codificadores de habla en general utilizan un conjunto de parámetros (incluyendo vectores) para describir la señal de habla. Un buen conjunto de parámetros proporciona, idealmente, un bajo ancho de banda de sistema para la construcción de una señal de habla exacta de manera perceptual. El tono, la potencia de señal, la envolvente espectral (o formantes), la amplitud y los espectros de fase son ejemplos de los parámetros de codificación del habla.
[0012] Se pueden implementar los codificadores del habla como codificadores de dominio de tiempo, que intentan capturar la forma de onda del habla de dominio de tiempo empleando un procesamiento de alta resolución temporal para codificar pequeños segmentos de habla (por ejemplo, subtramas de 5 milisegundos (ms)) de uno en uno. Para cada subtrama, se encuentra un representante de alta precisión de un espacio de libro de códigos por medio de un algoritmo de búsqueda. De forma alternativa, se pueden implementar codificadores del habla como codificadores de dominio de frecuencia, que intentan capturar el espectro de habla a corto plazo de la trama de habla de entrada con un conjunto de parámetros (análisis) y emplear un procedimiento de síntesis correspondiente para recrear la forma de onda de habla a partir de los parámetros espectrales. El cuantificador de parámetros conserva los parámetros representándolos con representaciones almacenadas de vectores de código de acuerdo con técnicas de cuantificación conocidas.
[0013] Un codificador de habla de dominio de tiempo es el codificador predictivo lineal excitado por código (CELP). En un codificador CELP, se eliminan las correlaciones a corto plazo, o redundancias, en la señal del habla por un análisis de predicción lineal (LP), que encuentra los coeficientes de un filtro formante a corto plazo. La aplicación del filtro de predicción a corto plazo a la trama de habla entrante genera una señal residual de LP, que se modela y se cuantifica adicionalmente con parámetros de filtro de predicción a largo plazo y un libro de códigos estocástico posterior. Por tanto, la codificación CELP divide la tarea de codificar la forma de onda del habla de dominio de tiempo en tareas separadas de codificación de los coeficientes de filtro a corto plazo de LP y de codificación de LP residual. Se puede realizar la codificación de dominio de tiempo a una tasa fija (por ejemplo, usando el mismo número de bits, No, para cada trama) o a una tasa variable (en la que se usan diferentes tasas de bits para diferentes tipos de contenido de trama). Los codificadores de tasa variable intentan usar la cantidad de bits necesarios para codificar los parámetros de códec a un nivel adecuado para obtener una calidad objetivo.
[0014] Los codificadores de dominio de tiempo, tales como el codificador CELP, pueden depender de un alto número de bits, N0, por trama para conservar la exactitud de la forma de onda del habla de dominio de tiempo. Dichos codificadores pueden suministrar excelente calidad de voz siempre que el número de bits, No, por trama sea relativamente grande (por ejemplo, 8 kbps o mayores). A bajas tasas de bits (por ejemplo, 4 kbps y menores), los codificadores de dominio de tiempo pueden dejar de mantener una alta calidad y un sólido rendimiento debido al número limitado de bits disponibles. A bajas tasas de bits, el espacio limitado del libro de códigos recorta la capacidad de igualar la forma de onda de los codificadores de dominio de tiempo, que se instalan en aplicaciones comerciales de tasa más alta. De ahí que, pese a las mejoras en el transcurso del tiempo, muchos sistemas de
5
10
15
20
25
30
35
40
45
50
55
60
65
codificación CELP que funcionan a bajas tasas de bits son susceptibles de distorsión significativa de manera perceptual caracterizada como ruido.
[0015] Una alternativa para los codificadores CELP a bajas tasas de bits es el codificador "predictivo lineal excitado por ruido" (NELP), que funciona bajo principios similares a un codificador CELP. Los codificadores NELP usan una señal de ruido pseudoaleatoria filtrada para modelar el habla, en lugar de un libro de códigos. Puesto que NELP usa un modelo más simple para el habla codificada, NELP logra una tasa de bits más baja que CELP. Se puede usar NELP para comprimir o representar habla sin voz o silencio.
[0016] Los sistemas de codificación que funcionan a tasas en el orden de 2,4 kbps son en general de naturaleza paramétrica. Es decir, dichos sistemas de codificación funcionan transmitiendo parámetros que describen el período de tono y la envolvente espectral (o formantes) de la señal de habla a intervalos regulares. El sistema vocodificador de LP es ilustrativo de estos codificadores denominados paramétricos.
[0017] Los vocodificadores de LP modelan una señal de habla con voz con un único pulso por período de tono. Esta técnica básica se puede aumentar para incluir información de transmisión acerca de la envolvente espectral, entre otras cosas. Aunque los vocodificadores de LP proporcionan un rendimiento razonable en general, pueden introducir distorsión significativa de manera perceptual, caracterizada como zumbido.
[0018] En los últimos años, han aparecido codificadores que son híbridos tanto de codificadores de forma de onda como de codificadores paramétricos. El sistema de codificación de habla de interpolación de forma de onda prototipo (PWI) es ilustrativo de estos codificadores denominados híbridos. El sistema de codificación PWI también se puede conocer como un codificador de habla de período de tono prototipo (PPP). Un sistema de codificación PWI proporciona un procedimiento eficaz para codificar el habla con voz. El concepto básico de PWI es extraer un ciclo de tono representativo (la forma de onda prototipo) a intervalos fijos, transmitir su descripción y reconstruir la señal de habla interpolando entre las formas de onda prototipo. El procedimiento PWI puede funcionar en la señal residual de LP o bien en la señal de habla.
[0019] Un dispositivo de comunicación puede recibir una señal de habla con una calidad de voz más baja de la óptima. Para ilustrar esto, el dispositivo de comunicación puede recibir la señal de habla desde otro dispositivo de comunicación durante una llamada de voz. La calidad de la llamada de voz se puede ver afectada debido a diversas razones, tales como ruido ambiental (por ejemplo, viento, ruido de la calle), limitaciones de las interfaces de los dispositivos de comunicación, procesamiento de la señal por los dispositivos de comunicación, pérdida de paquete, limitaciones de ancho de banda, limitaciones de tasa de bits, etc.
[0020] En sistemas telefónicos tradicionales (por ejemplo, las redes telefónicas conmutadas públicas (PSTN)), el ancho de banda de la señal está limitado al rango de frecuencias de 300 hercios (Hz) a 3,4 kHz. En aplicaciones de banda ancha (WB), tales como la telefonía celular y la voz sobre el protocolo de Internet (VoIP), el ancho de banda de la señal puede abarcar el rango de frecuencias de 50 Hz a 7 kHz. Las técnicas de codificación de banda superancha (SWB) prestan soporte a un ancho de banda que se extiende hasta alrededor de 16 kHz. La extensión del ancho de banda de la señal desde la telefonía de banda estrecha a 3,4 kHz hasta la telefonía SWB de 16 kHz puede mejorar la calidad de la reconstrucción, la inteligibilidad y la naturalidad de la señal.
[0021] Una técnica de codificación WB/SWB es la extensión del ancho de banda (BWE), que implica la codificación y la transmisión de la parte de frecuencias más bajas de la señal (por ejemplo, de 0 Hz a 6,4 kHz, también denominada la "banda baja"). Por ejemplo, la banda baja se puede representar usando parámetros de filtro y/o una señal de excitación de banda baja. Sin embargo, a fin de mejorar la eficacia de codificación, la parte de frecuencias más altas de la señal (por ejemplo, de 6,4 kHz a 16 kHz, también denominada "banda alta") no se puede codificar y transmitir totalmente. En cambio, un receptor puede utilizar el modelado de señales para predecir la banda alta. En algunas implementaciones, se pueden proporcionar los datos asociados a la banda alta al receptor para facilitar la predicción. Dichos datos se pueden denominar "información lateral", y pueden incluir información de ganancia, frecuencias espectrales lineales (LSF, también denominadas pares espectrales lineales (LSP)), etc.
[0022] En algunos teléfonos inalámbricos, están disponibles múltiples tecnologías de codificación. Por ejemplo, se pueden usar diferentes tecnologías de codificación para codificar diferentes tipos de señales de audio (por ejemplo, señales de voz frente a señales musicales). Cuando el teléfono inalámbrico conmuta de usar una primera tecnología de codificación para codificar una señal de audio a usar una segunda tecnología de codificación para codificar la señal de audio, se pueden generar artefactos audibles en fronteras de trama de la señal de audio debido al restablecimiento de los búferes de memoria dentro de los codificadores.
[0023] En el documento US 2013/0030798 A1, se proporcionan un codificador y un decodificador para procesar una señal de audio que incluye tramas de audio genérico y habla. Durante el funcionamiento, se utilizan dos codificadores por el codificador de habla, y se utilizan dos decodificadores por el decodificador de habla. Los dos codificadores y decodificadores se utilizan para procesar el habla y el no habla (audio genérico) respectivamente. Durante una transición entre audio genérico y habla, los parámetros que necesita el decodificador de habla para decodificar la trama de habla se generan procesando la trama de audio genérico previa (el no habla) para los
5
10
15
20
25
30
35
40
45
50
55
60
65
parámetros necesarios. Dado que los parámetros necesarios se obtienen por el codificador/decodificador de habla, las discontinuidades asociadas con la técnica anterior se reducen cuando se convierte entre las tramas de audio genérico y las tramas de habla.
IV. Sumario
[0024] Se divulgan sistemas y procedimientos de reducir artefactos de frontera de trama y discordancias de energía cuando se conmutan tecnologías de codificación en un dispositivo. Por ejemplo, un dispositivo puede usar un primer codificador, tal como un codificador de transformada de coseno discreta modificada (MDCT), para codificar una trama de una señal de audio que contenga componentes sustanciales de alta frecuencia. Por ejemplo, la trama puede contener ruido de fondo, habla con ruido o música. El dispositivo puede usar un segundo codificador, tal como un codificador de predicción lineal excitado por código algebraico (ACELP), para codificar una trama de habla que no contenga componentes sustanciales de alta frecuencia. Uno o ambos de los codificadores pueden aplicar una técnica BWE. Cuando se conmuta entre el codificador MDCT y el codificador ACELP, se pueden restablecer los búferes de memoria usados para BWE (por ejemplo, llenarse con ceros) y se pueden restablecer estados de filtro, que pueden provocar artefactos de frontera de trama y discordancias de energía.
[0025] De acuerdo con las técnicas descritas, en lugar de restablecer (o "poner en cero") un búfer y restablecer un filtro, un codificador puede llenar el búfer y determinar las configuraciones de filtro basándose en la información del otro codificador. Por ejemplo, cuando se codifica una primera trama de una señal de audio, el codificador MDCT puede generar una señal de banda base que corresponde a un "objetivo" de banda alta y el codificador ACELP puede usar la señal de banda base para llenar un búfer de señales objetivo y generar parámetros de banda alta para una segunda trama de la señal de audio. Como otro ejemplo, se puede llenar el búfer de señales objetivo basándose en una salida sintetizada del codificador MDCT. Todavía, como otro ejemplo, el codificador ACELP puede estimar una parte de la primera trama usando técnicas de extrapolación, energía de señal, información de tipo de trama (por ejemplo, si la segunda trama y/o la primera trama es una trama sin voz, una trama con voz, una trama transitoria o una trama genérica), etc.
[0026] Durante la síntesis de la señal, los decodificadores también pueden realizar operaciones para reducir artefactos de frontera de trama y discordancias de energía debidas a la conmutación de tecnologías de codificación. Por ejemplo, un dispositivo puede incluir un decodificador MDCT y un decodificador ACELP. Cuando el decodificador ACELP decodifica una primera trama de una señal de audio, el decodificador ACELP puede generar un conjunto de muestras de "superposición" correspondientes a una segunda (es decir, la siguiente) trama de la señal de audio. Si se produce conmutación de una tecnología de codificación en la frontera de trama entre la primera y segunda tramas, el decodificador MDCT puede realizar una operación de suavizado (por ejemplo, un fundido cruzado) durante la decodificación de la segunda trama basándose en las muestras de superposición del decodificador ACELP para incrementar la continuidad de señal percibida en la frontera de trama.
[0027] De acuerdo con un aspecto particular de la invención, un procedimiento incluye codificar una primera trama de una señal de audio usando un primer codificador. El procedimiento también incluye generar, durante la codificación de la primera trama, una señal de banda base basándose en la señal de audio, incluyendo la señal de banda base contenido correspondiente a una parte de banda alta de la señal de audio convertida a la banda base, en el que la generación de la señal de banda base incluye realizar una operación de alternación y una operación de diezmado. El procedimiento incluye además codificar una segunda trama de la señal de audio usando un segundo codificador, donde codificar la segunda trama incluye procesar la señal de banda base para generar parámetros de banda alta asociados con la segunda trama. De acuerdo con la invención el primer codificador es un codificador basado en transformada y el segundo codificador es un codificador basado en predicción lineal.
[0028] De acuerdo con otro aspecto particular de la invención, un aparato incluye un primer codificador configurado para codificar una primera trama de una señal de audio y para generar, durante la codificación de la primera trama, una señal de banda base basada en la señal de audio, incluyendo la señal de banda base contenido correspondiente a una parte de banda alta de la señal de audio convertida en la banda base, en el que la generación de la señal de banda base incluye realizar una operación de alternación y una operación de diezmado. El aparato incluye también un segundo codificador configurado para codificar una segunda trama de la señal de audio. La codificación de la segunda trama incluye procesar la señal de banda base para generar parámetros de banda alta asociados con la segunda trama. De acuerdo con la invención, el primer codificador es un codificador basado en transformada y el segundo codificador es un codificador basado en predicción lineal.
[0029] En otro aspecto particular de la invención, un dispositivo de almacenamiento legible por ordenador almacena instrucciones que, cuando se ejecutan por un procesador, provocan que el procesador realice el procedimiento descrito anteriormente.
[0030] En un modo de realización preferente, la segunda trama sigue de manera secuencial a la primera trama en la señal de audio. De forma alternativa o adicional, el primer codificador comprende un codificador basado en transformada tal como un codificador de transformada de coseno discreta modificada (MDCT). De forma alternativa
Claims (14)
- 5101520253035404550556065o adicional, el segundo codificador comprende un codificador basado en predicción lineal (LP) tal como un codificador de predicción lineal excitada por código algebraico (ACELP).[0031] De forma alternativa o adicional, la generación de la señal de banda base no incluye realizar una operación de filtración de alto orden y no incluye realizar una operación de mezcla estereofónica.[0032] En un modo de realización preferente, la señal de banda base se genera usando un decodificador local del primer codificador y la señal de banda base corresponde a una versión sintetizada de al menos una parte de la señal de audio.[0033] Las ventajas particulares proporcionadas por al menos uno de los ejemplos divulgados incluyen la capacidad de reducir artefactos de frontera de trama y discordancias de energía cuando se conmuta entre codificadores o decodificadores en un dispositivo. Por ejemplo, se puede determinar una o más memorias, tales como búferes o estados de filtro de un codificador o decodificador basándose en el funcionamiento de otro codificador o decodificador. Otros aspectos, ventajas y características de la presente divulgación resultarán evidentes después de revisar toda la solicitud, incluyendo las siguientes secciones: Breve descripción de los dibujos, Descripción detallada y Reivindicaciones.V. Breve descripción de los dibujos[0034]La FIG. 1 es un diagrama de bloques para ilustrar un ejemplo particular de un sistema que puede funcionar para prestar soporte a la conmutación entre codificadores con reducción en artefactos de frontera de trama y discordancias de energía;la FIG. 2 es un diagrama de bloques para ilustrar un ejemplo particular de un sistema de codificación ACELP;la FIG. 3 es un diagrama de bloques para ilustrar un ejemplo particular de un sistema que puede funcionar para prestar soporte a la conmutación entre decodificadores con reducción en artefactos de frontera de trama y discordancias de energía;la FIG. 4 es un diagrama de flujo para ilustrar un ejemplo particular de un procedimiento de funcionamiento en un dispositivo codificador;la FIG. 5 es un diagrama de flujo para ilustrar otro ejemplo particular de un procedimiento de funcionamiento en un dispositivo codificador;la FIG. 6 es un diagrama de flujo para ilustrar otro ejemplo particular de un procedimiento de funcionamiento en un dispositivo codificador;la FIG. 7 es un diagrama de flujo para ilustrar un ejemplo particular de un procedimiento de funcionamiento en un dispositivo decodificador; yla FIG. 8 es un diagrama de bloques de un dispositivo inalámbrico que funciona para realizar operaciones de acuerdo con los sistemas y procedimientos de las FIGS. 1-7.VI. Descripción detallada[0035] Con referencia a la FIG. 1 se representa un ejemplo particular de un sistema que puede funcionar para conmutar codificadores (por ejemplo, tecnologías de codificación) al tiempo que reduce artefactos de frontera de trama y discordancias de energía y se designa, en general, 100. En un ejemplo ilustrativo, el sistema 100 está integrado en un dispositivo electrónico, tal como un teléfono inalámbrico, una tableta, etc. El sistema 100 incluye un selector de codificador 110, un codificador basado en transformada (por ejemplo, un codificador MDCT 120), y un codificador basado en LP (por ejemplo, un codificador ACELP 150). En un ejemplo alternativo, se pueden implementar diferentes tipos de tecnologías de codificación en el sistema 100.[0036] En la siguiente descripción, se describen diversas funciones realizadas por el sistema 100 de la FIG. 1 que están realizadas por determinados componentes o módulos. Sin embargo, esta división de componentes y módulos es solo para ilustración. En un ejemplo alternativo, una función realizada por un componente o módulo particular se puede dividir, en cambio, entre múltiples componentes o módulos. Además, en un ejemplo alternativo, dos o más componentes o módulos de la FIG. 1 se pueden integrar en un único componente o módulo. Cada componente o módulo ilustrado en la FIG. 1 se puede implementar usando hardware (por ejemplo, un circuito integrado específico de la aplicación (ASIC), un procesador de señales digitales (DSP), un controlador, un dispositivo de matriz de puertas programable por campo (FPGA), etc.), software (por ejemplo, instrucciones ejecutables por un procesador) o cualquier combinación de los mismos.5101520253035404550556065[0037] Además, se debe mencionar que aunque la FIG. 1 ilustra un codificador MDCT separado 120 y un codificador ACELP 150, no se debe considerar esto limitante. En ejemplos alternativos, un único codificador de un dispositivo electrónico puede incluir componentes correspondientes al codificador MDCT 120 y al codificador ACELP 150. Por ejemplo, el codificador puede incluir uno o más módulos "núcleo" de banda baja (LB) (por ejemplo, un núcleo MDCT y un núcleo ACELP) y uno o más módulos BWE/de banda alta (HB). Se puede proporcionar una parte de banda baja de cada trama de la señal de audio 102 a un módulo núcleo de banda baja particular para su codificación, dependiendo de las características de la trama (por ejemplo, si la trama contiene habla, ruido, música, etc.). Se puede proporcionar la parte de banda alta de cada trama a un módulo BWE/HB particular.[0038] Se puede configurar el selector de codificador 110 para recibir una señal de audio 120. La señal de audio 102 puede incluir datos de habla, datos no de habla (por ejemplo, música o ruido de fondo) o ambos. En un ejemplo ilustrativo, la señal de audio 102 es una señal SWB. Por ejemplo, la señal de audio 102 puede ocupar un rango de frecuencia que abarca aproximadamente de 0 Hz a 16 kHz. La señal de audio 102 puede incluir una pluralidad de tramas, donde cada trama tiene una duración particular. En un ejemplo ilustrativo, cada trama tiene 20 ms de duración, aunque en ejemplos alternativos se pueden usar diferentes duraciones de trama. El selector de codificador 110 puede determinar si se va a codificar cada trama de la señal de audio 102 por el codificador MDCT 120 o el codificador ACELP 150. Por ejemplo, el selector de codificador 110 puede clasificar tramas de la señal de audio 102 basándose en análisis espectral de las tramas. En un ejemplo particular, el selector de codificador 110 envía tramas que incluyen componentes sustanciales de alta frecuencia al codificador MDCT 120. Por ejemplo, dichas tramas pueden incluir señales de ruido de fondo, de habla con ruido o de música. El selector de codificador 110 puede enviar tramas que no incluyen componentes sustanciales de alta frecuencia al codificador ACELP 150. Por ejemplo, dichas tramas pueden incluir señales de habla.[0039] Por tanto, durante el funcionamiento del sistema 100, la codificación de la señal de audio 102 puede conmutar del codificador MDCT 120 al codificador ACELP 150 y viceversa. El codificador MDCT 120 y el codificador ACELP 150 pueden generar un flujo de bits de salida 199 correspondiente a las tramas codificadas. Para facilidad de ilustración, se muestran las tramas que se van a codificar por el codificador ACELP 150 con un patrón sombreado con líneas cruzadas y se muestran las tramas que se van a codificar por el codificador MDCT 120 sin patrón. En el ejemplo de la FIG. 1, se produce una conmutación desde la codificación ACELP a la codificación MDCT en una frontera de trama entre las tramas 108 y 109. Se produce una conmutación desde la codificación MDCT a la codificación ACELP en una frontera de trama entre las tramas 104 y 106.[0040] El codificador MDCT 120 incluye un módulo de análisis MDCT 121 que realiza codificación en el dominio de frecuencia. Si el codificador MDCT 120 no realiza BWE, el módulo de análisis MDCT 121 puede incluir un módulo MDCT "completo" 122. El módulo MDCT "completo 122 puede codificar tramas de la señal de audio 102 basándose en análisis de todo un rango de frecuencias de la señal de audio 102 (por ejemplo, 0 Hz-16 kHz). De forma alternativa, si el codificador MDCT 120 realiza BWE, se pueden procesar por separado los datos LB y los datos HB. Un módulo de banda baja 123 puede generar una representación codificada de una parte de banda baja de la señal de audio 102, y un módulo de banda alta 124 puede generar parámetros de banda alta que se van a usar por un decodificador para reconstruir una parte de banda alta (por ejemplo, 8 kHz-16 kHz) de la señal de audio 102. El codificador MDCT 120 también puede incluir un decodificador local 126 para la estimación de bucle cerrado. En un ejemplo ilustrativo, se usa el decodificador local 126 para sintetizar una representación de la señal de audio 102 (o una parte de la misma, tal como una parte de banda alta). Se puede almacenar la señal sintetizada en un búfer de síntesis y se puede usar por el módulo de banda alta 124 durante la determinación de parámetros de banda alta.[0041] El codificador ACELP 150 puede incluir un módulo de análisis ACELP de dominio de tiempo 159. En el ejemplo de la FIG. 1, el codificador ACELP 150 realiza una extensión de ancho de banda e incluye un módulo de análisis de banda baja 160 y un módulo de análisis de banda alta 161 separado. El módulo de análisis de banda baja 160 puede codificar una parte de banda baja de la señal de audio 102. En un ejemplo ilustrativo, la parte de banda baja de la señal de audio 102 ocupa un rango de frecuencias que abarca aproximadamente 0 Hz-6,4 kHz. En ejemplos alternativos, una frecuencia de cruce diferente puede separar las partes de banda baja y de banda alta y/o se pueden superponer las partes, como se describe adicionalmente con referencia a la FIG. 2. En un ejemplo particular, el módulo de análisis de banda baja 160 codifica la parte de banda baja de la señal de audio 102 cuantificando LSP que se generan a partir de un análisis LP de la parte de banda baja. La cuantificación se puede basar en un libro de códigos de banda baja. El análisis de banda baja ACELP se describe adicionalmente con referencia a la FIG. 2.[0042] Un generador de señal objetivo 155 del codificador ACELP 150 puede generar una señal objetivo que corresponde a una versión de banda base de la parte de banda alta de la señal de audio 102. Para ilustrar, un módulo informático 156 puede generar una señal objetivo al realizar una o más operaciones de alternación, diezmado, filtración de alto orden, mezcla estereofónica y/o submuestreo en la señal de audio 102. A medida que se genera la señal objetivo, se puede usar la señal objetivo para llenar un búfer de señales objetivo 151. En un ejemplo particular, el búfer de señales objetivo 151 almacena datos que valen 1,5 tramas e incluye una primera parte 152, una segunda parte 153 y una tercera parte 154. Por tanto, cuando las tramas tienen una duración de 20 ms, el búfer de señales objetivo 151 representa datos de banda alta para 30 ms de la señal de audio. La primera parte 1525101520253035404550556065puede representar datos de banda alta en 1-10 ms, la segunda parte 153 puede representar datos de banda alta en 11-20 ms y la tercera parte 154 puede representar datos de banda alta en 21-30 ms.[0043] El módulo de análisis de banda alta 161 puede generar parámetros de banda alta que se pueden usar por un decodificador para reconstruir una parte de banda alta de la señal de audio 102. Por ejemplo, la parte de banda alta de la señal de audio 102 puede ocupar el rango de frecuencias que abarca aproximadamente 6,4 kHz-16 kHz. En un ejemplo ilustrativo, el módulo de análisis de banda alta 161 cuantifica (por ejemplo, basándose en un libro de códigos) los LSP que se generan a partir de análisis de LP de la parte de banda alta. El módulo de análisis de banda alta 161 también puede recibir una señal de excitación de banda baja desde el módulo de análisis de banda baja 160. El módulo de análisis de banda alta 161 puede generar una señal de excitación de banda alta a partir de la señal de excitación de banda baja. Se puede proporcionar la señal de excitación de banda alta a un decodificador local 158 que genera una parte de banda alta sintetizada. El módulo de análisis de banda alta 161 puede determinar los parámetros de banda alta, tales como ganancia de trama, factor de ganancia, etc., basándose en el objetivo de banda alta en el búfer de señales objetivo 151 y/o la parte de banda alta sintetizada del decodificador local 158. El análisis de banda alta ACELP se describe adicionalmente con referencia a la FIG. 2.[0044] Después de que la codificación de la señal de audio 102 conmuta desde el codificador MDCT 120 al codificador ACELP 150 en la frontera de trama entre las tramas 104 y 106, el búfer de señales objetivo 151 puede estar vacío, se puede restablecer o puede incluir datos de banda alta de varias tramas en el pasado (por ejemplo, la trama 108). Además, los estados de filtro en el codificador ACELP, tales como los estados de filtro en el módulo informático 156, el módulo de análisis LB 160 y/o el módulo de análisis HB 161, pueden reflejar la operación de varias tramas en el pasado. Si se usa dicho restablecimiento o información "desactualizada" durante la codificación ACELP, se pueden generar artefactos molestos (por ejemplo, sonidos de chasquidos) en la frontera de trama entre la primera trama 104 y la segunda trama 106. Además, se puede percibir una discordancia de energía por un oyente (por ejemplo, un incremento o disminución repentina del volumen u otra característica de audio). De acuerdo con las técnicas descritas, en lugar de restablecer o usar antiguos estados de filtro y datos objetivo, se puede llenar el búfer de señales objetivo 151 y se pueden determinar estados de filtro basándose en datos asociados con la primera trama 104 (es decir, la última trama codificada por el codificador MDCT 120 antes de la conmutación al codificador ACELP 150).[0045] En un aspecto particular, se llena el búfer de señales objetivo 151 basándose en una señal objetivo "ligera" generada por el codificador MDCT 120. Por ejemplo, el codificador MDCT 120 puede incluir un generador de señales objetivo "ligeras" 125. El generador de señales objetivo "ligeras" 125 puede generar una señal de banda base 130 que representa un estimado de una señal objetivo que se va a usar por el codificador ACELP 150. En un aspecto particular, la señal de banda base 130 se genera realizando una operación de alternación y una operación de diezmado en la señal de audio 102. En un ejemplo, el generador de señales objetivo "ligeras" 125 funciona continuamente durante el funcionamiento del codificador MDCT 120. Para reducir la complejidad informática, el generador de señales objetivo "ligeras" 125 puede generar la señal de banda base 130 sin realizar una operación de filtración de alto orden o una operación de mezcla estereofónica. Se puede usar la señal de banda base 130 para llenar al menos una parte del búfer de señales objetivo 151. Por ejemplo, se puede llenar la primera parte 152 basándose en la señal de banda base 130, y se pueden llenar la segunda parte 153 y la tercera parte 154 basándose en una parte de banda alta de los 20 ms representados por la segunda trama 106.[0046] En un ejemplo particular, se puede llenar una parte del búfer de señales objetivo 151 (por ejemplo, la primera parte 152) basándose en una salida del decodificador local MDCT 126 (por ejemplo, los 10 ms más recientes de la salida sintetizada) en lugar de una salida del generador de señales objetivo "ligeras" 125. En este ejemplo, la señal de banda base 130 puede corresponder a una versión sintetizada de la señal de audio 102. Para ilustrar, se puede generar la señal de banda base 130 a partir de un búfer de síntesis del decodificador local MDCT 126. Si el módulo de análisis MDCT 121 hace una MDCT "completa", el decodificador local 126 puede realizar una MDCT inversa (IMDCT) "completa" (0 Hz-16 kHz), y la señal de banda base 130 puede corresponder a una parte de banda alta de la señal de audio 102 así como una parte adicional (por ejemplo, una parte de banda baja) de la señal de audio. En este ejemplo, se puede filtrar la salida de síntesis y/o la señal de banda base 130 (por ejemplo, por medio de un filtro de paso alto (HPF), una operación de alternación y diezmado, etc.) para generar una señal resultante que se aproxime (por ejemplo, incluya) a los datos de banda alta (por ejemplo, en la banda de 8 kHz- 16 kHz).[0047] Si el codificador MDCT 120 realiza BWE, el decodificador local 126 puede incluir una IMDCT de banda alta (8 kHz-16 kHz) para sintetizar una señal de solo banda alta. En este ejemplo, la señal de banda base 130 puede representar la señal solo de banda alta sintetizada y se puede copiar en la primera parte 152 del búfer de señales objetivo 151. En este ejemplo, se llena la primera parte 152 del búfer de señales objetivo 151 sin usar operaciones de filtrado, sino en cambio solo una operación de copiado de datos. Se pueden llenar la segunda parte 153 y la tercera parte 154 del búfer de señales objetivo 151 basándose en una parte de banda alta de los 20 ms representados por la segunda trama 106.[0048] Por tanto, en determinados aspectos, se puede llenar el búfer de señales objetivo 151 basándose en la señal de banda base 130, que representa datos de señales objetivo o sintetizadas que se habrían generado por el5101520253035404550556065generador de señales objetivo 155 o el decodificador local 158 si se hubiera codificado la primera trama 104 por el codificador ACELP 150 en lugar del codificador MDCT 120. También se pueden determinar otros elementos de memoria, tales como estados de filtro (por ejemplo, estados de filtro de LP, estados eliminadores, etc.) en el codificador ACELP 150 basándose en la señal de banda base 130 en lugar de restablecerse en respuesta a una conmutación de codificador. Usando una aproximación de datos de señal objetivo o sintetizada, se pueden reducir artefactos de frontera de trama y discordancias de energía en comparación con el restablecimiento del búfer de señales objetivo 151. Además, los filtros en el codificador ACELP 150 pueden alcanzar un estado "estacionario" (por ejemplo, converger) más rápido.[0049] En un aspecto particular, se pueden estimar los datos correspondientes a la primera trama 104 por el codificador ACELP 150. Por ejemplo, el generador de señales objetivo 155 puede incluir un estimador 157 configurado para estimar una parte de la primera trama 104 para llenar una parte del búfer de señales objetivo 151. En un aspecto particular, el estimador 157 realiza una operación de extrapolación basándose en los datos de la segunda trama 106. Por ejemplo, se pueden almacenar los datos que representan una parte de banda alta de la segunda trama 106 en la segunda y tercera partes 153, 154 del búfer de señales objetivo 151. El estimador 157 puede almacenar datos en la primera parte 152 que se generan extrapolando (denominado de forma alternativa "retropropagación") los datos almacenados en la segunda parte 153 y opcionalmente la tercera parte 154. Como otro ejemplo, el estimador 157 puede realizar una LP hacia atrás basándose en la segunda trama 106 para estimar la primera trama 104 o una parte de la misma (por ejemplo, unos últimos 10 ms o 5 ms de la primera trama 104).[0050] En un aspecto particular, el estimador 157 estima la parte de la primera trama 104 basándose en información de energía 140 que indica una energía asociada con la primera trama 104. Por ejemplo, se puede estimar la parte de la primera trama 104 basándose en una energía asociada con una parte de banda baja localmente decodificada (por ejemplo, en el decodificador local MDCT 126) de la primera trama 104, una parte de banda alta localmente decodificada (por ejemplo, en el decodificador local MDCT 126) de la primera trama 104 o ambas. Al tomar en cuenta la información de energía 140, el estimador 157 puede ayudar a reducir las discordancias de energía en las fronteras de trama, tales como caídas en la forma de ganancia, cuando se conmuta del codificador MDCT 120 al codificador ACELP 150. En un ejemplo ilustrativo, se determina la información de energía 140 basándose en una energía asociada con un búfer en el codificador MDCT, tal como el búfer de síntesis MDCT. Se puede usar una energía de todo el rango de frecuencias del búfer de síntesis (por ejemplo, 0 Hz-16 kHz) o una energía de solo la parte de banda alta del búfer de síntesis (por ejemplo, 8 kHz-16 kHz) por el estimador 157. El estimador 157 puede aplicar una operación de reducción gradual en los datos en la primera parte 152 basándose en la energía estimada de la primera trama 104. La reducción gradual puede reducir las discordancias de energía en fronteras de trama, tal como en los casos donde se produce una transición entre una trama de energía baja o "inactiva" y una trama de energía alta o "activa". La reducción gradual aplicada por el estimador 157 a la primera parte 152 puede ser lineal o se puede basar en otra función matemática.[0051] En un aspecto particular, el estimador 157 estima la parte de la primera trama 104 basándose al menos en parte en un tipo de trama de la primera trama 104. Por ejemplo, el estimador 157 puede estimar la parte de la primera trama 104 basándose en el tipo de trama de la primera trama 104 y/o un tipo de trama de la segunda trama 106 (denominado de forma alternativa un "tipo de codificación"). Los tipos de trama pueden incluir un tipo de trama sonoro, un tipo de trama silenciado, un tipo de trama transitorio y un tipo de trama genérico. Dependiendo del/de los tipo(s) de trama, el estimador 157 puede aplicar una operación de reducción gradual diferente (por ejemplo, usar diferentes coeficientes de reducción gradual) en los datos de la primera parte 152.[0052] Por tanto, en determinados aspectos, se puede llenar el búfer de señales objetivo 151 basándose en un estimado de señal y/o energía asociada con la primera trama 104 o una parte de la misma. De forma alternativa, se puede usar un tipo de trama de la primera trama 104 y/o la segunda trama 106 durante el procedimiento de estimación, tal como para reducción gradual de la señal. También se pueden determinar otros elementos de memoria, tales como estados de filtro (por ejemplo, estados de filtro de LP, estados eliminadores, etc.) en el codificador ACELP 150, basándose en la estimación en lugar de restablecerse en respuesta a una conmutación de codificador, que puede habilitar a los estados de filtro para alcanzar un estado "estacionario" (por ejemplo, converger) más rápido.[0053] El sistema 100 de la FIG. 1 puede manejar actualizaciones de memoria cuando conmuta entre un primer modo de codificación o codificador (por ejemplo, el codificador MDCT 120) y un segundo modo de codificación o codificador (por ejemplo, el codificador ACELP 150) de una manera que reduce artefactos de frontera de trama y discordancias de energía. El uso del sistema 100 de la FIG. 1 puede dar lugar a una calidad de codificación de señal mejorada así como una experiencia de usuario mejorada.[0054] En referencia a la FIG. 2, se representa un ejemplo particular de un sistema de codificación ACELP 200 y se designa en general 200. Uno o más componentes del sistema 200 pueden corresponder a uno o más componentes del sistema 100 de la FIG. 1, como se describe adicionalmente en el presente documento. En un ejemplo ilustrativo, el sistema 200 está integrado en un dispositivo electrónico, tal como un teléfono inalámbrico, una tableta, etc.5101520253035404550556065[0055] En la siguiente descripción, se describen diversas funciones realizadas por el sistema 200 de la FIG. 2 que están realizadas por determinados componentes o módulos. Sin embargo, esta división de componentes y módulos es solo para ilustración. En un ejemplo alternativo, una función realizada por un componente o módulo particular se puede dividir, en cambio, entre múltiples componentes o módulos. Además, en un ejemplo alternativo, dos o más componentes o módulos de la FIG. 2 se pueden integrar en un único componente o módulo. Cada componente o módulo ilustrado en la FIG. 2 se puede implementar usando hardware (por ejemplo, un ASIC, un DSP, un controlador, un dispositivo FPGA, etc.), software (por ejemplo, instrucciones ejecutables por un procesador) o cualquier combinación de los mismos.[0056] El sistema 200 incluye un banco de filtros de análisis 210 que está configurado para recibir una señal de audio de entrada 202. Por ejemplo, se puede proporcionar la señal de audio de entrada 202 mediante un micrófono u otro dispositivo de entrada. En un ejemplo ilustrativo, la señal de audio de entrada 202 puede corresponder a la señal de audio 102 de la FIG. 1 cuando el selector de codificador 110 de la FIG. 1 determina que se va a codificar la señal de audio 102 por el codificador ACELP 150 de la FIG. 1. La señal de audio de entrada 202 puede ser una señal de banda superancha (SWB) que incluye datos en el rango de frecuencias de aproximadamente 0 Hz-1,6 kHz. El banco de filtros de análisis 210 puede filtrar la señal de audio de entrada 202 en múltiples partes basándose en la frecuencia. Por ejemplo, el banco de filtros de análisis 210 puede incluir un filtro de paso bajo (LPF) y un filtro de paso alto (HPF) para generar una señal de banda baja 222 y una señal de banda alta 224. La señal de banda baja 222 y la señal de banda alta 224 pueden tener anchos de banda iguales o desiguales, y pueden estar superpuestas o no superpuestas. Cuando la señal de banda baja 222 y la señal de banda alta 224 se superponen, el filtro de paso bajo y el filtro de paso alto del banco de filtros de análisis 210 pueden tener una atenuación suave, que puede simplificar el diseño y reducir el coste del filtro de paso bajo y el filtro de paso alto. La superposición de la señal de banda baja 222 y de la señal de banda alta 224 también puede posibilitar la mezcla suave de señales de banda baja y banda alta en un receptor, lo que puede dar como resultado menos artefactos audibles.[0057] Se debe mencionar que aunque se describen determinados ejemplos en el presente documento en el contexto de procesamiento de una señal SWB, esto es solo para ilustración. En un ejemplo alternativo, se pueden usar las técnicas descritas para procesar una señal WB que tiene un rango de frecuencias de aproximadamente 0 Hz-8 kHz. En dicho ejemplo, la señal de banda baja 222 puede corresponder a un rango de frecuencias de aproximadamente 0 Hz-6,4 kHz y la señal de banda alta 224 puede corresponder a un rango de frecuencias de aproximadamente 6,4 kHz-8 kHz.[0058] El sistema 200 puede incluir un módulo de análisis de banda baja 230 configurado para recibir la señal de banda baja 222. En un aspecto particular, el módulo de análisis de banda baja 230 puede representar un ejemplo de un codificador ACELP. Por ejemplo, el módulo de análisis de banda baja 230 puede corresponder al módulo de análisis de banda baja 160 de la FIG. 1. El módulo de análisis de banda baja 230 puede incluir un módulo de análisis y codificación LP 232, un módulo de transformación de coeficiente de predicción lineal (LPC) a par espectral lineal (LSP) 234 y un cuantificador 236. Las LSP también se pueden denominar LSF, y se pueden usar indistintamente los dos términos en el presente documento. El módulo de análisis y codificación LP 232 puede codificar una envolvente espectral de la señal de banda baja 222 como un conjunto de los LPC. Se pueden generar los LPC para cada trama de audio (por ejemplo, 20 ms de audio, correspondientes a 320 muestras a una tasa de muestreo de 16 kHz), para cada subtrama de audio (por ejemplo, 5 ms de audio) o para cualquier combinación de las mismas. Se puede determinar el número de los LPC generados para cada trama o subtrama mediante el "orden" del análisis LP realizado. En un aspecto particular, el módulo de análisis y codificación LP 232 puede generar un conjunto de once LPC correspondientes a un análisis LP de décimo orden.[0059] El módulo de transformación 234 puede transformar el conjunto de los LPC generados por el módulo de análisis y codificación LP 232 en un conjunto correspondiente de los LSP (por ejemplo, usando una transformada de uno en uno). De forma alternativa, el conjunto de los LPC se puede transformar de uno en uno en un conjunto correspondiente de coeficientes de correlación parcial, valores de proporción de logaritmo de área, pares espectrales de inmitancia (ISP) o frecuencias espectrales de inmitancia (ISF). La transformada entre el conjunto de los LPC y el conjunto de los LSP puede ser reversible sin error.[0060] El cuantificador 236 puede cuantificar el conjunto de los LSP generados por el módulo de transformación 234. Por ejemplo, el cuantificador 236 puede incluir o puede estar acoplado a múltiples libros de códigos que incluyen múltiples entradas (por ejemplo, vectores). Para cuantificar el conjunto de los LSP, el cuantificador 236 puede identificar entradas de libros de códigos que estén "más cercanas a" (por ejemplo, basándose en una medida de distorsión tal como mínimos cuadrados o error cuadrático medio) el conjunto de los LSP. El cuantificador 236 puede emitir un valor de índice o una serie de valores de índice correspondientes a la ubicación de las entradas identificadas en los libros de códigos. La salida del cuantificador 236 puede por tanto representar parámetros de filtro de banda baja que están incluidos en un flujo de bits de banda baja 242.[0061] El módulo de análisis de banda baja 230 también puede generar una señal de excitación de banda baja 244. Por ejemplo, la señal de excitación de banda baja 244 puede ser una señal codificada que se genera cuantificando una señal residual LP que se genera durante el proceso LP realizado por el módulo de análisis de banda baja 230. La señal residual LP puede representar un error de predicción.5101520253035404550556065[0062] El sistema 200 puede incluir además un módulo de análisis de banda alta 250 configurado para recibir la señal de banda alta 224 desde el banco de filtros de análisis 210 y la señal de excitación de banda baja 244 desde el módulo de análisis de banda baja 230. Por ejemplo, el módulo de análisis de banda alta 250 puede corresponder al módulo de análisis de banda alta 161 de la FIG. 1. El módulo de análisis de banda alta 250 puede generar parámetros de banda alta 272 basándose en la señal de banda alta 224 y la señal de excitación de banda baja 244. Por ejemplo, los parámetros de banda alta 272 pueden incluir los LSP de banda alta y/o información de ganancia (por ejemplo, basándose en al menos una proporción de energía de banda alta con respecto a energía de banda baja), como se describe adicionalmente en el presente documento.[0063] El módulo de análisis de banda alta 250 puede incluir un generador de excitación de banda alta 260. El generador de excitación de banda alta 260 puede generar una señal de excitación de banda alta al extender un espectro de la señal de excitación de banda baja 244 en el rango de frecuencias de banda alta (por ejemplo, 8 kHz- 16 kHz). Se puede usar la señal de excitación de banda alta para determinar uno o más parámetros de ganancia de banda alta que se incluyen en los parámetros de banda alta 272. Como se ilustra, el módulo de análisis de banda alta 250 también puede incluir un módulo de análisis y codificación LP 252, un módulo de transformación de LPC a LSP 254 y un cuantificador 256. Cada uno entre el módulo de análisis y codificación LP 252, el módulo de transformación 254 y el cuantificador 256 puede funcionar como se describe anteriormente con referencia a componentes correspondientes del módulo de análisis de banda baja 230, pero con una resolución comparativamente reducida (por ejemplo, usando menos bits para cada coeficiente, LSP, etc.). El módulo de análisis y codificación LP 252 puede generar un conjunto de los LPC que se transforman en los LSP mediante el módulo de transformación 254 y se cuantifican mediante el cuantificador 256 basándose en un libro de códigos 263. Por ejemplo, el módulo de análisis y codificación LP 252, el módulo de transformación 254 y el cuantificador 256 pueden usar la señal de banda alta 224 para determinar la información de filtro de banda alta (por ejemplo, los LSP de banda alta) que está incluida en los parámetros de banda alta 272. En un aspecto particular, los parámetros de banda alta 272 pueden incluir los LSP de banda alta así como parámetros de ganancia de banda alta.[0064] El módulo de análisis de banda alta 250 también puede incluir un decodificador local 262 y un generador de señales objetivo 264. Por ejemplo, el decodificador local 262 puede corresponder al decodificador local 158 de la FIG. 1 y el generador de señales objetivo 264 puede corresponder al generador de señales objetivo 155 de la FIG. 1. El módulo de análisis de banda alta 250 puede recibir además información MDCT 266 desde un codificador MDCT. Por ejemplo, la información MDCT 266 puede incluir la señal de banda base 130 de la FIG. 1 y/o la información de energía 140 de la FIG. 1 y se puede usar para reducir artefactos de frontera de trama y discordancias de energía cuando se conmuta de la codificación MDCT a la codificación ACELP realizada por el sistema 200 de la FIG. 2.[0065] El flujo de bits de banda baja 242 y los parámetros de banda alta 272 se pueden multiplexar por un multiplexador (MUX) 280 para generar un flujo de bits de salida 299. El flujo de bits de salida 299 puede representar una señal de audio codificada correspondiente a la señal de audio de entrada 202. Por ejemplo, se puede transmitir el flujo de bits de salida 299 por un transmisor 298 (por ejemplo, por un canal alámbrico, inalámbrico u óptico) y/o almacenarse. En un dispositivo receptor, se pueden realizar operaciones inversas por un desmultiplexador (DEMUX), un decodificador de banda baja, un decodificador de banda alta y un banco de filtros, para generar una señal de audio sintetizada (por ejemplo, una versión reconstruida de la señal de audio de entrada 202 que se proporciona a un altavoz u otro dispositivo de salida). El número de bits usados para representar el flujo de bits de banda baja 242 puede ser sustancialmente mayor que el número de bits usados para representar los parámetros de banda alta 272. Por tanto, la mayoría de los bits en el flujo de bits de salida 299 pueden representar datos de banda baja. Se pueden usar los parámetros de banda alta 272 en un receptor para regenerar la señal de excitación de banda alta a partir de los datos de banda baja de acuerdo con un modelo de señal. Por ejemplo, el modelo de señal puede representar un conjunto esperado de relaciones o correlaciones entre datos de banda baja (por ejemplo, la señal de banda baja 222) y datos de banda alta (por ejemplo, la señal de banda alta 224). Por tanto, se pueden usar diferentes modelos de señal para diferentes clases de datos de audio, y se puede negociar el modelo de señal particular que está en uso por un transmisor y un receptor (o definirse por un estándar industrial) antes de la comunicación de datos de audio codificados. Usando el modelo de señal, el módulo de análisis de banda alta 250 en un transmisor puede ser capaz de generar los parámetros de banda alta 272 de tal manera que un correspondiente módulo de análisis de banda alta en un receptor pueda usar el modelo de señal para reconstruir la señal de banda alta 224 a partir del flujo de bits de salida 299.[0066] La FIG. 2 ilustra, por tanto, un sistema de codificación ACELP 200 que usa información MDCT 266 de un codificador MDCT cuando codifica la señal de audio de entrada 202. Al usar la información MDCT 266, se pueden reducir artefactos de frontera de trama y discordancias de energía. Por ejemplo, se puede usar la información MDCT 266 para realizar la estimación de señal objetivo, retropropagación, reducción gradual, etc.[0067] Con referencia a la FIG. 3, se muestra un ejemplo particular de un sistema que puede funcionar para prestar soporte a la conmutación entre decodificadores con reducción en artefactos de frontera de trama y discordancias de energía y en general se designa 300. En un ejemplo ilustrativo, el sistema 300 está integrado en un dispositivo electrónico, tal como un teléfono inalámbrico, una tableta, etc.5101520253035404550556065[0068] El sistema 300 incluye el receptor 301, un selector de decodificador 310, un decodificador basado en transformada (por ejemplo, un decodificador MDCT 320) y un decodificador basado en LP (por ejemplo un decodificador ACELP 350). Por tanto, aunque no se muestra, el decodificador MDCT 320 y el decodificador ACELP 350 pueden incluir uno o más componentes que realizan operaciones inversas a las descritas con referencia a uno o más componentes del codificador MDCT 120 de la FIG. 1 y el codificador ACELP 150 de la FIG. 1, respectivamente. Además, también se pueden realizar una o más operaciones que se describe que se están realizando por el decodificador MDCT 320, por el decodificador local MDCT 126 de la FIG. 1, y también se pueden realizar una o más operaciones que se describe que se están realizando por el decodificador ACELP 350, por el decodificador local ACELP 158 de la FIG. 1.[0069] Durante el funcionamiento, un receptor 301 puede recibir y proporcionar un flujo de bits 302 a un selector de decodificador 310. En un ejemplo ilustrativo, el flujo de bits 302 corresponde al flujo de bits de salida 199 de la FIG. 1 o el flujo de bits de salida 299 de la FIG. 2. El selector de decodificador 310 puede determinar, basándose en características del flujo de datos 302, si se va a usar el decodificador MDCT 320 o el decodificador ACELP 350 para decodificar el flujo de bits 302 para generar una señal de audio sintetizada 399.[0070] Cuando se selecciona el decodificador ACELP 350, un módulo de síntesis LPC 352 puede procesar el flujo de bits 302 o una parte del mismo. Por ejemplo, el módulo de síntesis LPC 352 puede decodificar datos correspondientes a una primera trama de una señal de audio. Durante la decodificación, el módulo de síntesis LPC 352 puede generar datos de superposición 340 correspondientes a una segunda (por ejemplo, la siguiente) trama de la señal de audio. En un ejemplo ilustrativo, los datos de superposición 340 pueden incluir 20 muestras de audio.[0071] Cuando el selector de decodificador 310 conmuta la decodificación desde el decodificador ACELP 350 al decodificador MDCT 320, un módulo de suavizado 322 puede usar los datos de superposición 340 para realizar una función de suavizado. La función de suavizado puede suavizar una discontinuidad de frontera de trama debido al restablecimiento de las memorias de filtro y los búferes de síntesis en el decodificador MDCT 320 en respuesta a la conmutación desde el decodificador ACELP 350 al decodificador MDCT 320. Como un ejemplo ilustrativo, no limitante, el módulo de suavizado 322 puede realizar una operación de fundido cruzado basándose en los datos de superposición 340, de modo que una transición entre la salida sintetizada que se basa en los datos de superposición 340 y la salida sintetizada para la segunda trama de la señal de audio se percibe por un oyente que va a ser más continua.[0072] El sistema 300 de la FIG. 3, por tanto, puede manejar la memoria de filtro y las actualizaciones de búfer cuando se conmuta entre un primer modo de decodificación o decodificador (por ejemplo, el decodificador ACELP 350) y un segundo modo de decodificación o decodificador (por ejemplo, el decodificador MDCT 320) de una manera que reduzca la discontinuidad de frontera de trama. El uso del sistema 300 de la FIG. 3 puede dar lugar a una calidad de reconstrucción de señal mejorada así, como una experiencia de usuario mejorada.[0073] Uno o más de los sistemas de las FIGS. 1-3, por tanto, puede modificar las memorias de filtro y los búferes de búsqueda anticipada y predecir hacia atrás muestras de audio de frontera de trama de una síntesis de núcleo "previa" para su combinación con una síntesis de núcleo "actual". Por ejemplo, en lugar de restablecer un búfer de búsqueda anticipada ACELP a cero, se puede predecir el contenido en el búfer a partir de un objetivo "ligero" MDCT o búfer de síntesis, como se describe con referencia a la FIG. 1. De forma alternativa, se puede hacer la predicción hacia atrás de las muestras de frontera de trama, como se describe con referencia a las FIGS. 1-2. Se puede usar opcionalmente información adicional, tal como información de energía MDCT (por ejemplo, la información de energía 140 de la FIG. 1), tipo de trama, etc. Además, para limitar discontinuidades temporales, se pueden mezclar suavemente determinadas salidas de síntesis, tales como muestras de superposición ACELP, en la frontera de trama durante la decodificación de MDCT, como se describe con referencia a la FIG. 3. En un ejemplo particular, se pueden usar las últimas pocas muestras de las síntesis "previa" en el cálculo de la ganancia de trama y otros parámetros de extensión de ancho de banda.[0074] Con referencia a la FIG. 4, se representa un ejemplo particular de un procedimiento de funcionamiento de un dispositivo codificador y en general se designa 400. En un ejemplo ilustrativo, se puede realizar el procedimiento 400 en el sistema 100 de la FIG. 1.[0075] El procedimiento 400 puede incluir codificar una primera trama de una señal de audio usando un primer codificador, en 402. El primer codificador puede ser un codificador MDCT. Por ejemplo, en la FIG. 1, el codificador MDCT 120 puede codificar la primera trama 104 de la señal de audio 102.[0076] El procedimiento 400 también puede incluir generar, durante la codificación de la primera trama, una señal de banda base que incluye contenido correspondiente a una parte de banda alta de la señal de audio, en 404. La señal de banda base puede corresponder a un estimado de señal objetivo que se basa en la generación objetivo MDCT "ligera" o salida de síntesis MDCT. Por ejemplo, en la FIG. 1, el codificador MDCT 120 puede generar la señal de banda base 130 basándose en una señal objetivo "ligera" generada por el generador de señales objetivo "ligeras" 125 o basándose en una salida sintetizada del decodificador local 126.5101520253035404550556065[0077] El procedimiento 400 puede incluir además la codificación de una segunda (por ejemplo, la siguiente de manera secuencial) trama de la señal de audio usando un segundo codificador, en 406. El segundo codificador puede ser un codificador ACELP, y la codificación de la segunda trama puede incluir procesar la señal de banda base para generar parámetros de banda alta asociados con la segunda trama. Por ejemplo, en la FIG. 1, el codificador ACELP 150 puede generar parámetros de banda alta basándose en el procesamiento de la señal de banda base 130 para llenar al menos una parte del búfer de señales objetivo 151. En un ejemplo ilustrativo, se pueden generar los parámetros de banda alta como se describe con referencia a los parámetros de banda alta 272 de la FIG. 2.[0078] Con referencia a la FIG. 5, se representa otro ejemplo particular de un procedimiento de funcionamiento de un dispositivo codificador y en general se designa 500. Se puede realizar el procedimiento 500 en el sistema 100 de la FIG. 1. En una implementación particular, el procedimiento 500 puede corresponder a 404 de la FIG. 4.[0079] El procedimiento 500 incluye realizar una operación de alternación y una operación de diezmado en una señal de banda base para generar una señal resultante que se aproxima a una parte de banda alta de una señal de audio, en 502. La señal de banda base puede corresponder a la parte de banda alta de la señal de audio y una parte adicional de la señal de audio. Por ejemplo, se puede generar la señal de banda base130 de la FIG. 1 a partir de un búfer de síntesis del decodificador local MDCT 126, como se describe con referencia a la FIG. 1. Para ilustrar, el codificador MDCT 120 puede generar la señal de banda base 130 basándose en una salida sintetizada del decodificador local MDCT 126. La señal de banda base 130 puede corresponder a una parte de banda alta de la señal de audio 120, así como a una parte adicional (por ejemplo, banda baja) de la señal de audio 120. Se puede realizar una operación de alternación y una operación de diezmado en la señal de banda base 130 para generar una señal resultante que incluye datos de banda alta, como se describe con referencia a la FIG. 1. Por ejemplo, el codificador ACELP 150 puede realizar la operación de alternación y la operación de diezmado en la señal de banda base 130 para generar una señal resultante.[0080] El procedimiento 500 también incluye llenar un búfer de señales objetivo del segundo codificador basándose en la señal resultante, en 504. Por ejemplo, se puede llenar el búfer de señales objetivo 151 del codificador ACELP 150 de la FIG. 1 basándose en la señal resultante, como se describe con referencia a la FIG. 1. Para ilustrar, el codificador ACELP 150 puede llenar el búfer de señales objetivo 151 basándose en la señal resultante. El codificador ACELP 150 puede generar una parte de banda alta de la segunda trama 106 basándose en datos almacenados en el búfer de señales objetivo 151, como se describe con referencia a la FIG. 1.[0081] Con referencia a la FIG. 6, se representa otro ejemplo particular de un procedimiento de funcionamiento de un dispositivo codificador y en general se designa 600. En un ejemplo ilustrativo, se puede realizar el procedimiento 600 en el sistema 100 de la FIG. 1.[0082] El procedimiento 600 puede incluir codificar una primera trama de una señal de audio usando un primer codificador, en 602, y codificar una segunda trama de la señal de audio usando un segundo codificador, en 604. El primer codificador puede ser un codificador MDCT, tal como el codificador MDCT 120 de la FIG. 1, y el segundo codificador puede ser un codificador ACELP, tal como el codificador ACELP 150 de la FIG. 1. La segunda trama puede seguir de manera secuencial a la primera trama.[0083] La codificación de la segunda trama puede incluir estimar, en el segundo codificador, una primera parte de la primera trama, en 606. Por ejemplo, con referencia a la FIG. 1, el estimador 157 puede estimar una parte (por ejemplo, unos últimos 10 ms) de la primera trama 104 basándose en extrapolación, predicción lineal, energía MDCT (por ejemplo, la información de energía 140), tipo(s) de trama, etc.[0084] La codificación de la segunda trama también puede incluir llenar un búfer del segundo búfer basándose en la primera parte de la primera trama y la segunda trama, en 608. Por ejemplo, con referencia a la FIG. 1, se puede llenar la primera parte 152 del búfer de señales objetivo 151 basándose en la parte estimada de la primera trama 104 y la segunda y tercera partes 153, 154 del búfer de señales objetivo 151 se puede llenar basándose en la segunda trama 106.[0085] La codificación de la segunda trama puede incluir además generar parámetros de banda alta asociados con la segunda trama, en 610. Por ejemplo, en la FIG. 1, el codificador ACELP 150 puede generar parámetros de banda alta asociados con la segunda trama 106. En un ejemplo ilustrativo, se pueden generar los parámetros de banda alta como se describe con referencia a los parámetros de banda alta 272 de la FIG. 2.[0086] Con referencia a la FIG. 7, se representa un ejemplo particular de un procedimiento de funcionamiento de un dispositivo decodificador y en general se designa 700. En un ejemplo ilustrativo, se puede realizar el procedimiento 700 en el sistema 300 de la FIG. 3.[0087] El procedimiento 700 puede incluir decodificar, en un dispositivo que incluye un primer decodificador y un segundo decodificador, una primera trama de una señal de audio usando el segundo decodificador, en 702. El segundo decodificador puede ser un decodificador ACELP y puede generar datos de superposición5101520253035404550556065correspondientes a una parte de una segunda trama de la señal de audio. Por ejemplo, con referencia a la FIG. 3, el decodificador ACELP 350 puede decodificar una primera trama y generar los datos de superposición 340 (por ejemplo, 20 muestras de audio).[0088] El procedimiento 700 también puede incluir decodificar la segunda trama usando el primer decodificador, en 704. El primer decodificador puede ser un decodificador MDCT, y la decodificación de la segunda trama puede incluir aplicar una operación de suavizado (por ejemplo, un fundido cruzado) usando los datos de superposición a partir del segundo decodificador. Por ejemplo, con referencia a la FIG: 1, el decodificador MDCT 320 puede decodificar una segunda trama y aplicar una operación de suavizado usando los datos de superposición 340.[0089] En aspectos particulares, se pueden implementar uno o más de los procedimientos de las FIGS. 4-7 por medio de hardware (por ejemplo, un dispositivo FPGA, un ASIC, etc.) de una unidad de procesamiento, tal como una unidad de procesamiento central (CPU), un DSP o un controlador, por medio de un dispositivo de firmware, o cualquier combinación de los mismos. Como ejemplo, se puede realizar uno o más de los procedimientos de las FIGS. 4-7 por un procesador que ejecuta instrucciones, como se describe con respecto a la FIG. 8.[0090] Con referencia a la FIG. 8, se representa un diagrama de bloques de un ejemplo ilustrativo particular de un dispositivo (por ejemplo, un dispositivo de comunicación inalámbrica) y en general se designa 800. En diversos ejemplos, el dispositivo 800 puede tener menos o más componentes de los que se ilustran en la FIG. 8. En un ejemplo ilustrativo, el dispositivo 800 puede corresponder a uno o más de los sistemas de las FIGS. 1-3. En un ejemplo ilustrativo, el dispositivo 800 puede funcionar de acuerdo con uno o más de los procedimientos de las FIGS. 4-7.[0091] En un aspecto particular, el dispositivo 800 incluye un procesador 806 (por ejemplo, una CPU). El dispositivo 800 puede incluir uno o más procesadores adicionales 810 (por ejemplo, uno o más DSP). El procesador 810 puede incluir un codificador-decodificador (CÓDEC) de habla y música 808 y un cancelador de eco 812. El CÓDEC de habla y música 808 puede incluir un codificador de vocodificador 836, un decodificador de vocodificador 838 o ambos.[0092] En un aspecto particular, el codificador de vocodificador 836 puede incluir un codificador MDCT 860 y un codificador ACElP 862. El codificador MDCT 860 puede corresponder al codificador MDCT 120 de la FIG. 1 y el codificador ACELP 862 puede corresponder al codificador ACELP 150 de la FIG. 1 o a uno o más componentes del sistema de codificación ACELP 200 de la FIG. 2. El codificador de vocodificador 836 también puede incluir un selector de codificador 864 (por ejemplo, correspondiente al selector de codificador 110 de la FIG. 1). El decodificador de vocodificador 838 puede incluir un decodificador MDCT 870 y un decodificador ACELP 872. El decodificador MDCT 870 puede corresponder al decodificador MDCT 320 de la FIG. 3 y el decodificador ACELP 872 puede corresponder al decodificador ACELP 350 de la FIG. 1. El decodificador de vocodificador 838 puede incluir también un selector de decodificador 874 (por ejemplo, correspondiente al selector de decodificador 310 de la FIG. 3). Aunque se ilustra el CÓDEC de habla y música 808 como un componente de los procesadores 810, en otros ejemplos se pueden incluir uno o más componentes del CÓDEC de habla y música 808 en el procesador 806, el CÓDEC 834, otro componente de procesamiento o una combinación de los mismos.[0093] El dispositivo 800 puede incluir una memoria 832 y un controlador inalámbrico 840 acoplado a una antena 842 por medio de un transceptor 850. El dispositivo 800 puede incluir una pantalla 828 acoplada a un controlador de pantalla 826. Se puede acoplar un altavoz 848, un micrófono 846 o ambos al CÓDEC 834. El CÓDEC 834 puede incluir un convertidor de digital a analógico (DAC) 802 y un convertidor de analógico a digital (ADC) 804.[0094] En un aspecto particular, el CÓDEC 834 puede recibir señales analógicas desde el micrófono 846, convertir las señales analógicas a señales digitales usando el convertidor de analógico a digital 804 y proporcionar las señales digitales al CÓDEC de habla y música 808, tal como en un formato de modulación por código de pulsos (PCM). El CÓDEC de habla y música 808 puede procesar las señales digitales. En un aspecto particular, el CÓDEC de habla y música 808 puede proporcionar señales digitales al CÓDEC 834. El CÓDEC 834 puede convertir las señales digitales a señales analógicas usando el convertidor de digital a analógico 802 y puede proporcionar las señales analógicas al altavoz 848.[0095] La memoria 832 puede incluir instrucciones 856 ejecutables por el procesador 806, los procesadores 810, el CÓDEC 834, otra unidad de procesamiento del dispositivo 800 o una combinación de los mismos, para realizar procedimientos y métodos divulgados en el presente documento, tal como uno o más de los procedimientos de las FIGS. 4-7. Se puede implementar uno o más componentes de los sistemas de las FIGS. 1-3 por medio de hardware dedicado (por ejemplo, circuitería), por un procesador que ejecuta instrucciones (por ejemplo, las instrucciones 856) para realizar una o más tareas o una combinación de los mismos. Como ejemplo, la memoria 832 o uno o más componentes del procesador 806, los procesadores 810 y/o el CÓDEC 834 pueden ser un dispositivo de memoria, tal como una memoria de acceso aleatorio (RAM), memoria de acceso aleatorio magnetorresistivo (MRAM), MRAM de transferencia de torsión de spin (STT-MRAM), memoria flash, memoria de solo lectura (ROM), memoria de solo lectura programable (PROM), memoria de solo lectura programable y borrable (EPROM), memoria de solo lectura programable y borrable eléctricamente (EEPROM), registros, disco duro, un disco extraíble o una memoria de solo5101520253035404550556065lectura de disco compacto (CD-ROM). El dispositivo de memoria puede incluir instrucciones (por ejemplo, las instrucciones 856) que, cuando se ejecutan por un ordenador (por ejemplo, un procesador en el CÓDEC 834, el procesador 806 y/o los procesadores 810), pueden provocar que el ordenador realice al menos parte de uno o más de los procedimientos de las FIGS. 4-7. Como ejemplo, la memoria 832 o el uno o más componentes del procesador 806, los procesadores 810, el CÓDEC 834 pueden ser un medio legible por ordenador no transitorio que incluye instrucciones (por ejemplo, las instrucciones 856) que, cuando se ejecutan por un ordenador (por ejemplo, un procesador en el CÓDEC 834, el procesador 806 y/o los procesadores 810), provoca que el ordenador realice al menos una parte de uno o más de los procedimientos de las FIGS. 4-7.[0096] En un aspecto particular, el dispositivo 800 puede estar incluido en un sistema en cápsula o un dispositivo de sistema en chip 822, tal como un módem de estación móvil (MSM). En un aspecto particular, el procesador 806, los procesadores 810, el controlador de pantalla 826, la memoria 832, el CÓDEC 834, el controlador inalámbrico 840 y el transceptor 850 están incluidos en un sistema en cápsula o el dispositivo de sistema en chip 822. En un aspecto particular, un dispositivo de entrada 830, tal como una pantalla táctil y/o un teclado, y una fuente de alimentación 844 están acoplados al dispositivo de sistema en chip 822. Además, en un aspecto particular, como se ilustra en la FIG. 8, la pantalla 828, el dispositivo de entrada 830, el altavoz 848, el micrófono 846, la antena 842 y la fuente de alimentación 844 son externos con respecto al dispositivo de sistema en chip 822. Sin embargo, cada uno de la pantalla 828, el dispositivo de entrada 830, el altavoz 848, el micrófono 846, la antena 842 y la fuente de alimentación 844 se pueden acoplar a un componente del dispositivo de sistema en chip 822, tal como una interfaz o un controlador. En un ejemplo ilustrativo, el dispositivo 800 corresponde a un dispositivo de comunicación móvil, un teléfono inteligente, un teléfono celular, un ordenador portátil, un ordenador, una tableta, un asistente digital personal, una pantalla, un televisor, una consola de juegos, un reproductor de música, una radio, un reproductor de vídeo digital, un reproductor de disco óptico, un sintonizador, una cámara, un dispositivo de navegación, un sistema decodificador, un sistema codificador o cualquier combinación de los mismos.[0097] En un aspecto ilustrativo, los procesadores 810 pueden funcionar para realizar operaciones de codificación y decodificación de señales de acuerdo con las técnicas descritas. Por ejemplo, el micrófono 846 puede capturar una señal de audio (por ejemplo, la señal de audio 102 de la FIG. 1). El ADC 804 puede convertir la señal de audio capturada de una forma de onda analógica a una forma de onda digital que incluye muestras de audio digitales. Los procesadores 810 pueden procesar las muestras de audio digitales. El cancelador de eco 812 puede reducir un eco que se puede haber creado por una salida del altavoz 848 que entra al micrófono 846.[0098] El codificador de vocodificador 836 puede comprimir muestras de audio digitales correspondientes a una señal de habla procesada y puede formar un paquete de transmisión (por ejemplo, una representación de los bits comprimidos de las muestras de audio digitales). Por ejemplo, el paquete de transmisión puede corresponder a al menos una parte del flujo de bits de salida 199 de la FIG. 1 o el flujo de bits de salida 299 de la FIG. 2. Se puede almacenar el paquete de transmisión en la memoria 832. El transceptor 850 puede modular alguna forma del paquete de transmisión (por ejemplo, se puede adjuntar otra información al paquete de transmisión) y puede transmitir los datos modulados por medio de la antena 842.[0099] Como otro ejemplo, la antena 842 puede recibir paquetes entrantes que incluyen un paquete de recepción. Se puede enviar el paquete de recepción por otro dispositivo por medio de una red. Por ejemplo, el paquete de recepción puede corresponder a al menos una parte del flujo de bits 302 de la FIG. 3. El decodificador de vocodificador 838 puede descomprimir y decodificar el paquete de recepción para generar muestras de audio reconstruidas (por ejemplo, correspondientes a la señal de audio sintetizada 399). El cancelador de eco 812 puede eliminar el eco de las muestras de audio reconstruidas. El DAC 802 puede convertir una salida del decodificador de vocodificador 838 de una forma de onda digital a una forma de onda analógica y puede proporcionar la forma de onda convertida al altavoz 848 para su salida.[0100] En conjunto con los aspectos descritos, se divulga un aparato que incluye primeros medios para codificación de una primera trama de una señal de audio. Por ejemplo, los primeros medios para codificación pueden incluir el codificador MDCT 120 de la FIG. 1, el procesador 806, los procesadores 810, el codificador MDCT 860 de la FIG. 8, uno o más dispositivos configurados para codificar una primera trama de una señal de audio (por ejemplo, un procesador que ejecuta instrucciones almacenadas en un dispositivo de almacenamiento legible por ordenador) o cualquier combinación de los mismos. Se pueden configurar los primeros medios para codificación para generar, durante la codificación de la primera trama, una señal de banda base que incluye contenido correspondiente a una parte de banda alta de la señal de audio.[0101] El aparato también incluye segundos medios para la codificación de una segunda trama de la señal de audio. Por ejemplo, los segundos medios para codificación pueden incluir el codificador ACELP 150 de la FIG. 1, el procesador 806, los procesadores 810, el codificador ACELP 862 de la FIG. 8, uno o más dispositivos configurados para codificar una segunda trama de la señal de audio (por ejemplo, un procesador que ejecuta instrucciones almacenadas en un dispositivo de almacenamiento legible por ordenador) o cualquier combinación de los mismos. La codificación de la segunda trama puede incluir procesar la señal de banda base para generar parámetros de banda alta asociados con la segunda trama.510152025[0102] Los expertos en la técnica apreciarían además que los diversos bloques lógicos, configuraciones, módulos, circuitos y etapas de algoritmo ilustrativos descritos en relación con los aspectos divulgados en el presente documento se pueden implementar como hardware electrónico, software informático ejecutado por un dispositivo de procesamiento tal como un procesador de hardware o combinaciones de ambos. Diversos componentes, bloques, configuraciones, módulos, circuitos y etapas ilustrativos se han descrito anteriormente, en general, en lo que respecta a su funcionalidad. Que dicha funcionalidad se implemente como hardware o software ejecutable depende de la aplicación particular y de las restricciones de diseño impuestas al sistema global. Los expertos en la técnica pueden implementar la funcionalidad descrita de varias maneras para cada aplicación particular, pero no se debería interpretar que dichas decisiones de implementación suponen apartarse del alcance de la presente divulgación.[0103] Las etapas de un procedimiento o algoritmo descrito en relación con los aspectos divulgados en el presente documento se pueden realizar directamente en hardware, en un módulo de software ejecutado por un procesador o en una combinación de los dos. Un módulo de software puede residir en un dispositivo de memoria, tal como RAM, MRAM, STT-MRAM, memoria flash, ROM, PROM, EPrOm, EEPROM, registros, disco duro, un disco extraíble o un CD-ROM. Un dispositivo de memoria ejemplar está acoplado al procesador de tal manera que el procesador pueda leer información de, y escribir información en, el dispositivo de memoria. Como alternativa, el dispositivo de memoria puede estar integrado en el procesador. El procesador y el medio de almacenamiento pueden residir en un ASIC. El ASIC puede residir en un dispositivo informático o en un terminal de usuario. Como alternativa, el procesador y el medio de almacenamiento pueden residir como componentes discretos en un dispositivo informático o un terminal de usuario.[0104] La descripción previa de los ejemplos divulgados se proporciona para posibilitar que un experto en la técnica elabore o use los ejemplos divulgados. Diversas modificaciones de estos ejemplos resultarán inmediatamente evidentes para los expertos en la técnica, y los principios definidos en el presente documento se pueden aplicar a otros ejemplos sin apartarse del alcance de la divulgación. Por tanto, la presente divulgación no pretende limitarse a los aspectos mostrados en el presente documento, sino que se le ha de conceder el alcance más amplio posible compatible con los principios y características novedosas, según lo definido en las reivindicaciones siguientes.51015202530354045505560REIVINDICACIONES1. Un procedimiento que comprende:codificación (402) de una primera trama de una señal de audio (102) usando un codificador basado en transformada (120);generación (404), durante la codificación de la primera trama, de una señal de banda base (130) que incluye contenido correspondiente a una parte de banda alta de la señal de audio (102), en el que la generación de la señal de banda base incluye realizar una operación de alternación y una operación de diezmado; ycodificación (406) de una segunda trama de la señal de audio usando un codificador basado en predicción lineal (150), en el que la codificación de la segunda trama incluye procesar la señal de banda base para generar parámetros de banda alta asociados con la segunda trama.
- 2. El procedimiento de la reivindicación 1, en el que la segunda trama sigue de manera secuencial a la primera trama en la señal de audio (102).
- 3. El procedimiento de la reivindicación 1 o la reivindicación 2, en el que el codificador basado en transformada (120) comprende un codificador de transformada de coseno discreta modificada.
- 4. El procedimiento de cualquiera de las reivindicaciones 1 a 3, en el que el codificador basado en predicción lineal (150) comprende un codificador de predicción lineal excitado por código algebraico.
- 5. El procedimiento de cualquiera de las reivindicaciones previas, en el que la generación de la señal de banda base no incluye realizar una operación de filtración de alto orden y no incluye realizar una operación de mezcla estereofónica.
- 6. El procedimiento de cualquiera de las reivindicaciones 1 a 4, que comprende además llenar un búfer de señales objetivo (151) del segundo codificador basándose al menos en parte en la señal de banda base y al menos en parte en una parte de banda alta particular de la segunda trama, en el que la codificación de la segunda trama incluye generar parámetros de banda alta asociados con la segunda trama basándose en datos almacenados en el búfer de señales objetivo.
- 7. El procedimiento de cualquiera de las reivindicaciones 1 a 4, en el que la señal de banda base se genera usando un decodificador local del primer codificador, y en el que la señal de banda base corresponde a una versión sintetizada de al menos una parte de la señal de audio.
- 8. El procedimiento de la reivindicación 7, en el que la señal de banda base corresponde a la parte de banda alta de la señal de audio y se copia a un búfer de señales objetivo del segundo codificador, y en el que la codificación de la segunda trama incluye generar parámetros de banda alta asociados con la segunda trama basándose en datos almacenados en el búfer de señales objetivo.
- 9. El procedimiento de la reivindicación 7, en el que la señal de banda base corresponde a la parte de banda alta de la señal de audio y una parte adicional de la señal de audio, y el procedimiento comprende:realizar una operación de alternación y una operación de diezmado en la señal de banda base para generar una señal resultante que se aproxima a la parte de banda alta; yllenar un búfer de señales objetivo (151) del segundo codificador basándose en la señal resultante, en el que la codificación de la segunda trama incluye generar parámetros de banda alta asociados con la segunda trama basándose en datos almacenados en el búfer de señales objetivo.
- 10. Un aparato que comprende:un codificador basado en transformada (120) configurado para: codificar (402) una primera trama de una señal de audio (102); ygenerar (404), durante la codificación de la primera trama, de una señal de banda base (130) que incluye contenido correspondiente a una parte de banda alta de la señal de audio, en el que la generación de la señal de banda base incluye realizar una operación de alternación y una operación de diezmado; y
- 5 11.
- un codificador basado en predicción lineal (150) configurado para codificar (406) una segunda trama de la señal de audio, en el que la codificación de la segunda trama incluye procesar la señal de banda base para generar parámetros de banda alta asociados con la segunda trama. El aparato de la reivindicación 10, en el que la segunda trama sigue de manera secuencial a la primera trama en la señal de audio (102).
-
- 12.
- El aparato de la reivindicación 10 o la reivindicación 11, en el que el codificador basado en transformada comprende un codificador de transformada de coseno discreta modificada y en el que el codificador basado
- 10
- en predicción lineal comprende un codificador de predicción lineal excitado por código algebraico.
-
- 13.
- El aparato de cualquiera de las reivindicaciones 10 a 12, en el que la generación de la señal de banda base no incluye realizar una operación de filtración de alto orden, y en el que la generación de la señal de banda base no incluye realizar una operación de mezcla estereofónica.
-
- 15 14.
- El aparato de cualquiera de las reivindicaciones 10 a 13, en el que el aparato es un teléfono inalámbrico o una tableta.
-
- 15. 20
- Un dispositivo de almacenamiento legible por ordenador que almacena instrucciones que, cuando se ejecutan por un procesador, provocan que el procesador realice un procedimiento de acuerdo con cualquiera de las reivindicaciones 1 a 9.
Applications Claiming Priority (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201461973028P | 2014-03-31 | 2014-03-31 | |
| US201461973028P | 2014-03-31 | ||
| US201514671757 | 2015-03-27 | ||
| US14/671,757 US9685164B2 (en) | 2014-03-31 | 2015-03-27 | Systems and methods of switching coding technologies at a device |
| PCT/US2015/023398 WO2015153491A1 (en) | 2014-03-31 | 2015-03-30 | Apparatus and methods of switching coding technologies at a device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2688037T3 true ES2688037T3 (es) | 2018-10-30 |
Family
ID=54191285
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES15717334.5T Active ES2688037T3 (es) | 2014-03-31 | 2015-03-30 | Aparato y procedimientos de conmutación de tecnologías de codificación en un dispositivo |
Country Status (25)
| Country | Link |
|---|---|
| US (1) | US9685164B2 (es) |
| EP (1) | EP3127112B1 (es) |
| JP (1) | JP6258522B2 (es) |
| KR (1) | KR101872138B1 (es) |
| CN (1) | CN106133832B (es) |
| AU (1) | AU2015241092B2 (es) |
| BR (1) | BR112016022764B1 (es) |
| CA (1) | CA2941025C (es) |
| CL (1) | CL2016002430A1 (es) |
| DK (1) | DK3127112T3 (es) |
| ES (1) | ES2688037T3 (es) |
| HU (1) | HUE039636T2 (es) |
| MX (1) | MX355917B (es) |
| MY (1) | MY183933A (es) |
| NZ (1) | NZ723532A (es) |
| PH (1) | PH12016501882B1 (es) |
| PL (1) | PL3127112T3 (es) |
| PT (1) | PT3127112T (es) |
| RU (1) | RU2667973C2 (es) |
| SA (1) | SA516371927B1 (es) |
| SG (1) | SG11201606852UA (es) |
| SI (1) | SI3127112T1 (es) |
| TW (1) | TW201603005A (es) |
| WO (1) | WO2015153491A1 (es) |
| ZA (1) | ZA201606744B (es) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI546799B (zh) * | 2013-04-05 | 2016-08-21 | 杜比國際公司 | 音頻編碼器及解碼器 |
| US9984699B2 (en) | 2014-06-26 | 2018-05-29 | Qualcomm Incorporated | High-band signal coding using mismatched frequency ranges |
| US10553230B2 (en) * | 2015-11-09 | 2020-02-04 | Sony Corporation | Decoding apparatus, decoding method, and program |
| US9978381B2 (en) * | 2016-02-12 | 2018-05-22 | Qualcomm Incorporated | Encoding of multiple audio signals |
| US10362423B2 (en) * | 2016-10-13 | 2019-07-23 | Qualcomm Incorporated | Parametric audio decoding |
| CN111709872B (zh) * | 2020-05-19 | 2022-09-23 | 北京航空航天大学 | 一种图三角形计数算法的自旋存内计算架构 |
Family Cites Families (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5673412A (en) * | 1990-07-13 | 1997-09-30 | Hitachi, Ltd. | Disk system and power-on sequence for the same |
| SE504010C2 (sv) | 1995-02-08 | 1996-10-14 | Ericsson Telefon Ab L M | Förfarande och anordning för prediktiv kodning av tal- och datasignaler |
| US5956674A (en) * | 1995-12-01 | 1999-09-21 | Digital Theater Systems, Inc. | Multi-channel predictive subband audio coder using psychoacoustic adaptive bit allocation in frequency, time and over the multiple channels |
| AU3372199A (en) * | 1998-03-30 | 1999-10-18 | Voxware, Inc. | Low-complexity, low-delay, scalable and embedded speech and audio coding with adaptive frame loss concealment |
| US7236688B2 (en) * | 2000-07-26 | 2007-06-26 | Matsushita Electric Industrial Co., Ltd. | Signal processing method and signal processing apparatus |
| JP2005244299A (ja) * | 2004-02-24 | 2005-09-08 | Sony Corp | 記録再生装置、記録方法および再生方法、並びに、プログラム |
| US7463901B2 (en) * | 2004-08-13 | 2008-12-09 | Telefonaktiebolaget Lm Ericsson (Publ) | Interoperability for wireless user devices with different speech processing formats |
| KR20070115637A (ko) | 2006-06-03 | 2007-12-06 | 삼성전자주식회사 | 대역폭 확장 부호화 및 복호화 방법 및 장치 |
| US8422569B2 (en) * | 2008-01-25 | 2013-04-16 | Panasonic Corporation | Encoding device, decoding device, and method thereof |
| PL2352147T3 (pl) * | 2008-07-11 | 2014-02-28 | Fraunhofer Ges Forschung | Urządzenie i sposób kodowania sygnału audio |
| EP2311034B1 (en) | 2008-07-11 | 2015-11-04 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoder and decoder for encoding frames of sampled audio signals |
| EP2146343A1 (en) * | 2008-07-16 | 2010-01-20 | Deutsche Thomson OHG | Method and apparatus for synchronizing highly compressed enhancement layer data |
| EP2224433B1 (en) * | 2008-09-25 | 2020-05-27 | Lg Electronics Inc. | An apparatus for processing an audio signal and method thereof |
| JP4977157B2 (ja) | 2009-03-06 | 2012-07-18 | 株式会社エヌ・ティ・ティ・ドコモ | 音信号符号化方法、音信号復号方法、符号化装置、復号装置、音信号処理システム、音信号符号化プログラム、及び、音信号復号プログラム |
| ES2441069T3 (es) * | 2009-10-08 | 2014-01-31 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Decodificador multimodo para señal de audio, codificador multimodo para señal de audio, procedimiento y programa de computación que usan un modelado de ruido en base a linealidad-predicción-codificación |
| US8600737B2 (en) * | 2010-06-01 | 2013-12-03 | Qualcomm Incorporated | Systems, methods, apparatus, and computer program products for wideband speech coding |
| KR101826331B1 (ko) * | 2010-09-15 | 2018-03-22 | 삼성전자주식회사 | 고주파수 대역폭 확장을 위한 부호화/복호화 장치 및 방법 |
| US9037456B2 (en) | 2011-07-26 | 2015-05-19 | Google Technology Holdings LLC | Method and apparatus for audio coding and decoding |
| WO2014108738A1 (en) * | 2013-01-08 | 2014-07-17 | Nokia Corporation | Audio signal multi-channel parameter encoder |
-
2015
- 2015-03-27 US US14/671,757 patent/US9685164B2/en active Active
- 2015-03-30 PH PH1/2016/501882A patent/PH12016501882B1/en unknown
- 2015-03-30 JP JP2016559604A patent/JP6258522B2/ja active Active
- 2015-03-30 WO PCT/US2015/023398 patent/WO2015153491A1/en not_active Ceased
- 2015-03-30 BR BR112016022764-6A patent/BR112016022764B1/pt active IP Right Grant
- 2015-03-30 CN CN201580015567.9A patent/CN106133832B/zh active Active
- 2015-03-30 PT PT15717334T patent/PT3127112T/pt unknown
- 2015-03-30 DK DK15717334.5T patent/DK3127112T3/en active
- 2015-03-30 MX MX2016012522A patent/MX355917B/es active IP Right Grant
- 2015-03-30 TW TW104110334A patent/TW201603005A/zh unknown
- 2015-03-30 SI SI201530314T patent/SI3127112T1/en unknown
- 2015-03-30 PL PL15717334T patent/PL3127112T3/pl unknown
- 2015-03-30 MY MYPI2016703170A patent/MY183933A/en unknown
- 2015-03-30 NZ NZ723532A patent/NZ723532A/en unknown
- 2015-03-30 EP EP15717334.5A patent/EP3127112B1/en active Active
- 2015-03-30 HU HUE15717334A patent/HUE039636T2/hu unknown
- 2015-03-30 AU AU2015241092A patent/AU2015241092B2/en active Active
- 2015-03-30 KR KR1020167029177A patent/KR101872138B1/ko active Active
- 2015-03-30 RU RU2016137922A patent/RU2667973C2/ru active
- 2015-03-30 SG SG11201606852UA patent/SG11201606852UA/en unknown
- 2015-03-30 CA CA2941025A patent/CA2941025C/en active Active
- 2015-03-30 ES ES15717334.5T patent/ES2688037T3/es active Active
-
2016
- 2016-09-27 CL CL2016002430A patent/CL2016002430A1/es unknown
- 2016-09-27 SA SA516371927A patent/SA516371927B1/ar unknown
- 2016-09-29 ZA ZA2016/06744A patent/ZA201606744B/en unknown
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2711524T3 (es) | Generación de señal de excitación de banda alta | |
| ES2690252T3 (es) | Ajuste de ganancia temporal basado en la característica de señal de banda alta | |
| TWI559298B (zh) | 用於音訊信號之諧波頻寬延展之方法、裝置及電腦可讀儲存器件 | |
| ES2842175T3 (es) | Control de señal objetivo de banda alta | |
| ES2955855T3 (es) | Generación de señal de banda alta | |
| ES2755364T3 (es) | Codificación de señal de banda alta que utiliza múltiples subbandas | |
| ES2690096T3 (es) | Codificación de señal de banda alta usando intervalos de frecuencias no coincidentes | |
| ES2688037T3 (es) | Aparato y procedimientos de conmutación de tecnologías de codificación en un dispositivo | |
| ES2807258T3 (es) | Escalado para circuitería de forma de ganancia | |
| HK1226546B (zh) | 在装置处切换译码技术的设备及方法 | |
| BR112016030381B1 (pt) | Método e aparelho para codificar um sinal de áudio e memória legível por computador |