PT2676267T - Codificação e descodificação de posições de pulso de faixas de um sinal de áudio - Google Patents

Codificação e descodificação de posições de pulso de faixas de um sinal de áudio Download PDF

Info

Publication number
PT2676267T
PT2676267T PT127031235T PT12703123T PT2676267T PT 2676267 T PT2676267 T PT 2676267T PT 127031235 T PT127031235 T PT 127031235T PT 12703123 T PT12703123 T PT 12703123T PT 2676267 T PT2676267 T PT 2676267T
Authority
PT
Portugal
Prior art keywords
positions
pulse
range
pulses
audio signal
Prior art date
Application number
PT127031235T
Other languages
English (en)
Inventor
Fuchs Guillaume
Bäckström Tom
Original Assignee
Fraunhofer Ges Forschung
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fraunhofer Ges Forschung filed Critical Fraunhofer Ges Forschung
Publication of PT2676267T publication Critical patent/PT2676267T/pt

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech 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
    • G10L19/028Noise substitution, i.e. substituting non-tonal spectral components by noisy source
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10KSOUND-PRODUCING DEVICES; METHODS OR DEVICES FOR PROTECTING AGAINST, OR FOR DAMPING, NOISE OR OTHER ACOUSTIC WAVES IN GENERAL; ACOUSTICS NOT OTHERWISE PROVIDED FOR
    • G10K11/00Methods or devices for transmitting, conducting or directing sound in general; Methods or devices for protecting against, or for damping, noise or other acoustic waves in general
    • G10K11/16Methods or devices for protecting against, or for damping, noise or other acoustic waves in general
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/012Comfort noise or silence coding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech 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
    • G10L19/0212Speech 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 using orthogonal transformation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech 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
    • G10L19/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech 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
    • G10L19/022Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
    • G10L19/025Detection of transients or attacks for time/frequency resolution switching
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech 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
    • G10L19/03Spectral prediction for preventing pre-echo; Temporary noise shaping [TNS], e.g. in MPEG2 or MPEG4
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/06Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
    • G10L19/07Line spectrum pair [LSP] vocoders
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • G10L19/107Sparse pulse excitation, e.g. by using algebraic codebook
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/12Determination 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/12Determination 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
    • G10L19/13Residual excited linear prediction [RELP]
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/22Mode decision, i.e. based on audio signal content versus external parameters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech 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/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L21/0216Noise filtering characterised by the method used for estimating noise
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/06Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being correlation coefficients
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/26Pre-filtering or post-filtering

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Algebra (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

DESCRIÇÃO
CODIFICAÇÃO E DESCODIFICAÇÃO DE POSIÇÕES DE PULSO DE FAIXAS DE
UM SINAL DE ÁUDIO A presente invenção está relacionada com o campo de processamento de áudio e codificação de áudio, em particular, com a codificação e descodificação de posições de pulso de faixas no sinal de áudio. 0 processamento e/ou codificação de áudio tem avançado de muitas maneiras. Na codificação de áudio, os codificadores preditivos lineares desempenham um papel importante. Ao codificar um sinal de áudio, por exemplo, um sinal de áudio compreendendo a fala, os codificadores preditivos lineares normalmente codificam uma representação de um envelope espectral do sinal de áudio. Para este fim, os codificadores preditivos lineares podem determinar os coeficientes de filtro preditivo para representar o envelope espectral do som de forma codificada. Os coeficientes do filtro podem, então, ser usados por um descodificador preditivo linear para descodificar o sinal de áudio gerando um sinal de áudio sintetizado usando os coeficientes de filtro preditivo.
Exemplos importantes para os codificadores preditivos lineares são os codificadores de Previsão Linear de Excitação por Código Algébrico [ACELP | Algebraic Code-Exited Linear Prediction Coders]. Os codificadores ACELP são amplamente utilizados, por exemplo, em Codificação de Áudio e Fala Unificada [USAC | Unified Speech and Audio Coding] , e podem ter campos de aplicação adicionais, por exemplo, em Codificação de Áudio e
Fala Unificada de Baixo Atraso [LD-USAC | Low Delay Unified Speech and Audio Coding].
Os codificadores ACELP normalmente codificam um sinal de áudio determinando os coeficientes de filtro preditivo. Para conseguir uma melhor codificação, os codificadores ACELP determinam um sinal residual, também referido como sinal alvo, com base no sinal de áudio a ser codificado, e com base nos já determinados coeficientes de filtro preditivo. 0 sinal residual pode, por exemplo, ser um sinal diferente representando uma diferença entre o sinal de áudio a ser codificado, e as partes do sinal que são codificadas pelos coeficientes de filtro preditivo, e, possivelmente, através dos coeficientes de filtro adaptativo resultantes da análise do tom. 0 codificador ACELP, então, visa codificar o sinal residual. Para isso, o codificador codifica os parâmetros de codebook [livro de códigos] algébrico, que são usados para codificar o sinal residual.
Para codificar o sinal residual, são usados os codebooks algébricos. Normalmente, os codebooks algébricos abrangem uma pluralidade de faixas, por exemplo, quatro faixas, cada uma compreendendo 16 posições de faixas. Em tal configuração, um total de 4 · 16 = 64 posições de amostras podem ser representadas por um codebook algébrico respetivo, por exemplo, correspondendo ao número de amostras de um subframe do sinal de áudio a ser codificado.
As faixas do codebook podem ser intercaladas de modo que a faixa 0 do codebook possa representar as amostras 0, 4, 8 ..., 60 do subframe, para que a faixa 1 do codebook possa representar as amostras 1, 5, 9 ..., 61 do subframe; a faixa 2 do codebook possa representar as amostras 2, 6, 10 ..., 62 do subframe, e para que a faixa 3 do codebook possa representar as amostras 3, 7, 11 ..., 63 do subframe. Cada faixa pode ter um número fixo de pulsos. Ou, o número de pulsos por faixa pode variar, por exemplo, dependendo de outras condições. Um pulso pode, por exemplo, ser positivo ou negativo, ou seja, pode ser representado por +1 (pulso positivo) ou 0 (pulso negativo).
Para a codificação do sinal residual, na codificação, uma configuração de codebook que melhor represente as partes do sinal remanescente do sinal residual pode ser escolhida. Para tal, os pulsos disponíveis podem ser posicionados nas posições de faixa adequadas que melhor reflitam as partes do sinal a ser codificado. Para além disto, pode-se especificar, se um pulso correspondente é negativo ou positivo.
No lado do descodificador, um descodificador ACELP descodificaria primeiramente os parâmetros de codebook algébricos. 0 descodificador ACELP pode também descodificar os parâmetros de codebook adaptativos. Para determinar os parâmetros de codebook algébricos, o descodificador ACELP pode determinar a pluralidade das partes do pulso para cada faixa de codebook algébrico. Para além disto, o descodificador ACELP pode também descodificar, se um pulso numa posição de faixa é um pulso positivo ou negativo. Além disto, o descodificador ACELP pode também descodificar os parâmetros de codebook adaptativos. Com base nestas informações, o descodificador ACELP normalmente gera um sinal de excitação. 0 descodificador ACELP, então, filtra os coeficientes de filtro preditivo no sinal de excitação para gerar um sinal de áudio sintetizado para obter o sinal de áudio descodificado.
No ACELP, os pulsos numa faixa são geralmente codificados como 30 segue; se a faixa é de dimensão 16, e se o numero de pulsos desta faixa é um, então podemos codificar as partes do pulso pela sua posição (4 bits) e sinal (1 bit) , totalizando 5 bits. Se a faixa é de dimensão 16, e o número de pulsos desta faixa é dois, então, o primeiro pulso é codificado pela sua posição (4 bits) e sinal (1 bit). Para o segundo pulso, precisamos codificar pela posição somente (4 bits), uma vez que podemos escolher que o sinal do segundo pulso seja positivo se é para a esquerda do primeiro pulso, negativo se é para a direita do primeiro pulso e o mesmo sinal que o primeiro pulso se estiver na mesma posição do primeiro pulso. No total, precisamos assim de 9 bits para codificar 2 pulsos. Em comparação com a codificação das posições do pulso separadamente, de 5 bits cada, salvamos assim 1 bit para cada par de pulsos.
Codificando um número de pulsos maior que 2, podemos codificar pares de pulsos e se o número de pulsos for impar, codificar o último pulso separadamente. Então, por exemplo, para a faixa de 5 pulsos, precisaríamos de 9+9+5 = 23 bits. Se tivermos 4 faixas, então 4 x 23 = 92 bits seriam necessários para a codificação de um subframe de dimensão 64 com 4 faixas e 5 pulsos por faixa. No entanto, seria bastante apreciado se o número de bits pudesse, além disso, for reduzido.
Virette et al, "Enhanced Pulse Indexing CE for ACELP in USAC" ISSO/IEC JTC1/SC29/WG11, 95° encontro MPEG, Janeiro 2011, páginas 1-13, XP030047872, apresenta indexação de pulso baseada no método da permutação para codificação e descodificação ACELP. Seria bastante apreciado se um aparelho para a codificação e um aparelho respetivo para a descodificação com a codificação melhorada ou os conceitos de descodificação fosse fornecido, que tivesse um meio de codificar ou descodificar as informações de pulso de modo aprimorado usando menos bits por representação de informação de pulso, dado que, por exemplo, reduziria a taxa de transmissão para transmitir um sinal de áudio respetivamente codificado, bem como, adicionalmente, por exemplo, reduziria o armazenamento necessário para armazenar um sinal de áudio respetivamente codificado.
Assim, é um objetivo da presente invenção fornecer os conceitos aprimorados para a codificação e descodificação dos pulsos das faixas de um sinal de áudio. Os objetivos da presente invenção são alcançados por um aparelho para descodificação de acordo com a reivindicação 1, um aparelho para a codificação de acordo com a reivindicação 4, um método para a descodificação de acordo com a reivindicação 6, um método para codificação de acordo com a reivindicação 7, e um programa de computador de acordo com a reivindicação 8.
De acordo com as formas de realização, assume-se que um número de estado está disponível para um aparelho para a descodificação. Para além do mais, assume-se que um número de posições das faixas, indicando o número total das posições das faixas de pelo menos uma das faixas associadas com o sinal de áudio codificado, e o número total de pulsos, indicando o número de pulsos de pelo menos uma das faixas, está disponível para um aparelho de descodificação da presente invenção. De preferência, o número de posições das faixas e o número de pulsos totais estão disponíveis para cada faixa associada com o sinal de áudio codificado. exemplo, tendo 4 faixas com 5 pulsos, cada uma pode atingir cerca de 6.6 x 10Λ21 estados, que podem, de acordo com as formas de realização, ser codificados com 73 bits, que é aproximadamente 21% mais eficiente que a codificação do codificador do estado da técnica supracitado usando 92 bits. Primeiramente, um conceito é fornecido sobre como codificar uma pluralidade de posições de pulsos de uma faixa de um sinal de áudio de maneira eficiente. De seguida, o conceito é estendido para permitir a codificação não somente da posição dos pulsos de uma faixa, mas também de se o pulso é positivo ou negativo. Para além disto, o conceito é então estendido para permitir a codificação das informações do pulso para a pluralidade das faixas de modo eficiente. Os conceitos são correspondentemente aplicáveis sobre ao lado do descodificador.
Adicionalmente, as formas de realização são, portanto, baseadas nas descobertas de que se a estratégia de codificação usa um número pré-determinado de bits, tal como qualquer configuração com o número de pulsos em cada faixa, e requer o mesmo número de bits. Se o número de bits disponível é fixo, então é possível escolher diretamente quantos pulsos podem ser codificados com uma dada quantidade de bits, permitindo assim a codificação com uma qualidade pré-determinada. Mais ainda, com esta abordagem, não é necessário tentar quantidades diferentes de pulsos até que a taxa de bits desejada seja alcançada, mas podemos escolher diretamente a quantidade correta de pulsos, reduzindo deste modo a complexidade.
Com base nas suposições acima, a pluralidade de posições de pulsos de uma faixa de um frame de sinal de áudio pode ser codificada e/ou descodificada.
Enquanto a presente invenção pode ser empregue para a codificação ou descodificação de qualquer tipo de sinais de áudio, por exemplo, sinais de fala ou sinais de música, a presente invenção é particularmente útil para a codificação e descodificação de sinais de fala.
Noutra forma de realização, o descodificador de informação de pulso é para além disto adaptado para descodificar uma pluralidade de sinais de pulso usando o número de posições de faixas, o número total de pulsos e o número de estado, em que cada um dos sinais de pulso indica um sinal de um da pluralidade de pulsos. 0 descodificador de sinal pode ser adaptado para descodificar o sinal de áudio codificado gerando um sinal de áudio sintetizado para além do uso da pluralidade dos sinais de pulso.
De acordo com uma forma de realização preferida, em que uma ou mais faixas podem compreender pelo menos a última faixa e uma ou mais outras faixas, o descodificador de informações de pulso pode ser adaptado para gerar um primeiro número de subestado e um segundo número de subestado a partir do número de estado. 0 descodificador da informação do pulso pode ser configurado para descodificar um primeiro grupo de posições de pulso com base no primeiro número de subestado, e o descodificador de informação de pulso pode ainda ser configurado para descodificar um segundo grupo de posições de pulso com base num segundo número de subestado. 0 segundo grupo de posições de pulso pode somente consistir de posições de pulso indicando posições de faixas da última faixa. 0 primeiro grupo de posições de pulso pode somente consistir de posições de pulso indicando posições de uma ou mais outras faixas.
De acordo com outra forma de realização preferida, o descodificador de informação de pulso pode ser configurado para separar o número de estado dentro do primeiro número de subestado, e o segundo número de subestado dividindo o número de estado por f (pk, N) para obter uma parte inteira e um resto como resultado da divisão caracterizado pela parte inteira ser o primeiro número de subestado e em que o resto é o segundo número de subestado, em que pk indica para cada uma de uma ou mais faixas de número de pulsos, e em que N indica para cada uma de uma ou mais faixas o número de posições das faixas. Aqui, f(pk, N) é uma função que retorna o número de estados que podem ser alcançados numa faixa de dimensão N com pulsos pk.
Noutra forma de realização, o descodificador de informação do pulso pode ser adaptado para conduzir um teste comparando o número de estado ou um número de estado atualizado com um valor limiar. 0 descodificador de informação de pulso pode ser adaptado para conduzir o teste comprando se o número de estado ou um número de estado atualizado é maior que, maior que ou igual a, menor que, ou menor que ou igual ao valor limiar, e se a unidade em análise é, para além disto, adaptada para atualizar o número de estado ou um número de estado atualizado, dependendo do resultado do teste.
Numa forma de realização, o descodificador de informação de pulso pode ser configurado para comparar o número de estado ou o número de estado atualizado com o valor limiar para cada posição de faixa de uma da pluralidade de faixas. 0 descodificador de informação de pulso é configurado para dividir uma das faixas numa primeira partição de faixa, abrangendo pelo menos uma posição de faixa da pluralidade de posições das faixas, e dentro de uma segunda partição das faixas, compreendendo as outras posições de faixas remanescente da pluralidade das posições de faixas. 0 descodificador de informação de pulso pode ser configurado para gerar um primeiro número de subestados e um segundo número de subestados com base no número de estados. Para além disto, o descodif icador de informação de pulso pode ser configurado para descodificar um primeiro grupo de posições de pulso associadas com a primeira partição de faixas com base no primeiro número de subestado. Além disto, o descodificador de informação de pulso pode ser configurado para descodificar um segundo grupo de posições de pulso associadas com a segunda partição de faixas com base no segundo número de subestado.
De acordo com uma forma de realização, um aparelho para a codificação de um sinal de áudio é fornecido. 0 aparelho compreende um processador de sinal adaptado para determinar uma pluralidade de coeficientes de filtro preditivo que estão associados com o sinal de áudio, para a geração de um sinal residual com base no sinal de áudio e na pluralidade dos coeficientes de filtro preditivo. Para além disto, o aparelho compreende um codificador de informações de pulso adaptado para codificar uma pluralidade de posições de pulso relacionadas com uma ou mais faixas para codificar o sinal de áudio, as uma ou mais faixas estando associadas ao sinal residual. Cada uma das faixas tem uma pluralidade de posições de faixas e uma pluralidade de pulsos. Cada uma das posições do pulso indica uma das posições da faixa de uma das faixas para indicar uma posição de um ou mais pulsos da faixa. 0 codificador de informação de pulso é configurado para codificar a pluralidade das posições de pulso gerando um número de estado, de modo que as posições de pulso possam ser descodificadas somente com base no número de estado, um número das posições da faixa indicando um número total de posições da faixa de pelo menos uma das faixas, e um número total de pulsos indicando um número total de pulsos de pelo menos uma das faixas. 0 codificador de informação de pulso pode ser adaptado para codificar uma pluralidade de sinais de pulso, caracterizado por cada um dos sinais de pulso indicar um sinal de um da pluralidade de pulsos. 0 codificador de informação de pulso pode, para além disto, ser configurado para codificar a pluralidade dos sinais de pulso gerando um número de estado, de modo que os sinais de pulso possam ser descodificados somente com base no número de estado, um número das posições da faixa indicando um número total de posições da faixa de pelo menos uma das faixas, e um número total de pulsos. 0 codificador de informação de pulso pode ser configurado para dividir uma das faixas dentro da primeira partição de faixas, compreendendo pelo menos uma posição de faixa da pluralidade de posições das faixas, e dentro de uma segunda partição das faixas, compreendendo as restantes outras posições de faixas da pluralidade das posições de faixas. Mais ainda, o codificador de informação de pulso pode ser configurado para codificar um primeiro número de subestado associado com a primeira partição. Além disso, o codificador de informação de pulso pode ser configurado para codificar um segundo número de subestado associado com a segunda partição. Mais ainda, o codificador de informação de pulso pode ser configurado para combinar um primeiro número de subestados e um segundo número de subestados para obter o número de estado.
No que se segue, as formas de realização da presente invenção são descritas com maiores detalhes com respeito às figuras, em que: A Fig. 1 ilustra um aparelho para a descodificação de um sinal de áudio codificado de acordo com uma forma de realização, A Fig. 2 ilustra um aparelho para a codificação de um sinal de áudio de acordo com uma forma de realização, A Fig. 3 ilustra todas as configurações possíveis para uma faixa com dois pulsos não sinalizados e três posições de faixa, A Fig. 4 ilustra todas as configurações possíveis para uma faixa com um pulso sinalizado e duas posições de faixa, A Fig. 5 ilustra todas as configurações possíveis para uma faixa com dois pulsos sinalizados e duas posições de faixa, A Fig. 6 é um fluxograma que ilustra uma forma de realização descrevendo as etapas de processamento conduzidas por um descodificador de informação de pulso de acordo com uma forma de realização, e A Fig. 7 é um fluxograma que ilustra uma forma de realização descrevendo as etapas de processamento conduzidas por um codificador de informação de pulso de acordo com uma forma de realização. A Fig. 1 ilustra um aparelho para descodificação de um sinal de áudio codificado, caracterizado por uma ou mais faixas serem associadas com o sinal de áudio codificado, cada uma das faixas tendo uma pluralidade de posições de faixas e uma pluralidade de pulsos. 0 aparelho compreende um descodificador de informação de pulso 110 e um descodificador de sinal 120. 0 descodificador de informação de pulso 110 é adaptado para descodificar uma pluralidade de posições de pulso. Cada uma das posições do pulso indica uma das posições da faixa de uma das faixas para indicar uma posição de um ou mais pulsos da faixa. O descodificador de informação de pulso 110 é configurado para descodificar a pluralidade das posições de pulso usando um número de posições da faixa indicando um número total de posições da faixa de pelo menos uma das faixas, e um número total de pulsos indicando um número total de pulsos de pelo menos uma das faixas, e um número de estado. O descodificador de sinal 120 é adaptado para descodificar o sinal de áudio codificado gerando um sinal de áudio sintetizado usando a pluralidade de posições de pulso e uma pluralidade de coeficientes de filtro preditivo gue estão associados com o sinal de áudio codificado. 0 número de estado é um número que pode ter sido codificado por um codificador conforme as formas de realização que serão descritas abaixo. 0 número de estado, por exemplo, abrange as informações sobre a pluralidade de posições de pulso numa representação compacta, ou seja, uma representação que exige poucos bits, e que pode ser descodificada, quando a informação sobre o número de posições das faixas e o número de pulsos totais está disponível no descodificador.
Num exemplo, o número de posições da faixa e/ou o número total de pulsos de uma ou de cada faixa de sinal de áudio pode estar disponível no descodificador, pois o número de posições da faixa e/ou o número total de pulsos é um valor estático que não muda, e que é conhecido pelo recetor. Por exemplo, o número das posições da faixa pode ser sempre 16 para cada faixa, e o número total de pulsos pode ser sempre 4.
Noutro exemplo, o número de posições da faixa e/ou o número total de pulsos de uma ou de cada faixa de sinal de áudio pode ser explicitamente transmitido pelo aparelho por descodificação, p. ex., pelo aparelho por codificação.
Num outro exemplo, o descodificador pode determinar o número de posições da faixa e/ou o número total de pulsos de um ou de cada faixa de sinal de áudio analisando outros parâmetros que não exprimem explicitamente o número de posições de faixa e/ou o número total de pulsos, mas a partir do qual o número de posições da faixa e/ou número total de pulsos pode ser derivado. Noutras exemplos, o descodificador pode analisar outros dados disponíveis para derivar o número de posições da faixa e/ou o número total de pulsos de uma ou de cada faixa de sinal de áudio.
Em mais outro exemplo, o descodificador de informações de pulso pode ser adaptado para também descodificar, se um pulso é um pulso positivo ou um pulso negativo.
Num outro exemplo, o descodificador de informação de pulso pode ainda ser adaptado para descodificar a informação do pulso que compreende a informação sobre os pulsos para uma pluralidade de faixas. A informação de pulso pode, por exemplo, ser informações sobre a posição dos pulsos numa faixa e/ou informações de se um pulso é um pulso positivo ou um pulso negativo. A Fig. 2 ilustra um aparelho para a codificação de um sinal de áudio compreendendo um processador de sinal 201 e um codificador de informação de pulso 220. O processador de sinal 210 é adaptado para determinar uma pluralidade de coeficientes de filtro preditivo que estão associados com o sinal de áudio para a geração de um sinal residual, com base no sinal de áudio e na pluralidade dos coeficientes de filtro preditivo. 0 codificador de informações de pulso 220 é adaptado para codificar uma pluralidade de posições de pulso relacionadas com uma ou mais faixas para codificar o sinal de áudio. Esta uma ou mais faixas são associadas com o sinal residual gerado pelo processador de sinal 210. Cada uma das faixas tem uma pluralidade de posições de faixas e uma pluralidade de pulsos.
Para além disto, cada uma das posições do pulso indica uma das posições da faixa de uma das faixas para indicar uma posição de um ou mais pulsos da faixa. O codificador de informação de pulso 220 é configurado para codificar a pluralidade das posições de pulso gerando um número de estado, de modo que as posições de pulso possam ser descodificadas somente com base no número de estado, um número das posições da faixa indicando um número total de posições da faixa de pelo menos uma das faixas, e um número total de pulsos indicando um número total de pulsos de pelo menos uma das faixas.
No que se segue, são apresentados os conceitos básicos das formas de realização da presente invenção relacionados com a codificação das posições do pulso e possivelmente o sinal de pulso (pulso positivo ou pulso negativo) gerando um número de estado.
Os princípios de codificação das formas de realização da presente invenção são baseados na descoberta de que se uma enumeração de estado de todas as configurações possíveis de k pulsos numa faixa com n posições de faixa é considerada, é suficiente codificar o estado real dos pulsos de uma faixa. Ao codificar tal estado pelo menor número de bits possível, fornece-se a codificação compacta desejável. Por isto, um conceito de enumeração de estado é apresentado, em que cada constelação de posições de pulso, e possivelmente também de sinal de pulso, representar um estado, e cada estado ser enumerado de maneira única. A Fig. 3 ilustra isto para um caso simples, onde todas as configurações possíveis são apresentadas, quando uma faixa com dois pulsos e três posições de faixa é considerada. Dois pulsos podem estar localizados na mesma posição da faixa. No exemplo da Fig. 3, o sinal dos pulsos (p. ex. : se o pulso é positivo ou negativo) não é considerado, por exemplo, em tal exemplo, todos os pulsos podem, por exemplo, ser considerados como sendo positivos.
Na Fig. 3, todos os estados possíveis para dois pulsos não direcionados localizados numa faixa com três posições de faixa (na Fig. 3; as posições da faixa 1, 2 e 3) são ilustrados. Há somente seis possíveis estados diferentes (na Fig. 3 enumerada de 0 a 5) que descrevem como os pulsos podem ser distribuídos na faixa. Por isso, é suficiente o uso do número de estado na faixa de 0 a 5 para descrever a presente configuração real. Por exemplo, se o número de estado no exemplo da Fig. 3 tem o valor (4) , e se o descodificador esta ciente do esquema de codificação, o descodificador pode concluir que o número de estado = 4 significa que a faixa tem um pulso na posição da faixa 0, e outro pulso na posição da faixa 2. Por isso, no exemplo da Fig. 3, três bits são suficientes para codificar o número de estado para identificar um de seis diferentes estados do exemplo da Fig. 3. A Fig. 4 ilustra um caso apresentando todos os estados possíveis para um pulso direcionado localizado numa faixa com duas posições de faixa (na Fig. 4: posições das faixas 1 e 2). Na Fig. 4, o sinal dos pulsos (p. ex. : se o pulso é positivo ou negativo) é considerado. Há quatro possíveis estados diferentes (na Fig. 3 enumerada de 0 a 3) que descrevem como os pulsos podem ser distribuídos na faixa e também o seu sinal (positivo ou negativo). É suficiente o uso do número de estado na faixa de 0 a 3 para descrever a presente configuração real. Por exemplo, se o número de estado no exemplo da Fig. 4 tem o valor (2), e se o descodificador esta ciente do esquema de codificação, o descodificador pode concluir que o número de estado = 2 significa que a faixa tem um pulso na posição da faixa 1, e que o outro pulso é um pulso positivo. A Fig. 5 ilustra ainda um outro caso, onde todas as configurações possíveis são apresentadas, quando uma faixa com dois pulsos e duas posições de faixa é considerada. Os pulsos podem estar localizados na mesma posição da faixa. No exemplo mostrado na Fig. 5, o sinal dos pulsos (p. ex.: se o pulso é positivo ou negativo) é considerado. Assume-se que os pulsos na mesma posição de faixa têm o mesmo sinal (p. ex.: as faixas na mesma posição de faixa são ou todos positivos ou todos negativos).
Na Fig. 5, todos os estados possíveis para dois pulsos sinalizados (p. ex.: pulsos que são ou positivos ou negativos) localizados numa faixa com duas posições de faixa (na Fig. 5: as posições da faixa 1 e 2) são ilustrados. Há somente oito possíveis estados diferentes (na Fig. 5 enumerada de 0 a 7) que descrevem como os pulsos podem ser distribuídos na faixa. Por isso, é suficiente o uso do número de estado na faixa de 0 a 7 para descrever a presente configuração real. Por exemplo, se o número de estado no exemplo da Fig. 5 tem o valor (3) , e se o descodificador esta ciente do esquema de codificação, o descodificador pode concluir que o número de estado = 3 significa que a faixa tem um pulso na posição da faixa 0 que é positivo, e o outro pulso na posição de faixa 1 que é negativo. Desta forma, no exemplo da Fig. 5, três bits são suficientes para codificar o número de estado para identificar um de oito diferentes estados do exemplo da Fig. 5.
Na ACELP, o sinal residual pode ser codificado por um número fixo de pulsos sinalizados. Conforme descrito acima, os pulsos podem, por exemplo, ser distribuídos em quatro faixas entrelaçadas, de modo que a faixa 0 contém as posições mod(n,4)==0, a faixa = 1 contém as posições mod(n,4)==1, e assim por diante. Cada faixa pode ter um número pré-definido de pulsos unitários sinalizados, que pode sobrepor-se, mas quando se sobrepõem, os pulsos têm o mesmo sinal.
Ao codificar os pulsos, um mapeamento a partir das posições do pulso e dos seus sinais, dentro de uma representação que usa a menor quantidade possível de bits, deve ser alcançado. Adicionalmente, a codificação do pulso deve ter um consumo de bits que seja fixo, ou seja, qualquer constelação de pulso tem o mesmo número de bits.
Cada faixa é primeiramente codificada de modo independente, e, então, os estados de cada faixa são combinados com um número que representa o estado de todo o subframe. Esta abordagem fornece o consumo de bits otimizado matematicamente, dado que todos os estados têm probabilidade igual, e o consumo de bits é fixo. 0 conceito de enumeração de estado pode também ser explicado usando uma representação compacta de diferentes constelações de estado:
Deixe o sinal residual, que queremos codificar, como xn. Assumindo que quatro faixas intercaladas, p. ex., de um codebook algébrico, são consideradas, então, a primeira faixa tem amostras x0,x4,xs ...xN_4 , a segunda faixa tem amostras xx,x5,x9 ...xN_3 , etc. Suponha que a primeira faixa é quantizada com um pulso unitário sinalizado e que T=8, enquanto que a dimensão da faixa é 2 (T = dimensão (amostras) do sinal residual que será codificado). Se T = 8, e se 4 faixas são usadas para codificar o sinal residual, cada uma das 4 faixas tem 2 posições de faixa. Por exemplo, a primeira faixa pode ser considerada, que tem duas posições de faixa xO e x4. 0 pulso da primeira faixa pode, então, aparecer em qualquer uma das seguintes constelações.
Há quatro estados diferentes para esta configuração.
Similarmente, se houvessem dois pulsos na primeira faixa, a primeira faixa com duas posições de faixa xO e x4, os pulsos poderiam então ser designados nas seguintes constelações:
Pelo que esta configuração tem 8 estados.
Se a dimensão do sinal residual é estendido para T = 12, então cada uma das 4 faixas tem 3 posições de faixa. A primeira faixa ganha mais amostras e tem agora posições de faixa xO, x4 e x8, de tal modo que temos:
A tabela acima significa que há 8 diferentes estados para xO e x4, se x8 - 0 (x8 não tem nenhum pulso) ; 4 diferentes estados para xO e x4, se x8 =1 (x8 com um pulso positivo); 4 diferentes estados para xO e x4, se x8 = -1 (x8 com um pulso negativo) ; 1 estado para xO e x4, se x8 = 2 (x8 com dois pulsos positivos); e 1 estado para xO e x4, se x8 = -2 (x8 com dois pulsos negativos) .
Aqui, o número de estados para a primeira linha foi obtido a partir das duas tabelas anteriores. Ao adicionar os números de estados na primeira linha, vemos que esta configuração tem 18 estados.
No exemplo T = 12, 5 bits são suficientes para codificar todos os 18 possíveis estados diferentes. O codificador então, por exemplo, seleciona o número de estados a partir do intervalo [0, ..., 17] para especificar uma das 18 configurações. Se o descodificador está ciente do esquema de codificação, por exemplo, se estiver ciente de qual número de estados representa qual configuração, este pode descodificar as posições de pulso e o sinal de pulso para uma faixa.
Abaixo, os métodos de codificação adequados correspondentes aos métodos de descodificação de acordo com as formas de realização serão fornecidos. Conforme as formas de realização, tal como adiantado nas reivindicações 1 e 4, um aparelho para a codificação e um aparelho para a descodificação são fornecidos. Nas formas de realização, para gerar o número de estado ou para descodificar o número de estado, o número de configurações possíveis para N posições de faixas com p pulsos pode ser calculado.
Os pulsos podem ser sinalizados, e uma fórmula recursiva pode ser empregue, que calcula o número de estados f (p, N) para uma faixa com N posições de faixa e p pulsos sinalizados (os pulsos podem ser positivos ou negativos, mas os pulsos na mesma posição de faixa têm o mesmo sinal), caracterizados pela fórmula recursiva f(p, N) ser definida por:
k = o
As condições iniciais são
uma vez que uma posição simples com um ou mais pulsos requer um bit (dois estados) para o sinal. A fórmula recursiva é para a soma de todas as constelações diferentes.
Nomeadamente, dado p pulsos, a posição atual pode ter qN = 0 para p pulsos, onde as posições N-l remanescentes têm p-qn pulsos. 0 número de estados na posição atual e as posições N-l remanescentes são multiplicados para obter o número de estados com estas combinações dos pulsos, e as combinações são somadas para obter o número total de estados.
Em formas de realização, a função recursiva pode ser calculada por um algoritmo interativo, onde a recursão é substituída pela iteração.
Como a avaliação de f(p,N) é numericamente relativamente complexa para formas de realização em tempo real, de acordo com algumas formas de realização, uma tabela de referência pode ser empregue para calcular f(p,N) . De acordo com algumas formas de realização, a tabela pode ter sido computada off-line. A seguir, conceitos adicionais são fornecidos para a codificação e descodificação do número de estado:
Aceite que f(p,N) denota o número de configurações possíveis para a faixa com N posições de faixa e p pulsos sinalizados. 0 codificador da informação de pulso pode agora analisar a faixa: se a primeira posição na faixa não tem um pulso, então as posições N-l remanescente tem p pulsos sinalizados, e para descrever esta constelação, teremos somente f(p,N— 1) estados.
Em contrapartida, se a primeira posição tem um ou mais pulsos, o codificador de informação do pulso pode definir que o estado geral é maior que f(p,N — \) .
Então, no descodificador de informação do pulso, o descodificador de informação do pulso pode, por exemplo, começar com a última posição e comparar o estado com o valor limiar, por exemplo, com f(p,N -1) . Se for maior, então, o descodif icador de informação de pulso pode determinar que a última posição tem, pelo menos, um pulso. 0 descodificador de informação do pulso pode então atualizar o estado para obter um número de estado atualizado pela subtração f(p,N — 1) a partir do estado, e reduzir o número de pulsos remanescente por um.
De outra forma, se não houver pulso na última posição, o descodificador de informação de pulso pode reduzir o número de posições remanescentes por um. Repetir este procedimento até que não haja pulsos remanescentes, forneceria as posições não sinalizadas dos pulsos.
Para contabilizar igualmente os sinais dos pulsos, o codificador de informações de pulso pode codificar os pulsos no menor bit do estado. Numa forma de realização alternativa, o codificador de informação do pulso pode codificar o sinal do bit remanescente mais alto do estado. É preferível, contudo, codificar o sinal de pulso no menor bit, uma vez que desta forma é mais fácil de lidar no que concerne a cálculos com inteiros.
Se, no descodificador de informação do pulso, o primeiro pulso de uma dada posição for encontrado, o sinal do pulso é determinado pelo último bit. Então, o estado remanescente é deslocado um passo à direita para obter um número de estado atualizado.
Numa forma de realização, um descodificador de informação de pulso é configurado para aplicar o seguinte algoritmo de descodificação. Neste algoritmo de descodificação, numa abordagem de passo a passo, para cada posição de faixa, por exemplo, uma após a outra, o número de estado ou o número de estado atualizado é comparado com o valor limiar, p. ex., com f(p,k-l) .
De acordo com uma forma de realização, um algoritmo do descodificador de informação de pulso é fornecido:
Para cada posição na faixa, k=N para 1 Enquanto o estado s >= f(p,k-l)
Coloque um pulso em k Estabeleça s:=s —f(p,k —1)
Se este for o primeiro pulso em k
Se o menor bit de s for configurado, configure o sinal para menos;
De contrário, configure o sinal para mais. Desloque o estado um passo para a direita s:= s/2
Reduza o número de pulsos remanescentes p:=p—l Em relação à informação de pulso, de acordo com uma forma de realização, um codificador de informação de pulso é configurado para aplicar o seguinte algoritmo de codificação. 0 codificador de informação de pulso faz os mesmos passos do descodificador de informação de pulso, mas em ordem inversa.
De acordo com uma forma de realização, um algoritmo do codificador de informação de pulso é fornecido:
Estabeleça o número de pulsos conhecidos para zero, p:=0 e estado para zero, s:=0.
Para cada posição na faixa, k=l para N Para cada pulso nesta posição
Se o pulso atual for o último nesta posição
Desloque o estado um passo para a esquerda s:= s * 2
Se o sinal for menos, estabeleça o menor bit para um, s:= s + 1
De contrário, estabeleça o menor bit para zero (ou seja, não faça nada)
Atualize o estado s:=s + f(p,k-1)
Aumente o número de pulsos descobertos p:=p+l Codificando o número de estado utilizando este algoritmo, o codificador de informação de pulso adiciona um valor inteiro para um número intermédio (p. ex. : um número de estado intermédio), por exemplo, o número de estado antes de o algoritmo ser completado, para cada pulso na posição da faixa para cada posição da faixa de uma das faixas, para obter (o valor de) o número de estado. A abordagem para a codificação e descodificação da informação de pulso, p. ex., as posições do pulso e sinais de pulso podem ser referidas como "codificação passo a passo" e "descodificação passo a passo", uma vez que as posições são consideradas pelos métodos de codificação e descodificação um após o outro, passo a passo. A Fig. 6 é um fluxograma que ilustra um exemplo, descrevendo os passos do processo conduzidos por um descodificador de informação de pulso de acordo com uma forma de realização.
No passo 610, a posição atual da faixa k é estabelecida como N. Aqui, N representa o número de posições de faixas de uma faixa, caracterizada pelas posições da faixa serem enumeradas de 1 a N. No passo 620, testa-se se k é maior do que ou igual a 1, ou seja, se restam posições da faixa que não tenham sido consideradas. Se k não for maior ou igual a 1, todas as posições da faixa foram consideradas e o processo termina.
De outra forma, testa-se no passo 630 se o estado é maior ou igual a f (p, k-1). Se for este o caso, pelo menos um pulso está presente na posição k. Se não for este o caso, nenhum pulso (adicional) está presente na posição da faixa k e o processo continua em 640, onde k é deduzido por 1, de modo a que a próxima posição da faixa seja considerada.
Se, contudo, o estado é maior ou igual a f (p, k-1), o processo continua com o passo 642, um pulso é colocado na posição da faixa k, e então, no passo 644, o estado é atualizado deduzindo o estado por f (p, k-1) . Então, no passo 650 testa-se se o pulso atual é o primeiro pulso descoberto na posição da faixa k. Se não for este o caso, o número de pulsos remanescentes é reduzido por 1 no passo 680, e o processo continua no passo 630.
Se, no entanto, este for o primeiro pulso descoberto na posição da faixa k, o processo continua com o passo 660, onde se testa se o menor bit de s está configurado. Se for este o caso, o sinal dos pulsos nesta posição de faixa é configurado para menos (passo 662), de outra forma, o sinal de pulsos na posição da faixa é estabelecido para mais (passo 664). Em ambos os casos, o estado é então deslocado um passo para a direita 670 (s: = s/2). Então, também o número de pulsos remanescentes é deduzido por um (passo 680) e o processo continua no passo 630. A Fig. 7 é um fluxograma que ilustra um exemplo, em que o fluxograma descreve os passos do processo conduzido por um codificador de informação de pulso de acordo com um exemplo.
No passo 710, o número de pulsos encontrados p é estabelecido como 0, o estado s é estabelecido como 0 e a posição da faixa considerada k é estabelecida como 1.
No passo 720, testa-se se k é menor do que ou igual a N, ou seja, se ainda existem posições da faixa que não foram consideradas (aqui, N significa: número de posições da faixa de uma faixa) . Se k não for menor que ou igual a N, todas as posições da faixa foram consideradas e o processo termina.
Em contrapartida, testa-se no passo 730 se pelo menos um pulso está presente na posição k. Se não for este o caso, o processo continua em 74 0, onde k é aumentado por 1, de modo a que a próxima posição da faixa será considerada.
Contudo, se pelo menos um pulso estiver presente na posição da faixa k, testa-se no passo 750 se o pulso atualmente considerado é o último pulso na posição de faixa k. Se este não for o caso, então, no passo 770 o estado s é atualizado adicionando f (p, k-1) para o estado s, o número de pulsos encontrados p é aumentado por 1, e o processo continua com o passo 780.
Se o pulso atualmente considerado for o último pulso na posição da faixa k, então depois do passo 750, o processo continua com o passo 755 e o estado é deslocado um passo para a esquerda (s: = s * 2) . Então, testa-se no passo 760 se o sinal do pulso é negativo. Se for este o caso, o menor bit de s é estabelecido para 1 (etapa 762); caso contrário, o menor bit de s é estabelecido para 0 (ou nada é feito) (etapa 764). Então, em ambos os casos, o passo 770 é conduzido, onde o estado s é atualizado adicionando f (p, k-1) para o estado s, o número de pulsos encontrados p é aumentado por 1, e o processo continua com o passo 780.
No passo 780, testa-se se há algum outro pulso na posição k. Se for este o caso, o processo continua com o passo 750; de outro modo, o processo continua com o passo 740.
No que se segue, um conceito é fornecido para gerar um número de estado em conjunto codificando o estado de uma pluralidade de faixas.
Infelizmente, em muitos casos a gama de estados possíveis de uma única faixa não é um múltiplo de 2, e a representação binária de cada estado é, deste modo, ineficiente. Por exemplo, se o número de estados possíveis é 5, então teremos 3 bits para representá-lo com um número binário. Contudo, se temos quatro faixas, cada uma com 5 estados, então temos 5x5x5x5=625 estados para um subframe completo que pode ser representado por 10 bits (ao invés de 4x3=12 bits). Isso corresponde a 2,5 bits por faixa, ao invés de 3 e, assim obtemos uma economia de 0,5 bits por faixa ou equivalentemente, 2 bits por subframe (20% do consumo total de bits) . É portanto importante combinar os estados de cada faixa com um estado combinado, uma vez que através deste a ineficiência da representação binária pode ser reduzida. Observe que a mesma abordaqem poderia ser usada com quaisquer números que são transmitidos. Por exemplo, desde que cada subframe pode ter um estado representando as posições dos pulsos, e cada frame pode, por exemplo, ter quatro subframes, estes estados poderiam ser combinados com um número de estado combinado.
Devido a um subframe ter, por exemplo, 4 faixas, o consumo de bits pode ser reduzido para melhorar a eficiência pela codificação combinada dos estados de cada faixa. Por exemplo, dado que cada faixa tem ρρ pulsos e cada faixa é de dimensão N, ou seja, tem N posições de faixa, então o estado de cada faixa é o intervalo de 0 a f(pk,N)-l . Os estados de cada faixa sjç podem, então ser combinados com o estado combinado s do subframe com a fórmula (assumindo que temos 4 faixas por subframe). Fórmula 2:
Os estados de cada faixa podem, então, ser determinados no descodif icador dividindo o estado conjunto por f(pk,N), onde o resto é o estado da última faixa e a parte com o número inteiro é o estado conjunto das faixas restantes. Se o número de faixas for outro que não seja 4, podemos prontamente adicionar ou deduzir o número de termos na equação acima apropriadamente. Observe que, quando o número de pulsos por faixa for grande, então, o número de possíveis estados torna-se maior. Por exemplo, com 6 pulsos por faixa com quatro faixas e um comprimento da faixa N=16, então, o estado é um número de 83-bit, que excede o comprimento máximo de números binários nas CPU's habituais. Segue que algumas etapas extras têm que ser feitas para avaliar a fórmula acima usando métodos padrão com números inteiros muito longos.
Observe também que esta abordagem é igual à codificação aritmética dos estados da faixa, quando as probabilidades do estado são assumidas como iguais.
Acima, uma abordagem passo a passo foi apresentada para codificar e descodificar a informação dos pulsos de uma faixa, por exemplo, as posições, e possivelmente sinais, de pulsos de uma faixa. Outras formas de realização fornecem outra abordagem, que será referida como a abordagem "dividir para conquistar [ split-and-conquer]".
Um codificador de informação de pulso estando configurado para aplicar a abordagem dividir para conquistar divide uma faixa em duas partições da faixa xi e X2, que poderiam ser consideradas como dois vetores, em que x = [xi X2]· A ideia básica é codificar ambos os vetores xi e X2 separadamente, e, então, combinar os dois com a fórmula: Fórmula 3:
Na equação acima, deve ser observado que s(xj) e s(x2) são os estados dos vetores xj e ^2/ quando o número de pulsos já é conhecido, ou seja, quando os vetores têm, respetivamente, pi eP2 =p-pi pulsos. Para considerar todos os estados que têm 0 a pi~ 1 pulsos no vetor xlr temos que adicionar o termo soma na equação acima. 0 algoritmo/fórmula acima pode ser aplicado para codificar os pulsos das faixas entrelaçadas aplicando os dois seguintes passos de pré-processamento. Primeiramente, deixe os vetores xfaixa k consistir em todas as amostras na faixa k e combine estes vetores definindo x = [xfaixa 1, Xfaixa 2/ Xfaixa 3, Xfaixa 4]· Observe que isso é meramente uma reorganização das amostras de modo a que todas as amostras da faixa 1 sejam colocadas no primeiro grupo e assim por diante.
Em segundo lugar, observe que o número de pulsos por faixa é geralmente um número fixo. Segue-se que se a faixa 1 tiver sempre pi pulsos, então, o número de estados na faixa 1 é f(k,N,)=0 para todos os valores k Φ px . Essa é apenas outra forma de dizer que não há estados para a faixa 1 que não tenham pi pulsos. Formalmente, podemos definir então a fórmula do número-de-estados como: Fórmula 4:
Para uma faixa completa Xfaixa k com pk pulsos, o número de estados é (N=Nfaixa k)
Caso contrário, para N>1 E para N=1:
Pela reorganização de amostras e utilizando a definição acima para o número de estados (Fórmula 4), podemos calcular o estado conjunto de todas as faixas pela Fórmula 3. Denote que visto que o número de estados contém maioritariamente zeros, a soma na Fórmula 3 é zero, quando combinando o estado das faixas. Portanto, combinando duas faixas é idêntico à Fórmula 2. Semelhantemente, podemos prontamente mostrar que a combinação de todas as quatro faixas (ou cinco) também fornece resultados idênticos com ambas as abordagens.
De acordo com um exemplo, a reorganização pode ser utilizada como um passo de pré-processamento ao codificador. Noutro exemplo, a reorganização pode ser integrada no codificador. Analogamente, de acordo com um exemplo, a reorganização pode ser usada como um passo de pós-processamento ao descodificador. Noutro exemplo, a reorganização pode ser integrada no descodificador.
Se o número de pulsos numa faixa não for fixo, podemos prontamente modificar a fórmula do número de estados apropriadamente, e ainda usar o mesmo algoritmo de codificação. Observe que a abordagem apresentada na seção "Combinando os dados da faixa" e o método acima fornecem resultados iguais se a ordem de combinação de faixas for apropriadamente escolhida. De igual modo, também a abordagem passo a passo e a abordagem dividir para conquistar fornecem resultados iguais. Podemos portanto escolher independentemente qual abordagem a usar no descodif icador e codificador, de acordo com qual seja a mais prática de implementar ou qual abordagem melhor se encaixa nas restrições computacionais da plataforma.
De acordo com um exemplo, um codificador de algoritmo da informação de pulso é fornecido, que pode ser descrito em pseudocódigo por
Estado da função = codificar (x) 1. se o comprimento de x for 1 a. se x não tiver pulsos i. estado = 0 ii. retornar b. outro (x tem, pelo menos, um pulso) i. se o pulso(s) em x for positivo • estado = 0 • retornar ii. outro (pulso(s) em x for negativo) • estado = 1 • retornar iii. fim 2. outro (ou seja, quando o comprimento de x for > 1) a. dividir x em dois vetores xl e x2 de comprimento Nl e N2 respetivamente b. determinar o estado do vetor xl por sl = codificar(xl) c. determinar o estado do vetor x2 por s2 = codificar(x2) d. deixar p ser o número de pulsos em x e pl o número de pulsos em xl e. estabelecer nO = 0 f. para k de 0 a pl-1 i. definir nO := nO + f(k,Nl)*f(p-k,N2) g. fim h. calcular estado como s:= sl + f(pl,Nl)*s2 +
nO i. retornar 3. fim
Empregar tal algoritmo de codificação, de acordo com um exemplo, o codificador de informação de pulso é configurado para dividir uma das faixas numa primeira partição da faixa e numa segunda partição da faixa. 0 codificador de informação de pulso é configurado para codificar um primeiro número de subestado associado com a primeira partição. Para além disso, o codificador de informação de pulso é configurado para codificar um segundo número de subestado associado com a segunda partição. Mais ainda, o codificador de informação de pulso é configurado para combinar o primeiro número de subestado e o segundo número de subestado para obter o número de estado.
Analogamente, de acordo com um exemplo, o descodificador do algoritmo da informação de pulso pode ser descrito em pseudocódigo por: função x = descodificar(s, p, N) 1. se o número de pulsos p for 0 a. retornar vetor x completo com zeros 2. outro a. se len for 1 i. se s == 0 1. Vetor x tem pulsos positivos p na sua primeira posição ii. outro 1. Vetor x tem pulsos negativos p na sua primeira posição iii. fim b. Outro i. Escolher os comprimentos da partição NI e N2 ii. Set n0:= 0 e pl:= 0 iii. Enquanto nO + f (pl,Nl)*f(p-pl) < s 1. definir pl:= pl+1 2. definir n0:= nO + f (pl, Nl) *f (p-pl) iv. fim v. definir s:= s - nO e p2 := p - pl vi. definir sl:= s / f(pl,Nl) e o restante em s2 vii. descodificar a primeira partição xl = descodificar(sl, pl, Nl) viii. descodificar a segunda partição x2 descodificar(s2, p2, N2) ix. combinar as partições xl e x2 em x c. fim 3. fim
Numa forma de realização que realiza a abordagem dividir para conquistar, o descodificador de informação de pulso é configurado para gerar um primeiro número de subestado e um segundo número de subestado com base no número de estado. 0 descodificador de informação de pulso é configurado para descodificar um primeiro grupo de posições de pulso de uma primeira partição de uma das faixas com base no primeiro número de subestado. Para além disso, o descodificador de informação de pulso é configurado para descodificar um segundo grupo de posições de pulso de uma segunda partição de uma das faixas com base no segundo número de subestado.
Embora alguns aspetos tenham sido descritos no contexto de um aparelho, é evidente que estes aspetos representam também uma descrição do método correspondente, onde um bloco ou um dispositivo corresponde a um passo do método ou de uma caracteristica de um passo do método. De forma análoga, os aspetos descritos no contexto de uma etapa do método também representam uma descrição de um bloco correspondente ou item ou caracteristica de um aparelho correspondente.
Dependendo de certos requisitos de implementação, as formas de realização da invenção podem ser implementadas em hardware ou em software. A implementação pode ser realizada utilizando um meio digital de armazenamento, por exemplo, uma disquete, um DVD, um CD, uma memória ROM, PROM, EPROM, EEPROM ou uma memória FLASH, possuindo sinais de controlo eletronicamente legíveis nela armazenados, que cooperam (ou são capazes de cooperar) com um sistema de computador programável, de modo a que o respetivo método seja realizado.
Em algumas formas de realização, um dispositivo lógico programável (por exemplo, um arranjo de portas programáveis em campo) pode ser utilizado para executar uma parte das ou todas as funcionalidades dos métodos aqui descritos. Em algumas formas de realização, um arranjo de portas programáveis em campo pode cooperar com um microprocessador de modo a executar um dos métodos aqui descritos. De forma geral, os métodos são de preferência realizados por qualquer aparelho de hardware.
As formas de realização acima descritas são meramente ilustrativas para os princípios da presente invenção. Entende-se que modificações e variações dos arranjos e detalhes aqui descritos serão evidentes para outros especialistas versados na técnica. É intenção, portanto, ser limitada apenas pelo âmbito das reivindicações de patente pendente e não pelos detalhes específicos apresentados a título de descrição e explicação das formas de realização da presente invenção.
Referências citadas na descrição A lista de referências citada pelo proponente é somente para conveniência do leitor. Não é parte do documento europeu de patente. Apesar de todo o cuidado que foi tido na compilação das referências, erros ou omissões não podem ser excluídas e o EPO recusa quaisquer responsabilidades nesse sentido.
Literatura, que não patentes, citada na descrição VIRETTE et al. Enhanced Pulse Indexing CE for ACELP in USAC JTC1/SC29/WG11, Janeiro 2011 1-13

Claims (8)

  1. REIVINDICAÇÕES
    1. Aparelho para descodificar um sinal de áudio codificado, em que uma ou mais faixas estão associadas ao sinal de áudio codificado, cada uma das faixas tendo uma pluralidade de posições da faixa e uma pluralidade de pulsos, o aparelho caracterizado por compreender: um descodificador de informação de pulso (110) para descodificar uma pluralidade de posições de pulso, em que cada uma das posições de pulso indica uma das posições da faixa de uma das faixas para indicar uma posição de um dos pulsos da faixa, e em que o descodificador de informação de pulso (110) é configurado para descodificar a pluralidade de posições de pulso utilizando um número de posições da faixa que indica um número total das posições da faixa de, pelo menos, uma das faixas, um número total de pulsos que indica um número total dos pulsos de pelo menos uma das faixas, e um número de estado; e um descodificador de sinal (120) para descodificar o sinal de áudio codificado gerando um sinal de áudio sintetizado utilizando a pluralidade de posições de pulso e uma pluralidade de coeficientes do filtro preditivo que estão associados ao sinal de áudio codificado, em que o descodif icador de informação de pulso (110) está, ainda, adaptado para descodificar uma pluralidade de sinais de pulso utilizando o número de posições da faixa, o número total de pulsos e o número de estado, em que cada um dos sinais de pulso indica um sinal de um da pluralidade de pulsos, e em que o descodif icador de sinal (120) é adaptado para descodificar o sinal de áudio codificado gerando um sinal de áudio sintetizado mais ainda usando a pluralidade de sinais de pulso, em que o descodificador de informação de pulso (110) é configurado para dividir uma das faixas numa primeira partição da faixa, compreendendo, pelo menos, duas posições da faixa da pluralidade de posições da faixa, e numa segunda partição da faixa, compreendendo, pelo menos, duas outras posições da faixa da pluralidade de posições da faixa, em que o descodificador de informação de pulso (110) é configurado para gerar um primeiro número de subestado e um segundo número de subestado com base no número de estado, em que o descodificador de informação de pulso (110) é configurado para descodificar um primeiro grupo das posições de pulso associadas com a primeira partição de faixa com base no primeiro número de subestado, e em que o descodificador de informação de pulso (110) é configurado para descodificar um segundo grupo das posições de pulso associadas com a segunda partição de faixa com base no segundo número de subestado, em que o número de estado indica o estado de uma enumeração de todos os estados possíveis, em que todos os estados possíveis indicam todas as possíveis configurações dos pulsos numa das uma ou mais faixas tendo a pluralidade de posições de faixas.
  2. 2. Um aparelho de acordo com a reivindicação 1, em que pelo menos duas faixas estão associadas com o sinal de áudio codificado, caracterizado por pelo menos duas faixas compreenderem pelo menos uma última faixa e uma ou mais outras faixas, Em que o descodif icador de informação de pulso (110) estar configurado para gerar um primeiro número de subestado e um segundo número de subestado com base no número de estado, em que o descodificador de informação de pulso (110) está configurado para descodificar um primeiro grupo de posições de pulso com base no primeiro número de subestado, e em que o descodificador de informação de pulso (110) está configurado para descodificar um segundo grupo de posições de pulso com base no segundo número de subestado, em que o segundo grupo de posições de pulso consiste somente de posições de pulso indicando posições de faixa da última faixa, e em que o primeiro grupo de posições de pulso consiste somente de posições de pulso indicando posições de faixa das outras uma ou mais faixas.
  3. 3. Um aparelho de acordo com a reivindicação 2, caracterizado por o descodificador de informação de pulso ser configurado para gerar o primeiro número de subestado e o segundo número de subestado dividindo o número de estado por f (pk, N) para obter uma parte com número inteiro e um resto como um resultado da divisão, em que a parte com número inteiro é o primeiro número de subestado e em que o resto é o segundo número de subestado, em que pk indica para cada uma de uma ou mais faixas o número de pulsos, e em que N indica para cada uma das pelo menos duas faixas o número de posições da faixa, em que f(p,N) denota o número de configurações possíveis para uma faixa tendo N posições de faixa e p pulsos sinalizados.
  4. 4. Um aparelho para codificar um sinal de áudio, caracterizado por compreender: um processador do sinal (210) para determinar uma pluralidade de coeficientes do filtro preditivo estando associados ao sinal de áudio, para gerar um sinal residual com base no sinal de áudio e na pluralidade de coeficientes do filtro preditivo; e um codificador de informação de pulso (220) para codificar uma pluralidade de posições de pulso referente a uma ou mais faixas, para codificar o sinal de áudio, as uma ou mais faixas estando associadas ao sinal residual, cada uma das faixas tendo uma pluralidade de posições da faixa e uma pluralidade de pulsos, em que cada uma das posições de pulso indica uma das posições da faixa de uma das faixas para indicar uma posição de um dos pulsos da faixa, em que o codificador de informação de pulso (220) está configurado para codificar a pluralidade de posições de pulso pela geração de um número de estado, de tal modo que as posições de pulso possam ser descodificadas apenas com base no número de estado, um número de posições da faixa indicando um número total das posições da faixa de pelo menos uma das faixas, e um número total de pulsos indicando um número total dos pulsos de pelo menos uma das faixas, em que o codificador de informação de pulso (220) está configurado para dividir uma das faixas numa primeira partição da faixa, compreendendo pelo menos duas posições da faixa da pluralidade de posições da faixa, e numa segunda partição da faixa, compreendendo pelo menos duas outras posições da faixa da pluralidade de posições da faixa, em que o codificador de informação de pulso (220) é configurado para codificar um primeiro número de subestado associado com a primeira partição, em que o codificador de informação de pulso (220) é configurado para codificar um segundo número de subestado associado com a segunda partição, e em que o codificador de informação de pulso (220) é configurado para combinar o primeiro número de subestado e o segundo número de subestado para obter o número de estado, em que o número de estado indica o estado de uma enumeração de todos os estados possíveis, em que todos os estados possíveis indicam todas as possíveis configurações dos pulsos numa das uma ou mais faixas tendo a pluralidade de posições de faixas.
  5. 5. Aparelho para codificação de acordo com a reivindicação 4, caracterizado pelo codificador de informação de pulso (220) ser adaptado para codificar uma pluralidade de sinais de pulso, em que cada um dos sinais de pulso indica um sinal de um da pluralidade de pulsos, em que o codificador de informação de pulso (220) é configurado para codificar a pluralidade de sinais de pulso pela geração de o número de estado, de tal modo que os sinais de pulso possam ser descodificados apenas com base no número de estado, o número de posições da faixa indicando um número total das posições da faixa de pelo menos uma das faixas, e o número total de pulsos.
  6. 6. Método para descodificar um sinal de áudio codificado, caracterizado por uma ou mais faixas estarem associadas ao sinal de áudio codificado, cada uma das faixas tendo uma pluralidade de posições da faixa e uma pluralidade de pulsos, em que o método compreende: descodificar uma pluralidade de posições de pulso, em que cada uma das posições de pulso indica uma das posições da faixa de uma das faixas para indicar uma posição de um dos pulsos da faixa, e em que a pluralidade de posições de pulso é descodificada utilizando um número de posições da faixa indicando um número total de posições da faixa de pelo menos uma das faixas, um número total de pulsos indicando um número total de pulsos, pelo menos, uma das faixas, e um número de estado; e descodificar uma pluralidade de sinais de pulso usando o número de posição de faixa, o número total de pulsos e o número de estado, em que cada um dos sinais de pulso indica o sinal de um da pluralidade de pulsos, e descodificar o sinal de áudio codificado pela geração de um sinal de áudio sintetizado usando a pluralidade de posições de pulso e a pluralidade de coeficientes de filtro preditivo associados ao sinal de áudio codificado, em que a descodificação do sinal de áudio codificado é conduzida pela geração de um sinal de áudio sintetizado usando ainda a pluralidade de sinais de pulso, em que o método compreende ainda: dividir uma das faixas numa primeira partição da faixa, compreendendo pelo menos duas posições da faixa da pluralidade de posições da faixa, e numa segunda partição da faixa, compreendendo pelo menos duas outras posições da faixa da pluralidade de posições da faixa, gerar um primeiro número de subestado e um segundo número de subestado com base no número de estado descodificar um primeiro grupo das posições de pulso associadas com a primeira partição de faixa com base no primeiro número de subestado, e descodificar um segundo grupo das posições de pulso associadas com a segunda partição de faixa com base no segundo número de subestado, em que o número de estado indica o estado de uma enumeração de todos os estados possíveis, em que todos os estados possíveis indicam todas as possíveis configurações dos pulsos numa das uma ou mais faixas tendo a pluralidade de posições de faixas.
  7. 7. Método para codificar um sinal de áudio, caracterizado por compreender: determinar uma pluralidade de coeficientes do filtro preditivo estando associados ao sinal de áudio, para gerar um sinal residual com base no sinal de áudio e na pluralidade de coeficientes do filtro preditivo; e codificar uma pluralidade de posições de pulso referentes a uma ou mais faixas, para codificar o sinal de áudio, uma ou mais faixas estando associadas ao sinal residual, cada uma das faixas tendo uma pluralidade de posições da faixa e uma pluralidade de pulsos, em que cada uma das posições de pulso indica uma das posições da faixa de uma das faixas para indicar uma posição de um dos pulsos da faixa, em que a pluralidade de posições de pulso é codificada pela geração de um número de estado, de tal modo que as posições de pulso possam ser descodificadas com base somente no número de estado, um número de posições da faixa indicando um número total das posições da faixa de pelo menos uma das faixas, e um número total de pulsos indicando um número total de pulsos de pelo menos uma das faixas em que o método compreende ainda: dividir uma das faixas numa primeira partição da faixa, compreendendo, pelo menos, duas posições da faixa da pluralidade de posições da faixa, e numa segunda partição da faixa, compreendendo, pelo menos, duas outras posições da faixa da pluralidade de posições da faixa, codificar um primeiro número de subestado associado à primeira partição, codificar um segundo número de subestado associado à segunda partição, e combinar o primeiro número de subestado com o segundo número de subestado para obter o número de estado, em que o número de estado indica o estado de uma enumeração de todos os estados possíveis, em que todos os estados possíveis indicam todas as possíveis configurações dos pulsos numa das uma ou mais faixas tendo a pluralidade de posições de faixas
  8. 8. Um programa de computador para implementar o método de acordo com as reivindicações 6 ou 7 ao ser executado num computador ou processador de sinal.
PT127031235T 2011-02-14 2012-02-10 Codificação e descodificação de posições de pulso de faixas de um sinal de áudio PT2676267T (pt)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201161442632P 2011-02-14 2011-02-14
PCT/EP2012/052294 WO2012110416A1 (en) 2011-02-14 2012-02-10 Encoding and decoding of pulse positions of tracks of an audio signal

Publications (1)

Publication Number Publication Date
PT2676267T true PT2676267T (pt) 2017-09-26

Family

ID=71943601

Family Applications (2)

Application Number Title Priority Date Filing Date
PT127031235T PT2676267T (pt) 2011-02-14 2012-02-10 Codificação e descodificação de posições de pulso de faixas de um sinal de áudio
PT17171964T PT3239978T (pt) 2011-02-14 2012-02-10 Codificação e descodificação de posições de pulso de faixas de um sinal de áudio

Family Applications After (1)

Application Number Title Priority Date Filing Date
PT17171964T PT3239978T (pt) 2011-02-14 2012-02-10 Codificação e descodificação de posições de pulso de faixas de um sinal de áudio

Country Status (19)

Country Link
US (1) US9595263B2 (pt)
EP (3) EP3471092B1 (pt)
JP (1) JP5800915B2 (pt)
KR (1) KR101643450B1 (pt)
CN (1) CN103460284B (pt)
AR (1) AR085361A1 (pt)
AU (1) AU2012217184B2 (pt)
BR (1) BR112013020700B1 (pt)
CA (1) CA2827156C (pt)
ES (2) ES2639646T3 (pt)
HK (1) HK1245987B (pt)
MX (1) MX2013009345A (pt)
PL (3) PL3239978T3 (pt)
PT (2) PT2676267T (pt)
RU (1) RU2586597C2 (pt)
SG (1) SG192747A1 (pt)
TR (1) TR201903388T4 (pt)
WO (1) WO2012110416A1 (pt)
ZA (1) ZA201306841B (pt)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104978970B (zh) 2014-04-08 2019-02-12 华为技术有限公司 一种噪声信号的处理和生成方法、编解码器和编解码系统
WO2016162283A1 (en) * 2015-04-07 2016-10-13 Dolby International Ab Audio coding with range extension
CN114127843B (zh) 2019-07-02 2023-08-11 杜比国际公司 用于离散指向性数据的表示、编码和解码的方法、设备和系统
US11088784B1 (en) 2020-12-24 2021-08-10 Aira Technologies, Inc. Systems and methods for utilizing dynamic codes with neural networks
US11483109B2 (en) 2020-12-28 2022-10-25 Aira Technologies, Inc. Systems and methods for multi-device communication
US11575469B2 (en) 2020-12-28 2023-02-07 Aira Technologies, Inc. Multi-bit feedback protocol systems and methods
US11368250B1 (en) 2020-12-28 2022-06-21 Aira Technologies, Inc. Adaptive payload extraction and retransmission in wireless data communications with error aggregations
US11489624B2 (en) 2021-03-09 2022-11-01 Aira Technologies, Inc. Error correction in network packets using lookup tables
US11489623B2 (en) 2021-03-15 2022-11-01 Aira Technologies, Inc. Error correction in network packets
US11496242B2 (en) 2021-03-15 2022-11-08 Aira Technologies, Inc. Fast cyclic redundancy check: utilizing linearity of cyclic redundancy check for accelerating correction of corrupted network packets

Family Cites Families (217)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR9206143A (pt) 1991-06-11 1995-01-03 Qualcomm Inc Processos de compressão de final vocal e para codificação de taxa variável de quadros de entrada, aparelho para comprimir im sinal acústico em dados de taxa variável, codificador de prognóstico exitado por córdigo de taxa variável (CELP) e descodificador para descodificar quadros codificados
US5408580A (en) 1992-09-21 1995-04-18 Aware, Inc. Audio compression system employing multi-rate signal analysis
SE501340C2 (sv) 1993-06-11 1995-01-23 Ericsson Telefon Ab L M Döljande av transmissionsfel i en talavkodare
BE1007617A3 (nl) 1993-10-11 1995-08-22 Philips Electronics Nv Transmissiesysteem met gebruik van verschillende codeerprincipes.
US5657422A (en) 1994-01-28 1997-08-12 Lucent Technologies Inc. Voice activity detection driven noise remediator
US5784532A (en) 1994-02-16 1998-07-21 Qualcomm Incorporated Application specific integrated circuit (ASIC) for performing rapid speech compression in a mobile telephone system
US5684920A (en) 1994-03-17 1997-11-04 Nippon Telegraph And Telephone Acoustic signal transform coding method and decoding method having a high efficiency envelope flattening method therein
US5568588A (en) * 1994-04-29 1996-10-22 Audiocodes Ltd. Multi-pulse analysis speech processing System and method
CN1090409C (zh) 1994-10-06 2002-09-04 皇家菲利浦电子有限公司 采用不同编码原理的传送系统
SE506379C3 (sv) * 1995-03-22 1998-01-19 Ericsson Telefon Ab L M Lpc-talkodare med kombinerad excitation
US5727119A (en) 1995-03-27 1998-03-10 Dolby Laboratories Licensing Corporation Method and apparatus for efficient implementation of single-sideband filter banks providing accurate measures of spectral magnitude and phase
JP3317470B2 (ja) 1995-03-28 2002-08-26 日本電信電話株式会社 音響信号符号化方法、音響信号復号化方法
US5659622A (en) 1995-11-13 1997-08-19 Motorola, Inc. Method and apparatus for suppressing noise in a communication system
US5890106A (en) 1996-03-19 1999-03-30 Dolby Laboratories Licensing Corporation Analysis-/synthesis-filtering system with efficient oddly-stacked singleband filter bank using time-domain aliasing cancellation
US5848391A (en) 1996-07-11 1998-12-08 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Method subband of coding and decoding audio signals using variable length windows
JP3259759B2 (ja) 1996-07-22 2002-02-25 日本電気株式会社 音声信号伝送方法及び音声符号復号化システム
JPH10124092A (ja) 1996-10-23 1998-05-15 Sony Corp 音声符号化方法及び装置、並びに可聴信号符号化方法及び装置
US5960389A (en) 1996-11-15 1999-09-28 Nokia Mobile Phones Limited Methods for generating comfort noise during discontinuous transmission
JPH10214100A (ja) 1997-01-31 1998-08-11 Sony Corp 音声合成方法
US6134518A (en) 1997-03-04 2000-10-17 International Business Machines Corporation Digital audio signal coding using a CELP coder and a transform coder
SE512719C2 (sv) 1997-06-10 2000-05-02 Lars Gustaf Liljeryd En metod och anordning för reduktion av dataflöde baserad på harmonisk bandbreddsexpansion
JP3223966B2 (ja) 1997-07-25 2001-10-29 日本電気株式会社 音声符号化/復号化装置
US6070137A (en) 1998-01-07 2000-05-30 Ericsson Inc. Integrated frequency-domain voice coding using an adaptive spectral enhancement filter
DE69926821T2 (de) 1998-01-22 2007-12-06 Deutsche Telekom Ag Verfahren zur signalgesteuerten Schaltung zwischen verschiedenen Audiokodierungssystemen
GB9811019D0 (en) 1998-05-21 1998-07-22 Univ Surrey Speech coders
US6173257B1 (en) * 1998-08-24 2001-01-09 Conexant Systems, Inc Completed fixed codebook for speech encoder
US6439967B2 (en) 1998-09-01 2002-08-27 Micron Technology, Inc. Microelectronic substrate assembly planarizing machines and methods of mechanical and chemical-mechanical planarization of microelectronic substrate assemblies
SE521225C2 (sv) * 1998-09-16 2003-10-14 Ericsson Telefon Ab L M Förfarande och anordning för CELP-kodning/avkodning
US7272556B1 (en) 1998-09-23 2007-09-18 Lucent Technologies Inc. Scalable and embedded codec for speech and audio signals
US7124079B1 (en) 1998-11-23 2006-10-17 Telefonaktiebolaget Lm Ericsson (Publ) Speech coding with comfort noise variability feature for increased fidelity
FI114833B (fi) 1999-01-08 2004-12-31 Nokia Corp Menetelmä, puhekooderi ja matkaviestin puheenkoodauskehysten muodostamiseksi
DE19921122C1 (de) 1999-05-07 2001-01-25 Fraunhofer Ges Forschung Verfahren und Vorrichtung zum Verschleiern eines Fehlers in einem codierten Audiosignal und Verfahren und Vorrichtung zum Decodieren eines codierten Audiosignals
WO2000075919A1 (en) 1999-06-07 2000-12-14 Ericsson, Inc. Methods and apparatus for generating comfort noise using parametric noise model statistics
JP4464484B2 (ja) 1999-06-15 2010-05-19 パナソニック株式会社 雑音信号符号化装置および音声信号符号化装置
US6236960B1 (en) * 1999-08-06 2001-05-22 Motorola, Inc. Factorial packing method and apparatus for information coding
US6636829B1 (en) 1999-09-22 2003-10-21 Mindspeed Technologies, Inc. Speech communication system and method for handling lost frames
ATE341074T1 (de) 2000-02-29 2006-10-15 Qualcomm Inc Multimodaler mischbereich-sprachkodierer mit geschlossener regelschleife
US6757654B1 (en) 2000-05-11 2004-06-29 Telefonaktiebolaget Lm Ericsson Forward error correction in speech coding
JP2002118517A (ja) 2000-07-31 2002-04-19 Sony Corp 直交変換装置及び方法、逆直交変換装置及び方法、変換符号化装置及び方法、並びに復号装置及び方法
FR2813722B1 (fr) 2000-09-05 2003-01-24 France Telecom Procede et dispositif de dissimulation d'erreurs et systeme de transmission comportant un tel dispositif
US6847929B2 (en) * 2000-10-12 2005-01-25 Texas Instruments Incorporated Algebraic codebook system and method
CA2327041A1 (en) * 2000-11-22 2002-05-22 Voiceage Corporation A method for indexing pulse positions and signs in algebraic codebooks for efficient coding of wideband signals
US6636830B1 (en) 2000-11-22 2003-10-21 Vialta Inc. System and method for noise reduction using bi-orthogonal modified discrete cosine transform
US20050130321A1 (en) 2001-04-23 2005-06-16 Nicholson Jeremy K. Methods for analysis of spectral data and their applications
US7136418B2 (en) 2001-05-03 2006-11-14 University Of Washington Scalable and perceptually ranked signal coding and decoding
KR100464369B1 (ko) * 2001-05-23 2005-01-03 삼성전자주식회사 음성 부호화 시스템의 여기 코드북 탐색 방법
US20020184009A1 (en) 2001-05-31 2002-12-05 Heikkinen Ari P. Method and apparatus for improved voicing determination in speech signals containing high levels of jitter
US20030120484A1 (en) 2001-06-12 2003-06-26 David Wong Method and system for generating colored comfort noise in the absence of silence insertion description packets
DE10129240A1 (de) 2001-06-18 2003-01-02 Fraunhofer Ges Forschung Verfahren und Vorrichtung zum Verarbeiten von zeitdiskreten Audio-Abtastwerten
US6879955B2 (en) 2001-06-29 2005-04-12 Microsoft Corporation Signal modification based on continuous time warping for low bit rate CELP coding
US7711563B2 (en) 2001-08-17 2010-05-04 Broadcom Corporation Method and system for frame erasure concealment for predictive speech coding based on extrapolation of speech waveform
DE10140507A1 (de) * 2001-08-17 2003-02-27 Philips Corp Intellectual Pty Verfahren für die algebraische Codebook-Suche eines Sprachsignalkodierers
KR100438175B1 (ko) * 2001-10-23 2004-07-01 엘지전자 주식회사 코드북 검색방법
CA2365203A1 (en) * 2001-12-14 2003-06-14 Voiceage Corporation A signal modification method for efficient coding of speech signals
US7240001B2 (en) 2001-12-14 2007-07-03 Microsoft Corporation Quality improvement techniques in an audio encoder
US6934677B2 (en) 2001-12-14 2005-08-23 Microsoft Corporation Quantization matrices based on critical band pattern information for digital audio wherein quantization bands differ from critical bands
DE10200653B4 (de) 2002-01-10 2004-05-27 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Skalierbarer Codierer, Verfahren zum Codieren, Decodierer und Verfahren zum Decodieren für einen skalierten Datenstrom
CA2388358A1 (en) * 2002-05-31 2003-11-30 Voiceage Corporation A method and device for multi-rate lattice vector quantization
CA2388352A1 (en) 2002-05-31 2003-11-30 Voiceage Corporation A method and device for frequency-selective pitch enhancement of synthesized speed
CA2388439A1 (en) 2002-05-31 2003-11-30 Voiceage Corporation A method and device for efficient frame erasure concealment in linear predictive based speech codecs
US7302387B2 (en) * 2002-06-04 2007-11-27 Texas Instruments Incorporated Modification of fixed codebook search in G.729 Annex E audio coding
US20040010329A1 (en) 2002-07-09 2004-01-15 Silicon Integrated Systems Corp. Method for reducing buffer requirements in a digital audio decoder
DE10236694A1 (de) 2002-08-09 2004-02-26 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum skalierbaren Codieren und Vorrichtung und Verfahren zum skalierbaren Decodieren
US7502743B2 (en) 2002-09-04 2009-03-10 Microsoft Corporation Multi-channel audio encoding and decoding with multi-channel transform selection
US7299190B2 (en) 2002-09-04 2007-11-20 Microsoft Corporation Quantization and inverse quantization for audio
WO2004034379A2 (en) 2002-10-11 2004-04-22 Nokia Corporation Methods and devices for source controlled variable bit-rate wideband speech coding
US7343283B2 (en) 2002-10-23 2008-03-11 Motorola, Inc. Method and apparatus for coding a noise-suppressed audio signal
US7363218B2 (en) 2002-10-25 2008-04-22 Dilithium Networks Pty. Ltd. Method and apparatus for fast CELP parameter mapping
KR100463419B1 (ko) * 2002-11-11 2004-12-23 한국전자통신연구원 적은 복잡도를 가진 고정 코드북 검색방법 및 장치
KR100463559B1 (ko) * 2002-11-11 2004-12-29 한국전자통신연구원 대수 코드북을 이용하는 켈프 보코더의 코드북 검색방법
KR100465316B1 (ko) * 2002-11-18 2005-01-13 한국전자통신연구원 음성 부호화기 및 이를 이용한 음성 부호화 방법
KR20040058855A (ko) * 2002-12-27 2004-07-05 엘지전자 주식회사 음성 변조 장치 및 방법
AU2003208517A1 (en) 2003-03-11 2004-09-30 Nokia Corporation Switching between coding schemes
US7249014B2 (en) * 2003-03-13 2007-07-24 Intel Corporation Apparatus, methods and articles incorporating a fast algebraic codebook search technique
US20050021338A1 (en) 2003-03-17 2005-01-27 Dan Graboi Recognition device and system
KR100556831B1 (ko) * 2003-03-25 2006-03-10 한국전자통신연구원 전역 펄스 교체를 통한 고정 코드북 검색 방법
WO2004090870A1 (ja) * 2003-04-04 2004-10-21 Kabushiki Kaisha Toshiba 広帯域音声を符号化または復号化するための方法及び装置
US7318035B2 (en) 2003-05-08 2008-01-08 Dolby Laboratories Licensing Corporation Audio coding systems and methods using spectral component coupling and spectral component regeneration
DE10321983A1 (de) 2003-05-15 2004-12-09 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Einbetten einer binären Nutzinformation in ein Trägersignal
ATE486348T1 (de) 2003-06-30 2010-11-15 Koninkl Philips Electronics Nv Verbesserung der qualität von dekodierten audio mittels hinzufügen von geräusch
DE10331803A1 (de) 2003-07-14 2005-02-17 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Umsetzen in eine transformierte Darstellung oder zum inversen Umsetzen der transformierten Darstellung
US6987591B2 (en) 2003-07-17 2006-01-17 Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of Industry Through The Communications Research Centre Canada Volume hologram
DE10345996A1 (de) 2003-10-02 2005-04-28 Fraunhofer Ges Forschung Vorrichtung und Verfahren zum Verarbeiten von wenigstens zwei Eingangswerten
DE10345995B4 (de) 2003-10-02 2005-07-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Verarbeiten eines Signals mit einer Sequenz von diskreten Werten
US7418396B2 (en) 2003-10-14 2008-08-26 Broadcom Corporation Reduced memory implementation technique of filterbank and block switching for real-time audio applications
US20050091044A1 (en) 2003-10-23 2005-04-28 Nokia Corporation Method and system for pitch contour quantization in audio coding
US20050091041A1 (en) 2003-10-23 2005-04-28 Nokia Corporation Method and system for speech coding
EP1711938A1 (en) 2004-01-28 2006-10-18 Koninklijke Philips Electronics N.V. Audio signal decoding using complex-valued data
EP2770694A1 (en) 2004-02-12 2014-08-27 Core Wireless Licensing S.a.r.l. Classified media quality of experience
DE102004007200B3 (de) 2004-02-13 2005-08-11 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audiocodierung
CA2457988A1 (en) * 2004-02-18 2005-08-18 Voiceage Corporation Methods and devices for audio compression based on acelp/tcx coding and multi-rate lattice vector quantization
FI118834B (fi) 2004-02-23 2008-03-31 Nokia Corp Audiosignaalien luokittelu
FI118835B (fi) 2004-02-23 2008-03-31 Nokia Corp Koodausmallin valinta
WO2005086138A1 (ja) 2004-03-05 2005-09-15 Matsushita Electric Industrial Co., Ltd. エラー隠蔽装置およびエラー隠蔽方法
WO2005096274A1 (fr) 2004-04-01 2005-10-13 Beijing Media Works Co., Ltd Dispositif et procede de codage/decodage audio ameliores
GB0408856D0 (en) 2004-04-21 2004-05-26 Nokia Corp Signal encoding
EP1747554B1 (en) 2004-05-17 2010-02-10 Nokia Corporation Audio encoding with different coding frame lengths
JP4168976B2 (ja) 2004-05-28 2008-10-22 ソニー株式会社 オーディオ信号符号化装置及び方法
US7649988B2 (en) 2004-06-15 2010-01-19 Acoustic Technologies, Inc. Comfort noise generator using modified Doblinger noise estimate
US8160274B2 (en) 2006-02-07 2012-04-17 Bongiovi Acoustics Llc. System and method for digital signal processing
US7630902B2 (en) 2004-09-17 2009-12-08 Digital Rise Technology Co., Ltd. Apparatus and methods for digital audio coding using codebook application ranges
KR100656788B1 (ko) * 2004-11-26 2006-12-12 한국전자통신연구원 비트율 신축성을 갖는 코드벡터 생성 방법 및 그를 이용한 광대역 보코더
TWI253057B (en) 2004-12-27 2006-04-11 Quanta Comp Inc Search system and method thereof for searching code-vector of speech signal in speech encoder
US7519535B2 (en) 2005-01-31 2009-04-14 Qualcomm Incorporated Frame erasure concealment in voice communications
JP5420175B2 (ja) 2005-01-31 2014-02-19 スカイプ 通信システムにおける隠蔽フレームの生成方法
CN100593197C (zh) 2005-02-02 2010-03-03 富士通株式会社 信号处理方法和装置
US20070147518A1 (en) 2005-02-18 2007-06-28 Bruno Bessette Methods and devices for low-frequency emphasis during audio compression based on ACELP/TCX
US8155965B2 (en) 2005-03-11 2012-04-10 Qualcomm Incorporated Time warping frames inside the vocoder by modifying the residual
AU2006232361B2 (en) 2005-04-01 2010-12-23 Qualcomm Incorporated Methods and apparatus for encoding and decoding an highband portion of a speech signal
WO2006126843A2 (en) 2005-05-26 2006-11-30 Lg Electronics Inc. Method and apparatus for decoding audio signal
US7707034B2 (en) 2005-05-31 2010-04-27 Microsoft Corporation Audio codec post-filter
RU2296377C2 (ru) 2005-06-14 2007-03-27 Михаил Николаевич Гусев Способ анализа и синтеза речи
JP2008546341A (ja) 2005-06-18 2008-12-18 ノキア コーポレイション 非連続音声送信の際の擬似背景ノイズパラメータ適応送信のためのシステム及び方法
FR2888699A1 (fr) 2005-07-13 2007-01-19 France Telecom Dispositif de codage/decodage hierachique
US7610197B2 (en) 2005-08-31 2009-10-27 Motorola, Inc. Method and apparatus for comfort noise generation in speech communication systems
RU2312405C2 (ru) 2005-09-13 2007-12-10 Михаил Николаевич Гусев Способ осуществления машинной оценки качества звуковых сигналов
US20070174047A1 (en) 2005-10-18 2007-07-26 Anderson Kyle D Method and apparatus for resynchronizing packetized audio streams
US7720677B2 (en) 2005-11-03 2010-05-18 Coding Technologies Ab Time warped modified transform coding of audio signals
US7536299B2 (en) 2005-12-19 2009-05-19 Dolby Laboratories Licensing Corporation Correlating and decorrelating transforms for multiple description coding systems
US8255207B2 (en) 2005-12-28 2012-08-28 Voiceage Corporation Method and device for efficient frame erasure concealment in speech codecs
WO2007080211A1 (en) 2006-01-09 2007-07-19 Nokia Corporation Decoding of binaural audio signals
CN101371295B (zh) 2006-01-18 2011-12-21 Lg电子株式会社 用于编码和解码信号的设备和方法
US8032369B2 (en) 2006-01-20 2011-10-04 Qualcomm Incorporated Arbitrary average data rates for variable rate coders
US7668304B2 (en) 2006-01-25 2010-02-23 Avaya Inc. Display hierarchy of participants during phone call
FR2897733A1 (fr) 2006-02-20 2007-08-24 France Telecom Procede de discrimination et d'attenuation fiabilisees des echos d'un signal numerique dans un decodeur et dispositif correspondant
FR2897977A1 (fr) 2006-02-28 2007-08-31 France Telecom Procede de limitation de gain d'excitation adaptative dans un decodeur audio
EP1852848A1 (en) 2006-05-05 2007-11-07 Deutsche Thomson-Brandt GmbH Method and apparatus for lossless encoding of a source signal using a lossy encoded data stream and a lossless extension data stream
US7873511B2 (en) 2006-06-30 2011-01-18 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder and audio processor having a dynamically variable warping characteristic
JP4810335B2 (ja) 2006-07-06 2011-11-09 株式会社東芝 広帯域オーディオ信号符号化装置および広帯域オーディオ信号復号装置
WO2008007700A1 (fr) 2006-07-12 2008-01-17 Panasonic Corporation Dispositif de décodage de son, dispositif de codage de son, et procédé de compensation de trame perdue
JP5052514B2 (ja) 2006-07-12 2012-10-17 パナソニック株式会社 音声復号装置
US7933770B2 (en) 2006-07-14 2011-04-26 Siemens Audiologische Technik Gmbh Method and device for coding audio data based on vector quantisation
CN102592303B (zh) 2006-07-24 2015-03-11 索尼株式会社 毛发运动合成器系统和用于毛发/皮毛流水线的优化技术
US7987089B2 (en) 2006-07-31 2011-07-26 Qualcomm Incorporated Systems and methods for modifying a zero pad region of a windowed frame of an audio signal
DE602007004502D1 (de) 2006-08-15 2010-03-11 Broadcom Corp Neuphasierung des status eines dekodiergerätes nach einem paketverlust
US7877253B2 (en) 2006-10-06 2011-01-25 Qualcomm Incorporated Systems, methods, and apparatus for frame erasure recovery
US8036903B2 (en) 2006-10-18 2011-10-11 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Analysis filterbank, synthesis filterbank, encoder, de-coder, mixer and conferencing system
US8417532B2 (en) 2006-10-18 2013-04-09 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Encoding an information signal
DE102006049154B4 (de) 2006-10-18 2009-07-09 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Kodierung eines Informationssignals
US8126721B2 (en) 2006-10-18 2012-02-28 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Encoding an information signal
US8041578B2 (en) 2006-10-18 2011-10-18 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Encoding an information signal
EP3288027B1 (en) 2006-10-25 2021-04-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for generating complex-valued audio subband values
DE102006051673A1 (de) 2006-11-02 2008-05-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Nachbearbeiten von Spektralwerten und Encodierer und Decodierer für Audiosignale
BRPI0718738B1 (pt) 2006-12-12 2023-05-16 Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. Codificador, decodificador e métodos para codificação e decodificação de segmentos de dados representando uma corrente de dados de domínio de tempo
FR2911228A1 (fr) 2007-01-05 2008-07-11 France Telecom Codage par transformee, utilisant des fenetres de ponderation et a faible retard.
KR101379263B1 (ko) 2007-01-12 2014-03-28 삼성전자주식회사 대역폭 확장 복호화 방법 및 장치
FR2911426A1 (fr) 2007-01-15 2008-07-18 France Telecom Modification d'un signal de parole
US7873064B1 (en) 2007-02-12 2011-01-18 Marvell International Ltd. Adaptive jitter buffer-packet loss concealment
JP4708446B2 (ja) 2007-03-02 2011-06-22 パナソニック株式会社 符号化装置、復号装置およびそれらの方法
SG179433A1 (en) 2007-03-02 2012-04-27 Panasonic Corp Encoding device and encoding method
JP5596341B2 (ja) 2007-03-02 2014-09-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 音声符号化装置および音声符号化方法
DE102007063635A1 (de) 2007-03-22 2009-04-02 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Verfahren zur zeitlichen Segmentierung eines Videos in Videobildfolgen und zur Auswahl von Keyframes für das Auffinden von Bildinhalten unter Einbeziehung einer Subshot-Detektion
JP2008261904A (ja) 2007-04-10 2008-10-30 Matsushita Electric Ind Co Ltd 符号化装置、復号化装置、符号化方法および復号化方法
US8630863B2 (en) 2007-04-24 2014-01-14 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding audio/speech signal
CN101388210B (zh) * 2007-09-15 2012-03-07 华为技术有限公司 编解码方法及编解码器
ES2529292T3 (es) * 2007-04-29 2015-02-18 Huawei Technologies Co., Ltd. Método de codificación y de decodificación
PL2165328T3 (pl) 2007-06-11 2018-06-29 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Kodowanie i dekodowanie sygnału audio zawierającego część impulsową i część stacjonarną
US9653088B2 (en) 2007-06-13 2017-05-16 Qualcomm Incorporated Systems, methods, and apparatus for signal encoding using pitch-regularizing and non-pitch-regularizing coding
KR101513028B1 (ko) 2007-07-02 2015-04-17 엘지전자 주식회사 방송 수신기 및 방송신호 처리방법
US8185381B2 (en) 2007-07-19 2012-05-22 Qualcomm Incorporated Unified filter bank for performing signal conversions
CN101110214B (zh) 2007-08-10 2011-08-17 北京理工大学 一种基于多描述格型矢量量化技术的语音编码方法
US8428957B2 (en) 2007-08-24 2013-04-23 Qualcomm Incorporated Spectral noise shaping in audio coding based on spectral dynamics in frequency sub-bands
ES2658942T3 (es) 2007-08-27 2018-03-13 Telefonaktiebolaget Lm Ericsson (Publ) Análisis espectral/síntesis de baja complejidad utilizando resolución temporal seleccionable
JP4886715B2 (ja) 2007-08-28 2012-02-29 日本電信電話株式会社 定常率算出装置、雑音レベル推定装置、雑音抑圧装置、それらの方法、プログラム及び記録媒体
US8566106B2 (en) 2007-09-11 2013-10-22 Voiceage Corporation Method and device for fast algebraic codebook search in speech and audio coding
CN100524462C (zh) 2007-09-15 2009-08-05 华为技术有限公司 对高带信号进行帧错误隐藏的方法及装置
US8576096B2 (en) 2007-10-11 2013-11-05 Motorola Mobility Llc Apparatus and method for low complexity combinatorial coding of signals
KR101373004B1 (ko) 2007-10-30 2014-03-26 삼성전자주식회사 고주파수 신호 부호화 및 복호화 장치 및 방법
CN101425292B (zh) 2007-11-02 2013-01-02 华为技术有限公司 一种音频信号的解码方法及装置
DE102007055830A1 (de) 2007-12-17 2009-06-18 Zf Friedrichshafen Ag Verfahren und Vorrichtung zum Betrieb eines Hybridantriebes eines Fahrzeuges
CN101483043A (zh) * 2008-01-07 2009-07-15 中兴通讯股份有限公司 基于分类和排列组合的码本索引编码方法
CN101488344B (zh) 2008-01-16 2011-09-21 华为技术有限公司 一种量化噪声泄漏控制方法及装置
DE102008015702B4 (de) 2008-01-31 2010-03-11 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zur Bandbreitenerweiterung eines Audiosignals
EP2250641B1 (en) 2008-03-04 2011-10-12 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus for mixing a plurality of input data streams
US8000487B2 (en) 2008-03-06 2011-08-16 Starkey Laboratories, Inc. Frequency translation by high-frequency spectral envelope warping in hearing assistance devices
FR2929466A1 (fr) 2008-03-28 2009-10-02 France Telecom Dissimulation d'erreur de transmission dans un signal numerique dans une structure de decodage hierarchique
EP2107556A1 (en) 2008-04-04 2009-10-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio transform coding using pitch correction
US8879643B2 (en) 2008-04-15 2014-11-04 Qualcomm Incorporated Data substitution scheme for oversampled data
US8768690B2 (en) 2008-06-20 2014-07-01 Qualcomm Incorporated Coding scheme selection for low-bit-rate applications
RU2515704C2 (ru) 2008-07-11 2014-05-20 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Аудиокодер и аудиодекодер для кодирования и декодирования отсчетов аудиосигнала
AU2009267518B2 (en) 2008-07-11 2012-08-16 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for encoding/decoding an audio signal using an aliasing switch scheme
CN102150201B (zh) * 2008-07-11 2013-04-17 弗劳恩霍夫应用研究促进协会 提供时间扭曲激活信号以及使用该时间扭曲激活信号对音频信号编码
ES2683077T3 (es) 2008-07-11 2018-09-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codificador y decodificador de audio para codificar y decodificar tramas de una señal de audio muestreada
MY154452A (en) 2008-07-11 2015-06-15 Fraunhofer Ges Forschung An apparatus and a method for decoding an encoded audio signal
MX2011000375A (es) 2008-07-11 2011-05-19 Fraunhofer Ges Forschung Codificador y decodificador de audio para codificar y decodificar tramas de una señal de audio muestreada.
EP2144230A1 (en) 2008-07-11 2010-01-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Low bitrate audio encoding/decoding scheme having cascaded switches
US8352279B2 (en) 2008-09-06 2013-01-08 Huawei Technologies Co., Ltd. Efficient temporal envelope coding approach by prediction between low band signal and high band signal
US8380498B2 (en) 2008-09-06 2013-02-19 GH Innovation, Inc. Temporal envelope coding of energy attack signal by using attack point location
WO2010031049A1 (en) 2008-09-15 2010-03-18 GH Innovation, Inc. Improving celp post-processing for music signals
US8798776B2 (en) 2008-09-30 2014-08-05 Dolby International Ab Transcoding of audio metadata
DE102008042579B4 (de) 2008-10-02 2020-07-23 Robert Bosch Gmbh Verfahren zur Fehlerverdeckung bei fehlerhafter Übertragung von Sprachdaten
JP5555707B2 (ja) 2008-10-08 2014-07-23 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン マルチ分解能切替型のオーディオ符号化及び復号化スキーム
KR101315617B1 (ko) 2008-11-26 2013-10-08 광운대학교 산학협력단 모드 스위칭에 기초하여 윈도우 시퀀스를 처리하는 통합 음성/오디오 부/복호화기
CN101770775B (zh) 2008-12-31 2011-06-22 华为技术有限公司 信号处理方法及装置
EP3598446B1 (en) 2009-01-16 2021-12-22 Dolby International AB Cross product enhanced harmonic transposition
TWI459375B (zh) 2009-01-28 2014-11-01 Fraunhofer Ges Forschung 音訊編碼器、音訊解碼器、包含經編碼音訊資訊之數位儲存媒體、用以將音訊信號編碼及解碼之方法及電腦程式
US8457975B2 (en) 2009-01-28 2013-06-04 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio decoder, audio encoder, methods for decoding and encoding an audio signal and computer program
EP2214165A3 (en) 2009-01-30 2010-09-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus, method and computer program for manipulating an audio signal comprising a transient event
KR101441474B1 (ko) 2009-02-16 2014-09-17 한국전자통신연구원 적응적 정현파 펄스 코딩을 이용한 오디오 신호의 인코딩 및 디코딩 방법 및 장치
EP2234103B1 (en) 2009-03-26 2011-09-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Device and method for manipulating an audio signal
KR20100115215A (ko) 2009-04-17 2010-10-27 삼성전자주식회사 가변 비트율 오디오 부호화 및 복호화 장치 및 방법
RU2557455C2 (ru) 2009-06-23 2015-07-20 Войсэйдж Корпорейшн Прямая компенсация наложения спектров во временной области с применением в области взвешенного или исходного сигнала
JP5267362B2 (ja) 2009-07-03 2013-08-21 富士通株式会社 オーディオ符号化装置、オーディオ符号化方法及びオーディオ符号化用コンピュータプログラムならびに映像伝送装置
CN101958119B (zh) 2009-07-16 2012-02-29 中兴通讯股份有限公司 一种改进的离散余弦变换域音频丢帧补偿器和补偿方法
US8635357B2 (en) 2009-09-08 2014-01-21 Google Inc. Dynamic selection of parameter sets for transcoding media data
PL2491555T3 (pl) 2009-10-20 2014-08-29 Fraunhofer Ges Forschung Wielotrybowy kodek audio
RU2591011C2 (ru) 2009-10-20 2016-07-10 Фраунхофер-Гезелльшафт цур Фёрдерунг дер ангевандтен Форшунг Е.Ф. Кодер аудиосигнала, декодер аудиосигнала, способ кодирования или декодирования аудиосигнала с удалением алиасинга (наложения спектров)
BR112012009032B1 (pt) 2009-10-20 2021-09-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e. V. Codificador de sinal de áudio, decodificador de sinal de áudio, método para prover uma representação codificada de um conteúdo de áudio, método para prover uma representação decodificada de um conteúdo de áudio para uso em aplicações de baixo retardamento
CN102081927B (zh) 2009-11-27 2012-07-18 中兴通讯股份有限公司 一种可分层音频编码、解码方法及系统
US8428936B2 (en) 2010-03-05 2013-04-23 Motorola Mobility Llc Decoder for audio signal including generic audio and speech frames
US8423355B2 (en) 2010-03-05 2013-04-16 Motorola Mobility Llc Encoder for audio signal including generic audio and speech frames
US8793126B2 (en) 2010-04-14 2014-07-29 Huawei Technologies Co., Ltd. Time/frequency two dimension post-processing
WO2011147950A1 (en) 2010-05-28 2011-12-01 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Low-delay unified speech and audio codec
FR2963254B1 (fr) 2010-07-27 2012-08-24 Maurice Guerin Dispositif et procede pour laver des surfaces internes d?une enceinte
SG192745A1 (en) 2011-02-14 2013-09-30 Fraunhofer Ges Forschung Noise generation in audio codecs
ES2529025T3 (es) 2011-02-14 2015-02-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Aparato y método para procesar una señal de audio decodificada en un dominio espectral
WO2013075753A1 (en) 2011-11-25 2013-05-30 Huawei Technologies Co., Ltd. An apparatus and a method for encoding an input signal

Also Published As

Publication number Publication date
KR101643450B1 (ko) 2016-08-10
PL2676267T3 (pl) 2017-12-29
AU2012217184B2 (en) 2015-07-30
TR201903388T4 (tr) 2019-04-22
JP5800915B2 (ja) 2015-10-28
EP3239978A1 (en) 2017-11-01
AU2012217184A1 (en) 2013-09-19
ES2639646T3 (es) 2017-10-27
EP3239978B1 (en) 2018-12-26
AR085361A1 (es) 2013-09-25
KR20130133847A (ko) 2013-12-09
US20130339036A1 (en) 2013-12-19
CA2827156C (en) 2017-07-18
EP3471092B1 (en) 2020-07-08
RU2586597C2 (ru) 2016-06-10
US9595263B2 (en) 2017-03-14
MX2013009345A (es) 2013-10-01
HK1245987B (zh) 2020-01-03
JP2014510302A (ja) 2014-04-24
PL3239978T3 (pl) 2019-07-31
WO2012110416A1 (en) 2012-08-23
SG192747A1 (en) 2013-09-30
EP2676267A1 (en) 2013-12-25
CA2827156A1 (en) 2012-08-23
PT3239978T (pt) 2019-04-02
RU2013142068A (ru) 2015-03-27
BR112013020700A2 (pt) 2018-07-10
EP2676267B1 (en) 2017-07-19
PL3471092T3 (pl) 2020-12-28
CN103460284A (zh) 2013-12-18
EP3471092A1 (en) 2019-04-17
BR112013020700B1 (pt) 2021-07-13
ZA201306841B (en) 2014-05-28
CN103460284B (zh) 2016-05-18
ES2715191T3 (es) 2019-06-03

Similar Documents

Publication Publication Date Title
PT2676267T (pt) Codificação e descodificação de posições de pulso de faixas de um sinal de áudio
Dutta et al. A unified coded deep neural network training strategy based on generalized polydot codes
TWI488176B (zh) 音訊信號音軌脈衝位置之編碼與解碼技術
Raymond et al. A scalable successive-cancellation decoder for polar codes
ES2880779T3 (es) Método y aparato para la indexación y desindexación de cuantificación vectorial piramidal de vectores de muestra de audio/video
PT1719116E (pt) A comutação de acelp para o modo de codificação tcx
ES2704901T3 (es) Corrección de pérdida de trama por inyección de ruido ponderado
BRPI0909699B1 (pt) Métodos para codificação combinatória de baixa complexidade de sinais, codificador e decodificador
ES2821432T3 (es) Cuantificación de audio mediante indexación de vectores de complejidad reducida
ES2644131T3 (es) Predicción lineal basada en una codificación de audio utilizando un estimador mejorado de distibución de probabilidad
US20170250710A1 (en) Method and device for calculating a crc code in parallel
BR112015007137B1 (pt) Aparelho para codificar um sinal de fala que emprega acelp no domínio de autocorrelação
Lee et al. An efficient method of Huffman decoding for MPEG-2 AAC and its performance analysis
JP2020515117A (ja) 一般化ポーラ符号
US20110239098A1 (en) Detecting Data Error
ES2646021T3 (es) Método y aparato para codificación, procesamiento y decodificación de envolvente de señal de audio mediante modelado de una representación de suma acumulativa que emplea cuantificación de distribución y codificación
ES2821725T3 (es) Codificación y decodificación de posiciones de impulso de pistas de una señal de audio
ES2627410T3 (es) Aparato para codificar una señal de voz/sonido
Baudet et al. Partial enumeration of solutions traces for the problem of sorting by signed reversals
Lampe et al. Elementary properties of free extensions
Brodal et al. Integer representations towards efficient counting in the bit probe model
Schuster et al. A symbolic multilevel method with sparse submatrix representation for memory-speed-tradeoff
Mohammadi Combined scalar-vector quantization: a new spectral coding method for low rate speech coding
Castillo et al. Model Selection