BR122020009464A2 - codificadores de áudio, decodificadores de áudio, métodos e programas de computador que adaptam uma codificação e decodificação de bits menos significativos - Google Patents

codificadores de áudio, decodificadores de áudio, métodos e programas de computador que adaptam uma codificação e decodificação de bits menos significativos Download PDF

Info

Publication number
BR122020009464A2
BR122020009464A2 BR122020009464-8A BR122020009464A BR122020009464A2 BR 122020009464 A2 BR122020009464 A2 BR 122020009464A2 BR 122020009464 A BR122020009464 A BR 122020009464A BR 122020009464 A2 BR122020009464 A2 BR 122020009464A2
Authority
BR
Brazil
Prior art keywords
bits
significant bits
spectral values
encoded
spectral
Prior art date
Application number
BR122020009464-8A
Other languages
English (en)
Inventor
Emmanuel RAVELLI
Guillaume Fuchs
Markus Schnell
Adrian TOMASEK
Stefan Geyersberger
Original Assignee
Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
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-Gesellschaft zur Förderung der angewandten Forschung e.V. filed Critical Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
Publication of BR122020009464A2 publication Critical patent/BR122020009464A2/pt

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/002Dynamic bit allocation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/032Quantisation or dequantisation of spectral components
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/18Speech 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 spectral information of each sub-band
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3059Digital compression and data reduction techniques where the original information is represented by a subset or similar information, e.g. lossy compression
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3066Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction by means of a mask or a bit-map
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/60General implementation details not specific to a particular type of compression
    • H03M7/6005Decoder aspects
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/60General implementation details not specific to a particular type of compression
    • H03M7/6011Encoder aspects

Abstract

Trata-se de um decodificador de áudio para fornecer informações de áudio decodificadas com base em informações de áudio codificadas que é configurado para obter valores espectrais decodificados com base em informações codificadas que representam os valores espectrais. O decodificador de áudio é configurado para decodificar em conjunto dois ou mais bits mais significativos por valor espectral com base em respectivos códigos de símbolos para um conjunto de valores espectrais que usam uma decodificação aritmética, em que um respectivo código de símbolo representa dois ou mais bits mais significativos por valor espectral para um ou mais valores espectrais. O decodificador de áudio é configurado para decodificar um ou mais bits menos significativos associados com um ou mais dos valores espectrais que dependem de quantas informações de bits menos significativos estão disponíveis, de modo que um ou mais bits menos significativos associados com um ou mais dos valores espectrais são decodificados, enquanto bits menos significativos não são decodificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos são decodificados e sendo que compreendem mais bits que o um ou mais bits mais significativos. O decodificador de áudio é configurado para fornecer as informações de áudio decodificadas com uso dos valores espectrais. Modificações do decodificador de áudio são possíveis. Um codificador de áudio é também descrito.

Description

CODIFICADORES DE ÁUDIO, DECODIFICADORES DE ÁUDIO, MÉTODOS E PROGRAMAS DE COMPUTADOR QUE ADAPTAM UMA CODIFICAÇÃO E DECODIFICAÇÃO DE BITS MENOS SIGNIFICATIVOS Pedido Dividido do pedido de patente No. BR 11 2020 009325 4 depositado em 08/11/2018 CAMPO DA TÉCNICA
[001] Modalidades de acordo com a invenção referem-se a decodificadores de áudio para fornecer informações de áudio decodificadas com base em informações de áudio codificadas.
[002] Modalidades adicionais de acordo com a invenção referem-se a codificadores de áudio para fornecer informações de áudio codificadas com base em informações de entrada de áudio.
[003] Modalidades adicionais de acordo com a invenção referem-se a métodos para fornecer informações de áudio decodificadas com base em informações de áudio codificadas.
[004] Modalidades adicionais de acordo com a invenção referem-se a métodos para fornecer informações de áudio codificadas com base em informações de entrada de áudio.
[005] Modalidades adicionais de acordo com a invenção referem-se a respectivos programas de computador.
[006] Modalidades de acordo com a invenção referem-se a um truncamento melhorado de dados aritméticos de áudio codificado.
ANTECEDENTES DA INVENÇÃO
[007] No passado, muitos conceitos diferentes para a codificação e decodificação de conteúdo de áudio foram desenvolvidos.
[008] Por exemplo, o Novo Codec Bluetooth (NBC) é um codificador/decodificador de áudio que é muito similar a um codificador/decodificador de áudio TCX baseado em MDCT usado no padrão 3GPP EVS [1]. Ambos empregam quantização escalar e codificação aritmética baseada em contexto (conferir, por exemplo, referências [2] a [4]) para codificação dos dados MDCT.
[009] O quantizador escalar é um quantizador uniforme simples (com uma zona morta adicional) cujo tamanho de etapa é controlado por um ganho global único (que é, por exemplo, enviado para o decodificador como informação lateral). Esse ganho global controla tanto a distorção introduzida pelo quantizador escalar quanto também o número de bits consumidos pelo codificador aritmético. Quanto maior o ganho global, maior a distorção e menor o número de bits consumidos pelo codificador aritmético.
[010] Em EVS, como em muitos outros codificadores/decodificadores de comunicação, a taxa de bits de codificador/decodificador é constante, ou seja, existe um número limitado de bits (orçamento de bits) disponível para codificação dos dados de MDCT.
[011] Consequentemente, o codificador deve encontrar (ou tem que encontrar) um ganho global que não é muito baixo, caso contrário o número de bits consumidos pelo codificador aritmético iria exceder o orçamento de bits. Além disso, isso deveria (ou tem que) encontrar um ganho global que não é muito alto, caso contrário a distorção introduzida pela quantização seria maior, o que resultaria em qualidade perceptual pior do sinal de saída decodificado.
[012] Idealmente, o codificador deveria encontrar em todo quadro o ganho global ideal: aquele que dá distorções mínimas enquanto produz um número de bits abaixo do orçamento de bits.
[013] Esse objetivo pode, por exemplo, ser atingido com uso de uma abordagem iterativa também conhecida como circuito de taxa: a cada iteração do circuito, os dados de MDCT são requantizados, o número de bits consumidos pelo codificador aritmético é estimado e o ganho global é ajustado como uma função do número de bits e/ou da distorção.
[014] Um circuito de taxa é, entretanto, complexo de maneira computacional, e para poupar complexidade, normalmente um número pequeno de iterações é usado. Isso é particularmente relevante para codificadores/decodificadores de comunicação de potência muito baixa (por exemplo, o Novo Codec Bluetooth) que requerem complexidade computacional muito baixa. Então, na prática, um subganho global ideal é normalmente encontrado.
[015] Foi descoberto que em alguns casos, o ganho global encontrado é muito alto, o que resulta em um número de bits consumidos significativamente menor que o orçamento de bits. Nesse caso, existe um número de bits não usados. Esses bits podem na verdade ser usados por uma ferramenta adicional chamada “quantização/codificação residual” (que é, por exemplo, usada em EVS e NBC). Essa ferramenta refina os coeficientes quantizados diferentes de zero com uso de um bit por coeficiente, e ajuda a pegar uma distorção que não é muito alta mesmo quando o ganho global é muito alto.
[016] Ademais, foi descoberto que, em alguns outros casos, o ganho global encontrado é muito baixo, o que resulta em um número de bits consumidos que excede o orçamento de bits. Nesse caso, os dados quantizados não podem ser codificados por inteiro. Em outras palavras, uma porção dos dados deve ser deixada de fora para ficar dentro do orçamento de bits. Uma solução empregada no padrão EVS (e também atualmente em NBC) é truncar os coeficientes diferentes de zero de alta frequência, ao ajustá-los a zero. Visto que o codificador aritmético não codifica a porção de coeficientes zero de alta frequência (com uso de um último índice de coeficiente diferente de zero), essa abordagem permite poupar bits e se for suficiente coeficientes diferentes de zero de alta frequência são truncados, isso permite ficar dentro do orçamento de bits.
[017] Foi descoberto que essa abordagem produz bons resultados em baixas taxas de bits porque os coeficientes de alta frequência são menos importantes de maneira perceptual e eles podem ser substituídos por um ruído aleatório (com uso de uma ferramenta de enchimento de ruído, consultar, por exemplo, EVS [1]) sem uma perda significativa em qualidade perceptual.
[018] Entretanto, foi também descoberto que, em altas taxas de bits, essa abordagem pode degradar severamente o desempenho de codificador/decodificador.
[019] Em vista dessa situação, existe um desejo para ter um conceito que permite por uma implicação aprimorada entre qualidade de áudio, complexidade e taxa de bits.
SUMÁRIO DA INVENÇÃO
[020] Uma modalidade de acordo com a invenção cria um decodificador de áudio para fornecer informações de áudio decodificadas com base em informações de áudio codificadas. O decodificador de áudio é configurado para obter os valores espectrais decodificados com base em informações codificadas que representam esses valores espectrais. O decodificador de áudio é configurado para decodificar em conjunto dois ou mais bits mais significativos por valor espectral (por exemplo, por valor espectral quantizado) com base em respectivos códigos de símbolos para um conjunto de valores espectrais com uso de uma decodificação aritmética. Um respectivo código de símbolos representa dois ou mais bits mais significativos por valor espectral para um ou mais valores espectrais. O decodificador de áudio é configurado para decodificar um ou mais bits menos significativos associados com um ou mais dos valores espectrais que dependem de quantas informações de bits menos significativos estão disponíveis, de modo que um ou mais bits menos significativos associados com um ou mais dos valores espectrais (que podem, por exemplo, ser valores espectrais quantizados) sejam decodificados, enquanto bits menos significativos não são decodificados para um ou mais outros valores espectrais para os quais dois ou mais bits mais significativos foram decodificados e sendo que compreendem mais bits que os dois ou mais bits mais significativos. Ademais, o decodificador de áudio é configurado para fornecer as informações de áudio decodificadas com uso dos valores espectrais (decodificados).
[021] Esse decodificador de áudio permite por um conceito eficiente de codificação/decodificação que fornece uma boa implicação entre qualidade de áudio, complexidade e taxa de bits. Por exemplo, o decodificador de áudio pode lidar bem com casos em que um orçamento de bits é insuficiente para decodificar todos os valores espectrais (quantizados) no lado de um codificador de áudio sob uma dada restrição de orçamento de bits.
[022] O decodificador de áudio é baseado na constatação que, para um dado orçamento de bits, uma qualidade de áudio comparativamente boa pode ser atingida se um ou mais bits mais significativos são codificados (e decodificados) para muitos valores espectrais (ou até mesmo para todos os valores espectrais diferentes de zero) enquanto omitem a codificação (e a decodificação) dos bits menos significativos de alguns dos valores espectrais (quantizados). Em outras palavras, é a ideia chave da presente invenção que uma degradação de uma qualidade de áudio em um exemplo em que um orçamento de bits seja insuficiente (por exemplo, para uma codificação completa de valores espectrais quantizados) seja frequentemente menor se a codificação e decodificação de alguns bits menos significativos forem omitidas quando comparadas com uma solução em que uma codificação de valores espectrais completos for omitida. Formulado de maneira diferente, foi constatado que omitir uma codificação de bits menos significativos de muitos valores espectrais é tipicamente ainda uma melhor solução para reduzir uma demanda de bits (para manter dentro de um orçamento de bits) quando comparado com omitir completamente uma codificação de um número comparativamente menor de valores espectrais (mesmo se apenas valores espectrais em uma região de alta frequência fossem omitidos). Ao formular de maneira diferente, a presente invenção é baseada na constatação que omitir (seletivamente) uma decodificação de bits menos significativos para valores espectrais, para os quais o um ou mais bits mais significativos foram decodificados é uma boa maneira para reduzir uma demanda de bits que tipicamente traz menos distorções quando comparada com uma omissão da codificação e decodificação de valores espectrais em uma faixa de alta frequência.
[023] Consequentemente, o decodificador de áudio descrito neste documento tipicamente não traz severas degradações de relação sinal-ruído em quadros em que um orçamento de bits é insuficiente para uma codificação completa sem perdas de valores espectrais quantizados.
[024] Ademais, foi constatado que o conceito é particularmente eficiente em um exemplo em que dois ou mais bits mais significativos por valor espectral são codificados e decodificados em conjunto, porque nesse caso os bits mais significativos transportam informações suficientemente significativas para permitir uma boa representação de áudio mesmo no caso de os bits menos significativos não serem codificados e decodificados. Em outras palavras, ao pela decodificação em conjunto de dois ou mais bits mais significativos por valor espectral, pode ser garantido que não existem artefatos excessivos, que poderia ser causado, por exemplo, ao introduzir conteúdo de áudio codificado com menos de dois bits em uma região de alta frequência. Em outras palavras, foi constatado que o conceito mencionado no presente documento fornece uma boa compreensão entre taxa de bits, complexidade e qualidade de áudio.
[025] E m uma modalidade preferencial, o decodificador de áudio é configurado para mapear um símbolo de uma representação codificada aritmeticamente, que representa pelo menos dois bits mais significativos de pelo menos um valor espectral, nos pelo menos dois bits mais significativos do pelo menos um valor espectral. Consequentemente, pode ser atingido que os dois ou mais bits mais significativos sejam representados por um símbolo único da representação codificada aritmeticamente (que é parte das informações de áudio codificadas), que permite uma boa consideração de um contexto de codificação/decodificação e de dependências estatísticas entre valores espectrais adjacentes (quantizados).
[026] Em uma modalidade preferencial, a decodificação aritmética é configurada para determinar posições de bits (por exemplo, pesos de bits) dos pelo menos dois bits mais significativos (por exemplo, designados no presente documento como “numbits” e “numbits-1”) e para alocar o pelo menos dois bits mais significativos determinados por u símbolo da representação codificada aritmeticamente para as determinadas posições de bits. As posições de bits podem ser determinadas, por exemplo, com base em um número de assim chamados “símbolos de escape”, que podem também ser designados como “VAL_ESC”. Por exemplo, as posições de bits podem ser determinadas individualmente por diferentes símbolos da representação codificada aritmeticamente. Consequentemente, um peso numérico apropriado pode ser alocado para os bits mais significativos, e pode também ser constatado se um ou mais bits menos significativos e um ou mais bits intermediários (posições de bits dos quais estão entre o um ou mais bits menos significativos e os dois ou mais bits mais significativos) estão associados com um valor espectral. Assim, pode ser decidido se ainda deve haver uma decodificação de um ou mais bits menos significativos para os respectivos valores espectrais (e, opcionalmente, de um ou mais bits intermediários para o respectivo valor espectral). Além disso, ao usar esse conceito, é possível evitar uma codificação e decodificação de bits menos significativos para tais valores espectrais para os quais os dois ou mais bits mais significativos sejam suficientes para representar completamente o valor espectral. Isso é, por exemplo, verdadeiro para valores espectrais que se encontram dentro de uma faixa entre 0 e 3 (no caso de haver dois bits mais significativos).
[027] E m uma modalidade preferencial, o decodificador de áudio é configurado para decodificar, para todos os valores espectrais para os quais dois ou mais bits mais significativos foram decodificados e sendo que compreendem mais bits que os dois ou mais bits mais significativos e bits menos significativos, um ou mais bits intermediários, posições de bits dos quais estão entre os bits menos significativos e os dois ou mais bits mais significativos. Consequentemente, é possível decodificar todos os bits de uma representação de número binário de um valor espectral quantizado, exceto pelos bits menos significativos. Por exemplo, é possível decodificar todos os bits das representações de número binário (e possivelmente assinado) de todos os valores espectrais, com a exceção dos bits menos significativos, para todos os valores espectrais diferentes de zero. Portanto, uma boa representação do espectro pode ser obtida, em que é garantido que um erro máximo para cada valor espectral é limitado aos bits menos significativos, independente da pergunta se a representação codificada dos bits menos significativos para o respectivo valor espectral pode ser incluída na representação de áudio codificada devido às restrições de taxa de bits ou não.
[028] Em uma modalidade preferencial, o decodificador de áudio é configurado para decodificar, em uma primeira fase de decodificação (por exemplo, etapa 3 da decodificação), dois ou mais bits mais significativos por valores espectrais, e para todos os valores espectrais para os quais dois ou mais bits mais significativos são decodificados e sendo que compreendem mais bits que os dois ou mais bits mais significativos (que são decodificados em conjunto) e bits menos significativos, um ou mais bits intermediários, posições de bits dos quais estão ente os bits menos significativos e os dois ou mais bits mais significativos. Além disso, na primeira fase de decodificação, para todos os valores espectrais para os quais dois ou mais bits mais significativos são decodificados e para os quais os dois ou mais bits mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam sinais ou valor diferentes de zero que são decodificados. Além disso, o decodificador de áudio é configurado para omitir seletivamente, na primeira fase de decodificação, uma decodificação de um sinal para valores espectrais para os quais os dois ou mais bits mais significativos, e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor zero. Além disso, o decodificador de áudio é configurado para obter seletivamente, em uma segunda fase de decodificação (por exemplo, etapa 6 da decodificação) que segue a primeira fase de decodificação, informações de sinal para valores espectrais para os quais os dois ou mais bits mais significativos e quaisquer bits intermediários - na medida em que bits intermediários estejam presentes - indicam um valor zero e para os quais informações de bits menos significativos indicam um valor diferente de zero.
[029] Consequentemente, decodificação de sinal não é realizada na primeira fase se aqueles bits decodificados na primeira fase (a saber os dois ou mais bits mais significativos e quaisquer bits intermediários que possam estar presentes) indicam que um valor absoluto do valor espectral não é maior que uma contribuição de bits menos significativos. Portanto, a decodificação do sinal é adiada até que a decodificação real dos bits menos significativos. Tal procedimento é vantajoso, visto que isso pode evitar que um sinal seja decodificado "muito cedo” e em vão, que poderia ser o caso se os bits menos significativos que correspondem ao respectivo valor espectral não estiverem incluídos no fluxo de bits devido a uma exaustão de um orçamento de bits.
[030] Em uma modalidade preferencial, o decodificador de áudio é configurado para usar sequencialmente bits subsequentes de uma sequência de bits de informações de bits menos significativos (por exemplo, lsbs[]) para obter valores de bits menos significativos associados com os valores espectrais. Consequentemente, pode ser atingido que haja uma sequência contígua de bits que representa os bits menos significativos (quaisquer sinais, na medida em que for necessário). Ao encurtar essa sequência de bits (por exemplo, lsbs[]), uma taxa de bits necessária para a transmissão da representação de áudio codificado pode facilmente ser ajustada na lateral de um codificador de áudio, e o decodificador de áudio pode muito facilmente, e sem um mapeamento complexo de bits, adaptar para um ajuste da taxa de bits (ou para um comprimento ou lsbs[] variáveis).
[031] E m uma modalidade preferencial, o decodificador de áudio é configurado para usar um único bit (por exemplo, etapa 6, bit0) da sequência de bits de informações de bits menos significativos (por exemplo, lsbs[]) para respectivos valores espectrais para os quais os dois ou mais valores de bits mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor diferente de zero, em que o único bit da sequência de bits de informações de bits menos significativos é usado para obter um valor de bits menos significativos nesse caso. Além disso, o decodificador de áudio é configurado para usar um único bit (por exemplo, etapa6, bit0) da sequência de bits de informações de bits menos significativos para respectivos valores espectrais para os quais os dois ou mais bits mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor zero, e para os quais o único bit usado da sequência de bits de informações de bits menos significativos confirma o valor zero (por exemplo, valor "O” de bit 0 na etapa 6). Além disso, o decodificador de áudio é configurado para usar dois bits subsequentes (por exemplo, bit 0 e bit 1 na etapa 6) da sequência de bits de informações de bits menos significativos para respectivos valores espectrais para os quais os dois ou mais valores mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor zero, e para os quais um primeiro dos bits usados da sequência de bits de informações de bits menos significativos indica um desvio do valor zero por um valor de bits menos significativos (valor "1” de bit0 na etapa 6), em que um segundo dos bits usados (por exemplo, bit1 na etapa 6) da sequência de bits de informações de bits menos significativos determina um sinal do respectivo valor espectral.
[032] Ao usar tal mecanismo, uma eficiência alta de taxa de bits pode ser atingida. Existe apenas uma sequência contígua de bits (por exemplo, lsbs[]) para a codificação e decodificação dos bits menos significativos, em que essa uma sequência contígua de bits também contém seletivamente informações de sinal para tais valores espectrais que apenas desviam de um valor zero por um valor de bits menos significativos (ou seja, para os quais os dois ou mais bits mais significativos e quaisquer bits intermediários (na medida em que bits intermediários estejam presentes) indicam um valor zero).
[033] Em uma modalidade preferencial, o decodificador de áudio é configurado para decodificar bits menos significativos que iniciam de bits menos significativos associados com um valor espectral de menor frequência e que procedem para valores espectrais associados com frequências maiores de maneira frequente, de modo que valores espectrais (por exemplo, todos os valores espectrais que compreendem mais bits que os dois ou mais bits mais significativos) sejam refinados por informações de bits menos significativos em uma faixa de um valor espectral de menor frequência até um valor espectral para o qual uma última informação de bits menos significativos esteja disponível, e de modo que (por exemplo, todos) valores espectrais (por exemplo, até mesmo valores espectrais decodificados que compreendem mais bits que os dois ou mais bits mais significativos) que têm frequências associadas maiores que uma frequência associada com o valor espectral para o qual a última informação de bits menos significativos está disponível permanece não refinada. Em outras palavras, valores espectrais em uma faixa de frequência menor (do valor espectral de menor frequência até um valor espectral que tem associado a última informação de bits menos significativos) são refinados com uso de informações de bits menos significativos, enquanto valores espectrais associados com frequências maiores permanecem todos não refinados. Consequentemente, uma resolução na faixa de baixa frequência mais importante de maneira perceptual é aumentada com uso de refinamento de bits menos significativos, enquanto apenas os dois ou mais bits mais significativos (e bits intermediários, se disponíveis) são usados em uma faixa de frequência maior, que é menor importante de maneira perceptual. Consequentemente, a melhor impressão auditiva possível pode ser obtida com base na taxa de bits disponível, em que também existe um mecanismo simples para o qual valores espectrais de informações de bits menos significativos são fornecidos. Ademais, os valores espectrais podem ser refinados de um valor espectral de menor frequência até um valor espectral para o qual a última informação de bits menos significativos é associada.
[034] E m uma modalidade preferencial, o decodificador de áudio é configurado para ser alternável entre um primeiro modo, em que uma decodificação de valores espectrais em uma faixa de frequência maior é omitida (por exemplo, omitida totalmente) em resposta a uma sinalização do codificador e em que bits menos significativos são decodificados para todos os valores espectrais para os quais um ou mais bits mais significativos são decodificados e sendo que compreendem mais bits que os bits mais significativos, e um segundo modo, em que um ou mais bits menos significativos associados com um ou mais dos valores espectrais são decodificados, enquanto bits menos significativos não são decodificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos são decodificados e sendo que compreendem mais bits que os bits mais significativos.
[035] Em outras palavras, o decodificador de áudio é alternável entre dois modos, que usam mecanismos diferentes de maneira significativa para lidar com uma exaustão de um orçamento de bits.
[036] No primeiro modo, todos os valores espectrais em uma faixa de frequência menor são codificados (e decodificados) completamente de modo que incluem os bits menos significativos, enquanto todos os valores espectrais em uma faixa de frequência maior são totalmente descartados pelo codificador mesmo se eles forem diferentes de zero e consequentemente não decodificados na lateral do decodificador. No segundo modo, pelo menos os bits mais significativos são codificados para todos os valores espectrais diferentes de zero (e, portanto, também decodificados), mas os bits menos significativos são apenas codificados (e decodificados) se (ou enquanto) ainda há um orçamento de bits disponível.
[037] Entretanto, foi constatado que a possibilidade para alternar entre os dois modos diferentes permite o decodificador de áudio a adaptar para variar condições de transmissão. Por exemplo, foi constatado que o primeiro modo é algumas vezes mais vantajoso que o segundo modo, por exemplo, se existe apenas uma taxa de bits muito pequena disponível. Por outro lado, foi também constatado que o primeiro modo não fornece bons resultados na presença de uma taxa de bits alta de maneira suficiente, em que as representações binárias de muitos valores espectrais compreendem bits menos significativos além dos dois ou mais bits mais significativos. Consequentemente, o decodificador de áudio pode operar com bons resultados em circunstâncias em que existem apenas poucos bits menos significativos e em circunstâncias em que existe um número comparativamente maior de bits menos significativos (em que a operação no segundo modo é tipicamente problemática no primeiro caso, enquanto a operação no segundo modo é tipicamente muito vantajosa no segundo caso).
[038] Em uma modalidade preferencial, o decodificador de áudio é configurado para avaliar um sinalizador de fluxo de bits que é incluído na representação de áudio codificada para decidir se o codificador de áudio opera no primeiro modo ou no segundo modo. Consequentemente, alternância entre o primeiro modo e o segundo pode ser controlada por um codificador de áudio, que tipicamente compreende bom conhecimento sobre qual modo é mais vantajoso. Além disso, a complexidade do decodificador de áudio pode ser reduzida, porque o decodificador de áudio não precisa decidir por si próprio se usa o primeiro modo ou o segundo modo.
[039] Em outra modalidade, o decodificador de áudio é configurado para decodificar em conjunto dois ou mais bits mais significativos por valor espectral para pelo menos dois valores espectrais com base em respectivos códigos de símbolos, em que um respectivo código de símbolos representa dois ou mais bits mais significativos por valor espectral para pelo menos dois valores espectrais. Tal agrupamento de valores espectrais, em que dois ou mais valores espectrais são representados por um único símbolo da representação codificada aritmeticamente, é também particularmente eficiente, porque existe frequentemente apenas alguma correlação entre valores espectrais adjacentes, e porque não é necessário codificar individualmente a posição de bits para cada um de dois bits mais significativos. Entretanto, pode ocorrer naturalmente que os "bits mais significativos” de um dos valores espectrais sejam ambos "zero”, porque a posição de bits é tipicamente determinada pelo valor espectral que tem um valor absoluto maior.
[040] Uma modalidade de acordo com a invenção cria um decodificador de áudio para fornecer informações de áudio decodificadas com base em informações de áudio codificadas. O decodificador de áudio é configurado para obter valores espectrais decodificados com base em informações codificadas que representam os valores espectrais. O decodificador de áudio é configurado para decodificar um ou mais bits mais significativos com base em respectivos códigos de símbolos para uma pluralidade de valores espectrais, e para decodificar um ou mais bits menos significativos para um ou mais dos valores espectrais. Em particular, o decodificador de áudio é configurado para ser alternável entre um primeiro modo, em que uma decodificação de valores espectrais em uma faixa de frequência maior é omitida (por exemplo, omitida totalmente) em resposta a uma sinalização do codificador e em que bits menos significativos são decodificados para todos os valores espectrais para os quais um ou mais bits mais significativos são decodificados (ou foram decodificados) e sendo que compreendem mais bits que os bits mais significativos, e um segundo modo em que um ou mais bits menos significativos associados com um ou mais dos valores espectrais são decodificados, enquanto bits menos significativos não são decodificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos são decodificados (ou foram decodificados) e sendo que compreendem mais bits que o um ou mais bits mais significativos. Ademais, o decodificador de áudio é configurado para fornecer as informações de áudio decodificadas com uso dos valores espectrais.
[041] Essa modalidade é baseada na ideia de que o primeiro modo ou o segundo modo podem ser mais vantajosos em termos de uma implicância entre complexidade, taxa de bits e qualidade de áudio que dependem das circunstâncias. O decodificador de áudio pode lidar com duas abordagens diferentes para lidar com uma exaustão de um orçamento de bits. Ao operar no primeiro modo, o decodificador de áudio pode lidar com situações em que um codificador de áudio omite uma codificação de valores espectrais na faixa de frequência maior, enquanto valores espectrais em uma faixa de frequência baixa são todos codificados completamente (de modo que incluem bits menos significativos). No segundo modo, o decodificador de áudio lida com informações de áudio codificadas em que bits menos significativos são omitidos seletivamente para alguns dos valores espectrais, apesar de o um ou mais bits mais significativos serem codificados para todos os valores espectrais. Conforme já mencionado acima, ambas as abordagens têm suas vantagens que dependem de alguns outros parâmetros de sistema (como, por exemplo, a taxa de bits disponível), e o decodificador de áudio descrito neste documento pode assim fornecer bons resultados em condições variáveis.
[042] Esse decodificador de áudio pode também ser suplementado por qualquer um dos recursos e funcionalidades do decodificador de áudio mencionado acima.
[043] E m uma modalidade preferencial, o decodificador de áudio é configurado para obter bits intermediários, posições de bits dos quais estão entre os bits menos significativos e o um ou mais bits mais significativos, e os bits menos significativos associados com um dado valor espectral de uma sequência contígua de bits no primeiro modo. Além disso, o decodificador de áudio é configurado para obter bits intermediários, posições de bits dos quais estão entre os bits menos significativos e o um ou mais bits mais significativos, e os bits menos significativos associados com um dado valor espectral de uma sequência separada de bits ou de localizações de bits separadas e não contíguas de uma sequência de bits no segundo modo.
[044] Em outras palavras, no primeiro modo, pode haver uma única sequência contígua de bits que codifica tanto os bits intermediários (na medida em que bits intermediários estejam presentes) quanto os bits menos significativos. Essa sequência contígua de bits, que compreende tanto a informação sobre os bits intermediários quanto as informações sobre os bits menos significativos (mas que tipicamente não compreendem informações sobre o um ou mais bits mais significativos) pode facilmente ser encurtada no caso de um orçamento de taxa de bits ser reduzido. Por outro lado, no segundo modo, informações que representam os bits menos significativos e as informações que representam os bits intermediários são contidas em sequências separadas de bits ou em subsequências separadas de uma sequência de bits. Consequentemente, há uma sequência de bits que obtém as informações sobre os bits intermediários (e, opcionalmente, informações de sinal), e há uma sequência que compreende informações sobre os bits menos significativos (e, opcionalmente, sobre os sinais de valores que são muito próximos de zero). Consequentemente, visto que as informações sobre os bits menos significativos estão em uma sequência separada ao operar no segundo modo, é fácil remover ou encurtar a sequência que compreende os bits menos significativos, para desse modo, reduzir a taxa de bits necessária. O decodificador de áudio pode facilmente adaptar para um comprimento variável da sequência que compreende os bits menos significativos em que o refinamento de bits menos significativos de valores espectrais é aplicado a mais ou menos valores espectrais, que dependem de quantos bits estão contidos na sequência que representa os bits menos significativos.
[045] Uma modalidade de acordo com a invenção cria um codificador de áudio para fornecer informações de áudio codificadas com base em informações de entrada de áudio. O codificador de áudio é configurado para obter valores espectrais que representam um conteúdo de áudio das informações de entrada de áudio. O codificador de áudio é também configurado para codificar pelo menos uma pluralidade dos valores espectrais, para obter informações codificadas que representam os valores espectrais (que podem ser uma parte das informações de áudio codificadas). Além disso, o codificador de áudio é configurado para codificar em conjunto dois ou mais bits mais significativos por valor espectral, para obter respectivos códigos de símbolos para um conjunto de valores espectrais com uso de uma codificação aritmética. Um respectivo código de símbolos pode representar dois ou mais bits mais significativos por valor espectral para um ou mais valores espectrais.
[046] O decodificador de áudio é também configurado para codificar um ou mais bits menos significativos associados com um ou mais dos valores espectrais que dependem de um orçamento disponível de bits, de modo que um ou mais bits menos significativos associados com um ou mais dos valores espectrais sejam codificados, enquanto bits menos significativos não são codificados para um ou mais outros valores espectrais para os quais dois ou mais bits mais significativos são decodificados e sendo que compreendem mais bits que os dois ou mais bits mais significativos. Além disso, o codificador de áudio é configurado para fornecer as informações de áudio codificadas com uso das informações codificadas que representam os valores espectrais.
[047] Esse codificador de áudio é baseado na ideia que uma boa implicância entre complexidade, taxa de bits e qualidade de áudio pode ser atingida ao omitir seletivamente uma codificação de um ou mais bits menos significativos para valores espectrais para os quais dois ou mais bits mais significativos são decodificados com uso de uma codificação aritmética. Foi constatado que omitir a codificação de um ou mais bits menos significativos não é particularmente prejudicial no caso de existirem pelo menos dois bits mais significativos que são codificados.
[048] Em particular, foi constatado que omitir a codificação dos bits menos significativos para um ou mais valores espectrais (quantizados) para os quais bits mais significativos são codificados causa uma degradação muito menor de uma qualidade de áudio quando comparado com omitir totalmente uma codificação de alguns valores espectrais para permanecer dentro de um orçamento de bits.
[049] Em uma modalidade preferencial, a codificação aritmética é configurada para determinar posições de bits (por exemplo, pesos de bits) dos pelo menos dois bits mais significativos (por exemplo, numbits e numbits-1), por exemplo, individualmente para diferentes símbolos da representação codificada aritmeticamente, e para inclui na representação codificada aritmeticamente informações, por exemplo, uma sequência de escape que compreende um ou mais símbolos “VAL_ESC”, que descrevem as posições de bits. Consequentemente, as posições de bits ou pesos de bits dos dois ou mais bits mais significativos podem ser adaptadas para os valores espectrais reais, em que os bits mais significativos podem ter um peso de bits maior para valores espectrais comparativamente grandes e em que os bits mais significativos podem ter um peso de bits comparativamente pequeno para valores espectrais comparativamente menores. Consequentemente, alguns valores espectrais quantizados podem ser codificados totalmente com uso dos dois ou mais bits mais significativos, em que não existem bits menos significativos (ou bits intermediários) remanescentes. Em contraste, outros valores espectrais comparativamente maiores podem ser codificados com uso de dois ou mais bits mais significativos e com uso de pelo menos um bit menos significativo. Para tais valores espectrais comparativamente grandes para os quais existe pelo menos um bit menos significativo, além dos dois ou mais bits mais significativos, o codificador pode decidir de maneira flexível se codifica os bits menos significativos ou não, de modo que depende se um orçamento disponível de bits está exausto ou não. Entretanto, quanto maior a resolução de quantização, maior o número de valores espectrais que compreendem um ou mais bits menos significativos, além dos dois ou mais bits mais significativos. Consequentemente, uma possibilidade para poupar bits por não codificação dos bits menos significativos é particularmente alta para quantização fina.
[050] Em uma modalidade preferencial, o codificador de áudio é configurado para mapear pelo menos dois bits mais significativos do pelo menos um valor espectral para um símbolo da representação codificada aritmeticamente, que representa o pelo menos dois bits mais significativos do pelo menos um valor espectral. Codificação em conjunto de dois ou mais bits mais significativos com uso de um símbolo de uma representação codificada aritmeticamente constatou ser particularmente eficiente, visto que correlações entre bits mais significativos de valores espectrais adjacentes podem ser exploradas, por exemplo, ao determinar um contexto para a codificação aritmética.
[051] E m uma modalidade preferencial, o codificador de áudio é configurado para codificar, para todos os valores espectrais para os quais dois ou mais bits mais significativos são codificados e sendo que compreendem mais bits que os dois ou mais bits mais significativos e os bits menos significativos, um ou mais bits intermediários, posições de bits dos quais estão entre os bits menos significativos e os dois ou mais bits mais significativos. Consequentemente, todos os valores espectrais para os quais dois ou mais bits mais significativos estão codificados são na verdade codificados com uma resolução boa. Para tais valores espectrais, todos os bits exceto pelos bits menos significativos são sempre codificados, o que traz uma resolução boa e tem o efeito que apenas os bits menos significativos são afetados no caso de um orçamento de bits estar exausto. Assim, uma impressão auditiva muito boa pode ser mantida.
[052] E m uma modalidade preferencial, o codificador de áudio é configurado para codificar, em uma primeira fase de codificação, dois ou mais bits mais significativos por valores espectrais e para também codificar, na primeira fase de codificação, para valores espectrais para os quais dois ou mais bits mais significativos são codificados e sendo que compreendem mais bits que os dois ou mais bits mais significativos (que são codificados em conjunto) e bits menos significativos, um ou mais bits intermediários, posições de bits dos quais estão entre os bits menos significativos e os dois ou mais bits mais significativos. Além disso, o codificador é configurado para codificar, na primeira fase de codificação, sinais para todos os valores espectrais para os quais dois ou mais bits mais significativos são codificados e para os quais os dois ou mais bits mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor diferente de zero. Entretanto, o codificador de áudio é configurado para omitir seletivamente, na primeira fase de codificação, uma codificação de um sinal para valores espectrais para os quais os dois ou mais valores mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor zero. Consequentemente, na primeira fase de codificação, os bits mais significativos e os bits intermediários (na medida em que bits intermediários estejam presentes entre os bits mais significativos e os bits menos significativos) são codificados. Entretanto, na primeira fase de codificação, sinais são apenas codificados se os dois ou mais bits mais significativos e os bits intermediários indicam um valor diferente de zero. Em outras palavras, na primeira fase de codificação, sinais não são codificados caso os valores espectrais sejam tão pequenos que eles diferem de zero apenas por um valor de bits menos significativos (que é o caso se o peso de bits dos dois ou mais bits mais significativos for escolhido de modo que os bits mais significativos sejam todos zero, o que pode, por exemplo, acontecer se os pesos de bits de um dado valor espectral forem afetados por um ou mais valores espectrais adjacentes que são maiores que o dado valor espectral).
[053] Além disso, o codificador de áudio é configurado para codificar seletivamente, em uma segunda fase de codificação que segue a fase de codificação, informações de sinal para valores espectrais para os quais os dois ou mais bits mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor zero e para os quais informações de bits menos significativos indicam um valor diferente de zero. Em outras palavras, para valores espectrais muito pequenos, que diferem de zero apenas por um valor de bits menos significativos, o sinal é apenas codificado na segunda fase de codificação, em que uma decisão de se a segunda fase de codificação é na verdade executada (ou completada) para um dado valor espectral (ou seja, se as informações de bits menos significativos são incluídas nas informações de áudio codificadas) é dependente do orçamento de bits. Assim, a primeira fase de codificação é aerodinâmica, e as informações de sinal são apenas codificadas (por exemplo, incluídas nas informações de áudio codificadas) na segunda fase de codificação, a menos que já esteja claro a partir da codificação dos bits mais significativos e quaisquer bits intermediários (na medida em que existem quaisquer bits intermediários) que informações de sinal são necessárias em qualquer caso. A codificação de informações desnecessárias é evitada e a eficiência é aumentada, visto que não é claro a partir do começo para os quais valores espectrais da segunda fase de codificação seriam realizados. A decisão final se a segunda fase de codificação será realizada pode apenas ser feita quando se sabe quantos bits não necessários para a decodificação dos bits mais significativos e quaisquer bits intermediários, e quantos bits já foram usados pela codificação de outros bits menos significativos.
[054] Em uma modalidade preferencial, o codificador de áudio é configurado para apenas incluir informações de sinal para a representação de áudio codificado para valores espectrais que apenas diferem de zero por bits menos significativos se os bits menos significativos de tais valores espectrais forem na verdade codificados (incluídos na representação de áudio codificado). Consequentemente, uma inclusão de informações desnecessárias para as informações de áudio codificadas (ou representação de áudio codificado) pode ser evitada. Em outras palavras, informações de sinal são incluídas para todos os valores espectrais que são diferentes de zero mesmo sem considerar os bits menos significativos. Para valores espectrais que são diferentes de zero apenas ao considerar os bits menos significativos, as informações de sinal são apenas incluídas na representação de áudio codificado se as informações de bits menos significativos forem na verdade incluídas na representação de áudio codificado.
[055] Em uma modalidade preferencial, o codificador de áudio é configurado para fornecer sequencialmente bits subsequentes de uma sequência de bits de informações de bits menos significativos para codificar os valores de bits menos significativos associados com os valores espectrais. Consequentemente, uma sequência contígua de bits ou fluxo de bits é fornecida que apenas compreende as informações de bits menos significativos e possivelmente algumas informações de sinal para tais valores espectrais que são diferentes de zero apenas ao considerar os bits menos significativos. Consequentemente, existe uma sequência separada de informações de bits menos significativos (de modo que inclui informações associadas de sinal), que pode ser encurtada ou omitida sem afetar a codificação dos bits mais significativos e dos bits intermediários (e de quaisquer informações de sinal que são relevantes ao deixar os bits menos significativos não considerados).
[056] Em uma modalidade preferencial, o codificador de áudio é configurado para fornecer um único bit da sequência de bits de informações de bits menos significativos para respectivos valores espectrais para os quais os dois ou mais valores de bits mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor diferente de zero, em que o único bit usado da sequência de bits de informações de bits menos significativos é usado para codificar um valor de bits menos significativos. Além disso, o codificador de áudio é configurado para fornecer um único bit da sequência de bits de informações de bits menos significativos para respectivos valores espectrais para os quais os dois ou mais valores mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor zero e para os quais o único bit fornecido da sequência de bits de informações de bits menos significativos confirma o valor zero. Além disso, o codificador de áudio é configurado para fornecer dois bits subsequentes da sequência de bits de informações de bits menos significativos para respectivos valores espectrais para os quais os dois ou mais bits mais significativos, e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor zero e para os quais um primeiro dos bits fornecidos da sequência de bits de informações de bits menos significativos indica desvio do valor zero por um valor de bits menos significativos, em que um segundo dos bits fornecidos da sequência de bits de informações de bits menos significativos codifica um sinal do respectivo valor espectral. Em outras palavras, a sequência de bits de informações de bits menos significativos tipicamente compreende um bit por valores espectrais, mas compreende dois bits por valor espectral se o valor espectral desvia de um valor zero apenas por um valor de bits menos significativos. No último caso, as informações de sinal são incluídas na sequência de bits de informações de bits menos significativos, porque são apenas necessárias se a respectiva parte das informações de bits menos significativos for na verdade codificada ou for na verdade transmitida para um decodificador de áudio, ou for na verdade avaliada por um decodificador de áudio.
[057] E m outras palavras, o sinal é incluído seletivamente na sequência de bits de informações de bits menos significativos para valores espectrais para os quais os bits mais significativos e bits intermediários (se presentes) indicam um valor zero e para os quais os bits menos significativos indicam um valor diferente de zero (que desvia de um valor zero apenas por um valor de bits menos significativos).
[058] Em uma modalidade preferencial, o codificador de áudio é configurado para codificar os bits menos significativos a partir de bits menos significativos associados com um valor espectral de menor frequência e que procedem para valores espectrais associados com frequências maiores de maneira frequente. Consequentemente, informações codificadas para refinar valores espectrais (por exemplo, para refinar todos os valores espectrais que compreendem mais bits que o um ou mais bits mais significativos) por informações de bits menos significativos são fornecidas em uma faixa de um valor espectral de menor frequência até um valor espectral para o qual as "últimas” informações de bits menos significativos são fornecidas. Além disso, informações codificadas para refinar valores espectrais por informações de bits menos significativos não são fornecidas para (todos) os valores espectrais (mesmo para valores espectrais codificados que compreendem mais bits que os dois ou mais bits mais significativos) que têm frequências associadas maiores que uma frequência associada com um valor espectral para o qual as últimas informações de bits menos significativos são fornecidas. Formulado de maneira diferente, bits não usados do orçamento de bits são usados para refinar valores espectrais em uma região de baixa frequência por informações de bits menos significativos, até que o orçamento de bits esteja exausto. Valores espectrais em uma região de maior frequência não são refinados pelas informações de bits menos significativos se o orçamento de bits estiver exausto. Tal procedimento traz que valores espectrais em uma porção de menor frequência são preferenciais sobre valores espectrais em uma porção de maior frequência ao fornecer informações de bits menos significativos. Isso é um acordo com requerimentos psicoacústicos, visto que uma impressão auditiva seria menos distorcida por imprecisões em uma região de maior frequência quando comparada com imprecisões em uma região de menor frequência. Consequentemente, o codificador de áudio pode decidir de maneira flexível, com base no orçamento de bits, até qual frequência (valor espectral para o qual as últimas informações de bits menos significativos são fornecidas) há um refinamento de valores espectrais que usam as informações de bits menos significativos que dependem do orçamento de bits.
[059] Em uma modalidade preferencial, o codificador de áudio é configurado para ser alternável entre um primeiro modo, em que uma codificação de valores espectrais diferentes de zero em uma faixa de frequência maior é (por exemplo, completamente) omitida no caso de um orçamento disponível de bits ser usado (exausto) por uma codificação de valores espectrais em uma faixa de frequência menor e em que bits menos significativos são codificados para todos os valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que os bits mais significativos, e um segundo modo em que um ou mais bits menos significativos associados com um ou mais dos valores espectrais são codificados, enquanto bits menos significativos não são codificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que os bits mais significativos.
[060] Conforme já mencionado acima, ser capaz de alternar entre tais modos permite uma codificação eficiente em ambientes diferentes e em diferentes restrições de taxa de bits. No primeiro modo, o número de valores espectrais codificados pode ser variado, e uma codificação de valores espectrais diferentes de zero em uma faixa de frequência maior pode ser omitida em resposta a uma exaustão de um orçamento de bits. Consequentemente, uma impressão auditiva em uma faixa de alta frequência é degradada, mas isso pode ser aceitável em algumas circunstâncias, por exemplo, em ambientes de baixa taxa de bits. Por outro lado, no segundo modo, o codificador de áudio pode variar para quantos dos valores espectrais de bits menos significativos são codificados o que depende do orçamento de bits, enquanto pelo menos bits mais significativos são codificados para todos os valores espectrais (mesmo em uma região de alta frequência). Assim, no segundo modo, a precisão de codificação pode ser reduzida até para frequências menores em alguns casos, enquanto não há omissão total de valores espectrais diferentes de zero (quantizados) na região de alta frequência. O segundo modo de operação pode, por exemplo, resultar em uma impressão auditiva melhorada em condições de maior taxa de bits, que iria sofrer de uma degradação significativa se valores espectrais diferentes de zero na região de alta frequência fossem totalmente omitidos. Assim, o codificador de áudio pode adaptar para diferentes situações e requerimentos de taxa de bits em uma maneira flexível ao ser alternável entre o primeiro modo e o segundo modo.
[061] Em uma modalidade preferencial, o codificador de áudio é configurado para fornecer um sinalizador de fluxo de bits que é incluído nas informações de áudio codificadas (ou representação de áudio codificado) para indicar se o codificador de áudio opera no primeiro modo ou no segundo modo. Consequentemente, é fácil para um decodificador de áudio reconhecer se um primeiro modo de decodificação ou um segundo modo de decodificação deveria ser usado. O uso de um sinalizador de fluxo de bits para tal sinal é razoável, visto que o codificador de áudio tipicamente tem mais conhecimento sobre as circunstâncias específicas que o decodificador de áudio.
[062] Em uma modalidade preferencial, o codificador de áudio pode ser configurado para codificar em conjunto dois ou mais bits mais significativos por valor espectral para pelo menos dois valores espectrais com uso de respectivos códigos de símbolos. Consequentemente, um respectivo código de símbolos pode representar dois ou mais bits mais significativos por valor espectral para pelo menos dois valores espectrais. Foi constatado que tal codificação é particularmente eficiente, visto que dependências e correlações entre valores espectrais adjacentes de maneira espectral podem ser exploradas. Além disso, o peso de bits dos bits mais significativos pode ser determinado com base de ambos os valores espectrais, em que o valor espectral que tem o maior valor absoluto pode decidir no peso comum de bits dos bits mais significativos para ambos os valores espectrais. Consequentemente, uma sinalização auxiliar para sinalizar o peso de bits dos bits mais significativos pode ser reduzida, porque pode ser sinalizada em conjunto para dois ou mais valores espectrais.
[063] Em uma modalidade preferencial, o codificador de áudio é configurado para determinar um valor espectral real diferente de zero de frequência mais alta (por exemplo, sem truncar valores espectrais) e para codificar pelo menos dois ou mais bits mais significativos de todos os valores espectrais diferentes de zero (quantizados) de todos os grupos diferentes de zero de valores espectrais (quantizados). Consequentemente, pode ser garantido que pelo menos bits mais significativos de todos os valores espectrais diferentes de zero (quantizados) sejam codificados, o que tipicamente resulta em boa impressão auditiva.
[064] Em uma modalidade preferencial, o codificador de áudio é configurado para codificar todos os bits exceto por bits menos significativos para todos os valores espectrais diferentes de zero (quantizados). Ademais, o codificador de áudio é configurado para codificar bits menos significativos para valores espectrais até que um orçamento de bits seja exausto (por exemplo, que começa com um valor espectral de menor frequência e procede para valores espectrais de maior frequência). Consequentemente, uma boa impressão auditiva pode ser atingida e apenas um número variável de bits menos significativos será pulado na codificação, a depender do orçamento de bits.
[065] Em uma modalidade preferencial, o codificador de áudio é configurado para obter informações de ganho global que determinam etapas de quantização de uma quantização de valores espectrais, e que determinam uma demanda de bits para a codificação dos valores espectrais quantizados. Foi constatado que o uso de tais informações de ganho (global) podem ser úteis para ajustar as etapas de quantização. Entretanto, foi também reconhecido que não é facilmente possível ajustar uma demanda de bits ao usar informações de ganho global. Consequentemente, o conceito de omitir seletivamente uma codificação de bits menos significativos para alguns valores espectrais pode ser usado para compensar imprecisões no ajuste da demanda de bits que são causadas pelo uso das informações de ganho global. Entretanto, foi constatado que a combinação do uso das informações de ganho global com o conceito de codificação descrito no presente documento cria um sistema que tem uma complexidade computacional comparativamente baixa e ainda permite uma boa implicação entre qualidade de áudio e taxa de bits. Em particular, uma dada taxa fixa de bits pode ser completamente utilizada mesmo com um ajuste de complexidade baixa das informações de ganho global ao decidir de maneira flexível quantos bits menos significativos devem ser codificados.
[066] Uma modalidade de acordo com a invenção cria um codificador de áudio para fornecer informações de áudio codificadas com base em informações de entrada de áudio. O codificador de áudio é configurado para obter valores espectrais que representam um conteúdo de áudio das informações de entrada de áudio. O codificador de áudio é configurado para codificar pelo menos uma pluralidade dos valores espectrais, para obter informações codificadas que representam os valores espectrais. O codificador de áudio é configurado para codificar um ou mais bits mais significativos com uso de respectivos códigos de símbolos para uma pluralidade dos valores espectrais, e para codificar um ou mais bits menos significativos para um ou mais dos valores espectrais, em que um respectivo código de símbolos representa um ou mais valores de bits mais significativos para um ou mais valores espectrais. O codificador de áudio é configurado para ser alternável entre um primeiro modo em que uma codificação de valores espectrais diferentes de zero em uma faixa de frequência maior é (por exemplo, totalmente) omitida no caso de um orçamento disponível de bits ser usado (por exemplo, exausto) por valores espectrais codificados em uma faixa de frequência menor e em que bits menos significativos são codificados para todos os valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que os bits mais significativos, e um segundo modo em que um ou mais bits menos significativos associados com um ou mais dos valores espectrais são codificados, enquanto bits menos significativos não são codificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que os bits mais significativos. O codificador de áudio é configurado para fornecer as informações de áudio codificadas com uso das informações codificadas que representam os valores espectrais.
[067] Esse codificador de áudio é baseado nas considerações mencionadas acima para o codificador de áudio similar e também para o decodificador de áudio similar. Em particular, enquanto é alternável entre o primeiro modo e o segundo modo, o codificador de áudio pode adaptar para diferentes situações de codificação e requerimentos de taxa de bits.
[068] Em uma modalidade preferencial, o codificador de áudio é configurado para codificar um ou mais bits mais significativos de todos os valores espectrais diferentes de zero ou de todos os grupos diferentes de zero de valores espectrais no segundo modo. Consequentemente, uma boa impressão auditiva pode ser atingida.
[069] Em uma modalidade preferencial, o codificador de áudio é configurado para limitar, ao operar no primeiro modo, uma faixa de frequência para a qual os valores espectrais são codificados, no caso de um orçamento de bits ser insuficiente, de modo que um ou mais valores espectrais (por exemplo, em uma faixa de alta frequência) são deixados não considerados na codificação de valores espectrais. Assim, uma limitação seletiva da faixa de frequência, que depende de um orçamento de bits, é usada no primeiro modo, em que a limitação da faixa de frequência ajuda a poupar bits.
[070] E m uma modalidade preferencial, o codificador de áudio é configurado para determinar, ao operar no primeiro modo, um valor de frequência máxima e para codificar, ao operar no primeiro modo, valores espectrais até a frequência máxima e para deixar, ao operar no primeiro modo, valores espectrais acima da frequência máxima não codificada mesmo se os valores espectrais forem diferentes de zero (ou tiver bits mais significativos diferentes de zero). Além disso, o codificador de áudio é configurado para selecionar, ao operar no primeiro modo, o valor de frequência máxima que depende de uma computação ou estimativa de uma demanda de bits para codificação de todos os valores espectrais, de modo que um número de valores espectrais a ser codificado é reduzido se a demanda de bits computada ou estimada iria exceder um orçamento de bits. Além disso, o codificador de áudio é configurado para determinar, ao operar no segundo modo, o valor de frequência máxima (por exemplo, para ser igual a um valor real de frequência máxima) e para codificar, ao operar no segundo modo, valores espectrais até a frequência máxima e para deixar, ao operar no segundo modo, valores espectrais acima da frequência máxima não codificados. Ao operar no segundo modo, o valor de frequência máxima é selecionado de modo que pelo menos um ou mais bits mais significativos de todos os valores espectrais diferentes de zero ou de todos os grupos de valores espectrais diferentes de zero sejam codificados e de modo que pelo muitos valores espectrais de valor zero sejam deixados não codificados. Em outras palavras, o codificador de áudio usa diferentes critérios para a seleção do valor de frequência máxima nos diferentes modos. No primeiro modo, o valor de frequência máxima é escolhido a depender da demanda de bits, em que valores espectrais diferentes de zero (quantizados) são deixados não codificados no caso de o orçamento de bits ser muito pequeno. Por outro lado, no segundo modo, o valor de frequência máxima é escolhido de modo que para todos os valores espectrais quantizados a um valor diferente de zero pelo menos o um ou mais bits mais significativos sejam codificados. Assim, diferentes conceitos são usados para lidar com uma exaustão de um orçamento de bits. No primeiro modo, uma exaustão de um orçamento de bits é tratada ao reduzir o valor de frequência máxima. No segundo modo, uma exaustão de um orçamento de bits é tratada ao omitir a codificação de valores menos significativos de um ou mais valores espectrais para os quais os bits mais significativos são codificados.
[071] E m uma modalidade preferencial, o codificador de áudio é configurado para incluir informações que descrevem a frequência máxima para as informações de áudio codificadas. Consequentemente, um decodificador de áudio sabe quantos valores espectrais devem ser codificados. As informações que descrevem a frequência máxima podem ser usadas tanto para uma limitação do número de valores espectrais codificados (e decodificados) devido a uma exaustão de um orçamento de bits quanto também para sinalizar que todos os valores espectrais acima da frequência máxima são are (por exemplo, zero na verdade mesmo sem truncamento).
[072] E m uma modalidade preferencial, o codificador de áudio é configurado para tomar uma decisão de modo se deve usar o primeiro modo ou o segundo modo que depende de uma taxa disponível de bits (por exemplo, de modo que o primeiro modo é usado para taxas de bits comparativamente menores e de modo que o segundo modo é usado para taxas de bits comparativamente maiores).
[073] Tal mecanismo é útil, visto que o segundo modo é mais adequado para lidar com uma exaustão de um orçamento de bits no caso de taxas de bits maiores. Em contraste, o primeiro modo algumas vezes traz melhores resultados que o segundo modo no caso de taxas de bits comparativamente baixas.
[074] E m outra modalidade preferencial, o codificador de áudio é configurado para tomar uma decisão se deve usar o primeiro modo ou o segundo modo que depende de informações de um número de valores espectrais de grupos de valores espectrais que compreendem, além de um ou mais bits mais significativos codificados em uma etapa de codificação de bits mais significativos, um ou mais bits menos significativos, uma codificação da qual pode seletivamente ser omitida a depender de uma demanda de bits e um orçamento de bits. Tal conceito é útil visto que o segundo modo é mais adequado para casos em que existe (após a quantização) um grande número de bits menos significativos. Tal grande número de bits menos significativos está, por exemplo, presente no caso de uma grande taxa de bits, em que uma codificação pode ser feita sem uma resolução alta (e em que uma quantização fina pode ser usada).
[075] E m uma modalidade preferencial, o codificador de áudio é configurado para incluir um sinalizador de fluxo de bits nas informações de áudio codificadas que indicam se o codificador de áudio opera no primeiro modo ou no segundo modo. Consequentemente, um decodificador de áudio pode ser informado qual modo de decodificação usar.
[076] E m uma modalidade preferencial, o codificador de áudio é configurado para codificar bits intermediários, posições de bits dos quais estão entre os bits menos significativos e o um ou mais bits mais significativos, e bits menos significativos associados com um dado valor espectral em uma sequência contígua de bits no primeiro modo. Além disso, o codificador de áudio é configurado para codificar bits intermediários, posições de bits dos quais estão entre os bits menos significativos e o um ou mais bits mais significativos, e os bits menos significativos associados com um dado valor espectral em sequências separadas de bits ou em localizações de bits separadas e não contíguas (ou fluxo de porções de bits) de uma sequência de bits no segundo modo. Consequentemente, ao operar no primeiro modo, existe uma sequência contígua de bits que representa tanto bits intermediários quanto os bits menos significativos. Em contraste, ao operar no segundo modo, bits intermediários e bits menos significativos são fornecidos em sequências separadas (ou em porções separadas de uma sequência comum) que permitem um encurtamento simples da sequência que representa os bits menos significativos. Consequentemente, uma adaptação para o orçamento de bits é facilmente possível, mesmo após a codificação ser completada. Isso facilita adaptação para o orçamento de bits.
[077] E m uma modalidade preferencial, o codificador de áudio é configurado para codificar, ao operar no primeiro modo, informações de sinal associadas com um valor espectral em uma sequência de bits que é associada com bits intermediários, posições de bits dos quais estão entre os bits menos significativos e o um ou mais bits mais significativos, e bits menos significativos. Ademais, o codificador de áudio é configurado para codificar seletivamente, ao operar no segundo modo, informações de sinal associadas com um valor espectral em uma sequência de bits que é associada com bits intermediários, posições de bits dos quais estão entre os bits menos significativos e o um ou mais bits mais significativos, ou em uma sequência de bits associados com bits menos significativos (e informações de sinal) de modo que informações de sinal para valores espectrais que desviam de zero apenas por um valor de bits menos significativos são decodificadas na sequência de bits associados com bits menos significativos (e informações de sinal). Consequentemente, as informações de sinal são colocadas dentro da sequência de bits associados com bits menos significativos (e informações de sinal) no caso de as informações de sinal serem apenas necessárias quando as informações de bits menos significativos forem avaliadas. Consequentemente, as informações que são sempre incluídas na representação de áudio codificado, a saber a sequência de bits que é associada com bits intermediários e informações de sinal, não compreende quaisquer informações que são desnecessárias no caso de as informações de bits menos significativos serem omitidas. Isso simplifica escalabilidade da taxa de bits.
[078] Uma modalidade de acordo com a invenção cria um decodificador de áudio para fornecer informações de áudio codificadas com base em informações de entrada de áudio. O codificador de áudio é configurado para obter valores espectrais que representam um conteúdo de áudio das informações de entrada de áudio (por exemplo, com uso de uma transformação MDCT). O codificador de áudio é configurado para codificar pelo menos uma pluralidade dos valores espectrais, para obter informações codificadas que representam os valores espectrais. O codificador de áudio é configurado para obter informações de ganho (global) que determinam etapas de quantização de uma quantização de valores espectrais, e que determinam uma demanda de bits para codificação dos valores espectrais quantizados. O codificador de áudio é configurado para codificar um ou mais bits mais significativos com uso de respectivos códigos de símbolos para uma pluralidade dos valores espectrais com uso de uma codificação aritmética, e para codificar um ou mais bits menos significativos para um ou mais dos valores espectrais, em que um respectivo código de símbolos representa um ou mais bits mais significativos por valor espectral para um ou mais valores espectrais. O codificador de áudio é configurado para codificar um ou mais bits menos significativos associados com um ou mais dos valores espectrais que dependem de um orçamento disponível de bits, de modo que um ou mais bits menos significativos associados com um ou mais dos valores espectrais sejam codificados, enquanto bits menos significativos não são codificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que o um ou mais bits mais significativos. Além disso, o codificador de áudio é configurado para fornecer as informações de áudio codificadas com uso das informações codificadas que representam os valores espectrais.
[079] Esse codificador de áudio é baseado na constatação que o uso de informações de ganho (ou informações de ganho global) são úteis para definir uma quantização. Além disso, o conceito para codificar seletivamente bits menos significativos é muito eficiente em combinação com esse conceito. Para detalhes, referência é também feita à discussão acima.
[080] Em uma modalidade preferencial, o codificador de áudio é configurado para obter uma primeira estimativa das informações de ganho com base em uma energia de grupos de valores espectrais (por exemplo, coeficientes de MDCT). Ademais, o codificador de áudio é configurado para quantizar o conjunto de valores espectrais (por exemplo, um espectro de MDCT) com uso da primeira estimativa das informações de ganho. Além disso, o codificador de áudio é configurado para computar ou estimar um número de bits necessário para codificar o conjunto de valores espectrais quantizados com uso da primeira estimativa das informações de ganho ou com uso de informações de ganho refinadas. Além disso, o codificador de áudio é configurado para decidir se deve usar o primeiro modo ou o segundo modo que depende de um número de bits necessários. Consequentemente, uma decisão sobre a quantização, e também uma decisão de qual modo usar, pode ser feita em uma maneira eficiente. A depender de se um procedimento iterativo deve ser escolhido ou não, o número de bits necessários para codificar o conjunto de valores espectrais pode ser estimado com uso de uma quantização que depende da primeira estimativa das informações de ganho ou com uso de uma quantização que depende de informações de ganho refinadas de maneira iterativa. Consequentemente, a complexidade da determinação da precisão de quantização pode ser mantida razoavelmente pequena.
[081] Em uma modalidade preferencial, o codificador de áudio é configurado para ser alternável entre o primeiro modo e o segundo modo mencionado acima. Em particular, o codificador de áudio é configurado para decidir se deve usar o primeiro modo ou o segundo modo que depende de um número de bits necessário e que depende de um critério que indica quantos valores espectrais compreendem mais bits que o um ou mais bits mais significativos. Em particular, o número de bits necessários, que pode ser determinado após decidir as informações de ganho a serem usadas (primeira estimativa ou informações de ganho refinadas) pode ser comparado com um orçamento de bits, e a decisão de qual modo usar pode ser feita tanto a depender dessa comparação quanto a depender do critério que indica quantos valores espectrais compreendem mais bits que o um ou mais bits mais significativos. Consequentemente, o segundo modo pode ser usado se existem muitos valores espectrais que compreendem um ou mais bits menos significativos além do um ou mais bits mais significativos.
[082] Em uma modalidade preferencial, o codificador de áudio é configurado para ser alternável entre o primeiro modo e o segundo modo mencionado acima. Nesse caso, o codificador de áudio pode ser configurado para decidir se deve usar o primeiro modo ou o segundo modo que depende do número de bits necessários e que depende de uma taxa de bits, de modo que o segundo modo é escolhido se a taxa de bits for maior que ou igual a um limiar de taxa de bits e se um número de bits computado ou estimado que precisasse codificar o conjunto de valores espectrais é maior que um orçamento de bits. Foi mostrado que o uso do segundo modo é particularmente útil no dito caso.
[083] Além disso, o codificador de áudio pode também ser suplementado por qualquer um dos recursos mencionados antes. As mesmas vantagens discutidas antes também se aplicam.
[084] Modalidades adicionais de acordo com a invenção criam métodos para fornecer informações de áudio decodificadas com base em informações de áudio codificadas e métodos para fornecer informações de áudio codificadas com base em informações de entrada de áudio. Esses métodos correspondem ao respectivo decodificador de áudio e ao respectivo codificador de áudio e podem ser suplementados por qualquer um dos recursos e funcionalidades discutidos no presente documento em relação aos correspondentes decodificador de áudio ou codificador de áudio.
[085] Modalidades adicionais de acordo com a invenção compreendem um programa de computador para realizar qualquer um dos métodos descritos no presente documento.
[086] Uma modalidade adicional compreende um fluxo de bits, que é baseado nas mesmas considerações discutidas acima e que podem ser suplementadas por qualquer um dos itens de informações a serem codificados e decodificados conforme mencionado no presente documento.
BREVE DESCRIÇÃO DAS FIGURAS
[087] Modalidades de acordo com a presente invenção serão descritas de maneira subsequente ao tomar como referência as Figuras reveladas, em que:
A Figura 1 mostra um diagrama esquemático de blocos de um decodificador de áudio, de acordo com uma modalidade da presente invenção;
A Figura 2 mostra um diagrama esquemático de blocos de um decodificador de áudio, de acordo com outra modalidade da presente invenção;
A Figura 3 mostra um diagrama esquemático de blocos de um codificador de áudio, de acordo com uma modalidade da presente invenção;
A Figura 4 mostra um diagrama esquemático de blocos de um codificador de áudio, de acordo com uma modalidade da presente invenção;
A Figura 5 mostra um diagrama esquemático de blocos de um codificador de áudio, de acordo com uma modalidade da presente invenção;
A Figura 6 mostra um diagrama esquemático de blocos de outro codificador de áudio, de acordo com uma modalidade da presente invenção;
A Figura 7 mostra um diagrama esquemático de blocos de um decodificador de áudio de acordo com outra modalidade da presente invenção;
A Figura 8 mostra um fluxograma de uma funcionalidade de um codificador de áudio, de acordo com uma modalidade da presente invenção;
A Figura 9 mostra um fluxograma de uma funcionalidade de um decodificador de áudio, de acordo com uma modalidade da presente invenção;
As Figuras 10a-10f mostram representações de código de pseudoprograma de funcionalidades de um codificador de áudio, de acordo com uma modalidade da presente invenção.
As Figuras 11 a-11 d mostram representações de código de pseudoprograma das funcionalidades de um decodificador de áudio, de acordo com uma modalidade da presente invenção;
A Figura 12 mostra uma representação gráfica de uma relação sinal-ruído gerada por um codificador/decodificador convencional de áudio;
A Figura 13 mostra uma representação gráfica de uma relação sinal-ruído fornecida por codificadores/decodificadores de áudio de acordo com a presente invenção; e
As Figuras 14 a 18 mostram fluxogramas de métodos para codificação de áudio e decodificação de áudio, de acordo com modalidades da presente invenção.
1). DECODIFICADOR DE ÁUDIO DE ACORDO COM A FIGURA 1
[088] A Figura 1 mostra um diagrama esquemático de blocos de um decodificador de áudio 100 de acordo com uma modalidade da presente invenção.
[089] O decodificador de áudio 100 é configurado para receber informações de áudio codificadas 110 e para fornecer, com base nas mesmas, informações de áudio decodificadas 112. O decodificador de áudio 100 é configurado para obter valores espectrais decodificados 132 com base em informações codificadas 130 que representam os valores espectrais, em que as informações codificadas 130 podem ser parte das informações de áudio codificadas 110. Além disso, as informações de áudio codificadas 110 podem opcionalmente compreendem informações adicionais, como informações de moldagem de ruído, informações de controle e semelhantes.
[090] O decodificador de áudio é configurado para decodificar em conjunto dois ou mais bits mais significativos por valor espectral (por exemplo, por valor espectral quantizado) com base em respectivos códigos de símbolos (por exemplo, códigos de símbolos de uma representação codificada aritmeticamente dos bits mais significativos) para um conjunto de valores espectrais com uso de uma decodificação aritmética. Respectivos códigos de símbolos podem representar dois ou mais bits mais significativos por valor espectral para um ou mais valores espectrais. Os códigos de símbolos codificados aritmeticamente podem, por exemplo, ser parte das informações codificadas 130 que representam valores espectrais.
[091] Além disso, o decodificador de áudio é configurado para decodificar um ou mais bits menos significativos associados com um ou mais valores espectrais que dependem de quantas informações de bits menos significativos estão disponíveis. As informações de bits menos significativos, que podem ser consideradas como uma representação de bits menos significativos, podem também ser parte das informações codificadas 130 que representam valores espectrais.
[092] Em particular, o decodificador de áudio pode ser configurado para decodificar um ou mais bits menos significativos associados com um ou mais dos valores espectrais que dependem de quantas informações de bits menos significativos estão disponíveis, de modo que um ou mais bits menos significativos associados com um ou mais dos valores espectrais (quantizados) são decodificados, enquanto bits menos significativos não são decodificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos são decodificados (ou foram decodificados) e sendo que compreendem mais bits que o um ou mais bits mais significativos.
[093] Em outras palavras, o decodificador de áudio pode ser configurado para decodificar bits menos significativos para alguns dos valores espectrais para os quais dois ou mais bits mais significativos foram codificados, e o decodificador de áudio pode omitir uma decodificação de um ou mais bits menos significativos para alguns outros valores espectrais para os quais um ou mais bits mais significativos foram decodificados.
[094] Ao formular de maneira ainda diferente, o decodificador de áudio pode, por exemplo, apenas refinar um subconjunto real dos valores espectrais, para os quais bits mais significativos foram decodificados, em que o número de quantos valores espectrais são refinados por bits menos significativos depende de quantas informações de bits menos significativos estão disponíveis (por exemplo, quantas informações de bits menos significativos estão incluídas nas informações de áudio codificadas 110 por um decodificador de áudio em vista de restrições de orçamento de bits).
[095] O decodificador de áudio 100 pode opcionalmente ser suplementado por qualquer um dos recursos, funcionalidades e detalhes descritos no presente documento, tanto individualmente quanto em combinação.
2). DECODIFICADOR DE ÁUDIO DE ACORDO COM A FIGURA 2
[096] A Figura 2 mostra um diagrama esquemático de blocos de um decodificador de áudio 200, de acordo com uma modalidade da presente invenção.
[097] O decodificador de áudio 200 é configurado para receber informações de áudio codificadas 210 e para fornecer, com base nas mesmas, informações de áudio decodificadas 212.
[098] As informações de áudio codificadas 210 podem, por exemplo, compreender informações codificadas 230 que representam valores espectrais, em que as informações codificadas 230 que representam valores espectrais podem, por exemplo, compreender códigos de símbolos codificados aritmeticamente que representam um ou mais bits mais significativos e uma representação de bits menos significativos e de sinais. As informações de áudio codificadas 210 podem opcionalmente compreender informações adicionais, como por exemplo, informações de controle de informações de moldagem de ruído. As informações adicionais opcionais podem também ser usadas no processo de decodificação, mas não são essenciais para a presente invenção.
[099] O decodificador de áudio é configurado para obter valores espectrais decodificados 232 com base nas informações codificadas 230 que representam os valores espectrais.
[0100] O decodificador de áudio é configurado para decodificar um ou mais bits mais significativos com base em respectivos códigos de símbolos (por exemplo, com base em códigos de símbolos codificados aritmeticamente) para uma pluralidade de valores espectrais, e para decodificar um ou mais bits menos significativos para um ou mais dos valores espectrais. Por exemplo, o decodificador de áudio pode usar os códigos de símbolos codificados aritmeticamente e a representação de bits menos significativos, que podem estar incluídos nas informações codificadas 130.
[0101] O decodificador de áudio 200 é configurado para ser alternável entre um primeiro modo em que uma decodificação de valores espectrais em uma faixa de frequência maior é omitida (por exemplo, omitida totalmente) em resposta a uma sinalização de um codificador e em que bits menos significativos são decodificados para todos os valores espectrais para os quais um ou mais bits mais foram decodificados e sendo que compreendem mais bits que os bits mais significativos, e um segundo modo em que um ou mais bits menos significativos associados com um ou mais dos valores espectrais são decodificados, enquanto bits menos significativos não são decodificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos foram decodificados e sendo que compreendem mais bits que os bits mais significativos. Em outras palavras, no primeiro modo, o decodificador de áudio 200 pode, por exemplo, decodificar apenas valores espectrais em uma faixa de frequência menor (por exemplo, até uma frequência determinada e sinalizada por um codificador de áudio) enquanto omite uma decodificação de valores espectrais em uma faixa de frequência maior (por exemplo, acima da frequência especificada pelo codificador). Entretanto, no primeiro modo, uma representação numérica completa dos valores espectrais pode ser decodificada para todos os valores espectrais na faixa de frequência menor, de modo que bits mais significativos, quaisquer bits intermediários e quaisquer bits menos significativos sejam decodificados para todos os valores espectrais na faixa de frequência menor. Em contraste, no segundo modo, o decodificador de áudio pode apenas decodificar bits menos significativos para alguns dos valores espectrais para os quais um ou mais bits mais significativos são decodificados, mas não para todos os valores espectrais para os quais um ou mais bits mais significativos são decodificados. Assim, no segundo modo, bits menos significativos podem ser decodificados em uma região de frequência, mas não em outra região de frequência (por exemplo, em uma região de maior frequência).
[0102] Além disso, o decodificador de áudio 200 é configurado para fornecer informações de áudio decodificadas 212 com uso dos valores espectrais 232. Por exemplo, o decodificador de áudio 200 pode compreender um processamento adicional dos valores espectrais decodificados 232, em que, detalhes do qual, entretanto, não são de relevância particular para a matéria da presente invenção.
[0103] Além disso, deve ser considerado que o decodificador de áudio 200 pode ser suplementado por qualquer um dos recursos, funcionalidades e detalhes descritos no presente documento, tanto individualmente quanto em combinação.
3). CODIFICAR DE ÁUDIO DE ACORDO COM A FIGURA 3
[0104] A Figura 3 mostra um diagrama esquemático de blocos de um codificador de áudio 300 de acordo com uma modalidade da presente invenção. O codificador de áudio 300 é configurado para receber informações de entrada de áudio 310 e pode fornecer informações de áudio codificadas 312 (que podem corresponder às informações de áudio codificadas 110, 210). O codificador de áudio 300 é configurado para obter valores espectrais 330 que representam um conteúdo de áudio das informações de entrada de áudio 310. Por exemplo, O decodificador de áudio 300 pode opcionalmente compreender qualquer forma de pré-processamento, como, por exemplo, uma conversão de domínio de tempo para domínio espectral (por exemplo, um MDCT) e/ou uma moldagem espectral (no domínio de tempo e/ou no domínio espectral) para obter os valores espectrais 330.
[0105] Os valores espectrais 330 podem, por exemplo, ser valores quantizados (preferencialmente números inteiros) em uma representação assinada de número binário. Além disso, o codificador de áudio é configurado para codificar pelo menos uma pluralidade dos valores espectrais 330, para obter informações codificadas 350 que representam os valores espectrais 330. O codificador de áudio 300 pode, por exemplo, ser configurado para fornecer as informações de áudio codificadas 312 com uso das informações codificadas 350 que representam os valores espectrais. Entretanto, o codificador de áudio 300 pode opcionalmente também fornecer informações adicionais, como informações de controle ou informações de moldagem de ruído, que são também incluídas nas informações de áudio codificadas 312 (porém detalhes das quais não são de relevância particular para a presente invenção).
[0106] O codificador de áudio 300 é configurado para codificar em conjunto dois ou mais bits mais significativos por valor espectral, para obter respectivos códigos de símbolos para um conjunto de valores espectrais com uso de uma codificação aritmética. Um respectivo código de símbolos pode, por exemplo, representar dois ou mais bits mais significativos por valor espectral para um ou mais valores espectrais.
[0107] O codificador de áudio é configurado adicionalmente para codificar um ou mais bits menos significativos associados com um ou mais dos valores espectrais 330 que dependem de um orçamento de bits, de modo que um ou mais bits menos significativos associados com um ou mais dos valores espectrais são codificados, enquanto bits menos significativos não são codificados para um ou mais outros valores espectrais para os quais dois ou mais bits mais significativos são codificados e sendo que compreendem mais bits que os dois ou mais bits mais significativos.
[0108] Por exemplo, o codificador de áudio 300 pode apenas fornecer bits menos significativos codificados para valores espectrais em uma porção de menor frequência, mas não para valores espectrais em uma porção de maior frequência. Ao selecionar para quais valores espectrais bits menos significativos são fornecidos, um número de bits pode ser adaptado para um orçamento de bits.
[0109] Além disso, deve ser considerado que o codificador de áudio de acordo com a Figura 3 pode ser suplementado com uso de qualquer um dos recursos, funcionalidades e detalhes descritos no presente documento, tanto individualmente quanto em combinação.
4). CODIFICADOR DE ÁUDIO DE ACORDO COM A FIGURA 4
[0110] A Figura 4 mostra um diagrama esquemático de blocos de um codificador de áudio 400, de acordo com uma modalidade da presente invenção.
[0111] O codificador de áudio 400 é configurado para receber informações de entrada de áudio 410 e para fornecer, com base nas mesmas, informações de áudio codificadas 412. O codificador de áudio é configurado para obter valores espectrais 330 (que podem, por exemplo, ser valores espectrais quantizados (preferencialmente números inteiros) em uma representação assinada de número binário) que representa conteúdo de áudio das informações de entrada de áudio 410. Por exemplo, um pré-processamento opcional pode ser usado, que pode, por exemplo, compreender uma conversão de domínio de tempo para domínio de frequência e/ou uma moldagem de ruído. Além disso, uma quantização pode opcionalmente ser usada para obter os valores espectrais 430.
[0112] O codificador de áudio é adicionalmente configurado para codificar pelo menos uma pluralidade dos valores espectrais 430, para obter informações codificadas 450 que representam os valores espectrais. O codificador de áudio é configurado para codificar um ou mais bits mais significativos (dos valores espectrais) com uso de respectivos códigos de símbolos para uma pluralidade de valores espectrais e para codificar um ou mais bits menos significativos para um ou mais dos valores espectrais. Um respectivo código de símbolos pode, por exemplo, representar um ou mais valores de bits mais significativos para um ou mais valores espectrais. O codificador de áudio pode ser configurado para ser alternável entre um primeiro modo, em que uma codificação de valores espectrais diferentes de zero em uma faixa de frequência maior é omitida (por exemplo, omitida totalmente) no caso de um orçamento disponível de bits ser usado (exausto) por uma codificação de valores espectrais em uma faixa de frequência menor e em que bits menos significativos são codificados para todos os valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que os bits mais significativos, e um segundo modo em que um ou mais bits menos significativos associados com um ou mais dos valores espectrais são codificados, enquanto bits menos significativos não são codificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que o um ou mais bits mais significativos.
[0113] Em outras palavras, o codificador de áudio pode, por exemplo, codificar um número comparativamente menor (por exemplo, nem todos os valores espectrais diferentes de zero) no primeiro modo, mas aqueles valores espectrais que são codificados e codificados com precisão completa (que inclui os bits menos significativos). Em contraste, no segundo modo, o codificador de áudio pode, por exemplo, codificar pelo menos os bits mais significativos de todos os valores espectrais diferentes de zero, mas pode codificar alguns dos valores espectrais com resolução reduzida (por exemplo, sem codificação dos correspondentes bits menos significativos). Portanto, o codificador pode, por exemplo, ser alternável entre dois modos que fornecem mecanismos diferentes para adaptar um número de bits para o orçamento de bits, em que o primeiro modo depende de uma omissão de uma codificação de valores espectrais em uma faixa de frequência maior para a redução do número de bits, e em que o segundo modo depende de uma omissão de bits menos significativos para alguns valores espectrais (para os quais apenas os bits mais significativos e possivelmente alguns bits intermediários são codificados, e que são “parcialmente codificados”).
[0114] O codificador de áudio 400 de acordo com a Figura 4 pode ser suplementado por quaisquer recursos, funcionalidades e detalhes descritos no presente documento, tanto individualmente quanto em combinação.
5). CODIFICADOR DE ÁUDIO DE ACORDO COM A FIGURA 5
[0115] A Figura 5 mostra um diagrama esquemático de blocos de um codificador de áudio 500, de acordo com uma modalidade da presente invenção. O codificador de áudio 500 é configurado para receber informações de entrada de áudio 510 e para fornecer, com base nas mesmas, informações de áudio codificadas 512. O codificador de áudio é configurado para obter valores espectrais 530 que representam um conteúdo de áudio das informações de entrada de áudio 510. Por exemplo, o codificador de áudio pode usar uma transformada discreta de cosseno modificada (MDCT) para obter os valores espectrais 530. Geralmente, o codificador de áudio 500 pode opcionalmente usar qualquer tipo de pré-processamento, como uma conversão de domínio de tempo para domínio de frequência e uma moldagem de ruído, e o codificador de áudio 500 pode opcionalmente também usar uma quantização. Por exemplo, os valores espectrais 530 podem ser valores espectrais quantizados ou podem ser coeficientes de MDCT em formado de ruído ou quantizados.
[0116] O codificador de áudio é configurado para codificar pelo menos uma pluralidade dos valores espectrais 530, para obter informações codificadas 550 que representam os valores espectrais. As informações codificadas 550 podem ser uma parte das informações de áudio codificadas 512. Entretanto, as informações de áudio codificadas 512 podem também compreender, opcionalmente, informações adicionais, como informações de controle ou informações de moldagem espectral.
[0117] O codificador de áudio 500 é também configurado para obter informações de ganho (por exemplo, informações de ganho global) 560, que determinam etapas de quantização de uma quantização de valores espectrais, e que determinam uma demanda de bits para codificação dos valores espectrais quantizados.
[0118] O codificador de áudio 500 é configurado para codificar um ou mais bits mais significativos (dos valores espectrais quantizados) com uso de respectivos códigos de símbolos para uma pluralidade dos valores espectrais (quantizados) com uso de uma codificação aritmética, e para codificar um ou mais bits menos significativos para um ou mais dos valores espectrais (quantizados). Um respectivo código de símbolos pode, por exemplo, representar um ou mais bits mais significativos por valor espectral para um ou mais valores espectrais.
[0119] O codificador de áudio é configurado para codificar um ou mais bits menos significativos associados com um ou mais dos valores espectrais (quantizados) que dependem de um orçamento disponível de bits, de modo que um ou mais bits menos significativos associados com um ou mais dos valores espectrais são codificados, enquanto bits menos significativos não são codificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que o um ou mais bits mais significativos. Por exemplo, o codificador de áudio pode apenas fornecer bits menos significativos codificados para alguns dos valores espectrais, enquanto informações de bits menos significativos não são fornecidas para outros valores espectrais que iriam também se beneficiar de um refinamento de bits menos significativos.
[0120] Além disso, o codificador de áudio 500 é configurado para fornecer as informações de áudio codificadas 512 com uso das informações codificadas 550 que representam os valores espectrais.
[0121] Deve ser considerado que o codificador de áudio 500 pode ser suplementado por qualquer um dos recursos, funcionalidades e detalhes descritos no presente documento, tanto individualmente quanto em combinação.
6). CODIFICADOR DE ÁUDIO DE ACORDO COM A FIGURA 6
[0122] A Figura 6 mostra um diagrama esquemático de blocos de um codificador de áudio, de acordo com uma modalidade da invenção.
[0123] O codificador de áudio de acordo com a Figura 6 é designado em sua totalidade com 600.
[0124] O codificador de áudio 600 é configurado para receber informações de entrada de áudio 610 e para fornecer, com base nas mesmas, uma representação de áudio codificado 612.
[0125] O codificador de áudio 600 pode compreender um pré-processamento opcional 620, que pode aplicar algum tipo de pré-processamento (como, por exemplo, uma filtração, uma limitação de banda larga, uma moldagem de ruído de domínio de tempo, ou semelhantes) no sinal de entrada de áudio.
[0126] O codificador de áudio 600 pode opcionalmente compreender uma conversão de domínio de tempo para domínio espectral 630 que pode, por exemplo, realizar uma transformada discreta de cosseno modificada ou uma transformada similar, como uma transformada discreta de cosseno modificada de baixo atraso. A conversão de domínio de tempo para domínio espectral 630 pode, por exemplo, receber as informações de entrada de áudio 610, ou a versão pré-processada 622 da mesma e fornecer valores espectrais 632.
[0127] O codificador de áudio 600 pode opcionalmente compreender um pré-processamento (adicional), que recebe os valores espectrais 632 e que podem, por exemplo, realizar uma moldagem de ruído. Por exemplo, o pré-processamento (adicional) 640 pode realizar uma moldagem de ruído espectral e/ou uma moldagem de ruído temporal. Opcionalmente, o pré-processamento 640 pode, por exemplo, aplicar fatores de escala para escalar diferentes bandas de frequência ("bandas de fator de escala”) de acordo com uma relevância psicoacústica das bandas de frequência (que podem ser determinadas, por exemplo, por um modelo psicoacústico). Consequentemente, valores espectrais pré-processados 642 podem ser obtidos.
[0128] O codificador de áudio 600 pode opcionalmente compreender um escalonamento 650 que pode, por exemplo, escalar os valores espectrais 632 ou os valores espectrais pré-processados 642. Por exemplo, o escalonamento 650 pode escalar os valores espectrais 632 ou os valores espectrais pré-processados 642 com uso de um ganho global, para desse modo fornecer valores espectrais escalados 652.
[0129] O codificador de áudio 600 também compreende uma quantização (ou quantizador) 660, que pode receber os valores espectrais 632, os valores espectrais pré-processados 642 ou os valores espectrais escalados 652. A quantização 660 pode, por exemplo, quantizar os valores espectrais 632 ou os valores espectrais pré-processados 642 ou os valores espectrais escalados 652, para, desse modo, obter valores espectrais quantizados 662, que podem, por exemplo, ser valores assinados de número inteiro e que podem, por exemplo, ser representados em uma representação binária (por exemplo, em uma representação de complemento de dois). Os valores espectrais quantizados 662 podem, por exemplo, ser designados com Xq. Por exemplo, um número predeterminado de 256, 512, 1024 ou 2048 valores espectrais quantizados podem ser fornecidos por quadro, em que frequências diferentes são associadas com os valores espectrais quantizados.
[0130] O codificador 600 pode também compreender uma codificação 670, que recebe os valores espectrais quantizados 662 (Xq) e que pode fornecer, com base nos mesmos, informações codificadas que representam os valores espectrais (quantizados) 672.
[0131] Deve ser considerado que os valores espectrais quantizados 662 podem corresponder aos valores espectrais 330, 430, 530 e que as informações codificadas 672 que representam valores espectrais podem corresponder às informações codificadas 350, 450, 550 que representam valores espectrais. Além disso, deve ser considerado que a codificação 670 pode, por exemplo, realizar as funcionalidades descritas em relação aos codificadores 300, 400, 500. Entretanto, a codificação 670 pode também compreender a funcionalidade descrita a seguir (por exemplo, com referência à Figura 8), ou pelo menos parte da dita funcionalidade.
[0132] O codificador de áudio 600 também compreende opcionalmente um pós-processamento 680, que pode aplicar um pós-processamento às informações codificadas 672.
[0133] Consequentemente, a representação codificada 612 é fornecida, que tipicamente compreende as informações codificadas 672. Entretanto, a representação de áudio codificado 612 pode opcionalmente também compreender informações adicionais, como informações de controle e informações referentes à moldagem de ruído (como informações de fato de escala, coeficientes de predição linear, ou semelhantes). A representação de áudio codificado pode opcionalmente também compreender informações de ganho global e/ou informações de modo de codificação/informações de modo de decodificação e/ou informações “lastnz”.
[0134] Para concluir, o conceito para a codificação de valores espectrais revelados no presente documento pode, por exemplo, ser implementado em um codificador de áudio 600, em que apenas alguns ou todos os recursos da codificação de fator de escala descritos no presente documento podem acontecer no codificador de áudio 600.
7). DECODIFICAR DE ÁUDIO DE ACORDO COM A FIGURA 7
[0135] A Figura 7 mostra um diagrama esquemático de blocos de um decodificador de áudio 700, de acordo com uma modalidade da presente invenção. O decodificador de áudio 700 é configurado para receber informações de áudio codificadas 710 (que podem, por exemplo, corresponder à representação de áudio codificado 612) e pode fornecer, com base nas mesmas, informações de áudio decodificadas 712. O codificador de áudio 700 pode, por exemplo, compreender uma decodificação 720 que recebe as informações de áudio codificadas, ou uma parte das mesmas, e fornece, com base nas mesmas, valores espectrais quantizados 722 (também designados com Xq). Por exemplo, a decodificação 720 pode fornecer valores assinados de número inteiro em uma representação binária (por exemplo, em uma representação de complemento de dois).
[0136] O decodificador de áudio 700 opcionalmente compreende um quantizador inverso 730, que recebe os valores espectrais quantizados e que pode realizar uma quantização inversa. Por exemplo, o quantizador inverso 730 pode usar informações de ganho global para ajustar o mapeamento realizado pela quantização inversa.
[0137] O decodificador de áudio 700 opcionalmente compreende um escalonamento 740, que pode receber inversamente valores espectrais quantizados 732 fornecidos pelo quantizador inverso e que podem realizar um escalonamento, para desse modo obter valores espectrais escalados e inversamente quantizados 742. O escalonamento pode opcionalmente ser dependente do ganho global.
[0138] O decodificador de áudio 700 pode também, opcionalmente, compreender um pós-processamento 750, que pode receber os valores espectrais quantizados inversamente 730 ou os valores espectrais escalados quantizados inversamente 742 e que pode realizar uma moldagem espectral. Por exemplo, a moldagem espectral pode ser uma moldagem de ruído espectral, e/ou pode ser baseada em um escalonamento de diferentes bandas de frequência que usam fatores de escala e/ou podem ser baseadas em uma moldagem espectral com uso de coeficientes de predição linear (em que informações que controlam a moldagem espectral podem estar incluídas nas informações de áudio codificadas).
[0139] O decodificador de áudio 700 pode também, opcionalmente, compreender uma conversão de domínio espectral para domínio de tempo 760, que pode receber os valores espectrais quantizados inversamente 732, os valores espectrais escalados e quantizados inversamente 742 ou os valores espectrais pós-processados (por exemplo, em formato espectral) 752 fornecidos pelo pós-processamento 750. A conversão de domínio espectral para domínio de tempo pode, por exemplo, realizar uma transformada discreta de cosseno modificada inversa, ou uma transformada discreta de cosseno modificada inversa de pouco atraso, ou qualquer outra conversão de domínio espectral para domínio de tempo, para, desse modo, obter uma representação de áudio de domínio de tempo 762 com base nas informações de entrada recebidas pela conversão de domínio espectral para domínio de tempo.
[0140] A representação de áudio de domínio de tempo 762 pode, por exemplo, ser inserida em um pós-processamento (opcional) 770, que pode realizar uma ou mais etapas de pós-processamento e que pode, por exemplo, também realizar uma moldagem espectral de domínio de tempo (por exemplo, no caso de nenhuma moldagem espectral ser realizada no domínio espectral, por exemplo, com uso de uma filtração de LPC).
[0141] Consequentemente, as informações de áudio decodificadas 712 podem ser fornecidas com base na saída da conversão de domínio espectral para domínio de tempo 762, e podem possivelmente ser obtidas com uso de alguma forma de pós-processamento e/ou ligação de quadro (como uma operação de sobrepor e adicionar).
[0142] Para concluir, o decodificador de áudio 700 pode realizar alguma funcionalidade de decodificação de áudio, em que detalhes, por exemplo, referentes a uma moldagem de ruído ou moldagem espectral, podem variar de maneira significativa de implementação para implementação. A moldagem espectral ou moldagem de ruído pode ser realizada no domínio espectral (ou seja, antes da conversão de domínio espectral para domínio de tempo) e/ou no domínio de tempo (por exemplo, após a conversão de domínio espectral para domínio de tempo).
[0143] Entretanto, deve ser considerado que as informações de áudio codificadas 710 podem corresponder às informações de áudio codificadas 110, 210, e que as informações de áudio codificadas 710 podem compreender informações adicionais de controle e informações para ajustar uma moldagem espectral. Além disso, os valores espectrais quantizados 722 podem, por exemplo, corresponder aos valores espectrais decodificados 132, 232.
[0144] Além disso, a decodificação 720 pode realizar algumas ou todas as funcionalidades descritas em relação aos decodificadores de áudio 100, 200.
[0145] Além disso, a decodificação 720 pode ser suplementada por qualquer um dos recursos, funcionalidades e detalhes descritos no presente documento em relação a uma decodificação de valores espectrais (ou coeficientes espectrais) que é revelada no presente documento, tanto individualmente quanto em combinação.
8). CODIFICAÇÃO DE ÁUDIO (CODIFICAÇÃO DE VALOR ESPECTRAL) DE ACORDO COM A FIGURA 8
[0146] A Figura 8 mostra um fluxograma de uma funcionalidade que pode ser realizada por qualquer um dos decodificadores de áudio descritos no presente documente.
[0147] Deve ser considerado que algumas ou todas as funcionalidades descritas com referência à Figura 8 (e também em relação às figuras anexas) podem ser incorporadas nos codificadores de áudio das Figuras 3 a 6.
[0148] Deve ser também considerado que a Figura 8 foca na codificação de valores espectrais, que podem, tipicamente, ser valores espectrais quantizados. Preferencialmente, mas não necessariamente, os valores espectrais são valores assinados de número inteiro, que são representados por uma representação binária de complemento de dois.
[0149] A funcionalidade conforme mostrado no fluxograma 800 compreende uma primeira estimativa 810 de um ganho global. Essa estimativa pode, por exemplo, ser feita com base em um conjunto de valores espectrais, que pode ser associado com um quadro de um conteúdo de áudio, e pode também considerar um orçamento de bits (ou, de maneira equivalente, um orçamento de taxa de bits).
[0150] A funcionalidade do codificador de áudio ou da codificação de áudio, conforme mostrado na Figura 8, também compreende uma quantização 814 de coeficientes espectrais (ou, de maneira equivalente, valores espectrais) com uso de uma primeira estimativa de um ganho global ou com uso de uma estimativa refinada de um ganho global (que pode ser obtida em uma maneira iterativa). Na etapa 814, existe uma computação ou estimativa de um número de bits necessários para codificar o espectro quantizado (que pode ser representado por coeficientes espectrais quantizados ou por valores espectrais quantizados).
[0151] Com base nessa computação ou estimativa do número de bits necessários, que é realizada na etapa 818, o ganho global pode opcionalmente ser ajustado ou refinado em uma etapa 822, para, desse modo, obter uma estimativa melhorada do ganho global.
[0152] Consequentemente, ao realizar etapas 810, 814 e 818, e opcionalmente etapa 822, "informações de ganho global” (ou, geralmente, informações que descrevem uma quantização dos valores espectrais) podem ser obtidas, que resulta em uma quantização de modo que um número esperado de bits se encaixa pelo menos aproximadamente em um orçamento de bits. Entretanto, deve ser considerado que, em vista de restrições de complexidade, as informações de ganho global podem não ser apropriadas, de modo que uma codificação de valores espectrais quantizados que dependem das informações de ganho global pode ainda consumir mais ou menos bits quando comparada ao orçamento de bits.
[0153] Deve ser considerado que quaisquer detalhes referentes à computação do ganho global ou referentes à quantização não são essenciais para a presente invenção. Em vez disso, modalidades de acordo com a presente invenção irão funcionar com qualquer mecanismo que fornece valores espectrais quantizados de modo que os valores espectrais possam ser codificados sem violar excessivamente o orçamento de bits.
[0154] A funcionalidade 800 compreende adicionalmente realizar uma decisão de modo 830. Entretanto, realizar a decisão de modo pode ser considerada como opcional, visto que codificadores de áudio que usam apenas um modo (designado no presente documento como "segundo modo”) são também possíveis. A decisão de modo 830 opcionalmente compreende uma identificação dependente de modo de um último coeficiente codificado. A depender da decisão de modo, a determinação do último coeficiente codificado pode ser realizada em uma maneira diferente.
[0155] Se o "primeiro modo” for usado, pode haver uma decisão de não codificar alguns valores espectrais diferentes de zero para poupar bits (e para permanecer dentro do orçamento de bits). Nesse caso, uma frequência associada com o último coeficiente espectral codificado pode ser escolhida para ser menor que uma frequência máxima na qual existe um valor espectral diferente de zero. Consequentemente, alguns valores espectrais diferentes de zero em uma região de alta frequência podem não ser codificados no primeiro modo.
[0156] Em contraste, no segundo modo, pelo menos bits mais significativos são codificados para todos os coeficientes espectrais diferentes de zero. Consequentemente, o último coeficiente codificado pode, por exemplo, ser escolhido para ser o valor espectral diferente de zero de frequência mais alta.
[0157] Um índice que descreve o valor espectral de maior frequência que será codificado é fornecido como informações de controle "lastnz” tanto no primeiro modo quanto no segundo modo.
[0158] A seguir, operação no "primeiro modo” será descrita, com referência às funcionalidades 840 a 869.
[0159] Operação no primeiro modo compreende uma inicialização de codificador aritmético 840. Nessa etapa, estados e um contexto do codificador aritmético serão inicializados.
[0160] Na etapa 844, alguma informação lateral será codificada, como informações de modo que indicam o uso do primeiro modo, o ganho global e as informações que identificam o último coeficiente codificado (lastnz).
[0161] Funcionalidades 848 a 864 são repetidas para cada valor espectral, ou para cada grupo de valores espectrais. Deve ser considerado que, em uma modalidade preferencial, grupos que compreendem dois valores espectrais serão codificados. Entretanto, uma codificação de valores espectrais individuais é também possível.
[0162] A codificação real de valores espectrais compreende uma determinação de peso de bits mais significativos para um coeficiente espectral ou para um grupo de coeficientes espectrais. Por exemplo, a representação numérica de um ou dois coeficientes espectrais é examinada e é identificada que é a posição de bits de maior valor que compreende um "1”. Por exemplo, um valor binário "00010000” compreende seus bits mais significativos na posição de bits 5, que tem peso de bits 16. Se um par de valores espectrais for considerado, que deve ser codificado junto, o máximo das posições de bits mais significativos dos dois valores espectrais é determinado. Para detalhes opcionais, referência é feita à descrição da "etapa 7a” que será fornecida abaixo (conferir a descrição da Figura 10a).
[0163] Em uma etapa 852, um peso de bits mais significativos será codificado, que pode ser feito, por exemplo, ao fornecer uma sequência de símbolos codificados específicos, em que o número de símbolos codificados específicos indica a posição de bits (ou, de maneira equivalente, o peso de bits). Por exemplo, assim chamado "símbolos de escape” podem ser usados, que são conhecidos em codificação aritmética. Para detalhes opcionais referentes à funcionalidade 852, referência é feita, por exemplo, à discussão da "etapa 7b” fornecida abaixo (conferir a Figura 10c).
[0164] De maneira subsequente, uma codificação de bits mais significativos 856 é realizada. Nessa etapa, um ou mais bits (por exemplo, dois bits) na posição identificada de bits de bits mais significativos (ou adjacente à posição identificada de bits de bits mais significativos) são codificados. Por exemplo, se posição de bits 5, que tem peso de bits 16 for identificada na etapa 848, então bits que têm posições de bits 5 e 4 (pesos de bits 16 e 8) de um primeiro valor espectral podem ser codificados juntos com bits nas posições de bits 5 e 4 (que têm pesos de bits 16 e 8) de um segundo valor espectral. Portanto, no exemplo, um total de quatro bits podem ser codificados juntos, em que tipicamente pelo menos um dos dois valores espectrais terá um "1” na posição de bits 5 (peso de bits 16). Por exemplo, os quatro bits mencionados podem ser mapeados em um símbolo “sym” que usa uma codificação aritmética baseada em contexto. Para detalhes opcionais, referência é feita, por exemplo, à descrição da “etapa 7c” que é fornecida abaixo (conferir a Figura 10d).
[0165] Em uma etapa 860, existe uma codificação remanescente de bits. Na etapa 860, pode haver, por exemplo, uma codificação de (todos) bits menos significativos (que incluem um ou mais bits menos significativos) para todos os valores espectrais que foram codificados na etapa 856 e que compreendem mais bits que o um ou mais bits mais significativos (por exemplo, numbits>2). Em outras palavras, para cada valor espectral que foi parcialmente (mas não completamente) codificado na etapa 856 (porque a codificação do um ou mais bits mais significativos não foi suficiente para representar o valor espectral com precisão completa, até bits que têm peso de bits 1), todos os bits menos significativos serão codificados.
[0166] Com referência ao exemplo acima, se bits 5 e 4 foram codificados na etapa 856 para o primeiro valor espectral e para o segundo valor espectral, então bits 1, 2 e 3 serão codificados para o primeiro valor espectral e para o segundo valor espectral na etapa 860.
[0167] Para detalhes opcionais, referência é feita à descrição da etapa 7d da abordagem convencional.
[0168] Na etapa 864, há uma codificação de sinal para todos os valores espectrais diferentes de zero para os quais o um ou mais bits mais significativos foram decodificados. Para detalhes opcionais, referência é feita à descrição da etapa 7e (conferir a Figura 10f).
[0169] Conforme mencionado anteriormente, etapas 848 a 864 são repetidas para cada valor espectral, ou para cada grupo de valores espectrais os bits mais significativos dos quais são codificados juntos.
[0170] Na etapa 868 há uma determinação de um número de bits usados, e na etapa 869, há, opcionalmente, uma codificação de informações de refinamento se ainda houver bits não usados disponíveis.
[0171] Para concluir, ao operar no primeiro modo, alguns valores espectrais diferentes de zero são pulados na codificação, mas todos os valores espectrais que são na verdade codificados são codificados com resolução completa (até os bits menos significativos). Consequentemente, uma variação da taxa necessária de bits pode ser feita ao decidir quantos valores espectrais são deixados não codificados (pulados na codificação).
[0172] A seguir, a operação no segundo modo que pode, em algumas modalidades, ser o único modo, será descrita com referência às funcionalidades 870 a 898.
[0173] A codificação no segundo modo compreende uma inicialização de codificador aritmético 870, em que estados em um contexto da codificação aritmética serão inicializados.
[0174] Na etapa 874, alguma informação lateral será codificada, como informações de ganho global, “lastnz” e informações de modo que indicam que o segundo modo é usado (desde que o codificador seja alternável entre o primeiro modo e o segundo modo).
[0175] Funcionalidades 878 a 894 são realizadas para cada valor espectral a ser codificado, ou para cada grupo de valores espectrais a serem codificados em conjunto.
[0176] Na etapa 878, há uma determinação de peso de bits mais significativos para coeficientes espectrais (ou valores espectrais) ou para grupos de coeficientes espectrais (ou valores espectrais). Para detalhes opcionais, referência é feita à explicação referente à funcionalidade 848 e também à descrição da “etapa 7a” abaixo (conferir a Figura 10a).
[0177] Na etapa 882, há um cancelamento de bits menos significativos e um processamento de informações de bits menos significativos. Por exemplo, as informações de bits menos significativos são canceladas na representação numérica de tais valores espectrais que compreendem tanto um ou mais bits mais significativos quanto bits menos significativos (numbits>2). Por exemplo, todos os valores espectrais ímpares podem ser definidos ao próximo valor par (adjacente), um valor absoluto do qual é menor que o valor absoluto do valor ímpar. Por exemplo, um valor de 1 pode ser definido a 0, um valor de 3 pode ser definido a 2, um valor de -1 pode ser definido a 0 e um valor de -3 pode ser definido a -2. Para detalhes opcionais, conferir as etapas 1010f e 1011f mencionadas abaixo.
[0178] Entretanto, informações sobre os bits menos significativos, e também informações sobre o sinal do valor espectral (se o valor espectral for definido de +1 a 0 ou de -1 a 0) podem ser armazenadas em informações de fluxo de bits de bits menos significativos (por exemplo, lsbs[]). Para detalhes, referência é feita, por exemplo, à "etapa 7a bis”, que é descrita abaixo (conferir a Figura 10b).
[0179] Ademais, há uma codificação de peso de bits mais significativos 886, que pode ser igual à codificação de peso de bits mais significativos 852. Para detalhes opcionais, conferir a descrição da Etapa 7b (Figura 10c).
[0180] Além disso, há uma codificação de bits mais significativos 890, que pode ser idêntica à codificação de bits mais significativos 856, exceto pelo fato que os valores espectrais modificados na etapa 882 são usados (com o valor de bits menos significativos removido). Para detalhes opcionais, consultar a descrição da Etapa 7c e a Figura 10d.
[0181] Ademais, há uma codificação de bits menos significativos 892. Na codificação de bits menos significativos 892, há uma codificação de bits menos significativos, exceto para um ou mais bits menos significativos. Em outras palavras, bits que estão entre os bits menos significativos e o um ou mais bits mais significativos codificados na etapa 890 podem ser codificados, por exemplo, ao escrevê-los sequencialmente em um fluxo de bits. Para detalhes opcionais, referência é feita à descrição abaixo da "etapa 7d - nova versão” (conferir a Figura 10e).
[0182] Além disso, há uma codificação de sinal 894, que é substancialmente idêntica à codificação de sinal 864, exceto pelo fato que o sinal é determinado com base em um valor espectral conforme modificado na etapa 882.
[0183] Por exemplo, se o valor espectral original (quantizado) era +1, o valor espectral foi mudado para 0 na etapa 882, e não há codificação de sinal na etapa 894, porque esse sinal é apenas codificado para valores diferentes de zero. De maneira similar, se o valor espectral originalmente era -1 (após a quantização), o valor espectral é emendado a0 na etapa 882, e nenhum sinal são codificados na etapa 894 (porque sinais não são codificados para valores zero).
[0184] Para detalhes opcionais referentes à codificação de sinal, referência é feita à descrição da etapa 7e (Figura 10f).
[0185] Etapas 878 a 894 são repetidas para todos os valores espectrais ou grupos de valores espectrais os bits mais significativos dos quais são codificados em conjunto.
[0186] Na etapa 896, há uma determinação de um número de bits disponível para uma codificação de bits menos significativos. Esse número é designado, por exemplo, com nlsbs e pode, por exemplo, designar um número de bits não usados.
[0187] Na etapa 898, os bits não usados (o número dos quais foi determinado na etapa 896) são usados para a codificação "real” dos bits menos significativos (inclusão das informações de bits menos significativos obtidas na etapa 882, ou uma parte das mesmas, na representação de áudio codificado). Por exemplo, uma sequência de bits que foi determinada na etapa 882, ou uma porção da mesma, é adicionada a uma representação de áudio codificado. Essa sequência de bits compreende os bits menos significativos e sinais para aqueles valores espectrais que foram alterados para ser zero pelo cancelamento dos bits menos significativos.
[0188] Consequentemente, no segundo modo, símbolos que representam um ou mais bits mais significativos, uma sequência de bits que representa os bits menos significativos exceto para o um ou mais bits menos significativos (e algumas informações de sinal) e a sequência de bits que representa os bits menos significativos (e algumas informações de sinal) é fornecida. Na sequência que representa os bits menos significativos, os bits menos significativos (e sinais) podem ser incluídos valor espectral por valor espectral ou sequencialmente para pares de valores espectrais codificados em conjunto. Além disso, na sequência de bits que representam os bits menos significativos, os bits menos significativos são incluídos valor espectral por valor espectral.
[0189] Deve ser considerado que detalhes opcionais adicionais referentes à codificação 800 serão descritos abaixo. Deve ser também considerado que referências à representação de código de pseudoprograma das etapas são incluídas na Figura 8. Os detalhes descritos nas representações de código de pseudoprograma não são essenciais, mas podem opcionalmente ser incluídas individualmente para cada uma das etapas conforme mostrado na Figura 8.
9. DECODIFICAÇÃO DE ÁUDIO (CODIFICAÇÃO DE VALOR ESPECTRAL) DE ACORDO COM A FIGURA 9
[0190] A Figura 9 mostra uma representação esquemática de funcionalidades que podem ser realizadas pelos decodificadores de áudio conforme descrito no presente documento.
[0191] Deve ser considerado que algumas ou todas as funcionalidades descritas na Figura 9 podem ser realizadas pelos decodificadores de áudio. Deve ser considerado que será suficiente implementar uma ou diversas das funcionalidades descritas na Figura 9 individualmente, mas que é preferencial implementar a funcionalidade completa. Em particular, a funcionalidade revelada na Figura 9 é relacionada à provisão de valores espectrais decodificados com base em informações codificadas que representam valores espectrais. A funcionalidade conforme mostrado na Figura 9 pode, por exemplo, ser implementada na decodificação 720 do decodificador de áudio 700.
[0192] A funcionalidade 900 compreende, em uma etapa 910 uma inicialização de estados de decodificador aritmético e inicialização de um contexto c que é usado pelo decodificador aritmético. Para detalhes opcionais, referência é feita, por exemplo, à "etapa 1” da decodificação conforme descrito abaixo.
[0193] A funcionalidade 900 também compreende uma decodificação 914 de um ganho global de informações de ganho global, uma decodificação 916 de bits de sinalização para uma seleção de modo (seleção de modo 1 ou de modo 2) e uma decodificação 918 de uma informação sobre um último coeficiente codificado diferente de zero (“lastnz”). Deve ser considerado que as etapas 916 e 918 devem ser consideradas como sendo opcionais, e que a etapa 914 pode ser substituída pela decodificação de quaisquer outras informações que definem uma quantização.
[0194] A funcionalidade 900 compreende uma decodificação em um primeiro modo que é mostrado nas etapas 930 a 948 e uma decodificação em um segundo modo, que é mostrado nas etapas 950 a 972. Deve ser considerado que a operação no primeiro modo, conforme descrito nas etapas 930 a 948, deve ser considerada como sendo opcional. Em outras palavras, é também suficiente se a decodificação de áudio pode operar no segundo modo que é descrito pelas etapas 950 a 972, mesmo apesar da possibilidade para alternar entre dois modos se estender para a funcionalidade e trazer algumas vantagens.
[0195] Além disso, a funcionalidade 900 também compreende realizar quantização inversa 980 de valores espectrais decodificados, que pode, por exemplo, ser realizada por bloco 730 no decodificador 700.
[0196] A seguir, a operação no primeiro modo será descrita.
[0197] A decodificação no primeiro modo compreende uma decodificação de bits mais significativos 930 que pode, por exemplo, compreender uma decodificação em conjunto de um, dois ou mais bits mais significativos de dois coeficientes, que podem ser designados com Xq(n) e Xq(n+1). A decodificação de bits mais significativos 930 pode, por exemplo, compreender uma determinação de um número de bits totais (codificados) dos coeficientes (por exemplo, numbits) ou um número de bits menos significativos dos coeficientes que segue os bits mais significativos codificados em conjunto.
[0198] Por exemplo, pode ser reconhecido pelo decodificador (por exemplo, com base em informações de sinalização na representação de áudio codificado) que um dos dois coeficientes espectrais decodificados juntos compreende um valor diferente de zero (bit mais significativo) em uma quinta posição de bits (que tem peso de bits 16). Consequentemente, bits nas posições 4 e 5 (que têm pesos de bits de 8 e 16) serão decodificados em conjunto para os dois valores espectrais que são decodificados juntos (como um grupo). A posição de bits dos bits mais significativos pode ser codificada, por exemplo, com uso de um "mecanismo de símbolo de escape” que é conhecido na técnica de codificação e decodificação aritmética. Para detalhes opcionais, referência é feita, por exemplo, à descrição da "etapa 3a” abaixo (Figura 11a).
[0199] A decodificação no primeiro modo compreende adicionalmente uma decodificação de bits menos significativos 934. Por exemplo, pode haver uma decodificação de (todos) bits menos significativos, que inclui um ou mais bits menos significativos, de todos os valores espectrais para os quais um ou mais bits mais significativos foram decodificados. Por exemplo, os bits menos significativos podem ser lidos a partir de uma sequência de bits. Para detalhes, referência é feita, por exemplo, à "etapa 3b, abordagem convencional” conforme descrito abaixo.
[0200] A decodificação no primeiro modo compreende uma decodificação de sinal 938, em que sinais podem ser codificados para todos os valores espectrais para os quais um valor diferente de zero foi decodificado nas etapas 930, 934. Para detalhes, referência é feita, por exemplo, à discussão abaixo da "etapa 3c” (conferir a Figura 11c).
[0201] A decodificação no primeiro modo compreende restauração a zero 942 de coeficientes espectrais não codificados. Por exemplo, todos os coeficientes espectrais, frequências dos quais estão acima de certa frequência que foi sinalizada de um codificador para o decodificador podem ser definidas a zero. Para detalhes, referência é feita, por exemplo, à descrição abaixo da "etapa 4”.
[0202] A decodificação no primeiro modo também compreende uma determinação 944 de um número de bits não usados. Por exemplo, podem ser determinados quantos bits do orçamento total de bits não foram usados nas etapas de decodificação anteriores.
[0203] A decodificação no primeiro modo pode adicionalmente, opcionalmente, compreender um refinamento 948 em que, por exemplo, valores espectrais que foram decodificados podem ser adicionalmente refinados. Para detalhes, referência é feita, por exemplo, à descrição abaixo da "etapa 6”.
[0204] Consequentemente, no primeiro modo, valores espectrais de até uma frequência máxima definidos pelas informações sobre as últimas informações de coeficiente codificado diferente de zero serão decodificados completamente (dos bits mais significativos até os bits menos significativos), que inclui uma decodificação do sinal.
[0205] Entretanto, deve ser considerado que detalhes, conforme descrito abaixo com referência à "etapa 3a” a "etapa 6” podem opcionalmente ser introduzidos nessas etapas. Entretanto, deve ser considerado que não é essencial introduzir todos os detalhes descritos abaixo, e que é suficiente em algumas modalidades manter os detalhes abaixo apenas em uma das etapas ou em algumas das etapas.
[0206] A seguir, uma decodificação em um segundo modo será descrita com referência às etapas 950 a 972.
[0207] Uma decodificação no segundo modo compreende uma decodificação de bits mais significativos 950, que pode, por exemplo, compreender uma decodificação aritmética de um ou mais bits mais significativos. Por exemplo, a decodificação de bits mais significativos 950 pode compreender uma determinação de um número de bits totais dos coeficientes, ou de um número de bits menos significativos dos coeficientes, ou de uma posição de bits (ou um peso de bits) do um ou mais bits mais significativos. Ademais, a decodificação de bits mais significativos 950 pode compreender uma decodificação em conjunto de um, dois ou mais bits mais significativos de dois coeficientes espectrais de valores espectrais Xq(n), Xq(n+1).
[0208] Para detalhes opcionais, referência é feita, por exemplo, à descrição abaixo da "etapa 3a” (Figura 11a).
[0209] A decodificação no segundo modo também compreende uma decodificação de bits menos significativos 954, que pode ser considerada como sendo opcional. Na decodificação de bits menos significativos 954, uma decodificação de bits menos significativos, exceto para um ou mais bits menos significativos, acontece. A decodificação de bits menos significativos 954 pode ser similar à decodificação de bits menos significativos 934, exceto pelo fato que bits menos significativos, ou múltiplos bits menos significativos, são omitidos na decodificação de bits menos significativos 954. Para detalhes opcionais, referência é feita, por exemplo, à descrição abaixo da "etapa 3b” (nova versão) (Figura 11b).
[0210] A decodificação no segundo modo também compreende uma decodificação de sinal 958 em que sinais dos valores espectrais decodificados nas etapas 950, 954 são decodificados, na medida em que a porção decodificada dos valores espectrais que são decodificados nas etapas 950, 954 (que não compreendem o um ou mais bits menos significativos) indica um valor diferente de zero. Para detalhes opcionais, referência é feita, por exemplo, à descrição abaixo da "etapa 3c” (Figura 11c).
[0211] Deve ser considerado que etapas 950, 954, 958 são repetidas para todos os valores espectrais a serem decodificados, ou para todos os grupos de valores espectrais a serem decodificados, em que um número de valores espectrais a serem decodificados pode, por exemplo, ser indicado pelas últimas informações de coeficiente codificado diferente de zero fornecidas pelo codificador.
[0212] A decodificação no segundo modo também compreende uma restauração a zero 962 de coeficientes espectrais não codificados, que não foram fornecidos por um codificador e que não foram decodificados em vista das últimas informações de coeficiente codificado diferente de zero. Para detalhes opcionais, consultar a descrição abaixo da etapa 4.
[0213] Além disso, há uma determinação 968 de um número disponível de bits para uma decodificação de bits menos significativos. Em outras palavras, um número de bits não usados (bits do orçamento de bits que não foram usados nas etapas de decodificação 950, 954, 958) é determinado. Para detalhes, referência é feita, por exemplo, à descrição abaixo da "etapa 5”.
[0214] A decodificação no segundo modo também compreende uma decodificação seletiva 972 de um ou mais bits menos significativos para coeficientes que têm mais bits que o um ou mais bits mais significativos. Em outras palavras, um ou mais bits menos significativos podem ser codificados para apenas alguns dos valores espectrais que foram decodificados nas etapas 950, 954, 958, de modo que apenas alguns (mas não todos) dos ditos valores espectrais são refinados por informações de bits menos significativos. A etapa 972 pode, por exemplo, inclui uma consideração de sinal para tais valores espectrais para os quais um valor zero foi decodificado nas etapas 950 e 954 (de modo que nenhum sinal foi decodificado na etapa 958) e para o qual as informações de bits menos significativos indicam um valor diferente de zero. Consequentemente, os valores espectrais (ou coeficientes espectrais) serão refinados por informações de bits menos significativos de uma sequência de bits que compreende bits menos significativos e informações de sinal. O número de valores espectrais que serão refinados depende de um resultado da determinação 968 do número de bits disponíveis para bits menos significativos.
[0215] Consequentemente, a decodificação no segundo modo irá fornecer alguns valores espectrais com precisão completa (que inclui bits menos significativos) e alguns valores espectrais com precisão reduzida (sem bits menos significativos).
[0216] Deve ser considerado que os detalhes descritos abaixo para "etapa 3a” a "etapa 6” podem opcionalmente ser usados. Entretanto, os detalhes descritos abaixo para "etapa 3a” a "etapa 6” não deveriam ser considerados como sendo essenciais. Além disso, deve ser considerado que detalhes podem ser introduzidos para etapas individuais sem a necessidade de usar todos os detalhes descritos abaixo com referência à "etapa 3a” a "etapa 6”.
[0217] Ademais, a funcionalidade 900 também compreende realizar uma quantização inversa 980, em que os valores espectrais decodificados no primeiro modo e/ou os valores espectrais decodificados no segundo modo serão quantizados inversamente. Na quantização inversa, as informações de ganho global decodificadas na etapa 914 podem ser aplicadas. Entretanto, possibilidades diferentes para definir a quantização inversa podem também ser usadas.
10). MÉTODO DE CODIFICAÇÃO DE ACORDO COM AS FIGURAS 10a A 10F
[0218] A seguir, uma implementação exemplificativa das etapas para quantizar e codificar um espectro MDCT X(n), 0 ≤ n < N será descrita. O método pode, por exemplo, ser usado nos (ou realizado pelos) codificadores de áudio 300, 400, 500 ou no codificador de áudio 600. Recursos descritos no presente documento podem também assumir, individualmente ou em combinação, a funcionalidade 800. Em particular, um foco estará na operação no modo 2, que pode ser o único modo em algumas modalidades.
[0219] A seguir, uma primeira etapa será descrita. A primeira etapa compreende uma primeira estimativa do ganho global. Essa primeira estimativa, por exemplo, não quantiza o espectro nem computa o número de bits consumidos pelo codificador aritmético. É baseada apenas na energia de grupos de coeficientes de MDCT e uma abordagem iterativa de baixa complexidade para obter uma primeira estimativa grosseira do ganho global. Por exemplo, referência é feita à seção 1.3.8.2 no relatório descritivo NBC.
[0220] A seguir, uma segunda etapa será descrita. A segunda etapa compreende uma do espectro de MDCT com uso do ganho global constatado na etapa 1. Isso produz o espectro quantizado de MDCT Xq(n) 0 ≤ n < N. Para detalhes, referência é feita, por exemplo, à seção 1.8.3 no relatório descritivo NBC.
[0221] A seguir, uma terceira etapa será descrita. A terceira etapa compreende uma computação do número de bits necessários para codificar o espectro quantizado Xq(n). Além disso, essa etapa pode também tomar a decisão se deve usar uma abordagem convencional (também designada como "primeiro modo”) ou a nova abordagem (também designada como "segundo modo”). Por exemplo, a etapa pode definir bits de sinalização mencionados no presente documento (por exemplo, bits de sinalização que sinalizam se o primeiro modo ou o segundo modo deveria ser usado). Por exemplo, a nova abordagem (segundo modo) pode ser usada se um número de bits consumidos estiver acima do orçamento de bits e se alguns critérios são atendidos (por exemplo, uma alta taxa de bits é usada). A abordagem convencional (primeiro modo) pode ser usada se um número de bits consumidos estiver abaixo do orçamento de bits, ou se os critérios (por exemplo, os critérios para o uso do segundo modo) não são atendidos.
[0222] Por fim, a terceira etapa constata o último coeficiente codificado diferente de zero lastnz. É constatado conforme descrito na descrição da abordagem convencional (ou seja, para truncar o espectro) apenas se a abordagem convencional for selecionada ("a etapa constata o índice do último coeficiente codificado diferente de zero lastnz de modo que o número de bits consumidos do espectro truncado possa encaixar no orçamento de bits, consultar seção 1.3.8.4 no relatório descritivo NBC”). Se a nova abordagem (segundo modo) é selecionada, o espectro não é truncado e lastnz corresponde então simplesmente ao último coeficiente diferente de zero (por exemplo, ao coeficiente espectral de maior frequência diferente de zero).
[0223] A seguir, etapa 4 será descrita. A quarta etapa compreende ajustar o ganho global como uma função do número de bits computados na etapa 3. Se o número de bits for muito alto, o ganho global é aumentado. Se o número de bits for muito baixo, o ganho global é diminuído. Então, etapas 2 e 3 são opcionalmente refeitas. A etapa 4 pode ser repetida diversas vezes até que um ganho global ideal seja constatado. Entretanto, se baixa complexidade for necessária, a etapa 4 pode não ser realizada, ou pode ser realizada apenas uma vez (como, por exemplo, em NBC, consultar seção 1.3.8.6 no relatório descritivo NBC).
[0224] A seguir, etapa 5 será descrita. A etapa 5 compreende uma inicialização de estados de codificador aritmético, e uma inicialização de um contexto c que é usado pelo codificador aritmético.
[0225] A seguir, etapa 6 será descrita. A etapa 6 compreende codificação do ganho global e último coeficiente codificado diferente de zero lastnz como informação lateral. Adicionalmente, essa etapa também codifica os bits de sinalização (por exemplo, os bits de sinalização que indicam se o primeiro modo ou o segundo modo é usado) como informação lateral.
[0226] A seguir, etapa 7 será descrita. Entretanto, etapa 7 compreende repetição das subetapas 7a a 7e para todos (n = 0; n < lastnz; n + = 2). Em outras palavras, etapas 7a a 7e são representadas a partir de n = 0 contanto que n seja menor que lastnz, em que n é incrementado por dois em cada iteração. Dois valores espectrais são processados em cada iteração, e tipicamente todos os valores espectrais diferentes de zero serão processados (visto que, no modo 2, lastnz será escolhido de modo que pelo menos bits mais significativos serão codificados para todos os valores espectrais diferentes de zero).
[0227] A seguir, etapa 7a será descrita. A etapa 7a compreende computar o número mínimo de bits necessários para representar a amplitude (ou magnitude, ou valor absoluto) dos dois coeficientes Xq(n) e Xq(n+1) (que são, preferencialmente, valores de número inteiro). Para detalhes referentes a uma implementação exemplificativa, referência é feita ao código de pseudoprograma da Figura 10a (conferir numeral de referência 1000a). Um coeficiente que tem o maior valor absoluto determina o número mínimo de bits necessários para representar a amplitude (magnitude, valor absoluto) dos dois coeficientes.
[0228] A seguir, etapa 7a-bis será descrita, que pode, por exemplo, ser realizada entre as etapas 7a e 7b. Em outras palavras, etapa 7a-bis é uma etapa adicional logo após a etapa 7a, que é realizada se numbits for maior que dois (numbits > 2). Em outras palavras, etapa 7a-bis é realizada se mais bits que os dois bits mais significativos forem necessários para representar Xq(n) e/ou Xq(n+1). Na etapa 7a-bis, os bits menos significativos de cada coeficiente são "poupados” e o coeficiente é então modificado de modo que seus bits menos significativos seja agora zero. O sinal do coeficiente é também poupado no caso de o coeficiente ser originalmente diferente de zero e ser tornar zero após definir seus bits menos significativos a zero.
[0229] Para detalhes referentes a essa funcionalidade, referência é feita, por exemplo, à representação de código de pseudoprograma mostrada na Figura 10b.
[0230] Conforme pode ser observado no numeral de referência 1010a, bits menos significativos de um valor absoluto de Xq[n] são extraídos e poupados em uma sequência de bits lsbs em uma posição indicada por variáveis em execução nlsbs (comparar com sinal de referência 1010b). A variável em execução nlsbs é então aumentada para se referir aos próximos bits não usados dentro da sequência de bits lsbs. Se for constatado que Xq é +1 ou -1 (condição no numeral de referência 1010c), um bit de sinal é definido para ser 0 se Xq[n] for maior que 0 e definido para ser 1 se Xq for menor que 0, conforme pode ser constatado no numeral de referência 1010d. Além disso, se Xq for +1 ou -1, o bit de sinal é poupado, com um próximo bit, na sequência de bits lsbs, que é mostrada no numeral de referência 1010e. Ademais, o valor espectral sinalizado Xq é então modificado em que valores ímpares são definidos para valores pares adjacentes que têm uma magnitude menor. Essa funcionalidade é mostrada no numeral de referência 1010f.
[0231] Entretanto, deve ser constatado que a ordem das etapas de processamento 1010a a 1010f poderiam ser alteradas, desde que a funcionalidade geral permaneça inalterada. Naturalmente, também seria possível armazenar quantidades intermediárias.
[0232] Além disso, deve ser constatado que a mesma funcionalidade é também realizada para o valor espectral Xq[n+1], que é mostrado nos numerais de referência 1011a a 1011f.
[0233] Consequentemente, etapa 7a-bis fornece uma sequência de bits lsbs, que representa os bits menos significativos de todos os valores espectrais para os quais numbits é maior que dois, em que bits de sinal são incluídos na sequência de bits lsbs para valores espectrais para os quais numbits é maior que dois e que assume o valor +1 ou -1 (por exemplo, porque eles estão em um grupo com um maior valor espectral). Os bits na sequência lsbs são ordenados na sequência dos valores espectrais, mas não há bits na sequência lsbs para tais valores espectrais para os quais numbits não é maior que dois (ou seja, que são completamente representados pelos dois bits mais significativos).
[0234] A seguir, a etapa 7b será descrita. Nessa etapa 7b, informações referentes ao valor “numbits” serão codificadas (em que numbits foi determinado na etapa 7a e descreve um peso de bits dos bits mais significativos que são codificados para um valor espectral ou um grupo de valores espectrais). Por exemplo, etapa 7b compreende codificação de valores de escape de numbits-2 (por exemplo, representados por VAL_ESC = 16) se numbits for maior que 2. Para detalhes, referência é feita à Figura 10c (numeral de referência 1020a). Por exemplo, os valores de escape são codificados com uso de uma codificação aritmética, em que um contexto é avaliado para obter probabilidades para a codificação aritmética. Os símbolos de escape são codificados com codificação aritmética com uso das probabilidades p. Além disso, o contexto é atualizado.
[0235] Entretanto, quaisquer detalhes dessa etapa não são essenciais para a presente invenção.
[0236] A seguir, a etapa 7c será descrita. A etapa 7c compreende codificação de dois bits mais significativos de cada coeficiente Xq(n) e Xq(+1) como um único símbolo sym (cujo valor encontra-se entre 0 e 15). Na etapa 1040a, é determinado, com base no valor numbits, por quantos bits a representação numérica (binária) de Xq[n] e Xq[n+1] (conforme modificado na etapa 7a-bis para o caso de numbits > 2) será deslocada para a direita. Isso é mostrado no numeral de referência 1040a e pode ser considerado como opcional. Na etapa 1040b, Xq[n] é processado de modo que bits em posições de bits determinadas por numbits são armazenados em uma variável a. Na etapa 1040c, Xq[n+1] é processado de modo que bits em posições de bits determinadas por numbits são assumidas em variável b. Em outras palavras, bits em posições de bits considerados como dois bits mais significativos são assumidos em variáveis a e b.
[0237] Consequentemente, um valor de bits quatro é determinado que combine os dois bits mais significativos de Xq[n] e Xq[n+1], conforme é mostrado no numeral de referência 1040d. Sym variável então representa um símbolo de bits quatro que compreende dois bits mais significativos de cada um dos dois valores espectrais a serem codificados juntos. Então, probabilidades para a codificação aritmética são determinadas a partir do contexto c da codificação aritmética, e o símbolo sym é codificado com uso de uma codificação aritmética e que considera as probabilidades p determinadas a partir do contexto. De maneira subsequente, o contexto é atualizado.
[0238] Consequentemente, uma representação aritmética codificada de símbolo sym que representa os dois bits mais significativos dos dois valores espectrais a serem codificados em conjunto é obtida.
[0239] A seguir, etapa 7d será descrita. A etapa 7d compreende uma codificação dos bits remanescentes (também designados como "bits intermediários” ou "bits menos significativos”) exceto pelos bits menos significativos. Para detalhes, referência é feita à Figura 10e, que mostra uma representação de código de pseudoprograma. Conforme pode ser observado, variável em execução b executa de b=1 a numbits-3. Consequentemente, bits são codificados a partir da posição de bits 2 (que tem valor de bits 2) desde que os dois bits mais significativos que são codificados juntos na etapa 7c estejam pelo menos em posições de bits 3 e 4 (que têm valores de bits 4 e 8) ou em posições maiores de bits. Consequentemente, bits nas posições de bits (b+1) dos valores absolutos dos valores espectrais Xq[n] e Xq[n+1] são codificados como informação lateral. Consequentemente, quaisquer bits que se encontram entre os bits menos significativos e os dois bits mais significativos são codificados como informação lateral na etapa 7d, desde que tais bits existam (que depende das posições de bits dos bits mais significativos conforme definido por numbits).
[0240] Por exemplo, um circuito mostrado no numeral de referência 1050a é executa de b=1 a b = numbits - 3 (desde que numbits seja maior que ou igual a 4). Conforme pode ser observado no numeral de referência 1050b, bits na posição de bits b+1 do valor absoluto de Xq[n] são decodificados como informação lateral. Conforme pode ser observado no numeral de referência 1050c, bits na posição de bits b+1 do valor absoluto de Xq[n+1] são codificados como uma informação lateral. As etapas 1050b e 1050c são repetidas até que variável em execução b numbits-2.
[0241] A seguir, etapa 7e será descrita. A etapa 7e inclui codificação do sinal de cada coeficiente (ou valor espectral) exceto se o coeficiente for 0. Deve ser considerado que, na etapa 7e, os coeficientes modificados na etapa 7a-bis são considerados. Em outras palavras, o sinal do valor espectral Xq será codificado se o valor original de Xq (antes da modificação na etapa 7a-bis) for maior que ou igual a 2 ou menor que ou igual a -2. Em contraste, se Xq[n] era originalmente igual a 0, ou foi definido a 0 na etapa 7a-bis, não há codificação do sinal na etapa 7e. A verificação se o valor espectral (modificado) Xq[n] é igual a 0 ou não é observada no numeral de referência 1060a, e a provisão de bits de sinal "0” para um valor positivo de Xq[n] e de bits de sinal "1” para um valor negativo de Xq[n] pode ser observada no numeral de referência 1060b. A codificação do valor de sinal como informação lateral é mostrada no numeral de referência 1060c.
[0242] Uma funcionalidade similar é também realizada para Xq[n+1], que é mostrada nos numerais de referência 1061a, 1061b e 1061c.
[0243] A seguir, etapa 8 será descrita. A etapa 8 compreende finalizar o codificador aritmético e computar um número de bits não usados. Por exemplo, pode ser computado quantos bits do orçamento total de bits permanece não usado nas etapas 7b, 7c, 7d e 7e.
[0244] A seguir, etapa 9 será descrita. Na etapa 9, (se a nova abordagem for selecionada, ou se o segundo modo for selecionado, ou se o codificador apenas usa o segundo modo) quantização/codificação residual (conforme no conceito convencional) não é usada. Se houver bits não usados, esses são usados para codificação dos bits nlsbs que são poupados em lsbs[] (consultar a etapa 7a-bis). Em outras palavras, se for constatado, por exemplo, após a conclusão das etapas 7a a 7e, que nem todos os bits do orçamento de bits foram usados, um número de bits da sequência de bits lsbs fornecida na etapa 7a-bis será incluído em um fluxo de bits (ou, geralmente, em uma representação de áudio codificado). O número de bits da sequência de bits lsbs incluído na representação de áudio codificado pode, por exemplo, ser determinado pelo número de bits não usados, de modo que o orçamento de seja completamente usado (por exemplo, até 1 ou 2 bits, ou até mesmo totalmente).
[0245] Para concluir, deve ser considerado que as etapas descritas no presente documento, ou detalhes das mesmas, podem ser usadas ao realizar a funcionalidade da Figura 8. Por exemplo, as etapas 1 a 4 descritas nesse documento, ou detalhes das mesmas, podem ser usadas para implementar funcionalidades 810, 814, 818 e 830.
[0246] Além disso, as 5 a 9 descritas nesse documento podem ser usadas para implementar funcionalidades 870, 874, 878, 882, 886, 890, 892, 894, 896 e 898. Entretanto, deve ser considerado que os detalhes descritos no presente documento podem ser individualmente incorporados nas etapas da funcionalidade 800.
11). DECODIFICAÇÃO DE ÁUDIO DE ACORDO COM AS FIGURAS 11A A 11D
[0247] A seguir, uma funcionalidade de decodificação de áudio será descrita com referência às Figuras 11a a 11d. A funcionalidade de decodificação descrita nesse documento pode ser usada para fornecer valores espectrais decodificados com base em informações codificadas que representam os valores espectrais. A funcionalidade descrita no presente documento pode ser usada, por exemplo, nos decodificadores de áudio de acordo com as Figuras 1 e 2 e o decodificador de áudio 700 de acordo com a Figura 7 (por exemplo, para implementar a decodificação 720). As etapas descritas no presente documento podem também ser usadas na funcionalidade 900, por exemplo, para implementar funcionalidades 910, 950, 954, 958, 962, 968 e 972.
[0248] A seguir, a funcionalidade para decodificação de valores espectrais será descrita etapa por etapa (com foco na decodificação no "segundo modo” ou no caso de apenas o segundo modo ser usado).
[0249] A seguir, a primeira etapa será descrita. A primeira etapa compreende uma inicialização dos estados do decodificador aritmético e uma inicialização de um contexto c usado pelo decodificador aritmético.
[0250] A seguir, a segunda etapa será descrita. A segunda etapa compreende decodificação do ganho global (ou informações de ganho global, ou quaisquer outras informações que descrevem a quantização inversa) e as últimas informações de coeficiente codificado diferente de zero “lastnz”. Em outras palavras, a segunda etapa compreende decodificação de algumas informações laterais ou informações de controle. Adicionalmente, a segunda etapa também decodifica os bits de sinalização (por exemplo, os bits de sinalização que definem se o primeiro modo ou o segundo modo devem ser usados).
[0251] A seguir, a etapa 3 será descrita. Por exemplo, a etapa 3 compreende repetir as etapas 3a a 3c para todos (n = 0; n < lastnz; n + =2). Em outras palavras, a etapas 3a a 3c serão repetidas para todos os valores espectrais a serem decodificados (conforme definido por lastnz), em que grupos de dois valores espectrais serão processados juntos.
[0252] A seguir, a etapa 3a será descrita. A etapa 3a compreende decodificação de dois bits mais significativos de tanto coeficientes (ou valores espectrais) Xq(n) quanto Xq(n+1). Detalhes referentes à etapa 3a são mostrados na Figura 11 a.
[0253] A etapa 3a compreende uma determinação de numbits variável, que descreve uma posição de bits dos dois bits mais significativos a serem codificados. O numbits variável é inicializado a 1 no numeral de referência 1110a. De maneira subsequente, probabilidades p são obtidas a partir do contexto (que foi inicializado antes) na etapa 1110b e símbolo sym é decodificado com uso de uma decodificação aritmética e com uso das probabilidades p na etapa 1110c. De maneira subsequente, o contexto é atualizado na etapa 1110d e o numbits variável é aumentado por 1 na etapa 1110e. Entretanto, se o símbolo sym decodificado for o símbolo de escape, as etapas 1110b, 1110c, 1110d e 1110e são repetidas. Portanto, se o primeiro símbolo decodificado não for símbolo de escape, numbits é definido para ser igual a 2 e as posições de bits mais significativos a serem decodificados iriam definir os bits nas posições de bits 1 e 2 (que têm valores de bits 1 e 2). No entanto, se um ou mais símbolos de escape forem identificados pela decodificação aritmética, o numbits variável é aumentado adicionalmente, que indica um peso maior de bits dos bits mais significativos a serem decodificados, que também indica que há um “lugar” para um ou mais bits menos significativos. Entretanto, logo que é constatado que o último símbolo decodificado não é um símbolo de escape, os valores mais significativos, que têm pesos de bits definidos por numbits variável, são determinados com base no símbolo decodificado. Por exemplo, se o símbolo for representado por um valor de bits quatro, dois bits do valor de bits quatro são usados para definir os dois bits mais significativos de valor espectral Xq[n], e dois bits do valor de bits quatro são usados para definir os dois bits mais significativos do valor espectral Xq[n+1]. Detalhes podem ser considerados nos numerais de referência 1110f e 1110g. Consequentemente, 0, 1 ou mais símbolos de escape, que são codificados pela decodificação aritmética, determinam os pesos de bits dos bits mais significativos, e um símbolo que não é um símbolo de escape define os valores de bits mais significativos de dois valores espectrais.
[0254] A seguir, a etapa 3a-bis será descrita. A etapa 3a-bis é uma etapa adicional logo após a etapa 3a. Essa etapa poupa numbits em um arranjo de numbits[n] para que ele possa ser reutilizado depois na etapa 6. Em outras palavras, os valores do numbits variável são mantidos para todos os pares de valores espectrais decodificados para um uso posterior. Isso é, no entanto, apenas uma etapa auxiliar.
[0255] A seguir, a etapa 3b será descrita. A etapa 3b compreende decodificação dos bits remanescentes exceto pelos bits menos significativos. Para detalhes, referência é feita à Figura 11b. Deve ser considerado aqui que a etapa 3b apenas decodifica bits remanescentes se numbits for maior que ou igual a 4, ou seja, se a representação de números binários dos valores espectrais (ou de pelo menos um valor espectral de um par de valores espectrais processados juntos) compreende mais bits que dois bits mais significativos e um bit menos significativo (ou seja, pelo menos 4 bits). Esses bits, posições de bits dos quais estão entre os bits menos significativos e os dois bits mais significativos são decodificados de maneira subsequente, a partir dos bits que têm posições de bits 2 e que procedem para bits que têm posições maiores de bits (se algum). Para esse propósito, variável em execução b é inicializada a 1 e a decodificação de bits é realizada enquanto b for menor que o numbits-2. Uma funcionalidade de circuito é mostrada no numeral de referência 1120a, uma decodificação de bits para o primeiro valor espectral Xq é mostrada no numeral de referência 1120b, e uma adição dos bits, pesados com seus pesos de bits, até o primeiro valor espectral ser mostrado no numeral de referência 1120c, uma decodificação de bits para o segundo valor espectral Xq[n+1] é mostrada no numeral de referência 1120d, e uma adição dos bits, pesados por seus pesos de bits, é mostrada no numeral de referência 1120e.
[0256] A seguir, a etapa 3c será descrita. A etapa 3c compreende decodificação do sinal de cada coeficiente, exceto se o coeficiente (ou valor espectral) for 0.
[0257] Por exemplo, é verificado se o coeficiente espectral decodificado até então (nas etapas 3a e 3b, sem considerar os bits menos significativos) é igual a 0 ou não (consultar numeral de referência 1130a). Se o valor espectral Xq[n] for diferente de 0, então bits de sinal são decodificados (etapa 1130b) e se os bits de sinal forem iguais a 1 (que é verificado no numeral de referência 1130c) então o sinal de Xq[n] é invertido (comparar com numeral de referência 1130d). Uma funcionalidade similar é realizada para o segundo valor espectral, conforme mostrado nos numerais de referência 1131a a 1131 d.
[0258] A seguir, a etapa 4 será descrita. Na etapa 4, todos os coeficientes (ou valores espectrais) para os quais um índice n é maior ou igual a lastnz são definidos a 0. Consequentemente, aqueles coeficientes espectrais que não foram codificados pelo codificador (que é sinalizado pelas informações laterais "lastnz”) são definidos a um valor bem definido (0).
[0259] A seguir, a etapa 5 será descrita.
[0260] A etapa 5 compreende uma finalização do decodificador aritmético e computação do número de bits não usados. Por exemplo, podem ser computados quantos bits foram decodificados nas etapas 3a, 3b e 3c, e pode então ser concluído quantos bits de um orçamento total de bits não foram usados até então.
[0261] A seguir, a etapa 6 será descrita. Na 6a etapa, se houverem bits não usados, bits nlsbs são codificados e eles são armazenados em lsbs[]. Em outras palavras, uma sequência de bits nlsbs será usada para um refinamento de bits menos significativos, em que eles podem tanto ser usados diretamente quanto podem ser armazenados em uma estrutura de dados intermediários, como um arranjo lsbs[]. Então, coeficientes (n, n+1) (ou valores espectrais Xq[n] e Xq[n+1]) são refinados se numbits[n] for maior que 2 (para os respectivos valores espectrais que têm índice n e n+1) com uso dos bits lsb decodificados (ou bits de bits menos significativos).
[0262] Para detalhes, referência é feita à Figura 11 d.
[0263] Conforme pode ser observado no numeral de referência 1140a, variável em execução k é inicializada a 0. Então, o processamento de circuito é executado sobre todos os pares de valores espectrais, em que a definição de circuito pode ser observada no numeral de referência 1140b. Entretanto, deve ser considerado que quaisquer pares de valores espectrais são pulados no processamento de circuito que não compreende mais bits que os dois bits mais significativos. Uma verificação se o par de valores espectrais atualmente processados compreende mais bits que os bits mais significativos pode ser observada no numeral de referência 1140c. Além disso, deve ser considerado que o processamento (por exemplo, o refinamento de valores espectrais com uso de informações de bits menos significativos) é parada de qualquer modo (mesmo se nem todos os valores espectrais que têm mais bits que os dois bits mais significativos foram considerados) quando o número de bits processados atinge o número total nlsbs de bits disponíveis para o refinamento de bits menos significativos. Um aborto do processamento de circuito é, por exemplo, efetuado pelo comando “interromper”, e pode ser observado que há tipicamente uma avaliação se um número máximo de bits disponível para o refinamento de bits menos significativos foi atingido antes de novos bits da sequência ou arranjo de bits lsbs ser avaliados. Por exemplo, há uma verificação se todos os bits disponíveis foram avaliados no numeral de referência 1140d, que precede a leitura de novos bits da sequência ou arranjo de bits lsbs, que pode ser observado no numeral de referência 1140e. Após uma leitura de bit da sequência ou arranjo de bits lsbs (no numeral de referência 1140e), ação diferente é tomada que depende do valor de bits e também que depende do valor do valor espectral decodificado anteriormente Xq[n]. Se o valor da leitura de refinamento de bits na etapa 1140e for zero, nenhuma ação adicional é tomada (porque todos os bits não indicam necessidade para uma emenda do valor decodificado anteriormente). Em contraste, se o valor da leitura de refinamento de bits na etapa 1140e for "1” a ação tomada depende do valor real do valor espectral Xq[n]. Se o valor espectral Xq for maior que zero e se a leitura de bits na etapa 1140e for "1”, então o valor espectral Xq[n] é aumentado por 1 (ou seja, por um valor de bits menos significativos), que pode ser observado no numeral de referência 1140f. Se o valor espectral Xq[n] for negativo e a leitura de valor de bits na etapa 1140e for "1” então o valor espectral Xq[n] é reduzido por 1 (ou seja, por um valor de bits menos significativos).
[0264] Entretanto, se o valor Xq for 0 e o valor de bits da leitura de bits na etapa 1140e for "1”, então outros bits são lidos da sequência ou arranjo de bits lsbs, conforme mostrado no número de referência 1140i, em que a leitura de outros bits na etapa 1140i é precedida por uma verificação se um número total de bits disponível já foi atingido (o que leva a um aborto do circuito pelo comando "interromper”). De maneira subsequente, o valor de Xq[n] é seletivamente definido a +1 ou -1 a depender do valor da leitura de "bits de sinal” na etapa 1140i, que é mostrado no numeral de referência 1140j. De maneira subsequente, etapas 1140d a 1140j são repetidas para o segundo valor espectral Xq[n+1].
[0265] Para concluir, enquanto nem todos os bits da sequência ou arranjo de bits lsbs, que estão disponíveis para o refinamento dos bits menos significativos, forem usados, há um processamento de "bits de refinamento” da dita sequência ou arranjo de bits lsbs. Se o valor espectral decodificado anteriormente Xq[n], Xq[n+1 ] for diferente de zero 0, uma magnitude do dito valor espectral é aumentada seletivamente por um valor de bits menos significativos que dependem de uma leitura de "bits de refinamento” da sequência ou arranjo de bits lsbs. Se o valor espectral decodificado anteriormente Xq[n], Xq[n+1 ] for 0, então os "bits de sinal” são extraídos adicionalmente da sequência ou arranjo de bits lsbs, e os bits de sinal decidem se o valor espectral Xq[n], Xq[n+1] deve ser definido a +1 ou -1 no caso do refinamento de bit anterior (primeiro) indicar que o valor espectral deve ser modificado por um valor de bits menos significativos. Em contraste, os bits de sinal não são usados se os bits de refinamento indicam que um valor do valor espectral Xq[n], Xq[n+1] deve permanecer inalterado.
[0266] Em outras palavras, os primeiros bits de refinamento associados a um valor espectral podem ser considerados como bits que indicam se a magnitude do valor espectral deve ser aumentada por um valor de bits menos significativos, e os segundos bits de refinamento (bits de sinal) são apenas usados em casos que o valor espectral decodificado anteriormente era 0.
[0267] Portanto, há um conceito muito eficiente para o refinamento, em que tipicamente apenas um bit é necessário para o refinamento de bits menos significativos de um valor espectral, e em que dois bits (bits que decidem se deve haver um refinamento e bits que decidem o sinal) são apenas necessários no caso de o valor espectral decodificado anteriormente ser 0.
[0268] Deve ser considerado que as funcionalidades descritas nesse documento podem, por exemplo, ser usadas na funcionalidade de decodificação 900.
[0269] Os recursos discutidos no presente documento em muitos detalhes, com referência ao código de pseudoprogramas podem ser introduzidos na funcionalidade conforme mostrado na Figura 9 individualmente ou em combinação. Entretanto, deve ser considerado que não é necessário incluir cada e todo detalhe, e que os detalhes descritos nesse documento podem ser vantajosos quando incorporados individualmente.
11). CONCLUSÕES 11.1) GERAL
[0270] A seguir, Algumas ideias básicas da presente invenção serão resumidas. Em particular, os aspectos mencionados no presente documento podem ser implementados individualmente ou em combinação com os outros aspectos nas modalidades da invenção.
[0271] Modalidades de acordo com a invenção são baseadas na constatação que, em taxas menores de bits, uma abordagem convencional pode degradar severamente o desempenho de codificação. Foi constatado que em taxas elevada de bits, o orçamento elevado de bits permite quantizar o espectro completo com alta precisão, até mesmo os coeficientes de alta frequência. Foi também constatado que definir alguns dos coeficientes de alta frequência a 0 iriam adicionar uma quantidade significativa de distorção nas frequências altas, o que iria evitar uma qualidade transparente do sinal de saída decodificado. Na Figura 12, um espectro SNR de MDCT é plotado para cada quadro de um sinal de áudio e para duas taxas de bits, uma taxa baixa de bits de 32 kbps e uma taxa alta de bits de 128 kbps. O SNR em 32 kbps parece consistente, mas o SNR em 128 kbps contém grandes quedas. Essas quedas correspondem aos quadros em que os coeficientes de alta frequência foram truncados porque o número de bits consumidos excede o orçamento de bits.
11.2). DESCRIÇÃO ETAPA POR ETAPA DA ABORDAGEM CONVENCIONAL
[0272] A seguir, as etapas necessárias para quantizar e codificar o espectro MDCT X(n), 0 ≤ n < N conforme realizado em uma abordagem convencional será descrita.
[0273] Codificador
• Etapa 1: Primeira estimativa do ganho global. Essa primeira estimativa não quantiza o espectro nem compute o número de bits consumidos pelo codificador aritmético. Ela é baseada apenas na energia de grupos de coeficientes de MDCT coeficientes e uma abordagem iterativa de baixa complexidade para obter uma primeira estimativa grosseira do ganho global. (consultar a Seção 1.3.8.2 no relatório descritivo NBC)
• Etapa 2: Quantização do espectro de MDCT com uso do ganho global constatado na Etapa 1. Isso produz o espectro de MDCT quantizado Xq(n), 0 ≤ n < N. (consultar a Seção 1.3.8.3 no relatório descritivo NBC)
• Etapa 3: Computar o número de bits necessários para codificar o espectro quantizado Xq(n). Se o número de bits excede o orçamento de bits, essa etapa também constata o índice do último coeficiente codificado diferente de zero lastnz, de modo que o número consumido de bits do espectro truncado pode encaixar no orçamento de bits. (consultar a Seção 1.3.8.4 no relatório descritivo NBC)
• Etapa 4: Ajustar o ganho global como uma função do número de bits computado na Etapa 3: se o número de bits for muito alto, aumentar o ganho global; se o número de bits for muito baixo, diminuir o ganho global. Então, refazer as Etapas 2 e 3. A Etapa 4 pode ser repetida diversas vezes até que o ganho global ideal seja constatado. Se complexidade baixa for necessária, a Etapa 4 não é realizada ou realizada apenas uma vez (como em NBC, consultar a Seção 1.3.8.6 no relatório descritivo NBC).
• Etapa 5: Inicialização dos estados do codificador aritmético; Inicialização do contexto c.
• Etapa 6: Codificar o ganho global e o último coeficiente codificado diferente de zero lastnz como informações laterais.
• Etapa 7: Repetir as seguintes subetapas para todos (n = 0; n < lastnz; n+= 2):
o Etapa 7a: Computar o número mínimo de bits necessário para representar a amplitude dos dois coeficientes Xq(n) e Xq(n + 1)
Figure img0001
o Etapa 7b: Codificar valores de escape de numbits-2 (VAL_ESC=16) se numbits>2
Figure img0002
o Etapa 7c: Codificar os 2 bits mais significativos de tanto coeficientes Xq(n) quanto Xq(n + 1) como um único símbolo sym (cujo valo se encontra entre 0 e 15)
Figure img0003
Figure img0004
o Etapa 7d: Codificar os bits remanescentes se numbits>2
Figure img0005
o Etapa 7e: Codificar o sinal de cada coeficiente, exceto se o coeficiente for zero
Figure img0006
Figure img0007

• Etapa 8: Finalizar o codificador aritmético e computar o número de bits não usados.
• Etapa 9: Se houverem bits não usados, codificar bits residuais dado o quantizador residual (consultar a Seção 1.3.9 no relatório descritivo NBC).
DECODIFICADOR
• Etapa 1: Inicialização dos estados do decodificador aritmético; Inicialização do contexto c.
• Etapa 2: Decodificar o ganho global e o último coeficiente codificado diferente de zero lastnz.
• Etapa 3: Repetir as seguintes subetapas para todos (n = 0; n < lastnz; n += 2):
o Etapa 3a: Decodificar os 2 bits mais significativos de tanto coeficientes Xq(n) quanto Xq(n + 1)
Figure img0008
o Etapa 3b: Decodificar os bits remanescentes se numbits>2
Figure img0009
Figure img0010
o Etapa 3c: Decodificar o sinal de cada coeficiente, exceto se o coeficiente for zero
Figure img0011

• Etapa 4: Definir todos os coeficientes n >= lastnz a zero
• Etapa 5: Finalizar o decodificador aritmético e computar o número de bits não usados.
• Etapa 6: Se houverem bits não usados, decodificar bits residuais. Aplicar o quantizador residual inverso que refina os coeficientes diferentes de zero com uso dos bits residuais (consultar a Seção 1.4.3 no relatório descritivo NBC).
• Etapa 7: Quantização inversa: multiplicar os coeficientes de MDCT decodificados pelo ganho global
[0274] Deve ser considerado que etapas 1 a 9 conforme descrito na presente seção "descrição etapa por etapa da abordagem convencional” podem ser usadas em codificadores e decodificadores convencionais de áudio, e podem também ser usadas quando um codificador de áudio ou decodificador de acordo com a presente invenção operar em um primeiro modo de codificação.
[0275] Por exemplo, etapas de codificador 1 a 9 descritas na descrição etapa por etapa da abordagem convencional podem ser usadas para implementar funcionalidades 810, 814, 818, 840, 844, 848, 852, 856, 860, 864, 868 e 869. Etapas de codificador 1,2, 4, 5, 6, 7a, 7c, 7e e 8 descritas acima na descrição etapa por etapa da abordagem convencional podem também ser usadas em um codificador de áudio de acordo com uma modalidade da presente invenção, por exemplo para implementar funcionalidades 810, 814, 818, 822, 870, 874, 878, 886, 890, 894 a 896 (por exemplo, ao funcionar no novo segundo modo).
[0276] Etapas de decodificador 1, 2, 3, 3a, 3b, 3c, 4, 5, 6 e 7 podem também ser usados em uma decodificação de áudio de acordo com a presente invenção ao operar no "primeiro modo”, por exemplo, para implementar etapas 910, 914, 918, 930, 934, 938, 942, 944, 948 e 980.
[0277] Ademais, etapas de decodificador 1, 2, 3, 3a, 3c, 4, 5 e 7 podem também ser usadas para implementar funcionalidades 910, 914, 918, 950, 958, 962, 968 e 980 em um decodificador inventivo (por exemplo, ao operar no "segundo modo”).
11.3). ASPECTOS DA INVENÇÃO PROPOSTA
[0278] A seguir, melhorias e extensões sobre as etapas de decodificador e etapas de decodificador usadas na abordagem convencional serão descritas.
[0279] Foi constatado que, em altas taxas de bits, o espectro de MDCT quantizado Xq[n] computado nas etapas de decodificador 1 a 4 contém coeficientes com alta amplitude. Foi constatado que o número mínimo de bits necessários para representar a amplitude desses coeficientes (etapa de decodificador 7a) é, portanto, maior na maior parte dos casos acima de 2. Consequentemente, há na maior parte dos casos pelo menos um bit menos significativo (LSB) por coeficiente, codificado como informação lateral conforme descrito na etapa de decodificador 7d. Esses bits menos significativos (LSBs) são as informações menos importantes, e foi constatado que eles podem ser removidos com um impacto relativamente pequeno no SNR. Foi constatado que, na verdade, o impacto é muito menor que definir um coeficiente inteiro a 0 (ou seja, definir tanto bits mais significativos MSBs quanto bits menos significativos LSBs a 0) como nas abordagens convencionais.
[0280] Modalidades de acordo com a invenção proposta são, portanto, baseadas na ideia que é mais eficiente truncar os bits menos significativos LSBs do que truncar os coeficientes de alta frequência, em que o número de bits consumido para codificação dos dados quantizados de MDCT excede o orçamento de bits. Isso é, entretanto, apenas vantajoso (ou apenas possível) quando os coeficientes de espectro quantizado de MDCT têm uma amplitude alta, assim como altas taxas de bits. Consequentemente, a invenção proposta adiciona bits de sinalização ao fluxo de bits como informação lateral (em que os ditos bits de sinalização podem, por exemplo, descrever se o "primeiro modo” ou o "segundo modo” é usado). Esses bits sinalizam se a abordagem convencional (por exemplo, conforme descrito na seção descrição etapa por etapa da abordagem convencional) ou a nova abordagem (conforme descrito, por exemplo, na seção descrição etapa por etapa de uma modalidade da invenção proposta) é usada. Deve ser considerado que no caso de o número de bits consumidos estar abaixo do orçamento de bits, a nova abordagem não é necessária, e os bits de sinalização podem ser definidos para disparar a abordagem convencional. A nova abordagem é, por exemplo, usada apenas quando o número de bits consumidos excede o orçamento de bits e alguns critérios são atendidos (por exemplo, alta taxa de bits).
[0281] Na Figura 13, o mesmo experimento conforme para a Figura anterior (Figura 12) foi feito, exceto que uma modalidade de acordo com a invenção proposta foi usada para o caso de alta taxa de bits de 128 kbps. O SNR a 128 kbps parece agora muito mais consistente, todas as quedas se foram.
11.4). DESCRIÇÃO ETAPA POR ETAPA DE UMA MODALIDADE DA INVENÇÃO PROPOSTA
[0282] A seguir, uma modalidade de acordo com a presente invenção será descrita etapa por etapa. Nessa descrição, referência também será feita à descrição etapa por etapa da abordagem convencional fornecida na seção 11.2, visto que diversas etapas da abordagem convencional podem ser incorporadas.
[0283] Em outras palavras, muitas dessas etapas descritas na seção 11.2 (abordagem convencional) são as mesmas aqui. Assim, apenas as etapas que são diferentes serão descrita aqui.
CODIFICADOR
• Etapa 3: Essa etapa ainda computa o número de bits necessário para codificar o espectro quantizado Xq(n). Além disso, essa etapa deve também tomar a decisão se usa a abordagem da técnica anterior ou a nova abordagem (ou seja, definir os bits de sinalização mencionados na seção anterior)
➢ nova abordagem se: bits consumidos acima do orçamento de bits e alguns critérios são atendidos (por exemplo, alta taxa de bits)
➢técnica anterior se: bits consumidos abaixo do orçamento de bits, ou os critérios não são atendidos
Por fim, a etapa encontra o último coeficiente codificado diferente de zero lastnz. É constatado conforme descrito na Seção 11.2 (ou seja, para truncar o espectro) apenas se a abordagem da técnica anterior for selecionada. Se a nova abordagem for selecionada, o espectro não é truncado e lastnz corresponde então simplesmente ao último coeficiente diferente de zero.
• Etapa 6: adicionalmente, essa etapa agora codifica também os bits de sinalização como informações laterais.
As outras etapas de decodificador são as mesmas se a abordagem da técnica anterior foi selecionada. Se a nova abordagem for selecionada, as seguintes etapas são adicionadas/modificadas.
o Etapa 7a-bis: essa é uma etapa adicional logo após a Etapa 7a, que é realizada se numbits>2. Os bits menos significativos de cada coeficiente são poupados, e o coeficiente é então modificado de modo que seus LSB sejam agora zero. O sinal do coeficiente é também poupado no caso de o coeficiente ser originalmente diferente de zero e se tornar zero após definir seus LSB a zero.
Figure img0012
Figure img0013
o Etapa 7d: Codificar os bits remanescentes exceto os bits menos significativos
Figure img0014
Figure img0015
• Etapa 9: se a nova abordagem for selecionada, quantização/codificação residual não é usada. Se houver bits não usados, esses são usados para codificação dos bits nlsbs que foram poupados em lsbs[] (consultar a Etapa 7a-bis).
DECODIFICADOR
• Etapa 2: adicionalmente, essa etapa agora decodifica também os bits de sinalização.
As outras etapas de decodificador são as mesmas se a abordagem da técnica anterior foi selecionada. Se a nova abordagem for selecionada, as seguintes etapas são adicionadas/modificadas.
o Etapa 3a-bis: essa é uma etapa adicional logo após a Etapa 3a. Isso poupa numbits em um arranjo de numbits[n] para que eles possam ser reutilizados posteriormente na etapa 6.
o Etapa 3b: Decodificar os bits remanescentes exceto os bits menos significativos
Figure img0016
• Etapa 6: Se houverem bits não usados, decodificar bits nlsbs e armazená-los em lsbs[]. Então refinar os coeficientes (n,n+1) se numbits[n]>2 com uso dos bits LSB decodificados.
Figure img0017
Figure img0018
Figure img0019
12. MÉTODOS DE ACORDO COM AS FIGURAS 14 A 18
[0284] As Figuras 14 a 15 mostram fluxogramas de métodos para decodificação de áudio de acordo com modalidades da invenção.
[0285] As Figuras 16 a 18 mostram fluxogramas de métodos para decodificação de áudio de acordo com modalidades da invenção.
[0286] Deve ser considerado que os métodos podem ser suplementados por qualquer um dos recursos e funcionalidades descritos no presente documento em relação aos aparelhos correspondentes e por qualquer uma das funcionalidades mencionadas, tanto individualmente quanto em combinação.
13. ALTERNATIVAS DE IMPLEMENTAÇÃO
[0287] Apesar de alguns aspectos terem sido descritos no contexto de um aparelho, é evidente que esses aspectos também representam uma descrição do método correspondente, em que um bloco ou dispositivo corresponde a uma etapa de ou um recurso de uma etapa do método. De maneira análoga, aspectos descritos no contexto de uma etapa do método também representam uma descrição de um bloco ou item ou recurso correspondente de um aparelho correspondente. Algumas ou todas as etapas dos métodos podem ser executadas por (ou com uso de) um aparelho de hardware, como, por exemplo, um microprocessador, um computador programável ou um circuito eletrônico. Em algumas modalidades, uma ou mais das etapas mais importantes do método podem ser executadas por tal aparelho.
[0288] O sinal de áudio codificado inventivo pode ser armazenado em uma mídia de armazenamento digital ou pode ser transmitido em uma mídia de transmissão tal como uma mídia de transmissão sem fio ou uma mídia de transmissão com fio como a Internet.
[0289] A depender de certos requerimentos de implementação, modalidades da invenção podem ser implementadas em hardware ou em software. A implementação pode ser realizada com uso de uma mídia de armazenamento digital, por exemplo, um disquete, um DVD, um Blu-Ray, um CD, uma ROM, uma PROM, uma EPROM, uma EEPROM ou uma memória FLASH, que têm sinais de controle eletronicamente legíveis armazenados nas mesmas, que cooperam (ou são capazes de cooperar) com um sistema de computador programável de modo que o respectivo método seja realizado. Assim, a mídia de armazenamento digital pode ser legível por computador.
[0290] Algumas modalidades de acordo com a invenção compreendem uma portadora de dados que tem sinais de controle eletronicamente legíveis, que são capazes de cooperar com um sistema de computador programável, de modo que um dos métodos descritos no presente documento é realizado.
[0291] Geralmente, modalidades da presente invenção podem ser implementadas como um produto de programa de computador com um código de programa, sendo que o código de programa é operativo para realizar um dos métodos em que o produto de programa de computador executa em um computador. O código de programa pode, por exemplo, ser armazenado em uma portadora legível por máquina.
[0292] Outras modalidades compreendem o programa de computador para realizar um dos métodos descritos no presente documento, armazenados em uma portadora legível por máquina.
[0293] Em outras palavras, uma modalidade do método inventivo é, portanto, um programa de computador que tem um código de programa para realizar um dos métodos descritos no presente documento, em que o programa de computador executa em um computador.
[0294] Uma modalidade adicional dos métodos inventivos é, portanto, uma portadora de dados (ou uma mídia de armazenamento digital, ou uma mídia legível por computador) que compreende registrado na mesma o programa de computador para realizar um dos métodos descritos no presente documento. A portadora de dados, a mídia de armazenamento digital ou a mídia registrada são tipicamente tangíveis e/ou não transitórias.
[0295] Uma modalidade adicional do método inventivo é, portanto, um fluxo de dados ou uma sequência de sinais que representam o programa de computador para realizar um dos métodos descritos no presente documento. O fluxo de dados ou a sequência de sinais pode, por exemplo, ser configurado para ser transferido por meio de uma conexão de comunicação de dados, por exemplo, por meio da Internet.
[0296] Uma modalidade adicional compreende um meio de processamento, por exemplo, um computador, ou um dispositivo lógico programável, configurado para ou adaptado para realizar um dos métodos descritos no presente documento.
[0297] Uma modalidade adicional compreende um computador que tem instalado no mesmo o programa de computador para realizar um dos métodos descritos no presente documento.
[0298] Uma modalidade adicional de acordo com a invenção compreende um aparelho ou um sistema configurado para transferir (por exemplo, de maneira eletrônica ou óptica) um programa de computador para realizar um dos métodos descritos no presente documento para um receptor. O receptor pode, por exemplo, ser um computador, um dispositivo móvel, um dispositivo de memória ou semelhantes. O aparelho ou sistema pode, por exemplo, compreender um servidor de arquivo para transferir o programa de computador para o receptor.
[0299] Em algumas modalidades, um dispositivo lógico programável (por exemplo, uma matriz de portas programáveis em campo) pode ser usado para realizar algumas ou todas as funcionalidades dos métodos descritos no presente documento. Em algumas modalidades, uma matriz de portas programáveis em campo pode cooperar com um microprocessador para realizar um dos métodos descritos no presente documento. Geralmente, os métodos são preferencialmente realizados por qualquer aparelho de hardware.
[0300] Os aparelhos descritos no presente documento podem ser implementados com uso de um computador, ou com uso de uma combinação de um aparelho de hardware e um computador.
[0301] O aparelho descrito no presente documento, ou quaisquer componentes do aparelho descrito no presente documento, podem ser implementados pelo menos parcialmente em hardware e/ou em software.
[0302] Os métodos descritos no presente documento podem ser realizados com uso de um aparelho de hardware, ou com uso de um computador, ou com uso de uma combinação de um aparelho de hardware e um computador.
[0303] Os métodos descritos no presente documento, ou quaisquer componentes do aparelho descrito no presente documento, podem ser realizados pelo menos parcialmente por hardware e/ou por software.
[0304] As modalidades descritas acima são meramente ilustrativas para os princípios da presente invenção. É entendido que modificações e variações das disposições e dos detalhes descritos no presente documento serão evidentes para outras pessoas versadas na técnica. É a intenção, portanto, ter limitação apenas pelo escopo das iminentes reivindicações de patente e não pelos detalhes específicos apresentados por meio de descrição e explicação das modalidades no presente documento.

Claims (20)

  1. Codificador de áudio (300; 400; 500; 600) para fornecer informações de áudio codificadas (312; 412; 512; 612) com base em informações de entrada de áudio (310; 410; 510; 610),
    caracterizado por o codificador de áudio ser configurado para obter (620, 630, 640, 650, 660) valores espectrais (330; 662; Xq[n]) que representam um conteúdo de áudio das informações de entrada de áudio, e
    em que o codificador de áudio é configurado para codificar (670; 800) pelo menos uma pluralidade dos valores espectrais, para obter informações codificadas (350, 450, 550, 672; sim,lsbs[]) que representam os valores espectrais;
    em que o codificador de áudio é configurado para obter (810, 814, 818, 822) informações de ganho que determinam etapas de quantização de uma quantização de valores espectrais, e que determina uma demanda de bits para codificação dos valores espectrais quantizados (330;662;Xq[n]);
    em que o codificador de áudio é configurado para codificar (878, 886, 890; 1000a, 1020a, 1040a-1040d) um ou mais bits mais significativos que usam respectivos códigos de símbolos (sim) para uma pluralidade dos valores espectrais (Xq[0]...Xq[lastnz-1]) que usam uma codificação aritmética, e para codificar um ou mais bits menos significativos para um ou mais dos valores espectrais,
    em que um respectivo código de símbolo (sim) representa um ou mais bits mais significativos por valor espectral para um ou mais valores espectrais,
    em que o codificador de áudio é configurado para codificar (882; 898; 1010a-1010e, 1011 a-1011 e) um ou mais bits menos significativos associados com um ou mais dos valores espectrais que dependem de um orçamento de bit disponível,
    de modo que um ou mais bits menos significativos associados com um ou mais dos valores espectrais sejam codificados, enquanto bits menos significativos não são codificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que o um ou mais bits mais significativos; e
    em que o codificador de áudio é configurado para fornecer as informações de áudio codificadas que usam as informações codificadas que representam os valores espectrais.
  2. Codificador de áudio, de acordo com a reivindicação 1, caracterizado por o codificador de áudio ser configurado para obter (810) uma primeira estimativa das informações de ganho com base em uma energia de grupos de valores espectrais, quantizar (814) conjunto de valores espectrais que usam a primeira estimativa de informações de ganho,
    computar ou estimar (818) um número de bits necessários para codificar o conjunto de valores espectrais quantizados que usam a primeira estimativa de informações de ganho ou que usam informações refinadas de ganho, e
    decidir (830) se usar o primeiro modo ou o segundo modo que depende de um número de bits necessário.
  3. Codificador de áudio, de acordo com a reivindicação 1 ou 2, caracterizado por o codificador de áudio ser configurado para ser alternável entre
    • - um primeiro modo em que uma codificação de valores espectrais diferentes de zero em uma faixa de frequência maior é omitida no caso de um orçamento disponível de bit ser usado por valores espectrais codificados em uma faixa de menor frequência e em que bits menos significativos são codificados para todos os valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que os bits mais significativos, e
    • - um segundo modo em que um ou mais bits menos significativos associados com um ou mais dos valores espectrais são codificados, enquanto bits menos significativos não são codificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que os bits mais significativos; e
    em que o codificador de áudio é configurado para decidir se usar o primeiro modo ou o segundo modo que depende do número de bits necessários e que depende de um critério que indica quantos valores espectrais compreendem mais bits que o um ou mais bits mais significativos.
  4. Codificador de áudio, de acordo com a reivindicação 1 ou 2, caracterizado por o codificador de áudio ser configurado para ser alternável entre
    • - um primeiro modo em que uma codificação de valores espectrais diferentes de zero em uma faixa de frequência maior é omitida no caso de um orçamento disponível de bits ser usado por valores espectrais codificados em uma faixa de menor frequência e em que bits menos significativos são codificados para todos os valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que os bits mais significativos, e
    • - um segundo modo em que um ou mais bits menos significativos associados com um ou mais dos valores espectrais são codificados, enquanto bits menos significativos não são codificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que os bits mais significativos; e
    em que o codificador de áudio é configurado para decidir se usar o primeiro modo ou o segundo modo que depende do número de bits necessários em uma taxa de bits, de modo que o segundo modo é escolhido se uma taxa de bits é maior que ou igual a um limiar de taxa de bits e se um número ou bits computados ou estimados necessários para codificar o conjunto de valores espectrais seja maior que um orçamento de bits.
  5. Codificador de áudio, de acordo com uma das reivindicações 1 a 4, caracterizado por a codificação aritmética ser configurada para determinar posições de bit do um ou mais bits mais significativos e inclui na representação decodificada aritmeticamente informações que descrevem as posições de bit.
  6. Codificador de áudio, de acordo com uma das reivindicações 1 a 5, caracterizado por o codificador de áudio ser configurado para mapear pelo menos dois bits mais significativos do pelo menos um valor espectral em um símbolo de uma representação decodificada aritmeticamente, sendo que representa os pelo menos dois bits mais significativos do pelo menos um valor espectral.
  7. Codificador de áudio, de acordo com uma das reivindicações 1 a 6, caracterizado por o codificador de áudio ser configurado para codificar, para todos os valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que o um ou mais bits mais significativos e bits menos significativos, um ou mais bits intermediários, posições de bits dos quais estão entre os bits menos significativos e o um ou mais bits mais significativos.
  8. Codificador de áudio, de acordo com uma das reivindicações 1 a 7, caracterizado por o codificador de áudio ser configurado para codificar, em uma primeira fase de codificação,
    • - um ou mais bits mais significativos por valor espectral, e
    • - para todos os valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que o um ou mais bits mais significativos e bits menos significativos, um ou mais bits intermediários, posições de bits dos quais estão entre os bits menos significativos e o um ou mais bits mais significativos, e
    • - para todos os valores espectrais para os quais um ou mais bits mais significativos são codificados e para os quais o um ou mais bits mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam sinais ou valor diferentes de zero; e

    em que o codificador de áudio é configurado para omitir seletivamente, na primeira fase de codificação, uma codificação de um sinal para valores espectrais para os quais o um ou mais valores mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor zero, e
    em que o codificador de áudio é configurado para codificar seletivamente, em uma segunda fase de codificação que segue a primeira fase de codificação, informações de sinal para valores espectrais para os quais o um ou mais valores mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor zero e para os quais informações de bits menos significativos indicam um valor diferente de zero.
  9. Codificador de áudio, de acordo com uma das reivindicações 1 a 8, caracterizado por o codificador de áudio ser configurado para apenas incluir informações de sinal na representação de áudio codificado para valores espectrais que apenas diferem de zero por bits menos significativos se os bits menos significativos de tais valores espectrais forem realmente codificados.
  10. Codificador de áudio, de acordo com uma das reivindicações 1 a 9, caracterizado por o codificador de áudio ser configurado para fornecer sequencialmente bits subsequentes de uma sequência de bits de informações de bits menos significativos para codificar valores de bits menos significativos associados com os valores espectrais.
  11. Codificador de áudio, de acordo com a reivindicação 10, caracterizado por o codificador de áudio ser configurado para fornecer um único bit da sequência de bits de informações de bits menos significativos para respectivos valores espectrais para os quais o um ou mais valores mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor diferente de zero, em que o único bit usado da sequência de bits de informações de bits menos significativos é usado para codificar um valor de bits menos significativos; e
    em que o codificador de áudio é configurado para fornecer um único bit da sequência de bits de informações de bits menos significativos para respectivos valores espectrais para os quais o um ou mais valores mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor zero, e para os quais o único bit fornecido da sequência de bits de informações de bits menos significativos confirma o valor zero; e
    em que o codificador de áudio é configurado para fornecer dois bits subsequentes da sequência de bits de informações de bits menos significativos para respectivos valores espectrais para os quais o um ou mais valores mais significativos e quaisquer bits intermediários, na medida em que bits intermediários estejam presentes, indicam um valor zero, e para os quais um primeiro dos bits fornecidos da sequência de bits de informações de bits menos significativos indica um desvio do valor zero por um valor de bits menos significativos, em que um segundo dos bits fornecidos da sequência de bits de informações de bits menos significativos codifica um sinal do respectivo valor espectral.
  12. Codificador de áudio, de acordo com uma das reivindicações 1 a 11, caracterizado por o codificador de áudio ser configurado para codificar bits menos significativos que iniciam de bits menos significativos associados com um valor espectral de menor frequência e procedem para valores espectrais associados com frequências maiores de maneira frequente,
    de modo que informações codificadas para refinar valores espectrais por informações de bits menos significativos sejam fornecidas em uma faixa de um valor espectral de menor frequência até um valor espectral para o qual uma última informação de bits menos significativos é fornecida, e
    de modo que informações codificadas para refinar valores espectrais por informações de bits menos significativos não sejam fornecidas para valores espectrais que têm frequências associadas maiores que uma frequência associada com o valor espectral para o qual a última informação de bits menos significativos é fornecida.
  13. Codificador de áudio, de acordo com uma das reivindicações 1 a 12, caracterizado por o codificador de áudio ser configurado para ser alternável entre
    • - um primeiro modo no qual uma codificação de valores espectrais diferentes de zero em uma faixa de frequência maior é omitida no caso de um orçamento disponível de bits ser usado por valores espectrais codificados em uma faixa de menor frequência e em que bits menos significativos são codificados e sendo que compreendem mais bits que os bits mais significativos, e
    • - um segundo modo em que um ou mais bits menos significativos associados com um ou mais dos valores espectrais são codificados, enquanto bits menos significativos não são codificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos são codificados e que compreendem mais bits que os bits mais significativos.
  14. Codificador de áudio, de acordo com a reivindicação 13, caracterizado por o codificador de áudio ser configurado para fornecer um sinalizador de fluxo de bits que é incluído nas informações de áudio codificadas para indicar se o codificador de áudio opera no primeiro modo ou no segundo modo.
  15. Codificador de áudio, de acordo com uma das reivindicações 1 a 14, caracterizado por o codificador de áudio ser configurado para codificar em conjunto um ou mais bits mais significativos por valor espectral para pelo menos dois valores espectrais que usam respectivos códigos de símbolos,
    em que um respectivo código de símbolo representa um ou mais bits mais significativos por valor espectral para pelo menos dois valores espectrais.
  16. Codificador de áudio, de acordo com uma das reivindicações 1 a 15, caracterizado por o codificador de áudio ser configurado para determinar, ao operar no segundo modo, um valor espectral diferente de zero de frequência mais alta real e para codificar pelo menos um ou mais bits mais significativos de todos os valores espectrais diferentes de zero ou de todos os grupos de valores espectrais diferentes de zero.
  17. Codificador de áudio, de acordo com uma das reivindicações 1 a 16, caracterizado por o codificador de áudio ser configurado para codificar, ao operar no segundo modo, todos os bits exceto por bits menos significativos para todos os valores espectrais diferentes de zero, e
    em que o codificador de áudio é configurado para codificar bits menos significativos para valores espectrais até que um orçamento de bits esteja esgotado.
  18. Codificador de áudio, de acordo com uma das reivindicações 1 a 17, caracterizado por o codificador de áudio ser configurado para obter informações de ganho que determinam etapas de quantização de uma quantização de valores espectrais, e que determinam uma demanda de bits para codificação dos valores espectrais quantizados.
  19. Método para fornecer informações de áudio codificadas (312; 412; 512; 612) com base em informações de entrada de áudio (310; 410; 510; 610),
    caracterizado por o método compreender obter (620, 630, 640, 650, 660) valores espectrais (330; 662; Xq[n]) que representam um conteúdo de áudio das informações de entrada de áudio, e
    em que o método compreende codificação (670; 800) de pelo menos uma pluralidade dos valores espectrais, para obter informações codificadas (350, 450, 550, 672; sim, lsbs[]) que representam os valores espectrais;
    em que o método compreende obter (810, 814, 818, 822) informações de ganho que determinam etapas de quantização de uma quantização de valores espectrais, e que determina uma demanda de bits para codificação dos valores espectrais quantizados;
    em que o método compreende codificação (878, 886, 890; 1000a, 1020a, 1040a-1040d) de um ou mais bits mais significativos que usam respectivos códigos de símbolos (sim) para uma pluralidade dos valores espectrais (Xq[0]...Xq[lastnz-1]) que usam uma codificação aritmética, e codificação de um ou mais bits menos significativos para um ou mais dos valores espectrais,
    em que um respectivo código de símbolo (sim) representa um ou mais bits mais significativos por valor espectral para um ou mais valores espectrais,
    em que o método compreende codificação (882; 898; 1010a-1010e, 1011 a-1011 e) de um ou mais bits menos significativos associados com um ou mais dos valores espectrais que dependem de um orçamento de bit disponível,
    de modo que um ou mais bits menos significativos associados com um ou mais dos valores espectrais sejam codificados, enquanto bits menos significativos não são codificados para um ou mais outros valores espectrais para os quais um ou mais bits mais significativos são codificados e sendo que compreendem mais bits que o um ou mais bits mais significativos ; e
    em que o método compreende fornecer as informações de áudio codificadas com uso das informações codificadas que representam os valores espectrais.
  20. Programa de computador caracterizado por se destinar a realizar o método, de acordo com a reivindicação 19, quando o programa de computador for executado em um computador.
BR122020009464-8A 2017-11-10 2018-11-08 codificadores de áudio, decodificadores de áudio, métodos e programas de computador que adaptam uma codificação e decodificação de bits menos significativos BR122020009464A2 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EPPCT/EP2017/078959 2017-11-10
PCT/EP2017/078959 WO2019091576A1 (en) 2017-11-10 2017-11-10 Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits
BR112020009325-4 2018-11-08
PCT/EP2018/080698 WO2019092155A1 (en) 2017-11-10 2018-11-08 Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits
BR112020009325-4A BR112020009325A2 (pt) 2017-11-10 2018-11-08 codificadores de áudio, decodificadores de áudio, métodos e programas de computador que adaptam uma codificação e decodificação de bits menos significativos

Publications (1)

Publication Number Publication Date
BR122020009464A2 true BR122020009464A2 (pt) 2020-11-10

Family

ID=60293975

Family Applications (3)

Application Number Title Priority Date Filing Date
BR122020009464-8A BR122020009464A2 (pt) 2017-11-10 2018-11-08 codificadores de áudio, decodificadores de áudio, métodos e programas de computador que adaptam uma codificação e decodificação de bits menos significativos
BR122020009462-1A BR122020009462A2 (pt) 2017-11-10 2018-11-08 codificadores de áudio, decodificadores de áudio, métodos e programas de computador que adaptam uma codificação e decodificação de bits menos significativos
BR112020009325-4A BR112020009325A2 (pt) 2017-11-10 2018-11-08 codificadores de áudio, decodificadores de áudio, métodos e programas de computador que adaptam uma codificação e decodificação de bits menos significativos

Family Applications After (2)

Application Number Title Priority Date Filing Date
BR122020009462-1A BR122020009462A2 (pt) 2017-11-10 2018-11-08 codificadores de áudio, decodificadores de áudio, métodos e programas de computador que adaptam uma codificação e decodificação de bits menos significativos
BR112020009325-4A BR112020009325A2 (pt) 2017-11-10 2018-11-08 codificadores de áudio, decodificadores de áudio, métodos e programas de computador que adaptam uma codificação e decodificação de bits menos significativos

Country Status (15)

Country Link
US (3) US11380339B2 (pt)
EP (3) EP4336502A2 (pt)
JP (3) JP7104785B2 (pt)
KR (3) KR102492557B1 (pt)
CN (3) CN111933160B (pt)
AR (1) AR113482A1 (pt)
AU (3) AU2018365309B2 (pt)
BR (3) BR122020009464A2 (pt)
CA (3) CA3082282C (pt)
MX (3) MX2020004770A (pt)
RU (3) RU2769255C2 (pt)
SG (3) SG11202004287YA (pt)
TW (1) TWI758556B (pt)
WO (2) WO2019091576A1 (pt)
ZA (3) ZA202003441B (pt)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020253941A1 (en) * 2019-06-17 2020-12-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder with a signal-dependent number and precision control, audio decoder, and related methods and computer programs
CN112735446B (zh) * 2020-12-30 2022-05-17 北京百瑞互联技术有限公司 在lc3音频码流中添加额外信息的方法、系统及介质
CN112992166B (zh) * 2021-05-08 2021-08-20 北京百瑞互联技术有限公司 一种动态调整lc3音频编码速率的方法、装置及存储介质
CN114550732B (zh) * 2022-04-15 2022-07-08 腾讯科技(深圳)有限公司 一种高频音频信号的编解码方法和相关装置

Family Cites Families (191)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3639753A1 (de) 1986-11-21 1988-06-01 Inst Rundfunktechnik Gmbh Verfahren zum uebertragen digitalisierter tonsignale
US5012517A (en) 1989-04-18 1991-04-30 Pacific Communication Science, Inc. Adaptive transform coder having long term predictor
US5233660A (en) 1991-09-10 1993-08-03 At&T Bell Laboratories Method and apparatus for low-delay celp speech coding and decoding
JPH05281996A (ja) 1992-03-31 1993-10-29 Sony Corp ピッチ抽出装置
IT1270438B (it) 1993-06-10 1997-05-05 Sip Procedimento e dispositivo per la determinazione del periodo del tono fondamentale e la classificazione del segnale vocale in codificatori numerici della voce
US5581653A (en) 1993-08-31 1996-12-03 Dolby Laboratories Licensing Corporation Low bit-rate high-resolution spectral envelope coding for audio encoder and decoder
JP3402748B2 (ja) 1994-05-23 2003-05-06 三洋電機株式会社 音声信号のピッチ周期抽出装置
JPH0811644A (ja) 1994-06-27 1996-01-16 Nissan Motor Co Ltd ルーフモール取付構造
US6167093A (en) 1994-08-16 2000-12-26 Sony Corporation Method and apparatus for encoding the information, method and apparatus for decoding the information and method for information transmission
EP0732687B2 (en) 1995-03-13 2005-10-12 Matsushita Electric Industrial Co., Ltd. Apparatus for expanding speech bandwidth
KR100322706B1 (ko) * 1995-09-25 2002-06-20 윤종용 선형예측부호화계수의부호화및복호화방법
US5781888A (en) 1996-01-16 1998-07-14 Lucent Technologies Inc. Perceptual noise shaping in the time domain via LPC prediction in the frequency domain
WO1997027578A1 (en) 1996-01-26 1997-07-31 Motorola Inc. Very low bit rate time domain speech analyzer for voice messaging
US5812971A (en) 1996-03-22 1998-09-22 Lucent Technologies Inc. Enhanced joint stereo coding method using temporal envelope shaping
JPH1091194A (ja) 1996-09-18 1998-04-10 Sony Corp 音声復号化方法及び装置
US6570991B1 (en) 1996-12-18 2003-05-27 Interval Research Corporation Multi-feature speech/music discrimination system
KR100261253B1 (ko) 1997-04-02 2000-07-01 윤종용 비트율 조절이 가능한 오디오 부호화/복호화 방법및 장치
GB2326572A (en) 1997-06-19 1998-12-23 Softsound Limited Low bit rate audio coder and decoder
AU9404098A (en) 1997-09-23 1999-04-12 Voxware, Inc. Scalable and embedded codec for speech and audio signals
KR100335609B1 (ko) * 1997-11-20 2002-10-04 삼성전자 주식회사 비트율조절이가능한오디오부호화/복호화방법및장치
JP3344962B2 (ja) 1998-03-11 2002-11-18 松下電器産業株式会社 オーディオ信号符号化装置、及びオーディオ信号復号化装置
US6507814B1 (en) 1998-08-24 2003-01-14 Conexant Systems, Inc. Pitch determination using speech classification and prior pitch estimation
US7272556B1 (en) 1998-09-23 2007-09-18 Lucent Technologies Inc. Scalable and embedded codec for speech and audio signals
US6992626B2 (en) * 1999-03-05 2006-01-31 Rannoch Corporation Method and apparatus to correlate aircraft flight tracks and events with relevant airport operations information
US7099830B1 (en) 2000-03-29 2006-08-29 At&T Corp. Effective deployment of temporal noise shaping (TNS) filters
US6735561B1 (en) 2000-03-29 2004-05-11 At&T Corp. Effective deployment of temporal noise shaping (TNS) filters
EP1139665A1 (en) 2000-03-29 2001-10-04 Deutsche Thomson-Brandt Gmbh Method and apparatus for changing the output delay of audio or video data encoding
US6665638B1 (en) 2000-04-17 2003-12-16 At&T Corp. Adaptive short-term post-filters for speech coders
US7395209B1 (en) * 2000-05-12 2008-07-01 Cirrus Logic, Inc. Fixed point audio decoding system and method
US20040158462A1 (en) 2001-06-11 2004-08-12 Rutledge Glen J. Pitch candidate selection method for multi-channel pitch detectors
US7512535B2 (en) 2001-10-03 2009-03-31 Broadcom Corporation Adaptive postfiltering methods and systems for decoding speech
US6785645B2 (en) 2001-11-29 2004-08-31 Microsoft Corporation Real-time speech and music classifier
US20030187663A1 (en) 2002-03-28 2003-10-02 Truman Michael Mead Broadband frequency translation for high frequency regeneration
DE10217297A1 (de) * 2002-04-18 2003-11-06 Fraunhofer Ges Forschung Vorrichtung und Verfahren zum Codieren eines zeitdiskreten Audiosignals und Vorrichtung und Verfahren zum Decodieren von codierten Audiodaten
US7447631B2 (en) * 2002-06-17 2008-11-04 Dolby Laboratories Licensing Corporation Audio coding system using spectral hole filling
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
US7433824B2 (en) * 2002-09-04 2008-10-07 Microsoft Corporation Entropy coding by adapting coding between level and run-length/level modes
JP4728568B2 (ja) * 2002-09-04 2011-07-20 マイクロソフト コーポレーション レベル・モードとラン・レングス/レベル・モードの間での符号化を適応させるエントロピー符号化
US7502743B2 (en) 2002-09-04 2009-03-10 Microsoft Corporation Multi-channel audio encoding and decoding with multi-channel transform selection
JP4287637B2 (ja) 2002-10-17 2009-07-01 パナソニック株式会社 音声符号化装置、音声符号化方法及びプログラム
US7318027B2 (en) * 2003-02-06 2008-01-08 Dolby Laboratories Licensing Corporation Conversion of synthesized spectral components for encoding and low-complexity transcoding
KR101049751B1 (ko) 2003-02-11 2011-07-19 코닌클리케 필립스 일렉트로닉스 엔.브이. 오디오 코딩
KR20030031936A (ko) 2003-02-13 2003-04-23 배명진 피치변경법을 이용한 단일 음성 다중 목소리 합성기
US20040162866A1 (en) 2003-02-19 2004-08-19 Malvar Henrique S. System and method for producing fast modulated complex lapped transforms
KR100923301B1 (ko) * 2003-03-22 2009-10-23 삼성전자주식회사 대역 확장 기법을 이용한 오디오 데이터의 부호화 방법,그 장치, 복호화 방법 및 그 장치
WO2004112021A2 (en) 2003-06-17 2004-12-23 Matsushita Electric Industrial Co., Ltd. Receiving apparatus, sending apparatus and transmission system
JP4719674B2 (ja) 2003-06-30 2011-07-06 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ノイズの加算によるデコードオーディオの品質の向上
US7620545B2 (en) * 2003-07-08 2009-11-17 Industrial Technology Research Institute Scale factor based bit shifting in fine granularity scalability audio coding
KR100550003B1 (ko) 2003-07-11 2006-02-08 학교법인연세대학교 상호부호화기에서 개회로 피치 추정 방법 및 그 장치
AU2003302486A1 (en) * 2003-09-15 2005-04-06 Zakrytoe Aktsionernoe Obschestvo Intel Method and apparatus for encoding audio
US7009533B1 (en) 2004-02-13 2006-03-07 Samplify Systems Llc Adaptive compression and decompression of bandlimited signals
KR20050087956A (ko) * 2004-02-27 2005-09-01 삼성전자주식회사 무손실 오디오 부호화/복호화 방법 및 장치
CA2992089C (en) 2004-03-01 2018-08-21 Dolby Laboratories Licensing Corporation Reconstructing audio signals with multiple decorrelation techniques and differentially coded parameters
DE102004009949B4 (de) * 2004-03-01 2006-03-09 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Ermitteln eines Schätzwertes
DE102004009954B4 (de) 2004-03-01 2005-12-15 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Verarbeiten eines Multikanalsignals
US7809556B2 (en) 2004-03-05 2010-10-05 Panasonic Corporation Error conceal device and error conceal method
KR100561869B1 (ko) * 2004-03-10 2006-03-17 삼성전자주식회사 무손실 오디오 부호화/복호화 방법 및 장치
US7392195B2 (en) 2004-03-25 2008-06-24 Dts, Inc. Lossless multi-channel audio codec
MX2007012184A (es) 2005-04-01 2007-12-11 Qualcomm Inc Sistemas, metodos y aparatos para codificacion de dialogo de banda ancha.
US7546240B2 (en) 2005-07-15 2009-06-09 Microsoft Corporation Coding with improved time resolution for selected segments via adaptive block transformation of a group of samples from a subband decomposition
US7539612B2 (en) 2005-07-15 2009-05-26 Microsoft Corporation Coding and decoding scale factor information
KR20070037945A (ko) 2005-10-04 2007-04-09 삼성전자주식회사 오디오 신호의 부호화/복호화 방법 및 장치
US20070118361A1 (en) 2005-10-07 2007-05-24 Deepen Sinha Window apparatus and method
KR100888474B1 (ko) 2005-11-21 2009-03-12 삼성전자주식회사 멀티채널 오디오 신호의 부호화/복호화 장치 및 방법
US7805297B2 (en) 2005-11-23 2010-09-28 Broadcom Corporation Classification-based frame loss concealment for audio signals
WO2007070007A1 (en) 2005-12-14 2007-06-21 Matsushita Electric Industrial Co., Ltd. A method and system for extracting audio features from an encoded bitstream for audio classification
US8255207B2 (en) 2005-12-28 2012-08-28 Voiceage Corporation Method and device for efficient frame erasure concealment in speech codecs
US8345890B2 (en) 2006-01-05 2013-01-01 Audience, Inc. System and method for utilizing inter-microphone level differences for speech enhancement
EP1991986B1 (en) 2006-03-07 2019-07-31 Telefonaktiebolaget LM Ericsson (publ) Methods and arrangements for audio coding
US8150065B2 (en) 2006-05-25 2012-04-03 Audience, Inc. System and method for processing an audio signal
US20090204397A1 (en) 2006-05-30 2009-08-13 Albertus Cornelis Den Drinker Linear predictive coding of an audio signal
CN1983909B (zh) 2006-06-08 2010-07-28 华为技术有限公司 一种丢帧隐藏装置和方法
US8015000B2 (en) 2006-08-03 2011-09-06 Broadcom Corporation Classification-based frame loss concealment for audio signals
JP5096468B2 (ja) 2006-08-15 2012-12-12 ドルビー ラボラトリーズ ライセンシング コーポレイション サイド情報なしの時間的ノイズエンベロープの自由な整形
FR2905510B1 (fr) 2006-09-01 2009-04-10 Voxler Soc Par Actions Simplif Procede d'analyse en temps reel de la voix pour le controle en temps reel d'un organe numerique et dispositif associe
CN101140759B (zh) 2006-09-08 2010-05-12 华为技术有限公司 语音或音频信号的带宽扩展方法及系统
US7752038B2 (en) 2006-10-13 2010-07-06 Nokia Corporation Pitch lag estimation
DE102006049154B4 (de) 2006-10-18 2009-07-09 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Kodierung eines Informationssignals
KR101292771B1 (ko) 2006-11-24 2013-08-16 삼성전자주식회사 오디오 신호의 오류은폐방법 및 장치
WO2008072701A1 (ja) 2006-12-13 2008-06-19 Panasonic Corporation ポストフィルタおよびフィルタリング方法
FR2912249A1 (fr) 2007-02-02 2008-08-08 France Telecom Codage/decodage perfectionnes de signaux audionumeriques.
JP4871894B2 (ja) 2007-03-02 2012-02-08 パナソニック株式会社 符号化装置、復号装置、符号化方法および復号方法
EP2015293A1 (en) 2007-06-14 2009-01-14 Deutsche Thomson OHG Method and apparatus for encoding and decoding an audio signal using adaptively switched temporal resolution in the spectral domain
US20110022924A1 (en) 2007-06-14 2011-01-27 Vladimir Malenovsky Device and Method for Frame Erasure Concealment in a PCM Codec Interoperable with the ITU-T Recommendation G. 711
JP4928366B2 (ja) 2007-06-25 2012-05-09 日本電信電話株式会社 ピッチ探索装置、パケット消失補償装置、それらの方法、プログラム及びその記録媒体
JP4572218B2 (ja) 2007-06-27 2010-11-04 日本電信電話株式会社 音楽区間検出方法、音楽区間検出装置、音楽区間検出プログラム及び記録媒体
US10795949B2 (en) 2007-07-26 2020-10-06 Hamid Hatami-Hanza Methods and systems for investigation of compositions of ontological subjects and intelligent systems therefrom
JP4981174B2 (ja) * 2007-08-24 2012-07-18 フランス・テレコム 確率テーブルの動的な計算によるシンボルプレーン符号化/復号化
US20110035212A1 (en) 2007-08-27 2011-02-10 Telefonaktiebolaget L M Ericsson (Publ) Transform coding of speech and audio signals
CN100524462C (zh) 2007-09-15 2009-08-05 华为技术有限公司 对高带信号进行帧错误隐藏的方法及装置
KR101290622B1 (ko) 2007-11-02 2013-07-29 후아웨이 테크놀러지 컴퍼니 리미티드 오디오 복호화 방법 및 장치
WO2009066869A1 (en) 2007-11-21 2009-05-28 Electronics And Telecommunications Research Institute Frequency band determining method for quantization noise shaping and transient noise shaping method using the same
AU2008344134B2 (en) 2007-12-31 2011-08-25 Lg Electronics Inc. A method and an apparatus for processing an audio signal
US8386271B2 (en) 2008-03-25 2013-02-26 Microsoft Corporation Lossless and near lossless scalable audio codec
EP2301015B1 (en) 2008-06-13 2019-09-04 Nokia Technologies Oy Method and apparatus for error concealment of encoded audio data
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
ES2955669T3 (es) * 2008-07-11 2023-12-05 Fraunhofer Ges Forschung Decodificador de audio, procedimiento para decodificar una señal de audio y programa de ordenador
BR122021009252B1 (pt) 2008-07-11 2022-03-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e. V. Codificador e decodificador de áudio para estruturas de codificação de sinais de áudio amostrados
CA2871252C (en) * 2008-07-11 2015-11-03 Nikolaus Rettelbach Audio encoder, audio decoder, methods for encoding and decoding an audio signal, audio stream and computer program
EP2144231A1 (en) 2008-07-11 2010-01-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Low bitrate audio encoding/decoding scheme with common preprocessing
US8577673B2 (en) 2008-09-15 2013-11-05 Huawei Technologies Co., Ltd. CELP post-processing for music signals
EP3640941A1 (en) 2008-10-08 2020-04-22 Fraunhofer Gesellschaft zur Förderung der Angewand Multi-resolution switched audio encoding/decoding scheme
GB2466673B (en) 2009-01-06 2012-11-07 Skype Quantization
CN102334160B (zh) * 2009-01-28 2014-05-07 弗劳恩霍夫应用研究促进协会 音频编码器,音频解码器,编码和解码音频信号的方法
JP4945586B2 (ja) 2009-02-02 2012-06-06 株式会社東芝 信号帯域拡張装置
US20100223061A1 (en) * 2009-02-27 2010-09-02 Nokia Corporation Method and Apparatus for Audio Coding
JP4932917B2 (ja) 2009-04-03 2012-05-16 株式会社エヌ・ティ・ティ・ドコモ 音声復号装置、音声復号方法、及び音声復号プログラム
FR2944664A1 (fr) 2009-04-21 2010-10-22 Thomson Licensing Dispositif et procede de traitement d'images
US8352252B2 (en) 2009-06-04 2013-01-08 Qualcomm Incorporated Systems and methods for preventing the loss of information within a speech frame
US8428938B2 (en) 2009-06-04 2013-04-23 Qualcomm Incorporated Systems and methods for reconstructing an erased speech frame
KR20100136890A (ko) * 2009-06-19 2010-12-29 삼성전자주식회사 컨텍스트 기반의 산술 부호화 장치 및 방법과 산술 복호화 장치 및 방법
CN101958119B (zh) 2009-07-16 2012-02-29 中兴通讯股份有限公司 一种改进的离散余弦变换域音频丢帧补偿器和补偿方法
MX2012004116A (es) * 2009-10-08 2012-05-22 Fraunhofer Ges Forschung Decodificador multimodo para señal de audio, codificador multimodo para señal de audio, metodo y programa de computacion que usan un modelado de ruido en base a linealidad-prediccion-codi ficacion.
ES2884133T3 (es) 2009-10-15 2021-12-10 Voiceage Corp Conformación simultánea de ruido en el dominio del tiempo y el dominio de la frecuencia para transformaciones TDAC
TWI451403B (zh) * 2009-10-20 2014-09-01 Fraunhofer Ges Forschung 音訊編碼器、音訊解碼器、用以將音訊資訊編碼之方法、用以將音訊資訊解碼之方法及使用區域從屬算術編碼對映規則之電腦程式
WO2011048118A1 (en) 2009-10-20 2011-04-28 Fraunhofer Gesellschaft zur Förderung der angewandten Forschung e.V. Audio signal encoder, audio signal decoder, method for providing an encoded representation of an audio content, method for providing a decoded representation of an audio content and computer program for use in low delay applications
US7978101B2 (en) * 2009-10-28 2011-07-12 Motorola Mobility, Inc. Encoder and decoder using arithmetic stage to compress code space that is not fully utilized
US8207875B2 (en) * 2009-10-28 2012-06-26 Motorola Mobility, Inc. Encoder that optimizes bit allocation for information sub-parts
CN102648493B (zh) 2009-11-24 2016-01-20 Lg电子株式会社 音频信号处理方法和设备
BR112012017257A2 (pt) 2010-01-12 2017-10-03 Fraunhofer Ges Zur Foerderung Der Angewandten Ten Forschung E V "codificador de áudio, codificados de áudio, método de codificação de uma informação de audio método de codificação de uma informação de áudio de programa de computador que utiliza uma modificação de uma representção numérica de um valor de contexto prévio numérico"
US20110196673A1 (en) 2010-02-11 2011-08-11 Qualcomm Incorporated Concealing lost packets in a sub-band coding decoder
EP2375409A1 (en) * 2010-04-09 2011-10-12 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder, audio decoder and related methods for processing multi-channel audio signals using complex prediction
FR2961980A1 (fr) 2010-06-24 2011-12-30 France Telecom Controle d'une boucle de retroaction de mise en forme de bruit dans un codeur de signal audionumerique
CA3025108C (en) 2010-07-02 2020-10-27 Dolby International Ab Audio decoding with selective post filtering
JP5600805B2 (ja) * 2010-07-20 2014-10-01 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 最適化されたハッシュテーブルを用いるオーディオエンコーダ、オーディオデコーダ、オーディオ情報を符号化するための方法、オーディオ情報を復号化するための方法およびコンピュータプログラム
KR101676477B1 (ko) * 2010-07-21 2016-11-15 삼성전자주식회사 컨텍스트 기반의 무손실 부호화 장치 및 방법, 그리고 복호화 장치 및 방법
US9082416B2 (en) 2010-09-16 2015-07-14 Qualcomm Incorporated Estimating a pitch lag
US8738385B2 (en) 2010-10-20 2014-05-27 Broadcom Corporation Pitch-based pre-filtering and post-filtering for compression of audio signals
SG192748A1 (en) 2011-02-14 2013-09-30 Fraunhofer Ges Forschung Linear prediction based coding scheme using spectral domain noise shaping
US9270807B2 (en) 2011-02-23 2016-02-23 Digimarc Corporation Audio localization using audio signal encoding and recognition
JP5805796B2 (ja) 2011-03-18 2015-11-10 フラウンホーファーゲゼルシャフトツール フォルデルング デル アンゲヴァンテン フォルシユング エー.フアー. 柔軟なコンフィギュレーション機能性を有するオーディオエンコーダおよびデコーダ
US8977543B2 (en) 2011-04-21 2015-03-10 Samsung Electronics Co., Ltd. Apparatus for quantizing linear predictive coding coefficients, sound encoding apparatus, apparatus for de-quantizing linear predictive coding coefficients, sound decoding apparatus, and electronic device therefore
EP2707873B1 (en) 2011-05-09 2015-04-08 Dolby International AB Method and encoder for processing a digital stereo audio signal
FR2977439A1 (fr) 2011-06-28 2013-01-04 France Telecom Fenetres de ponderation en codage/decodage par transformee avec recouvrement, optimisees en retard.
FR2977969A1 (fr) 2011-07-12 2013-01-18 France Telecom Adaptation de fenetres de ponderation d'analyse ou de synthese pour un codage ou decodage par transformee
US9363339B2 (en) 2011-07-12 2016-06-07 Hughes Network Systems, Llc Staged data compression, including block level long range compression, for data streams in a communications system
AU2012366843B2 (en) 2012-01-20 2015-08-06 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for audio encoding and decoding employing sinusoidal substitution
EP2834814B1 (en) 2012-04-05 2016-03-02 Huawei Technologies Co., Ltd. Method for determining an encoding parameter for a multi-channel audio signal and multi-channel audio encoder
US20130282372A1 (en) 2012-04-23 2013-10-24 Qualcomm Incorporated Systems and methods for audio signal processing
US9026451B1 (en) 2012-05-09 2015-05-05 Google Inc. Pitch post-filter
PL2874149T3 (pl) 2012-06-08 2024-01-29 Samsung Electronics Co., Ltd. Sposób i urządzenie do ukrywania błędu ramki oraz sposób i urządzenie do dekodowania audio
GB201210373D0 (en) * 2012-06-12 2012-07-25 Meridian Audio Ltd Doubly compatible lossless audio sandwidth extension
FR2992766A1 (fr) 2012-06-29 2014-01-03 France Telecom Attenuation efficace de pre-echos dans un signal audionumerique
CN102779526B (zh) 2012-08-07 2014-04-16 无锡成电科大科技发展有限公司 语音信号中基音提取及修正方法
US9406307B2 (en) 2012-08-19 2016-08-02 The Regents Of The University Of California Method and apparatus for polyphonic audio signal prediction in coding and networking systems
US9293146B2 (en) 2012-09-04 2016-03-22 Apple Inc. Intensity stereo coding in advanced audio coding
EP2903004A4 (en) 2012-09-24 2016-11-16 Samsung Electronics Co Ltd METHOD AND APPARATUS FOR HAMPERING FRAME ERRORS, AND METHOD AND APPARATUS FOR DECODING AUDIO DATA
CN103714821A (zh) 2012-09-28 2014-04-09 杜比实验室特许公司 基于位置的混合域数据包丢失隐藏
US9401153B2 (en) 2012-10-15 2016-07-26 Digimarc Corporation Multi-mode audio recognition and auxiliary data encoding and decoding
US9318116B2 (en) 2012-12-14 2016-04-19 Disney Enterprises, Inc. Acoustic data transmission based on groups of audio receivers
EP2757558A1 (en) * 2013-01-18 2014-07-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Time domain level adjustment for audio signal decoding or encoding
FR3001593A1 (fr) 2013-01-31 2014-08-01 France Telecom Correction perfectionnee de perte de trame au decodage d'un signal.
NZ710308A (en) 2013-02-05 2018-02-23 Ericsson Telefon Ab L M Method and apparatus for controlling audio frame loss concealment
TWI530941B (zh) 2013-04-03 2016-04-21 杜比實驗室特許公司 用於基於物件音頻之互動成像的方法與系統
RU2666327C2 (ru) 2013-06-21 2018-09-06 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Устройство и способ для улучшенного маскирования адаптивной таблицы кодирования при acelp-образном маскировании с использованием улучшенной повторной синхронизации импульсов
EP2830055A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Context-based entropy coding of sample values of a spectral envelope
EP2830065A1 (en) 2013-07-22 2015-01-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for decoding an encoded audio signal using a cross-over filter around a transition frequency
ES2660392T3 (es) 2013-10-18 2018-03-22 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codificación de coeficientes espectrales de un espectro de una señal de audio
US9906858B2 (en) 2013-10-22 2018-02-27 Bongiovi Acoustics Llc System and method for digital signal processing
EP3336841B1 (en) 2013-10-31 2019-12-04 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio decoder and method for providing a decoded audio information using an error concealment modifying a time domain excitation signal
RU2666468C2 (ru) 2013-10-31 2018-09-07 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Расширение полосы пропускания аудио посредством вставки шума с предварительно приданной формой по времени в частотной области
WO2015071173A1 (en) * 2013-11-13 2015-05-21 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Encoder for encoding an audio signal, audio transmission system and method for determining correction values
KR102625143B1 (ko) * 2014-02-17 2024-01-15 삼성전자주식회사 신호 부호화방법 및 장치와 신호 복호화방법 및 장치
GB2524333A (en) 2014-03-21 2015-09-23 Nokia Technologies Oy Audio signal payload
DK3511935T3 (da) 2014-04-17 2020-11-02 Voiceage Evs Llc Fremgangsmåde, indretning og computerlæsbar ikke-flygtig hukommelse til lineær-prædiktiv kodning og afkodning af lydsignaler efter overgang mellem rammer med forskellige afsøgningshastigheder
US9396733B2 (en) * 2014-05-06 2016-07-19 University Of Macau Reversible audio data hiding
NO2780522T3 (pt) 2014-05-15 2018-06-09
EP2963649A1 (en) 2014-07-01 2016-01-06 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio processor and method for processing an audio signal using horizontal phase correction
US9685166B2 (en) 2014-07-26 2017-06-20 Huawei Technologies Co., Ltd. Classification between time-domain coding and frequency domain coding
EP2980798A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Harmonicity-dependent controlling of a harmonic filter tool
EP2980799A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus and method for processing an audio signal using a harmonic post-filter
KR102546275B1 (ko) 2014-07-28 2023-06-21 삼성전자주식회사 패킷 손실 은닉방법 및 장치와 이를 적용한 복호화방법 및 장치
SG11201509526SA (en) 2014-07-28 2017-04-27 Fraunhofer Ges Forschung Apparatus and method for selecting one of a first encoding algorithm and a second encoding algorithm using harmonics reduction
EP2980796A1 (en) 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method and apparatus for processing an audio signal, audio decoder, and audio encoder
EP2988300A1 (en) 2014-08-18 2016-02-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Switching of sampling rates at audio processing devices
WO2016142002A1 (en) 2015-03-09 2016-09-15 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder, audio decoder, method for encoding an audio signal and method for decoding an encoded audio signal
EP3067887A1 (en) 2015-03-09 2016-09-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio encoder for encoding a multichannel signal and audio decoder for decoding an encoded audio signal
US10296959B1 (en) 2015-03-30 2019-05-21 Audible, Inc. Automated recommendations of audio narrations
US10049684B2 (en) 2015-04-05 2018-08-14 Qualcomm Incorporated Audio bandwidth selection
US9886963B2 (en) 2015-04-05 2018-02-06 Qualcomm Incorporated Encoder selection
JP6422813B2 (ja) 2015-04-13 2018-11-14 日本電信電話株式会社 符号化装置、復号装置、これらの方法及びプログラム
US9978400B2 (en) 2015-06-11 2018-05-22 Zte Corporation Method and apparatus for frame loss concealment in transform domain
US9837089B2 (en) 2015-06-18 2017-12-05 Qualcomm Incorporated High-band signal generation
US10847170B2 (en) 2015-06-18 2020-11-24 Qualcomm Incorporated Device and method for generating a high-band signal from non-linearly processed sub-ranges
KR20170000933A (ko) 2015-06-25 2017-01-04 한국전기연구원 시간 지연 추정을 이용한 풍력 터빈의 피치 제어 시스템
US9830921B2 (en) 2015-08-17 2017-11-28 Qualcomm Incorporated High-band target signal control
WO2017039422A2 (ko) 2015-09-04 2017-03-09 삼성전자 주식회사 음질 향상을 위한 신호 처리방법 및 장치
US9978381B2 (en) 2016-02-12 2018-05-22 Qualcomm Incorporated Encoding of multiple audio signals
US10219147B2 (en) 2016-04-07 2019-02-26 Mediatek Inc. Enhanced codec control
US10283143B2 (en) 2016-04-08 2019-05-07 Friday Harbor Llc Estimating pitch of harmonic signals
CN107945809B (zh) 2017-05-02 2021-11-09 大连民族大学 一种复调音乐多音高估计方法

Also Published As

Publication number Publication date
RU2020120256A (ru) 2020-09-01
US20200286494A1 (en) 2020-09-10
JP2021502606A (ja) 2021-01-28
US11386909B2 (en) 2022-07-12
ZA202004583B (en) 2022-07-27
CA3148999A1 (en) 2019-05-16
JP2020204771A (ja) 2020-12-24
AU2020203074A1 (en) 2020-05-28
KR20200094752A (ko) 2020-08-07
KR20200100053A (ko) 2020-08-25
KR20200096233A (ko) 2020-08-11
SG11202004279TA (en) 2020-06-29
CN111656443A (zh) 2020-09-11
KR102492557B1 (ko) 2023-01-30
CA3148999C (en) 2024-04-16
CA3082282A1 (en) 2019-05-16
AU2020203074B2 (en) 2020-12-03
RU2767286C2 (ru) 2022-03-17
RU2020120251A (ru) 2020-09-01
JP7104785B2 (ja) 2022-07-21
US20200273472A1 (en) 2020-08-27
BR112020009325A2 (pt) 2020-10-27
RU2020120256A3 (pt) 2020-10-28
AU2020203075A1 (en) 2020-05-28
JP7104749B2 (ja) 2022-07-21
JP2021005086A (ja) 2021-01-14
CN111933159B (zh) 2024-04-09
ZA202004584B (en) 2022-07-27
CN111656443B (zh) 2023-09-15
KR102492558B1 (ko) 2023-01-30
BR122020009462A2 (pt) 2020-11-10
MX2020004772A (es) 2020-08-13
US11315583B2 (en) 2022-04-26
EP4336502A2 (en) 2024-03-13
EP3707710A1 (en) 2020-09-16
SG11202004287YA (en) 2020-06-29
EP4336503A2 (en) 2024-03-13
JP7277065B2 (ja) 2023-05-18
TWI758556B (zh) 2022-03-21
MX2020004768A (es) 2020-08-20
CN111933160A (zh) 2020-11-13
US20200273471A1 (en) 2020-08-27
AU2018365309B2 (en) 2020-12-17
EP3707710B1 (en) 2024-01-24
RU2020119054A (ru) 2021-12-14
ZA202003441B (en) 2021-08-25
CA3082282C (en) 2023-03-07
SG11202004285TA (en) 2020-06-29
RU2020119054A3 (pt) 2021-12-14
CN111933159A (zh) 2020-11-13
KR102492554B1 (ko) 2023-01-30
WO2019091576A1 (en) 2019-05-16
RU2020120251A3 (pt) 2020-10-28
MX2020004770A (es) 2020-08-13
RU2769255C2 (ru) 2022-03-29
AU2020203075B2 (en) 2020-12-17
WO2019092155A1 (en) 2019-05-16
US11380339B2 (en) 2022-07-05
CA3148963A1 (en) 2019-05-16
TW201923738A (zh) 2019-06-16
AU2018365309A1 (en) 2020-05-28
CN111933160B (zh) 2024-02-13
RU2769218C2 (ru) 2022-03-29
AR113482A1 (es) 2020-05-06

Similar Documents

Publication Publication Date Title
BR122020009464A2 (pt) codificadores de áudio, decodificadores de áudio, métodos e programas de computador que adaptam uma codificação e decodificação de bits menos significativos
JP6494741B2 (ja) 符号化及び復号化のための符号化装置、復号化装置、システム及び方法
BR112017001518B1 (pt) Encriptador, decodificador, sistema e métodos para criptar e decodificar

Legal Events

Date Code Title Description
B03A Publication of a patent application or of a certificate of addition of invention [chapter 3.1 patent gazette]
B15K Others concerning applications: alteration of classification

Free format text: AS CLASSIFICACOES ANTERIORES ERAM: G10L 19/02 , G10L 19/032 , G10L 25/18

Ipc: G10L 19/032 (2013.01)